Skip to content

API gateway

The platform exposes a single versioned HTTP gateway. Every endpoint lives under /v1/ and is grouped by product namespace, so you can target a specific surface (auth, commerce, pay, news, and so on) without juggling separate base URLs.

All requests share the same host and a /v1 prefix:

https://api.nyuchi.com/v1/<namespace>/<resource>

The v1 prefix is the API version. A new prefix (v2, v3) will be introduced for breaking changes; until then, every change to /v1 is backward compatible.

NamespaceWhat it covers
/v1/authSign-in, token exchange, refresh, sign-out.
/v1/identityPeople and profile records.
/v1/family, /v1/organizationHousehold and organization graphs.
/v1/places, /v1/events, /v1/directoryPlaces, events, and directory listings.
/v1/content, /v1/media, /v1/searchEditorial content, media assets, and full-text search.
/v1/applications, /v1/dashboard, /v1/adminApplication records and admin operations.
/v1/api-keysPersonal and service API keys.
/v1/commerceProducts, offers, businesses, inquiries, reviews.
/v1/pay/wallet, /v1/pay/tokens, /v1/pay/gatewayWallets, tokens, and payment gateway.
/v1/logisticsBooking drafts and fulfillment.
/v1/lingoTranslation jobs and glossaries.
/v1/newsNews articles and feeds.
/v1/weatherWeather forecasts and sources.

Most endpoints accept a platform JWT in the Authorization header:

Terminal window
curl https://api.nyuchi.com/v1/identity/me \
-H "Authorization: Bearer $PLATFORM_JWT"

Obtain the JWT by completing sign-in through /v1/auth/workos/login or /v1/auth/exchange. See authentication methods for the full token lifecycle.

Two namespaces—/v1/admin/* and /v1/pay/*—require an additional internal API key in the X-Internal-Key header. These endpoints aren’t intended for direct browser calls; route them through your server-side proxy so the key never reaches the client.

Terminal window
curl https://api.nyuchi.com/v1/admin/stats \
-H "Authorization: Bearer $PLATFORM_JWT" \
-H "X-Internal-Key: $INTERNAL_API_KEY"
Endpoint groupLimit
Default (all /v1/* paths)60 requests per minute per IP
/v1/auth/email/send, /v1/auth/email/verify10 requests per minute
/v1/auth/sms/send, /v1/auth/sms/verify5 requests per minute
/v1/auth/exchange, /v1/auth/refresh30 requests per minute

Requests over the limit receive HTTP 429 Too Many Requests with a Retry-After header.

CodeMeaning
200, 201Success.
401Missing or invalid Authorization header. For /v1/admin/* and /v1/pay/*, also returned when X-Internal-Key is missing or wrong.
403Authenticated but not authorized for the resource.
429Rate limit exceeded.
503The target product database isn’t configured in this environment. Set the corresponding credentials and retry.

Call the root endpoint to see which product databases are configured in the environment you’re calling:

Terminal window
curl https://api.nyuchi.com/

The response lists each namespace and whether it’s configured or unconfigured, which is the quickest way to confirm an environment is wired up before pointing a client at it.