DNC-Scrubbing: Quellen, Aktualität und der Check-Endpunkt
Ein Do-Not-Call-Scrub beantwortet vor dem Versand eine Frage: steht diese Nummer auf einer Liste, die eine Kontaktaufnahme blockiert oder einschränkt? Orbit prüft Ihre eigenen Listen (Kontakt-Flags, DNC-Einträge, Suppression, Consent), die plattformweite Liste, die US-Bundes-, Staats- und TCR-Feeds sowie mehrere internationale staatliche Register – und dieselbe Kette, die der Versandpfad durchsetzt, ist als API lesbar, sodass Sie eine kalte Liste vorab prüfen können, ohne einen verstoßenden Versand zu riskieren. Diese Seite ist das Gesamtbild: wann Scrubbing zählt, wie Sie es einschalten, woher die synchronisierten Daten kommen, wie Sie die Feldersource und last_synced_at des Check-Endpunkts lesen und der eine
fail-open-Vorbehalt, den Sie steuern müssen. Für die Versandzeit-Gates,
die das Ergebnis konsumieren, siehe Send Gates.
Alle untenstehenden Endpunkte sind unter
https://api.orbit.devotel.io/api/v1/compliance verwurzelt.
Wann DNC-Scrubbing zählt
DNC-Verpflichtungen stammen aus mehr als einem Register, und sie lagern sich:- US-Bundes-DNC (FTC National Registry). Telemarketing-Anrufe und Marketing-Texte an eine bundesweit registrierte Nummer sind eingeschränkt; ein Scrub gegen das Bundesregister ist die Basisverteidigung vor jeder Outbound-Kampagne.
- US-Bundesstaatsregister. Mehrere Staaten führen zusätzlich zum Bundesregister eigene DNC-Listen. Eine Nummer kann bundesweit fehlen, aber beispielsweise in Pennsylvania registriert sein – ein rein bundesweiter Scrub ist für US-Verkehr daher nicht vollständig.
- TCR Universal Opt-Out. Die universelle Opt-out-Liste des Campaign Registry erfasst Nummern, die A2P-Texting auf Registerebene abgelehnt haben. Ihre Beachtung gehört zur US-10DLC-Texting-Hygiene – unabhängig von Ihrer eigenen Suppressionsliste.
- Internationale staatliche Register. Außerhalb der USA gelten
gleichwertige staatliche Listen – das britische TPS und CTPS,
Australiens Do Not Call Register, Indiens NDNC. Diese sind
jurisdiktionsabhängig: Sie scrubben eine UK-Kampagne gegen
UK-Register, weshalb der Check-Endpunkt einen
country-Filter akzeptiert (unten).
Den Mandantenschalter aktivieren
Der Check-Endpunkt ist pro Organisation standardmäßig aus. Bis Sie sich anmelden – oder bis Orbit einen Feed für die Plattform synchronisiert hat – gibt der Endpunkt403 DNC_SYNC_NOT_ENABLED
zurück:
dnc_sync_enabled – siehe die
Haltungskarte, die diesen Schalter und
seinen Standardwert aufführt). Ein einziges Umlegen aktiviert sowohl
den Einzelnummer-Check als auch den Bulk-Scrub.
Das Gate geht in den Ruhestand, sobald Feeds synchronisiert sind.
Der Organisations-Schalter ist die Bestätigung, dass Orbit, solange
kein Bundesfeed synchronisiert ist, für Sie nicht gegen das
FTC-Register scrubbt. Sobald die Plattform einen Bundes-,
Staats-, TCR- (oder internationalen) Snapshot synchronisiert hat,
antwortet der Endpunkt direkt und das 403-Gate gilt nicht mehr –
das Feld
federal_feeds_synced auf jeder Antwort sagt Ihnen, in
welchem Zustand Sie sich befinden. Ihre eigene DNC-, Suppressions-
und Consent-Durchsetzung auf dem Versandpfad bleibt in beiden
Fällen unberührt.Woher die Liste kommt (Feed-Verdrahtung)
Die synchronisierten DNC-Daten kommen aus Upstream-Feeds und werden täglich in die plattformweite DNC-Liste aufgefrischt. Was ein Betreiber konfiguriert, bestimmt, welche dersource-Werte Sie vom
Check-Endpunkt zurücksehen.
Dies sind Umgebungsvariablen auf Betreiberebene. Auf der
SaaS-Plattform von Orbit sind sie für Sie gesetzt; der SaaS-Betreiber
steuert, welche Feeds live sind. Unmittelbar relevant sind sie nur,
wenn Sie Orbit selbst hosten – dann konfigurieren Sie sie in Ihrem
Deployment:
DEVOTEL_DNC_FEED_FILE– ein gemountetes Volume, das einen beschafften Bundes-/Staats-/TCR-Snapshot enthält. Der tägliche Sync liest ihn, parst jede ausgeschlossene Nummer und upsertet sie mit Quell-Tag in die plattformweite DNC-Liste (federal_dnc,state_dnc:XXodertcr).DEVOTEL_DNC_FEED_URL– ein authentifizierter Download desselben Snapshots, als Alternative zu einer gemounteten Datei. Die Datei hat Vorrang, wenn beides gesetzt ist.
DEVOTEL_TCR_API_KEY zusammen mit DEVOTEL_TCR_PARTNER_ID –
zieht der tägliche Sync die TCR-Universal-Opt-Out-Registry direkt von
der Partner-API und upsertet sie als source: "tcr". Damit erhalten
Sie den TCR-Scrub aus dem bestehenden TCR-Abonnement ohne
Out-of-band-CSV.
Derselbe Snapshot, den der tägliche Sync in die plattformweite
DNC-Liste schreibt, wird beim Start der API auch in den Speicher
geladen, sodass der Check-Endpunkt eine Bundes-/Staats-/TCR-Abfrage
beantworten kann, ohne auf den nächsten täglichen Schreiblauf zu
warten.
federal_feeds_synced: true auf der Antwort bedeutet, dass
dieser In-Memory-Feed live ist.Den Check-Endpunkt lesen
GET /compliance/dnc/check meldet, ob eine E.164-Nummer auf einer
DNC-Quelle steht, die der Versandpfad durchsetzt. Er ist schreibgeschützt
– er führt keinen Versand durch.
"on_dnc": false, "source": "none" und eine
leere jurisdictions zurück.
Die Felder, die die Haltung tragen:
source– welche Quelle den ersten Treffer lieferte, einer vonfederal_dnc,state_dnc(ein US-Staatsregister),tcr(das TCR Universal Opt-Out),intl_dnc(ein internationales staatliches Register),suppression(Ihre eigene Suppressionsschicht) odernone(auf keiner Liste).jurisdictionslistet jede passende Herkunft, sodass eine Nummer, die sowohl im Bundes- als auch in einem Staatsregister steht, beide sichtbar macht.last_synced_at– der Aktualitäts-Zeitstempel der passenden Quelle: wann der Bundes-/Staats-/TCR-Snapshot (oder die Trefferzeile) zuletzt synchronisiert wurde. Der tägliche Sync stempelt bei jedem Lauf eine Heartbeat-Zeile, sodass dieses Feld für die feed-gestützten Quellen immer ein „zuletzt synchronisiert”-Signal trägt, statt still zu werden, wenn keine Zeile passt. Ihre eigenen Suppressions-/Consent-Quellen haben keinen Sync; bei einem reinen Suppressions-Treffer spiegelt das Feld das Opt-out-Ereignis selbst.federal_feeds_synced/intl_feeds_synced– ob die API tatsächlich einen US-Bundes-/Staats-/TCR-Snapshot bzw. einen internationalen Staatsregister-Snapshot aufgenommen hat. Lesen Sie diese auf jeder Antwort: Sie unterscheiden „die Nummer ist sauber” von „die Nummer ist sauber und ein Bundes-Scrub hat diese Antwort gestützt”.
country (ISO alpha-2) hinzu, um
die internationale Registerabfrage auf eine Jurisdiktion
einzugrenzen:
country=GB können nur UK-Register (TPS/CTPS) einen
internationalen Treffer liefern – eine UK-gebundene Kampagne wird nie
über den Eintrag eines unbeteiligten Landes gemeldet.
Bulk. Um eine ganze Liste oder Kampagnenzielgruppe in einem Aufruf
zu scrubben, verwenden Sie POST /compliance/dnc/scrub mit einem
phones-Array (bis zu 500 Nummern pro Anfrage; Duplikate werden
entfernt). Es führt dieselbe Kette pro Nummer aus und gibt
Einzelergebnisse plus on_dnc- / clear-Zählwerte zurück. Dasselbe
Organisations-Gate gilt.
Wie die Versandseite es konsumiert
Der Check-Endpunkt ist ein Lesen derselben Kette, die der Versandpfad durchsetzt. Sie verdrahten den Scrub nicht in Ihre Versendungen – Orbit tut das bereits:- Messaging (SMS / MMS / WhatsApp / …). Vor dem Dispatch beantwortet der Versandpfad „ist dieser Empfänger ausgeschlossen?” gegen dieselben DNC-Quellen – Ihr Kontakt-DNC-Flag, Ihre DNC-Liste, die Suppressionsliste (das kanalübergreifende STOP-Signal), die plattformweite DNC-Liste (wo der tägliche Bundes-/Staats-/TCR-Feed landet) und aufgezeichnete Consent-Opt-outs. Ein Treffer verwirft den Versand.
- Voice / Dialer. Der Dialer führt dieselbe Compliance-Kette vor dem Anrufaufbau aus – kanalübergreifendes STOP, Kontakt-DNC, Plattform-DNC und Consent – sodass eine per SMS ausgeschlossene Nummer anschließend nicht voice-gewählt wird. Der Versandpfad versagt geschlossen (fail-closed): Kann der Compliance-Check selbst nicht abgeschlossen werden, wird der Anruf verschoben statt gewählt.
Der fail-open-Vorbehalt
Der Leseendpunkt ist auf der Quellschicht fail-open: Ist eine DNC-Quelle nicht abfragbar, setzt der Check mit den anderen fort und gibt die beste verfügbare Antwort zurück. Die konkrete Konsequenz, die Sie verstehen müssen:
Solange kein Bundesfeed synchronisiert ist, wird eine Nummer, die
nur im FTC-Bundesregister steht, als sauber zurückgelesen
(on_dnc: false).
Deshalb ist der Endpunkt bis zu Ihrer Anmeldung gated, und deshalb
reist federal_feeds_synced auf jeder Antwort mit. Zwei operative
Regeln folgen:
- Behandeln Sie ein sauberes Ergebnis nicht als bundesweite
Safe-Harbor, sofern nicht
federal_feeds_synced: true. Ein sauberer Befund mitfederal_feeds_synced: falsebedeutet nur, dass Ihre eigenen Listen, Suppression, Consent und die Plattformliste die Nummer nicht gemeldet haben. - Das strikte Gate ist der Versandpfad. Der Lesepfad ist per Design fail-open, der Versandpfad nicht. Ein falsch negatives Ergebnis einer Vorab-Abfrage wird nie zu einem Versand – die Versandzeit-Kette prüft dieselben Quellen erneut und blockiert, was sie findet.
federal_feeds_synced: false als
„kein Bundes-Scrub stützt diese Antwort bislang”, und berücksichtigen
Sie das bei der Entscheidung, ob Sie die Vorprüfung für eine
US-Kampagne heranziehen. Selbsthoster schließen die Lücke, indem sie
einen Feed konfigurieren (oben).
Vor einer Kampagne verifizieren
Prüfen Sie eine Kampagnenzielgruppe mit dem Bulk-Scrub vorab und handeln Sie dann nach den Befunden:on_dnc: true-Nummern vor dem Versand aus der
Zielgruppe. Prüfen Sie federal_feeds_synced / intl_feeds_synced auf
derselben Antwort, um zu wissen, welche Register die Befunde
tatsächlich gestützt haben, und prüfen Sie last_synced_at pro
Ergebnis, um die Aktualität der Daten zu bestätigen. Für eine größere
Liste blättern Sie sie in 500er-Blöcken durch.
Siehe auch:
- Send Gates – die Ruhezeiten- / DNC- / RND- / RMD-Versandzeit-Gates und der Notfall-Stopp.
- TCPA Known-Litigator Gate – der Empfängerprovenienz-Check, der den DNC-Scrub für das US-TCPA-Risiko ergänzt.
- Batch DNC Pre-Flight Scrubbing – der Kampagnen-Workflow um den Bulk-Scrub: Gating, Chunking und Routing gemeldeter Nummern.
- Opt-Out & Suppression Lists – wie das STOP eines Empfängers auf der Suppressionsschicht landet, die die DNC-Kette liest.
- Ihre Mandanten-Compliance-Haltung –
die Schalterkarte, einschließlich der
dnc_sync_enabled-Zeile dieser Seite.