Sau đây là quy trình công việc được đề xuất để xác minh tình trạng của sự kiện và lượt tải lên đối tượng, đồng thời xác định các vấn đề về dữ liệu.
Đưa ra yêu cầu gửi sự kiện hoặc gửi hoặc xoá thành viên đối tượng.
Kiểm tra trạng thái chung của từng yêu cầu. Yêu cầu thành công có
Statusvớicodebằng0(giá trị enumOK, phản hồi HTTP200 OK) và trả vềIngestEventsResponse,IngestAudienceMembersResponsehoặcRemoveAudienceMembersResponse.Nếu yêu cầu không thành công, hãy sửa đổi yêu cầu để giải quyết lỗi và gửi lại yêu cầu.
Nếu yêu cầu thành công, hãy ghi lại
request_idcủa phản hồi để bạn có thể dùng mã này để truy xuất thông tin chẩn đoán ở bước tiếp theo.Gửi yêu cầu
RetrieveRequestStatuscho mỗirequest_idthành công.Xem xét từng
RetrieveRequestStatusResponseđể xác nhận rằng các tệp tải lên của bạn đang hoạt động đúng cách và xác định mọi vấn đề về dữ liệu.Khắc phục các vấn đề về dữ liệu.
Quay lại bước 1 và lặp lại cho đến khi bạn giải quyết xong tất cả vấn đề với tệp tải lên.
Tạo yêu cầu
RetrieveRequestStatusRequest có một trường request_id duy nhất. Gửi một yêu cầu cho mỗi mã nhận dạng yêu cầu thành công mà bạn đã ghi lại khi gửi yêu cầu truyền dữ liệu.
Xem câu trả lời
request_status_per_destination trong RetrieveRequestStatusResponse chứa một mục riêng cho từng đích đến trong yêu cầu nhập tương ứng.
Ví dụ: nếu IngestAudienceMembersRequest của bạn chứa 3 mục trong danh sách destinations để gửi dữ liệu đến 3 đối tượng khác nhau, thì phản hồi trạng thái sẽ chứa 3 mục trong request_status_per_destination (mỗi đối tượng một mục).
Kiểm tra trạng thái tổng thể của đích đến
Bước đầu tiên, hãy kiểm tra trường request_status để xác định xem Data Manager API đã hoàn tất việc xử lý dữ liệu cho destination của RequestStatusPerDestination hay chưa. Sau đây là các giá trị có thể có của request_status:
PROCESSING: Dữ liệu cho đích đến vẫn đang được xử lý.SUCCESS: Yêu cầu xử lý cho đích đến đã hoàn tất mà không gặp lỗi nào.FAILURE: Tất cả bản ghi cho đích đến đều không thành công do lỗi.PARTIAL_SUCCESS: Một số bản ghi cho đích đến đã thành công, nhưng những bản ghi khác không thành công do lỗi.
Kiểm tra trạng thái sự kiện hoặc đối tượng theo từng đích đến
Kiểm tra trường trạng thái tương ứng với loại yêu cầu truyền dữ liệu. Chỉ có một trong các trường sau được đặt trên mỗi RequestStatusPerDestination:
Trạng thái nhập sự kiện
Trường events_ingestion_status sẽ được điền nếu yêu cầu là một IngestEventsRequest.
Kiểm tra record_count của IngestEventStatus để xác nhận rằng tổng số bản ghi nhận được khớp với mong đợi của bạn. record_count bao gồm cả bản ghi thành công và không thành công.
Trạng thái nhập thành viên đối tượng
Trường audience_members_ingestion_status sẽ được điền nếu yêu cầu là một IngestAudienceMembersRequest. Dưới đây là trường IngestAudienceMembersStatus để kiểm tra từng loại dữ liệu đối tượng. Chỉ có một trong số các trường này được đặt.
user_data_ingestion_statusKiểm tra
record_countcủaIngestUserDataStatusđể xác nhận rằng tổng số bản ghi nhận được khớp với mong đợi của bạn.record_countbao gồm cả bản ghi thành công và không thành công.Kiểm tra
user_identifier_countđể xác nhận số lượng giá trị nhận dạng người dùng nhận được có khớp với kỳ vọng của bạn hay không.Nếu yêu cầu có đủ số lượng bản ghi, thì
upload_match_rate_rangesẽ chứa phạm vi tỷ lệ trùng khớp cho các bản ghi trong yêu cầu.mobile_data_ingestion_statusKiểm tra
record_countcủaIngestMobileDataStatusđể xác nhận rằng tổng số bản ghi nhận được khớp với mong đợi của bạn.record_countbao gồm cả bản ghi thành công và không thành công.Kiểm tra
mobile_id_countđể xác nhận số lượng mã nhận dạng thiết bị di động nhận được có khớp với kỳ vọng của bạn hay không.pair_data_ingestion_statusKiểm tra
record_countcủaIngestPairDataStatusđể xác nhận rằng tổng số bản ghi nhận được khớp với mong đợi của bạn.record_countbao gồm cả bản ghi thành công và không thành công.Kiểm tra
pair_id_countđể xác nhận số lượng mã nhận dạng PAIR nhận được có đúng như bạn mong đợi hay không.
Trạng thái xoá thành viên khỏi đối tượng
Trường audience_members_removal_status sẽ được điền sẵn nếu yêu cầu là RemoveAudienceMembersRequest. Sau đây là trường RemoveAudienceMembersStatus cần kiểm tra cho từng loại dữ liệu đối tượng. Chỉ có một trong số các trường này được đặt.
user_data_removal_status- Trạng thái xoá đối với dữ liệu người dùng.
mobile_data_removal_status- Trạng thái xoá đối với dữ liệu di động.
pair_data_removal_status- Trạng thái xoá đối với dữ liệu PAIR.
Kiểm tra record_count để xác nhận rằng tổng số bản ghi nhận được khớp với kỳ vọng của bạn. record_count bao gồm cả bản ghi thành công và bản ghi không thành công.
Ngoài ra, hãy kiểm tra user_identifier_count, mobile_id_count hoặc pair_id_count để xác nhận tổng số giá trị nhận dạng người dùng, mã nhận dạng thiết bị di động hoặc mã PAIR đã nhận được.
Kiểm tra cảnh báo và lỗi
Ngoài các trường trạng thái cho đích đến và loại yêu cầu, RetrieveRequestStatusResponse còn chứa thông tin chi tiết về các cảnh báo và lỗi cho yêu cầu.
- Lỗi cho biết API đã hoàn toàn từ chối bản ghi.
- Cảnh báo cho biết API không từ chối bản ghi, nhưng API phải bỏ qua một phần dữ liệu của bản ghi.
Ví dụ: nếu Event chứa dữ liệu UserIdentifier đã mã hoá và AdIdentifiers chẳng hạn như gclid, đồng thời không thể giải mã dữ liệu UserIdentifier, thì Data Manager API vẫn xử lý bản ghi bằng AdIdentifiers nhưng trả về cảnh báo PROCESSING_WARNING_REASON_USER_IDENTIFIER_DECRYPTION_ERROR.
Tuy nhiên, nếu Event không chứa AdIdentifiers và không thể giải mã dữ liệu UserIdentifier, thì Data Manager API sẽ từ chối toàn bộ bản ghi và báo cáo lỗi PROCESSING_ERROR_REASON_USER_IDENTIFIER_DECRYPTION_ERROR vì Event hợp lệ phải có ít nhất một trong các ad_identifiers hoặc user_data.
Sau đây là các trường phản hồi chứa thông tin cảnh báo và lỗi.
warning_info- Danh sách các đối tượng
WarningCount. MỗiWarningCountchứa mộtreasoncó loại cảnh báo và mộtrecord_countcho biết số lượng bản ghi có cảnh báo thuộc loại đó. error_info- Danh sách các đối tượng
ErrorCount. MỗiErrorCountchứa mộtreasonvới loại lỗi và mộtrecord_countcho biết số lượng bản ghi không thành công do loại lỗi đó.