CallsAround API
REST API for lines, escalation chains, calls (with media), usage, SMS/voice notifications, and webhook subscriptions. Auth: Authorization: Bearer ca_(test|live)_…. Outbound webhooks: X-CallsAround-Signature: t=,v1=<hex hmac-sha256(${t}.${raw body})> — verify with the reference client (5-min tolerance); retries: 5 attempts with 1/5/25/120-minute backoff, then dead-letter; events: call.completed, emergency.dispatched, line.health_changed, call.uncovered, call.failed, usage.threshold, usage.exceeded.
Every response is a JSON envelope: { ok: true, data, request_id } on success, { ok: false, error: { code, message, request_id } } on failure. Rate limit: 120 requests/minute per key. Agency keys act on their own org and all descendant client orgs.
Meta
Liveness and this document. No authentication.
Liveness probe (no auth)
-
application/json
-
application/json
curl https://callsaround.com/api/v1/ping
{
"ok": true,
"data": {
"pong": true,
"at": "2026-07-14T18:03:12.345Z"
},
"request_id": "req_a1b2c3d4"
}
Success envelope { ok, data, request_id }
This document (no auth)
-
application/json
-
application/json
curl https://callsaround.com/api/v1/openapi.json
{
"ok": true,
"data": {},
"request_id": "req_a1b2c3d4"
}
Success envelope { ok, data, request_id }