POST /orgs
Request Body
| Parameter | Type | Required | Description |
|---|---|---|---|
alias | string | Yes | Unique alias for the organization. |
visibility | string | Yes | Visibility setting: public or private. |
Response
| Parameter | Type | Description |
|---|---|---|
org_id | string | The unique ID of the created org. |
Errors
| Status | Error | Cause |
|---|---|---|
| 400 | invalid_request_body | Missing/invalid alias or visibility, or an extra field. |
| 400 | service_account_cannot_own_org | The caller is a service account, which can join orgs but not own one. Checked ahead of access, so it is the answer for any service-account caller — its own API key or an acting token alike. |
| 403 | forbidden | Missing admin access to the calling user, e.g. a non-self-scoped API key. |
| 400 | limit_exceeded | The user already owns the maximum number of organizations. |
| 400 | alias_in_use | The organization alias must be globally unique. |
Example
{
"alias": "acme-corp",
"visibility": "public"
}
{
"status": "success",
"org_id": "org_123456"
}

