Tone docs
API referenceCompliance

Suppress a number (idempotent)

Adding a number already on the list is a no-op rather than an error, so a replayed webhook or a retried job cannot fail here. Use lockout90d for an opt-out, which becomes contactable again on a date, rather than a permanent suppression.

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

POST
/v1/dnc
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/dnc" \  -H "Content-Type: application/json" \  -d '{    "e164": "+919876543210",    "lockout90d": false,    "reason": "Asked to be removed during a call on 2026-08-20.",    "source": "manual"  }'
{  "data": {    "createdAt": "2026-08-25T09:14:22Z",    "e164": "+919876543210",    "expiresAt": "2026-11-23T09:14:22Z",    "id": "8814",    "reason": "Asked to be removed during a call on 2026-08-20.",    "removedAt": null,    "removedReason": null,    "source": "manual",    "sourceCallId": null  }}
Was this page helpful?