Contract
- shape
- entity
- authority
- read
- evidence
- none
- subscription
- true
- permission
- any one of: account.owner (account role owner or higher in the account of the org `org_id`); org.admin (carried by the caller's role template in the org `org_id`); staff.read (the staff role staff_read held in the Internal org, tradehq_role.staff_role); a deactivated caller is refused first
- idempotency
- safe
- emits
- none
- MCP tool
- get_onboarding_status
- REST
- POST https://api.containertradehq.com/v1/cap/get_onboarding_status
Idempotency: a read: calling again changes nothing
Inputs
| name | type | required | validation |
|---|---|---|---|
| org_id | org_id | required | tradehq-org-id; 1 to 20 characters The org whose onboarding to read. |
Response
org_id· string · The org.provisioning_id· stringnull · The provision_account ledger row; null for an org no provisioning made.account_id· stringnull · The account the org belongs to.account· string · The account step.org· string · The org step.clerk_org· string · The Clerk Organization.admin_invite· string · The first admin's invite.entitlements· string · The plan's entitlements.welcome_mail· string · The welcome mail.first_admin· string · done once the org has an active member whose role template carries org.admin.first_unit· string · done once the org has a unit.complete· boolean · Every item is done and the welcome is sent.waiting_on· stringnull · The first item that is not done, its state and what it waits for; null when complete.
Full JSON Schema
{
"type": "object",
"properties": {
"org_id": {
"type": "string",
"minLength": 1,
"maxLength": 20,
"pattern": "^[A-Za-z0-9_-]{1,20}$",
"format": "tradehq-org-id",
"description": "The org.",
"x-data-class": "operational"
},
"provisioning_id": {
"type": [
"string",
"null"
],
"description": "The provision_account ledger row; null for an org no provisioning made.",
"x-data-class": "operational"
},
"account_id": {
"type": [
"string",
"null"
],
"description": "The account the org belongs to.",
"x-data-class": "operational"
},
"account": {
"type": "string",
"enum": [
"pending",
"done",
"waiting",
"stubbed",
"held",
"queued",
"sent",
"refused",
"failed"
],
"description": "The account step.",
"x-data-class": "operational"
},
"org": {
"type": "string",
"enum": [
"pending",
"done",
"waiting",
"stubbed",
"held",
"queued",
"sent",
"refused",
"failed"
],
"description": "The org step.",
"x-data-class": "operational"
},
"clerk_org": {
"type": "string",
"enum": [
"pending",
"done",
"waiting",
"stubbed",
"held",
"queued",
"sent",
"refused",
"failed"
],
"description": "The Clerk Organization.",
"x-data-class": "operational"
},
"admin_invite": {
"type": "string",
"enum": [
"pending",
"done",
"waiting",
"stubbed",
"held",
"queued",
"sent",
"refused",
"failed"
],
"description": "The first admin's invite.",
"x-data-class": "operational"
},
"entitlements": {
"type": "string",
"enum": [
"pending",
"done",
"waiting",
"stubbed",
"held",
"queued",
"sent",
"refused",
"failed"
],
"description": "The plan's entitlements.",
"x-data-class": "operational"
},
"welcome_mail": {
"type": "string",
"enum": [
"pending",
"done",
"waiting",
"stubbed",
"held",
"queued",
"sent",
"refused",
"failed"
],
"description": "The welcome mail.",
"x-data-class": "operational"
},
"first_admin": {
"type": "string",
"enum": [
"pending",
"done",
"waiting",
"stubbed",
"held",
"queued",
"sent",
"refused",
"failed"
],
"description": "done once the org has an active member whose role template carries org.admin.",
"x-data-class": "operational"
},
"first_unit": {
"type": "string",
"enum": [
"pending",
"done",
"waiting",
"stubbed",
"held",
"queued",
"sent",
"refused",
"failed"
],
"description": "done once the org has a unit.",
"x-data-class": "operational"
},
"complete": {
"type": "boolean",
"description": "Every item is done and the welcome is sent.",
"x-data-class": "operational"
},
"waiting_on": {
"type": [
"string",
"null"
],
"description": "The first item that is not done, its state and what it waits for; null when complete.",
"x-data-class": "operational"
}
},
"required": [
"org_id",
"provisioning_id",
"account_id",
"account",
"org",
"clerk_org",
"admin_invite",
"entitlements",
"welcome_mail",
"first_admin",
"first_unit",
"complete",
"waiting_on"
],
"additionalProperties": false
} Refusals
not yet declared
The platform refusals apply to every call: version, authentication, authority, validation and rate limits, each in the same envelope.
Surfaces
DesktopF
MobileF
APIF
MCPF
VoiceD4
PushN
OneBoxN
OutboundN
- Voice: degraded: visualization
- Push: emits nothing
- OneBox: no document asks for an org's onboarding
- Outbound: crosses to no counterparty
Events
None emitted.
Related
None.