PHI-nahe Audiences registrieren
Das PHI-nahe Audience-Register ist die Liste Ihrer Organisation von Kontakt-Listen und Segmenten, deren Mitglieder PHI tragen — zum Beispiel Patienten, die in Behandlungs-Outreach eingewilligt haben. Die Referenz HIPAA-Steuerungen dokumentiert die zwei Endpunkte; diese Anleitung führt durch deren produktiven Einsatz: was zu designieren ist, wie die Schreib-Semantik funktioniert, was beim Kampagnen-Launch passiert und wie der Audit-Trail zu lesen ist. Das Register ist mandanteneigen. Devotel designiert nie Audiences in Ihrem Namen und scopet PHI nie für Sie — die Designierungen sind Ihre Attestation, sie sind BAA-geskartete Steuerungen, die Sie betreiben, und sie wirken erst, sobald HIPAA für Ihre Organisation im Umfang ist. Wenn Sie das BAA noch nicht ausgeführt und den HIPAA-Modus noch nicht aktiviert haben, führen Sie zuerst die Sequenz HIPAA-Onboarding aus.1. Wann eine Audience PHI-nah zu markieren ist
Die Designation folgt der Provenance: markieren Sie die Audiences, deren Quelldaten PHI enthalten, unabhängig davon, was eine einzelne Kampagne an sie sendet. Eine Audience ist PHI-nah wegen der Herkunft ihrer Mitglieder — ein Patienten-Termin-Erinnerungs-Import, eine Behandlungs-Outreach-Opt-in-Liste — nicht wegen des Texts, den Sie diese Woche zufällig schreiben. Deshalb liegt die Designation auf der Audience selbst und nicht auf einer Kampagne: welche Kampagne die Audience auch aufnimmt, die Designation reist mit. Markieren Sie eine Audience als PHI-nah, wenn:- Ihre Mitglieder aus einem System importiert wurden, das PHI hält (ein EHR-Export, eine Patientenportal-Opt-in-Synchronisation).
- Die Liste oder das Segment anhand PHI-tragender Kriterien gefiltert oder zusammengestellt ist (diagnose-nahe Tags, Behandlungs-Kohorten).
- Die Datenkarte Ihres Compliance-Beauftragten die Audience als PHI im Umfang erfasst.
owner- oder admin-Rolle — dasselbe Gate, das die BAA-Endpunkte nutzen. Ein developer oder viewer erhält 403. Halten Sie die Designations-Entscheidung bei Ihrem HIPAA-Compliance-Beauftragten; die Plattform zeichnet wer das Register bei jedem Schreibvorgang geändert hat, auf (siehe Audit-Trail).
2. Listen- versus Segment-IDs wählen
Das Register hält Audience-IDs — jeder Eintrag ist entweder eine Kontakt-Listen-ID oder eine Segment-ID, als reiner String übergeben. Der Kampagnen-Launch-Precheck löst nur Audiences vom Typlist und segment gegen das Register auf; pro Kontakt zusammengestellte Audiences (alle Kontakte, CSV-Upload, manuelle Eingabe) werden stattdessen zum Sende-Zeitpunkt Empfänger-für-Empfänger bewertet und haben daher keine zu designierende Register-ID.
Um die ID für eine Designation abzuleiten:
id-Feld der Liste oder des Segments, das Sie designieren. IDs sind nach dem Trimmen 1–128 Zeichen; alles Längere oder Leere wird beim Schreiben mit 422 abgelehnt. Das Register hält maximal 500 IDs pro Organisation — ein PUT mit mehr gibt 422 zurück.
Designieren Sie die Quell-ID, nicht eine nachgelagerte Kopie. Wenn eine PHI-tragende Liste ein abgeleitetes Segment speist, entscheiden Sie, ob das abgeleitete Segment ebenfalls PHI enthält, und designieren Sie es explizit — der Precheck prüft die ID, die die Kampagne tatsächlich referenziert, und nichts sonst.
3. Der atomare PUT-Swap
Das Register hat eine Schreiboperation: einen Full-Replacement-PUT. Es gibt kein PATCH, kein pro-ID DELETE — jeder Schreibvorgang ersetzt den gesamten designierten Satz in einer einzigen atomaren Anweisung, sodass ein gleichzeitiger GET nie ein teilweise angewandtes Update sieht.
GET das aktuelle Register, fügen Sie Ihre ID im Ergebnis hinzu oder entfernen Sie sie, und PUT den gesamten Satz zurück. Bauen Sie den Body nie nur aus lokalem Zustand — Sie würden still Designierungen fallen lassen, die ein anderer Betreiber hinzugefügt hat.
Um eine Designation zu liftieren, PUT das Register ohne diese ID. Um erneut zu designieren, PUT es mit der wieder hinzugefügten ID. Einzelne IDs, die einen Swap überleben, bleiben unverändert; nur die Zugehörigkeit zum Satz zählt.
4. Wie der Launch-Precheck das Register nutzt
Zwei Gates schützen PHI an verschiedenen Punkten, und das Register speist das erste:- Launch-Precheck (Kampagnen-Ebene, hartes Gate). Bevor eine Kampagne Entwurf/geplant verlässt, löst der Precheck ihre Audience-ID gegen das Register auf. Eine designierte ID plus ein BAA, das nicht
executedund in-Laufzeit ist, verweigert den Launch mit422 HIPAA_BAA_REQUIRED— bevor ein einziger Empfänger angemeldet wird. Wenn der Compliance-Zustand nicht gelesen werden kann, versagt der Precheck geschlossen mit500 HIPAA_BAA_GATE_DB_FAIL, statt die Audience still zuzulassen. - Pro-Empfänger-Sende-Gate (Nachrichten-Zeit, unverändert). Das bestehende Send-Gate gilt weiterhin für jeden Einzelversand und konsultiert das Register nicht — Legacy-Einzelversende werden allein von ihm gesteuert.
details.reason sagt Ihnen genau, welcher BAA-Zustand ihn freigibt:
Es gibt zwei Wege freizugeben, und sie sind Compliance-Entscheidungen, nicht Plattform-Entscheidungen:
- Das BAA auflösen — ausführen oder erneut ausführen, sodass das Gate passiert. Das ist der richtige Weg, wenn die Audience wirklich PHI trägt.
- Die Designation entfernen —
PUTdas Register ohne die Audience-ID. Das ist der richtige Weg nur, wenn die Audience versehentlich designiert war. Eine Designation zu liften, um das Gate zu umgehen, ist in Ihrem eigenen Audit-Protokoll sichtbar.
5. Audit-Trail
Zwei Datensatz-Klassen landen im Audit-Protokoll Ihrer Organisation:hipaa.phi_audiences.set— eine Zeile proPUT, die den handelnden Benutzer, die Organisation und den vollen Post-Schreib-ID-Satz aufzeichnet. Das ist Ihre Versionierungsgeschichte: das Register hat keine separate Revisions-Ressource — die Sequenz von Audit-Zeilen ist der Versionsverlauf. Um zu rekonstruieren, was zu einem Zeitpunkt designiert war, gehen Sie dieset-Zeilen zurück; um zurückzusetzen,PUTden ID-Satz einer früheren Zeile.HIPAA_BAA_REQUIRED-Launch-Verweigerungen — jeder blockierte Launch wird mit dem verweigernden Grund und der bewerteten Audience geloggt. Diese Zeilen verdoppeln als Ihre Incident-Queue: eine Verweigerung bedeutet, dass entweder Compliance-Arbeit aussteht (BAA nicht ausgeführt) oder eine Designation und eine Kampagne uneinig sind.
- Lesen Sie das
details.reasonunddetails.audience.idder Verweigerung. - Prüfen Sie
GET /api/v1/compliance/baa/— wenn das BAApending/expired/nicht ausgeführt ist, lösen Sie es über den BAA-Ablauf auf. - Wenn das BAA gesund ist, prüfen Sie, ob die Audience überhaupt designiert sein sollte:
GET /api/v1/compliance/hipaa/phi-audiencesund vergleichen Sie mit Ihrer Datenkarte. Liftieren Sie eine fehlerhafte Designation mit einem Swap (PUTohne die ID). - Zeichnen Sie das Ergebnis in Ihrem eigenen Incident-Register auf — die Audit-Zeilen oben sind die Belege, die Sie zitieren.
6. Konfliktbehebung bei gleichzeitigen Überschrieben
Der Register-PUT selbst gibt nie 409 zurück — der atomare Einzel-Anweisungs-Swap bedeutet, dass ein Schreibvorgang immer committet, und der letzte Schreiber gewinnt. Das Konfliktrisiko ist verlorene Updates zwischen Betreibern, nicht abgelehnte Schreibvorgänge:
- Betreiber A und Betreiber B beide
GETdas Register. - A fügt
list_aaahinzu undPUTs. B — von A’s vorherigem Snapshot arbeitend — fügtlist_bbbhinzu undPUTs. - B’s Swap lässt still
list_aaafallen.
- Unmittelbar vor dem Schreiben lesen. Halten Sie das Read-Modify-Write-Fenster kurz; tragen Sie ein geholtges Register nicht über eine Bearbeitungssitzung hinweg — re-
GET, wenn Sie bereit zumPUTsind. - Nach dem Schreiben verifizieren.
GETerneut und bestätigen Sie, dass Ihre ID vorhanden ist und keine unverbundene Designation verloren ging. Wenn etwas verschwunden ist, zeigen diehipaa.phi_audiences.set-Zeilen des Audit-Protokolls, wessen Schreibvorgang es überschrieben hat und welcher Satz wiederherzustellen ist. - Register-Bearbeitungen organisatorisch serialisieren. Da Designation eine Compliance-Attestation ist, leiten Sie Bearbeitungen durch eine Rolle (den Compliance-Beauftragten), statt sie über Betreiber zu verteilen — ein prozeduraler Fix, der das Race ganz beseitigt.
422 statt Erfolg sehen, ist die Ursache Validierung, nicht Konflikt: mehr als 500 IDs, eine leere ID nach dem Trimmen oder eine ID über 128 Zeichen. Trimmen Sie und versuchen Sie es mit dem vollen Satz erneut.
Siehe auch
- PHI-nahe Audience-Designationen — die Endpunkt-Referenz für den Register-Vertrag (Obergrenze, Replace-Semantik, Audit-Aktion)
- HIPAA-Compliance-Steuerungen — die volle Steuerungs-Referenz, die das Register speist
- BAA — Business Associate Agreement — der Lebenszyklus, den der Launch-Precheck durchsetzt
- HIPAA-Onboarding: vom BAA bis zur Audit-Bereitschaft — die Sequenz, die einen Gesundheits-Workspace zur Audit-Bereitschaft bringt, bevor Sie Audiences designieren
- Send-Gates — das Pro-Empfänger-Gate, das den Launch-Precheck ergänzt