API keys
Send the key as a Bearer token (this is not only for JWTs — the BFF accepts configured API keys the same way):OAuth2 client credentials
Request a token
POST /v1/oauth/token with Content-Type: application/x-www-form-urlencoded and body:grant_type=client_credentials&client_id=...&client_secret=...Registry and scopes
Each client has a machine identity in the registry with:allowedEntities— e.g.products,categories,destinations, …allowedChannelIds— content channel ids from the upstream CMS, or*for internal clients.
Brand / tenant defaults
For routes that call the upstream CMS with tenant routing, passbrand (query) or set CONTENT_DEFAULT_CHANNEL_DOMAIN on the server. Resolve valid values via GET /v1/distribution-channels.
See Sandbox for environment variables.
