다음은 이벤트 및 잠재고객 업로드의 상태를 확인하고 데이터 문제를 식별하는 데 권장되는 워크플로입니다.
- 이벤트를 전송하거나 공유 대상 그룹 구성원을 전송 또는 삭제하는 요청을 실행합니다.
- 각
IngestEventsResponse
,IngestAudienceMembersResponse
또는RemoveAudienceMembersResponse
에서request_id
를 캡처합니다. - 각
request_id
에 대해RetrieveRequestStatus
요청을 전송합니다. - 각
RetrieveRequestStatusResponse
를 검토하여 업로드가 올바르게 작동하는지 확인하고 데이터 문제를 파악합니다. - 데이터 문제 수정
- 1단계로 돌아가 업로드와 관련된 모든 문제가 해결될 때까지 반복합니다.
요청 구성
RetrieveRequestStatusRequest
에는 단일 request_id
필드가 있습니다. 인제션 요청을 보낼 때 캡처한 요청 ID마다 하나의 요청을 보냅니다.
응답 검토
RetrieveRequestStatusResponse
의 request_status_per_destination
에는 해당 수집 요청의 각 대상에 대한 별도의 항목이 포함됩니다.
예를 들어 IngestAudienceMembersRequest
에 destinations
목록의 항목이 3개 포함되어 있어 3개의 서로 다른 잠재고객에게 데이터를 전송하는 경우 상태 응답에는 request_status_per_destination
의 항목이 3개 포함됩니다 (잠재고객당 항목 1개).
전체 대상 상태 확인
첫 번째 단계로 request_status
필드를 확인하여 Data Manager API가 RequestStatusPerDestination
의 destination
데이터를 처리했는지 확인합니다. request_status
의 가능한 값은 다음과 같습니다.
PROCESSING
: 대상의 데이터가 아직 처리 중입니다.SUCCESS
: 대상에 대한 요청 처리가 오류 없이 완료되었습니다.FAILURE
: 오류로 인해 대상의 모든 레코드가 실패했습니다.PARTIAL_SUCCESS
: 대상의 일부 레코드는 성공했지만 오류로 인해 다른 레코드는 실패했습니다.
대상별 이벤트 또는 잠재고객 상태 확인
수집 요청 유형에 해당하는 상태 필드를 검사합니다. 각 RequestStatusPerDestination
에는 다음 필드 중 하나만 설정됩니다.
이벤트 수집 상태
요청이 IngestEventsRequest
인 경우 events_ingestion_status
필드가 채워집니다.
IngestEventStatus
의 record_count
를 확인하여 수신된 총 레코드 수가 예상과 일치하는지 확인합니다. record_count
에는 성공한 레코드와 실패한 레코드가 모두 포함됩니다.
잠재고객 구성원 수집 상태
요청이 IngestAudienceMembersRequest
인 경우 audience_members_ingestion_status
필드가 채워집니다. 다음은 각 유형의 잠재고객 데이터를 확인할 수 있는 IngestAudienceMembersStatus
필드입니다. 이 필드 중 하나만 설정됩니다.
user_data_ingestion_status
IngestUserDataStatus
의record_count
를 확인하여 수신된 총 레코드 수가 예상과 일치하는지 확인합니다.record_count
에는 성공한 레코드와 실패한 레코드가 모두 포함됩니다.user_identifier_count
를 확인하여 수신된 사용자 식별자 수가 예상과 일치하는지 확인합니다.요청에 충분한 수의 레코드가 있는 경우
upload_match_rate_range
에는 요청의 레코드에 대한 일치율 범위가 포함됩니다.mobile_data_ingestion_status
IngestMobileDataStatus
의record_count
를 확인하여 수신된 총 레코드 수가 예상과 일치하는지 확인합니다.record_count
에는 성공한 레코드와 실패한 레코드가 모두 포함됩니다.mobile_id_count
를 확인하여 수신된 모바일 ID 수가 예상과 일치하는지 확인합니다.pair_data_ingestion_status
IngestPairDataStatus
의record_count
를 확인하여 수신된 총 레코드 수가 예상과 일치하는지 확인합니다.record_count
에는 성공한 레코드와 실패한 레코드가 모두 포함됩니다.pair_id_count
를 확인하여 수신된 페어링 ID 수가 예상과 일치하는지 확인합니다.
잠재고객 구성원 삭제 상태
요청이 RemoveAudienceMembersRequest
인 경우 audience_members_removal_status
필드가 채워집니다. 다음은 각 유형의 잠재고객 데이터를 확인할 수 있는 RemoveAudienceMembersStatus
필드입니다. 이 필드 중 하나만 설정됩니다.
user_data_removal_status
- 사용자 데이터의 삭제 상태입니다.
mobile_data_removal_status
- 모바일 데이터의 삭제 상태입니다.
pair_data_removal_status
- PAIR 데이터의 삭제 상태입니다.
record_count
를 확인하여 수신된 총 레코드 수가 예상과 일치하는지 확인합니다. record_count
에는 성공한 레코드와 실패한 레코드가 모두 포함됩니다.
또한 user_identifier_count
, mobile_id_count
또는 pair_id_count
를 확인하여 수신된 사용자 식별자, 모바일 ID 또는 PAIR ID의 총 개수를 확인합니다.
경고 및 오류 확인
대상 및 요청 유형의 상태 필드 외에도 RetrieveRequestStatusResponse
에는 요청의 경고 및 오류 분류가 포함됩니다.
- 오류는 API가 레코드를 완전히 거부했음을 나타냅니다.
- 경고는 API가 레코드를 거부하지는 않았지만 레코드 데이터의 일부를 무시해야 했음을 나타냅니다.
예를 들어 Event
에 암호화된 UserIdentifier
데이터와 gclid
과 같은 AdIdentifiers
이 포함되어 있고 UserIdentifier
데이터를 복호화할 수 없는 경우 데이터 관리 도구 API는 여전히 AdIdentifiers
을 사용하여 레코드를 처리하지만 PROCESSING_WARNING_REASON_USER_IDENTIFIER_DECRYPTION_ERROR
경고를 반환합니다.
하지만 Event
에 AdIdentifiers
이 포함되어 있지 않고 UserIdentifier
데이터를 복호화할 수 없는 경우 유효한 Event
에는 ad_identifiers
또는 user_data
중 하나 이상이 있어야 하므로 Data Manager API는 전체 레코드를 거부하고 PROCESSING_ERROR_REASON_USER_IDENTIFIER_DECRYPTION_ERROR
오류를 보고합니다.
다음은 경고 및 오류 정보가 포함된 응답 필드입니다.
warning_info
WarningCount
객체 목록입니다. 각WarningCount
에는 경고 유형이 포함된reason
와 해당 유형의 경고가 있는 레코드 수를 나타내는record_count
가 포함됩니다.error_info
ErrorCount
객체 목록입니다. 각ErrorCount
에는 오류 유형이 포함된reason
와 해당 오류 유형으로 인해 실패한 레코드 수를 나타내는record_count
가 포함됩니다.