Skip to main content

Depuración DNC: fuentes, frescura y el endpoint de verificación

Una depuración de No-Llamar (Do-Not-Call, DNC) responde a una pregunta antes de que usted envíe: ¿está este número en una lista que bloquea o restringe su contacto? Orbit verifica sus propias listas (flags de contacto, entradas DNC, supresión, consentimiento), la lista de plataforma completa, los feeds federales/estatales/TCR de EE. UU. y varios registros nacionales internacionales; y la misma cadena que el camino de envío hace cumplir es legible como API, de modo que puede hacer una comprobación previa (pre-flight) de una lista fría sin arriesgar un envío infractor. Esta página es el panorama de extremo a extremo: cuándo importa la depuración, cómo activarla, de dónde provienen los datos sincronizados, cómo leer los source y last_synced_at del endpoint de verificación, y la única advertencia fail-open que debe gestionar. Para las puertas de envío que consumen el resultado, consulte Send Gates. Todos los endpoints siguientes están en la raíz https://api.orbit.devotel.io/api/v1/compliance.
Esta página describe los controles de plataforma de Orbit. No es asesoramiento legal. Si un número dado está fuera de su alcance depende de su jurisdicción, de sus destinatarios y de lo que envíe. Confírmelo con asesoría legal cualificada.

Cuándo importa la depuración DNC

Las obligaciones DNC provienen de más de un registro, y se solapan:
  • DNC federal de EE. UU. (Registro Nacional de la FTC). Las llamadas de telemercadotecnia y los textos de marketing a un número registrado federalmente están restringidos; una depuración contra el registro federal es la defensa de base antes de cualquier campaña saliente.
  • Registros estatales de EE. UU. Varios estados administran sus propias listas DNC por encima de la federal. Un número puede estar ausente federalmente pero registrado en, por ejemplo, Pensilvania — así que una depuración solo federal no está completa para el tráfico de EE. UU.
  • TCR Universal Opt-Out. La lista de opt-out universal de The Campaign Registry captura los números que se dieron de baja de los textos A2P a nivel de registro. Honrarla forma parte de la higiene de envío de textos 10DLC en EE. UU., independientemente de su propia lista de supresión.
  • Registros nacionales internacionales. Fuera de EE. UU., se aplican listas nacionales equivalentes — el TPS y CTPS del Reino Unido, el Do Not Call Register de Australia, el NDNC de la India. Estos son por jurisdicción: usted depura una campaña del Reino Unido contra los registros del Reino Unido, y por eso el endpoint de verificación acepta un filtro country (abajo).
Nada de esto sustituye su propia capa de supresión — un destinatario que le respondió STOP a usted está restringido independientemente de cualquier registro nacional. La cadena de depuración trata su supresión, los opt-outs de consentimiento y los registros nacionales como una sola respuesta combinada.

Active el toggle de tenant

El endpoint de verificación está desactivado por defecto por organización. Hasta que usted opte por activarlo — o hasta que Orbit tenga un feed sincronizado para la plataforma — el endpoint devuelve 403 DNC_SYNC_NOT_ENABLED:
Actívelo en la configuración de cumplimiento de su organización (el parámetro dnc_sync_enabled — consulte el posture map, que lista este toggle y su valor por defecto). Una sola conmutación habilita tanto la verificación de un número como la depuración masiva.
La puerta se retira automáticamente cuando los feeds están sincronizados. El toggle de organización es el reconocimiento de que, mientras no se sincronice un feed federal, Orbit no está depurando contra el registro de la FTC por usted. Una vez que la plataforma tenga una instantánea federal/estatal/TCR (o internacional) sincronizada, el endpoint responde directamente y la puerta 403 deja de aplicar — el campo federal_feeds_synced en cada respuesta le dice en qué estado se encuentra. Su propia aplicación de DNC, supresión y consentimiento en el camino de envío no se ve afectada en ningún caso.

De dónde proviene la lista (cableado de feeds)

Los datos DNC sincronizados llegan de feeds upstream, refrescados diariamente en la lista DNC de toda la plataforma. Lo que un operador configure determina cuál de los valores source ve devuelto por el endpoint de verificación. Estas son variables de entorno a nivel operador. En la plataforma hospedada (SaaS) de Orbit están configuradas por usted; el operador SaaS controla qué feeds están vivos. Le importan directamente solo si usted auto-hospeda Orbit — en ese caso, configúrelas en su despliegue:
  • DEVOTEL_DNC_FEED_FILE — un volumen montado que contiene una instantánea federal/estatal/TCR procurada. La sincronización diaria lo lee, analiza cada número dado de baja y lo inserta en la lista DNC de la plataforma etiquetado con su fuente (federal_dnc, state_dnc:XX, o tcr).
  • DEVOTEL_DNC_FEED_URL — una descarga autenticada de la misma instantánea, como alternativa a un archivo montado. El archivo tiene prioridad cuando ambos están configurados.
La sincronización se ejecuta una vez por día UTC (los feeds publican una vez por día hábil; la ejecución apunta a las 03:00 UTC de modo que una ventana de envío matutina vea datos frescos). Volver a ejecutar la misma instantánea es una no-operación más allá de refrescar la marca temporal — el upsert es idempotente. Alternativa: extracción directa de TCR. Cuando no se configura un archivo/URL de instantánea pero están configuradas las credenciales de socio TCR de pago — DEVOTEL_TCR_API_KEY junto con DEVOTEL_TCR_PARTNER_ID — la sincronización diaria extrae el registro TCR Universal Opt-Out directamente de la API del socio y lo inserta como source: "tcr". Esto proporciona la depuración TCR desde la suscripción TCR existente, sin un CSV fuera de banda.
La misma instantánea que la sincronización diaria escribe en la lista DNC de la plataforma también se carga en memoria por la API al arrancar, de modo que el endpoint de verificación puede responder a una consulta federal/estatal/TCR sin esperar a la siguiente escritura diaria. federal_feeds_synced: true en la respuesta significa que ese feed en memoria está vivo.

Lea el endpoint de verificación

GET /compliance/dnc/check informa si un número E.164 está en cualquier fuente DNC que el camino de envío haga cumplir. Es de solo lectura — no realiza ningún envío.
Un acierto devuelve:
Un número no restringido devuelve "on_dnc": false, "source": "none", y un jurisdictions vacío. Los campos que transportan la postura:
  • source — qué fuente produjo el primer acierto, una de federal_dnc, state_dnc (un registro estatal de EE. UU.), tcr (el TCR Universal Opt-Out), intl_dnc (un registro nacional internacional), suppression (su propia capa de supresión), o none (no está en ninguna lista). jurisdictions lista cada origen coincidente, así que un número tanto en el registro federal como en uno estatal muestra ambos.
  • last_synced_at — la marca temporal de frescura de la fuente coincidente: cuándo se sincronizó por última vez la instantánea federal/estatal/TCR (o la fila en la que acertó). La sincronización diaria estampa una fila de heartbeat en cada ejecución, así que este campo siempre transporta una señal de “último sincronizado” para las fuentes respaldadas por feeds, en vez de quedarse en silencio cuando ninguna fila coincide. Sus propias fuentes de supresión/consentimiento no tienen sincronización, así que para un acierto solo de supresión el campo refleja el propio evento de opt-out.
  • federal_feeds_synced / intl_feeds_synced — si la API ha ingerido realmente una instantánea federal/estatal/TCR de EE. UU. y una instantánea de registro nacional internacional, respectivamente. Léalos en cada respuesta: distinguen “el número está limpio” de “el número está limpio y una depuración federal respaldó esa respuesta”.
Filtro por jurisdicción. Agregue country (ISO alpha-2) para limitar la consulta del registro internacional a una jurisdicción:
Con country=GB, solo los registros del Reino Unido (TPS/CTPS) pueden producir una coincidencia internacional — una campaña destinada al Reino Unido nunca se marca sobre un registro de un país no relacionado. Masivo. Para depurar una lista entera o una audiencia de campaña en una sola llamada, use POST /compliance/dnc/scrub con un array phones (hasta 500 números por petición; se eliminan los duplicados). Ejecuta la misma cadena por número y devuelve veredictos por número más conteos de on_dnc / clear. Se aplica la misma puerta de organización.

Cómo lo consume el lado del envío

El endpoint de verificación es una lectura de la misma cadena que el camino de envío hace cumplir. Usted no conecta la depuración a sus envíos — Orbit ya lo hace:
  • Mensajería (SMS / MMS / WhatsApp / …). Antes de la expedición, el camino de envío responde “¿este destinatario está dado de baja?” contra las mismas fuentes DNC — su flag DNC de contacto, su lista DNC, la lista de supresión (la señal STOP entre canales), la lista DNC de la plataforma (donde aterriza el feed federal/estatal/TCR diario), y los opt-outs de consentimiento registrados. Un acierto descarta el envío.
  • Voz / marcador. El marcador ejecuta la misma cadena de cumplimiento antes de originar una llamada — STOP entre canales, DNC de contacto, DNC de plataforma y consentimiento — así que un número que se dio de baja por SMS no es luego marcado por voz. El camino de envío falla cerrado (fail-closed): si la propia verificación de cumplimiento no puede completarse, la llamada se difiere en vez de marcarse.
Por tanto, el trabajo del endpoint es de pre-flight, no de imposición: consúltelo (o la depuración masiva) sobre una lista fría antes de una campaña para eliminar los números que la puerta bloquearía de todos modos — y para sacarlos a la superficie en sus propios registros.

La advertencia fail-open

El endpoint de lectura es fail-open en la capa de fuente: si una fuente DNC no se puede consultar, la verificación continúa con las demás y devuelve la mejor respuesta que pueda. La consecuencia concreta que debe entender:
Mientras no se sincronice un feed federal, un número que solo está en el registro federal de la FTC se lee como no restringido (on_dnc: false).
Por eso el endpoint está cerrado por puerta hasta que usted opte por activarlo, y por eso federal_feeds_synced viaja en cada respuesta. Se siguen dos reglas operacionales:
  1. No trate un resultado no restringido como un puerto seguro federal salvo federal_feeds_synced: true. Un veredicto no restringido con federal_feeds_synced: false solo significa que sus propias listas, la supresión, el consentimiento y la lista de la plataforma no marcaron el número.
  2. La puerta estricta es el camino de envío. El camino de lectura es fail-open por diseño; el camino de envío no lo es. Un falso negativo de una consulta pre-flight nunca se convierte en un envío — la cadena en tiempo de envío vuelve a verificar las mismas fuentes y bloquea lo que encuentra.
En el SaaS de Orbit, trate federal_feeds_synced: false como “ninguna depuración federal está respaldando esta respuesta todavía” y pese eso en su decisión de confiar en el pre-flight para una campaña de EE. UU. Los auto-hospedadores cierran la brecha configurando un feed (arriba).

Verifique antes de una campaña

Haga pre-flight de una audiencia de campaña con la depuración masiva, y luego actúe sobre los veredictos:
Elimine de la audiencia los números con on_dnc: true antes de enviar. Verifique federal_feeds_synced / intl_feeds_synced en la misma respuesta para saber qué registros respaldaron realmente los veredictos, y verifique last_synced_at por resultado para confirmar que los datos están frescos. Para una lista más grande, páginela en trozos de 500 números.
Vea también:
  • Send Gates — las puertas en tiempo de envío de horas silenciosas / DNC / RND / RMD y el alto de emergencia.
  • TCPA Known-Litigator Gate — el chequeo de procedencia del destinatario que complementa la depuración DNC para riesgo de TCPA en EE. UU.
  • Batch DNC Pre-Flight Scrubbing — el flujo de trabajo de campaña en torno a la depuración masiva: cierre, troceo y enrutamiento de números marcados.
  • Opt-Out & Suppression Lists — cómo el STOP de un destinatario aterriza en la capa de supresión que la cadena DNC lee.
  • Your Tenant Compliance Posture — el mapa de toggles, incluida la fila dnc_sync_enabled de esta página.