API Reference
Queues

List the workspace's call-centre queues

GET
/v1/queues

Every queue in the active workspace, each with the roster that serves it in the order the switch will try it.

API-key scope: queues.read.

The workspace is the authenticated one and nothing else: there is no workspace id in any path or body in this group, so another tenant's queue cannot be named. A queue name is BARE — the switch staples the workspace on itself.

One console queue, several API queues

The dashboard manages EXACTLY ONE queue per workspace, named after the workspace id. This API supports as many as you like — but the two surfaces meet at PUT /v1/numbers/{id}/routing: a queue block with name omitted defaults to the workspace-id queue, and saving it re-points that number and re-provisions the queue from the routing body (sharing mode, agent pool, announcements). So a colleague saving a number in the console can move that number off a queue you created here, and can overwrite the workspace-id queue's settings. If you manage queues through this API, set queue.name explicitly on every routing save.

Authorization

bearerAuth
AuthorizationBearer <token>

Long-lived ES256 JWT minted from the dashboard (https://app.sautikit.com/developers/api-keys). Signed by the platform keyring. Carries workspace_id and scopes claims; revoked via the platform deny-list.

In: header

Response Body

application/json

application/json

application/json

curl -X GET "https://example.com/v1/queues"
{  "queues": [    {      "id": "497f6eca-6276-4993-bfeb-53cbbbba6f08",      "name": "string",      "sharing_mode": "longest_free",      "max_wait_seconds": 0,      "max_depth": 0,      "discard_abandoned_after_seconds": 0,      "announce_position": true,      "announce_frequency_seconds": 0,      "moh_url": "string",      "agents": [        {          "extension": "string",          "level": 0,          "position": 0        }      ],      "created_at": "2019-08-24T14:15:22Z",      "updated_at": "2019-08-24T14:15:22Z"    }  ]}
{  "error": {    "code": "validation.bad_request",    "message": "string",    "request_id": "string",    "details": [      "string"    ],    "resolution": "string",    "reason": "invalid_characters",    "suggested_e164": "+254727524723"  }}
{  "error": {    "code": "validation.bad_request",    "message": "string",    "request_id": "string",    "details": [      "string"    ],    "resolution": "string",    "reason": "invalid_characters",    "suggested_e164": "+254727524723"  }}