A recipient opted out
Revokes every active consent for the number and suppresses it for the 90-day re-consent lockout, in one transaction.
Requires the write scope. A key with less gets 403 insufficient_scope.
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/consent/opt-out" \ -H "Content-Type: application/json" \ -d '{ "e164": "+919876543210", "reason": "Said \\"do not call me again\\" during the call." }'{ "data": { "revoked": 0 }}Consent records, newest first
Consent is purpose-scoped, so a number can appear several times — once per purpose. active=true filters to the records that would satisfy the gate right now.
Record a consent
Explicit transactional consent expires after 7 days by policy; inferred consent must carry its own expiry. Verified explicit consent is what lets a promotional call pass the gate.