REST API · v1
DNC scrubbing in one request.
Send up to 10,000 phone numbers per request and receive matched, clean, and invalid inputs in the same order and format you sent. Requests are processed with zero data retention.
Authentication
Bearer API keys
Create a key in the DNC LATAM dashboard and send it in theAuthorization header. Keys start withdnc_live_ and are only shown once.
/v1/scrub
Scrub phone numbers
Use mx for Mexico or ar for Argentina. Local and international phone formats are accepted. Invalid inputs are returned per item and do not fail the batch. Each organization shares a limit of 60 requests per minute across its API keys; a technical limit response includes Retry-After.
Idempotency-Key is required. Generate one random UUID for each logical request and reuse it only when retrying that exact country and phone array. Keys are scoped to the authenticated API key and protected for at least 7 days. A completed retry is recalculated in memory and returnsIdempotency-Replayed: true, without consuming quota or writing a second usage event. A concurrent retry returns409 idempotency_request_in_progress; reusing the key with another payload returns 409 idempotency_key_reused. Keep the value opaque (1–255 visible ASCII characters, no spaces) and never put phone numbers or other PII in it.
Request
curl https://api.dnclatam.com/v1/scrub \
-X POST \
-H "Authorization: Bearer dnc_live_YOUR_KEY" \
-H "Idempotency-Key: 018f47c2-9b0d-7c95-bf47-cd84c12f8912" \
-H "Content-Type: application/json" \
-d '{
"country": "mx",
"phones": ["+52 55 1234 5678", "55 8765 4321"]
}'200 response
{
"matched": ["+52 55 1234 5678"],
"clean": ["55 8765 4321"],
"invalid": [],
"stats": {
"checked": 2,
"matched": 1,
"invalid": 0
}
}400Missing/invalid Idempotency-Key, body, country, or more than 10,000 phones401Missing, invalid, or revoked API key402Subscription is inactive403Country is not included in the current plan409idempotency_request_in_progress — identical request still running409idempotency_key_reused — same key, different payload429rate_limit_exceeded — 60 requests/minute per organization429monthly_quota_exceeded — monthly organization quota reachedPrivacy
Zero data retention
Phone numbers live only in request memory and are never written to the database or logs. We persist aggregate counts (checked, matched, andinvalid) for usage reporting. Every API response includes x-retention: zero. Idempotency stores only a keyed, non-reversible HMAC fingerprint; it does not store the raw header, request body, phone numbers, or response.