Tone docs
API referenceCompliance

Report what happened to a call you placed yourself

Closes the audit loop on a verdict. opt_out revokes consents and suppresses the number for 90 days; complaint suppresses it permanently.

Requires the write scope. A key with less gets 403 insufficient_scope.

POST
/v1/compliance/call-outcomes
AuthorizationBearer <token>

Authorization: Bearer tone_live_… or tone_test_…. The prefix IS the environment: a test key reaches only the sandbox, and no request field bridges the two.

In: header

Request Body

application/json

TypeScript Definitions

Use the request body type in TypeScript.

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X POST "https://example.com/v1/compliance/call-outcomes" \  -H "Content-Type: application/json" \  -d '{    "callReference": "acme-crm-4417",    "checkId": "8814",    "durationSeconds": 45,    "e164": "+919876543210",    "notes": "Customer asked to be called after 6pm.",    "occurredAt": "2026-08-25T09:14:22Z",    "outcome": "connected"  }'
{  "data": {    "consentsRevoked": 0,    "e164": "+919876543210",    "id": "8814",    "outcome": "connected",    "suppressed": true  }}
Was this page helpful?