API REFERENCE
Create another isolated business
/api/v1/businessesVerified administrator identity becomes administrator of the new active business. Uses existing verified identity; does not re-register credentials.
Authentication
Requires an authorized administrator bearer session; business membership rules apply. Do not assume an integration key can replace an account session.
Parameters
No path or query parameters.
Request
| Field | Type | Description & constraints |
|---|---|---|
nameRequired | string | Human-readable name shown in the workspace.Min length: 1 · Max length: 120 |
time_zoneRequired | string | Resource-specific value; see the related workflow and schema. |
Example JSON body
{
"name": "Example Services",
"time_zone": "Europe/Warsaw"
}Request schema
{
"$ref": "#/components/schemas/BusinessWrite"
}Example request
Replace synthetic identifiers and credentials. Example dates, coordinates, revisions, and IDs are not production defaults. Read the workflow guide before making a write.
curl --request POST 'https://route-api.okok.space/api/v1/businesses' \
--header 'Authorization: Bearer REPLACE_WITH_TOKEN' \
--header 'Content-Type: application/json' \
--data '{"name":"Example Services","time_zone":"Europe/Warsaw"}' \
--output response.binResponses
Examples illustrate the documented shape; optional fields and current state can differ. JSON extraction/body-limit errors may be plain text.
201 · Successful response.
application/json
| Field | Type | Description & constraints |
|---|---|---|
idRequired | string | Identifier unique within its authorized business. Some create operations generate it when omitted.Format: uuid |
nameRequired | string | Human-readable name shown in the workspace. |
time_zoneRequired | string | Named IANA time zone, validated by the backend. |
deleted_at | string | null | System-managed UTC soft-deletion instant; null for active records.Format: date-time |
deleted_by | string | null | Deletion actor retained for history.Format: uuid |
Illustrative response
{
"id": "11111111-1111-4111-8111-111111111111",
"name": "Example Services",
"time_zone": "Europe/Warsaw",
"deleted_at": "2026-11-02T09:00:00Z",
"deleted_by": "11111111-1111-4111-8111-111111111111"
}Response schema
{
"$ref": "#/components/schemas/Business"
}400 · Axum extraction rejects invalid JSON/type, oversized body, or malformed UUID before the domain handler. These responses may be text/plain rather than the domain Error object.
text/plain
Binary response. Save the returned bytes to a file; do not parse as JSON.
401 · Invalid credentials, missing bearer token, or expired/unverified session.
application/json
| Field | Type | Description & constraints |
|---|---|---|
errorRequired | object | Resource-specific value; see the related workflow and schema. |
error fields
| Field | Type | Description & constraints |
|---|---|---|
error.codeRequired | validation | unauthorized | not_found | conflict | unavailable | rate_limited | Private activation or recovery code supplied to the driver. |
error.messageRequired | string | Resource-specific value; see the related workflow and schema. |
Illustrative response
{
"error": {
"code": "unauthorized",
"message": "Invalid credentials, missing bearer token, or expired/unverified session."
}
}Response schema
{
"$ref": "#/components/schemas/Error"
}413 · Axum extraction rejects invalid JSON/type, oversized body, or malformed UUID before the domain handler. These responses may be text/plain rather than the domain Error object.
text/plain
Binary response. Save the returned bytes to a file; do not parse as JSON.
415 · Axum extraction rejects invalid JSON/type, oversized body, or malformed UUID before the domain handler. These responses may be text/plain rather than the domain Error object.
text/plain
Binary response. Save the returned bytes to a file; do not parse as JSON.
422 · Domain validation failure; names are trimmed and emails normalized.
application/json
| Field | Type | Description & constraints |
|---|---|---|
errorRequired | object | Resource-specific value; see the related workflow and schema. |
error fields
| Field | Type | Description & constraints |
|---|---|---|
error.codeRequired | validation | unauthorized | not_found | conflict | unavailable | rate_limited | Private activation or recovery code supplied to the driver. |
error.messageRequired | string | Resource-specific value; see the related workflow and schema. |
Illustrative response
{
"error": {
"code": "validation",
"message": "Domain validation failure; names are trimmed and emails normalized."
}
}Response schema
{
"$ref": "#/components/schemas/Error"
}503 · Required persistence or credential operation unavailable.
application/json
| Field | Type | Description & constraints |
|---|---|---|
errorRequired | object | Resource-specific value; see the related workflow and schema. |
error fields
| Field | Type | Description & constraints |
|---|---|---|
error.codeRequired | validation | unauthorized | not_found | conflict | unavailable | rate_limited | Private activation or recovery code supplied to the driver. |
error.messageRequired | string | Resource-specific value; see the related workflow and schema. |
Illustrative response
{
"error": {
"code": "unavailable",
"message": "Required persistence or credential operation unavailable."
}
}Response schema
{
"$ref": "#/components/schemas/Error"
}