Base URL and version
v0) is part of the base URL. Some endpoints have a newer variant with its own path, for example POST /calling/v2/outbound/individual next to POST /calling/outbound/individual.
Resources
Requests
Send the API key inX-API-KEY on every request (see Authentication). Request and response bodies are JSON; set Content-Type: application/json on POST and PATCH requests with a JSON body.
Endpoints that take a file (campaign CSVs, knowledge-base documents) use multipart/form-data. Let your HTTP client set that Content-Type so it includes the boundary; setting it by hand breaks the upload.
IDs to store
Errors
Failed requests return a4xx or 5xx status and a JSON body with the reason in message:
message, such as code on Create agent (for example VOICE_LANGUAGE_MISMATCH). A 429 may carry its reason in error instead. Log the status code and the whole body.
Paging
Paging differs by endpoint:Typical integration order
- Check the key with
GET /workspace. - Pick an agent with
GET /agent/alland a caller number withGET /workspace/numbers. - Place one test call with
POST /calling/outbound/individual. - Subscribe the agent to webhook events so results reach your server without polling.
- Move to campaigns for lists of people, and to call history and analytics for reporting.
Next steps
Make your first call
From API key to a ringing phone.
Run a campaign by API
Upload a CSV and start calling it.