/api/v2 only.
Which tenants a token reaches
Each token has a child tenant access setting. It grants none of your child tenants, the ones chosen for the token, or all of them, including child tenants added later. A token reaches none until access is granted. An admin of your tenant sets it in the Resellers field of each token under Settings → API Tokens; if the field isn’t there, contact Origin One. A token reaches only direct children of its own tenant that are active. A child’s own children are never reachable. List the tenants your token reaches with List tenants, which requires thetenant.list scope. The list is empty for a token without child tenant access.
Act in a child tenant
To act in a child tenant, prefix the route with/tenants/{tenantId}, using an id from the list:
/api/v2):
Inside a child tenant, the token reaches all of that tenant’s active companies, not only the companies linked to the token. Agencies and job categories are the same for every tenant and have no nested routes.
Each tenant keeps its own records
Each record belongs to one tenant, and only that tenant’s routes reach it. Read a child’s records through that child’s nested routes: the same record requested at the top level, or through another tenant, returns404 Not Found.
Records read through a nested route carry a url under the same /api/v2/tenants/{tenantId} prefix. Agency and job category references are the exception: they keep their top-level /api/v2/... url, so a nested order’s agency.url and jobCategory.url have no tenant prefix. Follow url as given rather than building paths yourself.
An order created through a nested route sends webhook events whose data.url is under that prefix, so fetching it reads the order inside its tenant:
data.url returns 404.
Tenants outside your reach
AtenantId your token does not reach returns 404 Not Found, the same as one that does not exist. This covers a tenant that is not a direct child, a child the token has no access to, and a child that is deactivated or deleted. The response never reveals whether the tenant exists.