Tenancy & environments
ReadyCMS is multi-tenant: each request resolves a tenant to select the right data. You choose the tenant with the namespace parameter.
The namespace parameter
Send namespace=<tenantSlug> on every request. It selects which tenant's data you are reading or writing.
curl -s "https://api.readycms.io/products/?namespace=acme" \ -H "Authorization: Bearer <app_id>:<app_secret>"
namespace is an alias for the internal sub_domain; you only ever need to send namespace.
Writes must send an explicit tenant
POST, PUT, PATCH, DELETE) you must send an explicit namespace - a missing namespace on a write is rejected. This is the single most common integration mistake.Reads are more forgiving, but the safe rule is simple: always send namespace, on every request.
Base URL
All requests go to a single production host: https://api.readycms.io. The api. host itself is not a tenant - that is why the tenant is carried in namespace rather than the hostname.
Environments
ReadyCMS supports non-production environments (dev, test, stage) internally. As an external integrator you work against the production host and select your tenant with namespace; environment routing is handled server-side and is not something you configure per request.