contact_on_dnc_list
- HTTP status
- 409
- Retry
- No
- Execution
- Nothing was done
- Admin needed
- No
Contact is on the do-not-call list. Deleting a contact must never quietly remove a do-not-call protection. A contact whose number is on the do-not-call list cannot be deleted through the API while the entry exists.
What it means
The API returns HTTP 409 with error.code set to contact_on_dnc_list. The default message is: "This contact is on the do-not-call list. Remove its do-not-call entry before deleting it."
Common causes
- The contact has
do_not_call: true.
How to identify it
Check the response status (409) and error.code (contact_on_dnc_list). Branch on error.code, not on the message text: messages can be reworded, codes do not change within v1. Log error.request_id (also sent as the X-Request-Id header) so support can find the request.
What to do
- Keep the contact: it is what keeps the number from being called. Do not retry: the same request is refused every time.
- Only if the person really asked to be called again: remove the entry with DELETE /v1/dnc-entries/{dnc_entry_id} (recorded in the audit log; keep your own record of who asked), then delete the contact.
Retry guidance
Do not resend the request, and do not change settings, to get around this refusal. A new request is appropriate only when the rule genuinely no longer applies: the person asked to be called or gave consent, or the permitted calling window has started.
Did anything happen?
This request was refused before any call was placed and before anything was charged.
Idempotency
No call was placed. If you sent an Idempotency-Key, the refusal is not stored under it. If the rule later stops applying (for example the person gives consent), place a new call (with a new key, if you use one).
Who can fix it
Nobody should change data to make this call go through. Remove a do-not-call entry or record consent only when the person asked you to, and keep a record of who asked and when; these changes are audited. See Consent and DNC.
When to contact support
If the error persists after the steps above, contact support@relationsai.com. See Support for what to include (the request_id, the time in UTC, the operation, and whether you used a test or live key) and what never to send (API keys, Authorization headers, webhook signing secrets, recording links, transcripts or customer data).
Example error response
JSON
Incorrect and corrected request
Incorrect: The contact is on the do-not-call list (do_not_call: true).
Text
Corrected: Check do_not_call first and keep contacts that are on the list.
Text
Operations that can return this error
DELETE /contacts/{contact_id}: Delete a contact
See all codes in the error-code reference.