Hier finden Sie den empfohlenen Workflow, um den Status Ihrer Event- und Zielgruppen-Uploads zu prüfen und Probleme mit Ihren Daten zu ermitteln.
Sie können Anfragen zum Senden von Ereignissen oder zum Senden oder Entfernen von Zielgruppenmitgliedern stellen.
Prüfen Sie den Gesamtstatus der einzelnen Anfragen. Eine erfolgreiche Anfrage hat eine
Statusmitcodegleich0(Enum-WertOK, HTTP-Antwort200 OK) und gibt eineIngestEventsResponse,IngestAudienceMembersResponseoderRemoveAudienceMembersResponsezurück.Wenn eine Anfrage nicht erfolgreich ist, ändern Sie sie, um den Fehler zu beheben, und senden Sie sie noch einmal.
Wenn eine Anfrage erfolgreich ist, erfassen Sie die
request_idder Antwort, damit Sie sie im nächsten Schritt zum Abrufen von Diagnosedaten verwenden können.Warten Sie 30 Minuten und senden Sie dann für jede erfolgreiche
request_ideineRetrieveRequestStatus-Anfrage.Wiederholen Sie diesen Schritt regelmäßig für jede
request_id, bis der Zielstatus für jedes ZielSUCCESS,PARTIAL_SUCCESSoderFAILUREerreicht. Verwenden Sie einen exponentiellen Backoff-Algorithmus, um zwischen den einzelnen Anfragen zu warten.Prüfen Sie jede
RetrieveRequestStatusResponse, um zu bestätigen, dass Ihre Uploads ordnungsgemäß funktionieren, und um Probleme mit Ihren Daten zu erkennen.Datenprobleme beheben
Kehren Sie zu Schritt 1 zurück und wiederholen Sie die Schritte, bis Sie alle Probleme mit Ihren Uploads behoben haben.
Anfragen senden
Für RetrieveRequestStatusRequest ist ein einzelner request_id-Wert erforderlich. Senden Sie für jede Anfrage-ID, die Sie aus einer erfolgreichen Aufnahme-Anfrage erhalten haben, eine separate Statusanfrage.
Senden Sie die RetrieveRequestStatusRequest regelmäßig mit einem exponentiellen Backoff-Algorithmus, bis die request_status für jedes Ziel in der ursprünglichen Anfrage SUCCESS, FAILURE oder PARTIAL_SUCCESS erreicht. Das kann bis zu 24 Stunden dauern. Einige Anfragen werden von der Data Manager API jedoch möglicherweise schon nach 30 Minuten verarbeitet.
Hier sehen Sie ein Beispiel für eine angemessene anfängliche Wartezeit und Wiederholungskonfiguration, bei der die Liveness und die Kontingentnutzung im Gleichgewicht sind:
| Einstellung | Wert |
|---|---|
| Wartezeit vor der ersten Diagnoseanfrage (Minuten) | 30 |
| Backoff-Multiplikator | 1.3 |
| Maximaler Backoff (Minuten) | 60 (1 Stunde) |
| Maximale Gesamtzeit (Minuten) | 1440 (24 Stunden) |
Hier eine Abfolge von Anfragen und der verstrichenen Zeit mit dieser Konfiguration:
Grafik

Daten
| Versuch | Zeit seit Aufnahmeantrag (hh:mm) | Verzögerung vor dem Versuch | Hinweise |
|---|---|---|---|
| 1 | 00:30 | 30,0 Minuten | Zuerst Statusverfügbarkeit prüfen |
| 2 | 01:09 | 39,0 Min. | |
| 3 | 01:59 | 50,7 Min. | |
| 4 | 02:59 | 60,0 Min. | Die Verzögerung ist jetzt auf 1 Stunde begrenzt |
| 5 | 03:59 | 60,0 Min. | |
| 6 | 04:59 | 60,0 Min. | |
| 7 | 05:59 | 60,0 Min. | |
| 8 | 06:59 | 60,0 Min. | |
| 9 | 07:59 | 60,0 Min. | |
| 10 | 08:59 | 60,0 Min. | |
| 11 | 09:59 | 60,0 Min. | |
| 12 | 10:59 | 60,0 Min. | |
| 13 | 11:59 | 60,0 Min. | 12-Stunden-Markierung |
| 14 | 12:59 | 60,0 Min. | |
| 15 | 13:59 | 60,0 Min. | |
| 16 | 14:59 | 60,0 Min. | |
| 17 | 15:59 | 60,0 Min. | |
| 18 | 16:59 | 60,0 Min. | |
| 19 | 17:59 | 60,0 Min. | |
| 20 | 18:59 | 60,0 Min. | |
| 21 | 19:59 | 60,0 Min. | |
| 22 | 20:59 | 60,0 Min. | |
| 23 | 21:59 | 60,0 Min. | |
| 24 | 22:59 | 60,0 Min. | |
| 25 | 23:59 | 60,0 Min. | Letzte Anfrage vor der maximalen Gesamtzeit von 24 Stunden |
Fügen Sie den Backoff-Verzögerungen eine kleine zufällige Menge an Jitter hinzu, um das „Thundering-Herd“-Problem zu vermeiden, bei dem viele Clients gleichzeitig Wiederholungsversuche starten.
Antworten überprüfen
Die request_status_per_destination in einer RetrieveRequestStatusResponse enthält einen separaten Eintrag für jedes Ziel in der entsprechenden Erfassungsanfrage.
Wenn Ihr IngestAudienceMembersRequest beispielsweise drei Einträge in der Liste destinations enthält, um Daten an drei verschiedene Zielgruppen zu senden, enthält die Statusantwort drei Einträge in request_status_per_destination (einen Eintrag pro Zielgruppe).
Gesamtstatus des Ziels prüfen
Prüfen Sie zuerst das Feld request_status, um festzustellen, ob die Data Manager API die Daten für die destination der RequestStatusPerDestination verarbeitet hat.
Hier sind die möglichen Werte für request_status:
PROCESSING: Die Daten für das Ziel werden noch verarbeitet. Die Warnungen und Fehler werden für das Ziel in dieser Phase noch nicht ausgegeben.SUCCESS: Die Verarbeitung der Anfrage für das Ziel wurde ohne Fehler abgeschlossen. Warnungen prüfen, die während der Verarbeitung gemeldet wurden.FAILURE: Alle Datensätze für das Ziel sind aufgrund von Fehlern fehlgeschlagen. Prüfen Sie auf Warnungen und Fehler, um herauszufinden, warum alle Datensätze fehlgeschlagen sind. Prüfen Sie auch, ob während der Verarbeitung Warnungen ausgegeben wurden.PARTIAL_SUCCESS: Einige Datensätze für das Ziel wurden erfolgreich übertragen, andere jedoch aufgrund von Fehlern nicht. Prüfen Sie auf Fehler, um herauszufinden, warum einige Datensätze fehlgeschlagen sind. Sehen Sie auch nach, ob während der Verarbeitung Warnungen ausgegeben wurden.
Ereignis- oder Zielgruppenstatus nach Zielvorhaben prüfen
Prüfen Sie das Statusfeld, das dem Typ der Aufnahmeanfrage entspricht. In jedem RequestStatusPerDestination ist nur eines der folgenden Felder festgelegt:
Status der Ereignisaufnahme
Das Feld events_ingestion_status wird ausgefüllt, wenn die Anfrage eine IngestEventsRequest war.
Prüfen Sie die record_count von IngestEventStatus, um zu bestätigen, dass die Gesamtzahl der empfangenen Datensätze Ihren Erwartungen entspricht. Die record_count enthält sowohl erfolgreiche als auch fehlgeschlagene Datensätze.
Status der Aufnahme von Zielgruppenmitgliedern
Das Feld audience_members_ingestion_status wird ausgefüllt, wenn die Anfrage eine IngestAudienceMembersRequest war. Hier finden Sie das Feld IngestAudienceMembersStatus, das für die einzelnen Arten von Zielgruppendaten geprüft werden muss. Nur eines dieser Felder ist festgelegt.
user_data_ingestion_statusPrüfen Sie die
record_countderIngestUserDataStatus, um zu bestätigen, dass die Gesamtzahl der empfangenen Datensätze Ihren Erwartungen entspricht. Dierecord_countenthält sowohl erfolgreiche als auch fehlgeschlagene Datensätze.Prüfen Sie
user_identifier_count, um zu bestätigen, dass die Anzahl der empfangenen Nutzer-IDs Ihren Erwartungen entspricht.Wenn die Anfrage eine ausreichende Anzahl von Datensätzen enthielt, enthält
upload_match_rate_rangeden Bereich der Abgleichsrate für Datensätze in der Anfrage.mobile_data_ingestion_statusPrüfen Sie die
record_countderIngestMobileDataStatus, um zu bestätigen, dass die Gesamtzahl der empfangenen Datensätze Ihren Erwartungen entspricht. Dierecord_countenthält sowohl erfolgreiche als auch fehlgeschlagene Datensätze.Prüfen Sie auf der
mobile_id_count, ob die Anzahl der empfangenen mobilen IDs Ihren Erwartungen entspricht.pair_data_ingestion_statusPrüfen Sie die
record_countderIngestPairDataStatus, um zu bestätigen, dass die Gesamtzahl der empfangenen Datensätze Ihren Erwartungen entspricht. Dierecord_countenthält sowohl erfolgreiche als auch fehlgeschlagene Datensätze.Prüfen Sie im
pair_id_count, ob die Anzahl der erhaltenen PAIR-IDs Ihren Erwartungen entspricht.ppid_data_ingestion_statusPrüfen Sie die
record_countderIngestPpidDataStatus, um zu bestätigen, dass die Gesamtzahl der empfangenen Datensätze Ihren Erwartungen entspricht. Dierecord_countenthält sowohl erfolgreiche als auch fehlgeschlagene Datensätze.Prüfen Sie im
ppid_count, ob die Anzahl der empfangenen PPIDs Ihren Erwartungen entspricht.user_id_data_ingestion_statusPrüfen Sie die
record_countderIngestUserIdDataStatus, um zu bestätigen, dass die Gesamtzahl der empfangenen Datensätze Ihren Erwartungen entspricht. Dierecord_countenthält sowohl erfolgreiche als auch fehlgeschlagene Datensätze.Prüfen Sie
user_id_count, um zu bestätigen, dass die Anzahl der empfangenen Nutzer-IDs Ihren Erwartungen entspricht.composite_data_ingestion_statusPrüfen Sie die
record_countderIngestCompositeDataStatus, um zu bestätigen, dass die Gesamtzahl der empfangenen Datensätze Ihren Erwartungen entspricht. Dierecord_countenthält sowohl erfolgreiche als auch fehlgeschlagene Datensätze.Prüfen Sie auf der Seite
data_type_counts, ob die Anzahl der Kennungen Ihren Erwartungen entspricht. In dieser Liste finden Sie eine Aufschlüsselung aller vonDataTypeempfangenen Kennungen (z. B. E-Mail-Adresse, Telefonnummer, Postanschrift und IP-Adresse).Wenn die Anfrage eine ausreichende Anzahl von Datensätzen enthielt, enthält
upload_match_rate_rangeden Bereich der Abgleichsrate für Datensätze in der Anfrage.
Status des Entfernens von Zielgruppenmitgliedern
Das Feld audience_members_removal_status wird ausgefüllt, wenn die Anfrage eine RemoveAudienceMembersRequest war. Hier sehen Sie das Feld RemoveAudienceMembersStatus, das Sie für jeden Typ von Zielgruppendaten prüfen müssen. Nur eines dieser Felder ist festgelegt.
user_data_removal_status- Entfernungsstatus für Nutzerdaten.
mobile_data_removal_status- Entfernungsstatus für mobile Daten.
pair_data_removal_status- Entfernungsstatus für PAIR-Daten.
ppid_data_removal_status- Entfernungsstatus für PPID-Daten.
user_id_data_removal_status- Entfernungsstatus für Nutzer-ID-Daten
composite_data_removal_status- Entfernungsstatus für zusammengesetzte Daten
Prüfen Sie record_count, um zu bestätigen, dass die Gesamtzahl der empfangenen Datensätze Ihren Erwartungen entspricht. Die record_count enthält sowohl erfolgreiche als auch fehlgeschlagene Datensätze.
Prüfen Sie außerdem user_identifier_count, mobile_id_count, pair_id_count, ppid_count oder user_id_count, um die Gesamtzahl der empfangenen Kennungen zu bestätigen.
Prüfen Sie bei zusammengesetzten Daten die data_type_counts, um zu bestätigen, dass die Anzahl der Kennungen Ihren Erwartungen entspricht. In dieser Liste finden Sie eine Aufschlüsselung aller von DataType empfangenen Kennungen (z. B. E‑Mail-Adresse, Telefonnummer, Postanschrift und IP-Adresse).
Warnungen und Fehler prüfen
Zusätzlich zu den Statusfeldern für das Ziel und den Anfragetyp enthält RetrieveRequestStatusResponse eine Aufschlüsselung der Warnungen und Fehler für die Anfrage.
- Ein Fehler bedeutet, dass der Datensatz von der API vollständig abgelehnt wurde.
- Eine Warnung bedeutet, dass die API den Datensatz nicht abgelehnt hat, aber Teile der Daten des Datensatzes ignorieren musste.
Wenn ein Event beispielsweise verschlüsselte UserIdentifier-Daten und AdIdentifiers wie gclid enthält und die UserIdentifier-Daten nicht entschlüsselt werden können, wird der Datensatz von der Data Manager API trotzdem mit dem AdIdentifiers verarbeitet, aber die Warnung PROCESSING_WARNING_REASON_USER_IDENTIFIER_DECRYPTION_ERROR zurückgegeben.
Wenn Event jedoch nicht AdIdentifiers enthält und die UserIdentifier-Daten nicht entschlüsselt werden können, lehnt die Data Manager API den gesamten Datensatz ab und meldet den Fehler PROCESSING_ERROR_REASON_USER_IDENTIFIER_DECRYPTION_ERROR, da ein gültiger Event mindestens ad_identifiers oder user_data enthalten muss.
Hier sind die Antwortfelder, die Warn- und Fehlerinformationen enthalten. Diese Felder werden ausgefüllt, wenn der Gesamtstatus des Ziels SUCCESS, PARTIAL_SUCCESS oder FAILURE erreicht.
warning_infoEine Liste von
WarningCount-Objekten. JederWarningCount-Wert enthält einenreason-Wert mit dem Typ der Warnung und einenrecord_count-Wert, der die Anzahl der Datensätze mit dieser Art von Warnung angibt.Prüfen Sie die
warning_info, auch wenn der Gesamtstatus des ZielsSUCCESSlautet.error_infoEine Liste von
ErrorCount-Objekten. JedesErrorCountenthält einreasonmit dem Fehlertyp und einrecord_count, das die Anzahl der Datensätze angibt, bei denen dieser Fehlertyp aufgetreten ist.