레이블 API
이 문서에서는 레이블 API를 사용하여 Microsoft Dynamics 365 Fraud Protection의 보고 및 모니터링 대시보드에 정보를 보낼 수 있는 방법을 설명합니다.
레이블 API를 사용하면 사기 또는 비사기 신호를 사기 방지로 보낼 수 있습니다. 이 데이터는 모델 학습, 모델 성능 평가 및 보고에 사용됩니다. 레이블 API는 개별 트랜잭션 또는 이벤트 ID 또는 사용자 또는 결제 도구와 같은 엔터티를 사용하여 평가 이벤트에 레이블을 지정하는 일반적인 API입니다.
트랜잭션 또는 이벤트에 대한 일반적인 레이블 시나리오
- 고객이 에스컬레이션한 모든 사기성 트랜잭션
- 검토 팀에서 식별한 사기성 활동 또는 계정 남용
- 모든 오프라인 분석(예: 동작 분석 또는 기존 사기 사건에 대한 검색된 연결)
- 수신되는 TC40/SAFE 신호
- 사용 가능한 최신 정보를 기반으로 비사기로 식별된 후 이전 사기 신호의 반전
- 수신된 환불/환불
- 분쟁 후 차지백 반전
환불 및 환불 API를 사용하여 환불 및 환불과 관련된 정보를 제공하는 것이 좋습니다. 지원되는 이벤트에 대한 자세한 내용은 Dynamics 365 Fraud Protection Service를 참조 하세요.
계정 또는 결제 방법 세부 정보
- 검토 팀에서 식별한 사기성 계정 또는 결제 방법 정보
- 고객이 에스컬레이션하는 계정 인수 시나리오
API 스키마
attribute | Type | 설명 |
---|---|---|
labelObjectType | 열거형 예상 값: PURCHASE, ACCOUNTCREATION, ACCOUNTLOGIN, ACCOUNT, PI, EMAIL |
이 특성은 레이블에 플래그를 지정하려는 방법을 광범위하게 나타냅니다. 예를 들어 단일 트랜잭션을 사기로 표시하거나 모든 사용자 계정의 트랜잭션을 사기성으로 표시할 수 있습니다. 개체 유형에 따라 Fraud Protection은 관련 트랜잭션 또는 이벤트를 사기 또는 비사기로 플래그를 지정합니다. 예를 들어 labelObjectType 값이 PURCHASE, ACCOUNTCREATION 또는 ACCOUNTLOGIN인 경우 Fraud Protection은 특정 트랜잭션에 레이블을 지정합니다. 값이 ACCOUNT 또는 PI인 경우 Fraud Protection은 사용자 계정 또는 결제 수단과 관련된 모든 트랜잭션에 플래그를 지정합니다. |
labelObjectId | 문자열 | labelObjectType 특성의 값에 해당하는 식별자입니다. Fraud Protection은 이 값을 사용하여 관련 트랜잭션 및 이벤트를 찾습니다. 레이블 개체 형식의 ID는 다음과 같습니다.
Fraud Protection은 이 특성을 사용하여 원래 평가 이벤트를 식별하기 때문에 이 특성이 매우 중요합니다. 따라서 값은 원래 트랜잭션 또는 이벤트 ID와 일치해야 합니다. |
labelSource | 문자열 | 레이블 정보의 원본입니다. 일부 제안된 값은 검토 팀에서 사기 레이블을 식별하는 경우 ManualReview 이고 , 고객이 잘못 거부된 트랜잭션에 대해 불만을 제기하는 경우 CustomerEscalation (즉, 가양성)입니다. TC40/SAFE 데이터는 레이블 데이터의 또 다른 원본입니다. |
isFraud | Boolean | 이 특성은 레이블이 사기인지 비사기인지를 나타냅니다. 값이 제공되지 않으면 Fraud Protection은 true를 기본값으로 사용합니다. |
reasonText | 문자열 | 사기 또는 비사기 항목에 레이블을 지정하는 이유입니다. 레이블 원본에 대한 정보가 제한된 경우 이유를 무시해도 됩니다. 또는 레이블 워크플로에 따라 일부 시나리오를 이러한 값 중 일부에 매핑할 수 있습니다. |
labelReasonCodes | 문자열 | 결제 프로세서에서 받은 정규화된 이유 코드 또는 이유 코드입니다. 이유 세부 정보가 없는 경우 이 특성을 무시해도 됩니다. 일부 제안된 값은 프로세서 응답 코드, 은행 응답 코드, 사기 환불, 계정 인수, 결제 수단 사기, 계정 사기, 남용, 친숙한 사기, 계정 자격 증명 유출 및 통과된 계정 보호 검사입니다. |
labelState | 문자열 | 보내는 레이블의 종류입니다. 이 특성은 특히 이전 사기 신호 또는 가양성 신호를 되돌리는 경우에 사용됩니다. 두 경우 모두 isFraud를 false로 설정합니다. 그러나 상태는 가양성 레이블을 식별하는 데 도움이 될 수 있습니다. |
프로세서 | 문자열 | 결제 프로세서의 이름입니다. |
eventTimeStamp | DateTime(ISO 8601 형식) | 레이블 식별 타임스탬프입니다. API가 레이블 검색 프로세스와 직접 통합되고 검토 에이전트가 트랜잭션에 사기로 플래그를 지정하는 즉시 레이블 API를 호출하는 경우 값은 현재 타임스탬프가 될 수 있습니다. 이 값은 여러 레이블이 있는 경우 이벤트 순서를 결정하는 데 특히 중요합니다. 예를 들어 구매 또는 계정 생성 트랜잭션이 사기로 레이블이 지정되었지만 나중에 사기 행위가 아닌 것으로 레이블이 지정된 경우 Fraud Protection은 이 값을 참조하여 두 레이블 중 어느 것이 최신 상태이므로 올바른지 확인합니다. |
effectiveStartDate | DateTime(ISO 8601 형식) | 유효 시작 및 종료 날짜는 해당 레이블의 영향을 특정 기간으로 제한하기 위해 한 트랜잭션보다 넓고 일반적으로 ACCOUNT의 labelObjectType 값이 있는 레이블을 보강하기 위한 것입니다. 예를 들어 계정 손상 시나리오에서 이러한 날짜는 트랜잭션 또는 이벤트에 레이블을 지정하려는 기간을 지정합니다. |
effectiveEndDate | DateTime(ISO 8601) 형식 | 유효 시작 및 종료 날짜는 해당 레이블의 영향을 특정 기간으로 제한하기 위해 하나의 트랜잭션보다 넓은 레이블(일반적으로 ACCOUNT의 labelObjectType 값 포함)을 보강하기 위한 것입니다. 예를 들어 계정 손상 시나리오에서 이러한 날짜는 트랜잭션 또는 이벤트에 레이블을 지정하려는 기간을 지정합니다. |
금액 | Double | 총 사기 금액입니다. 사용할 수 있는 금액이 없는 경우 이 값을 건너뛸 수 있습니다. 예를 들어 계정 만들기 및 로그인 시나리오에서는 연결된 금액이 없을 수 있습니다. 구매 시나리오에서 Fraud Protection은 거래 금액을 사용합니다. |
통화 | 문자열 | 금액과 관련된 3자 ISO(International Organization for Standardization) 통화 코드입니다. |
일반적인 시나리오에 대한 샘플 API 페이로드
시나리오 1
검토 팀은 결제 정보를 확인하여 의심스러운 거래를 식별했습니다.
{
"labelObjectType": "PURCHASE",
"labelObjectId": "<purchase transaction Id, i.e., purchaseId>",
"labelSource": "ManualReview",
"isFraud": true,
"labelState": "Fraud",
"eventTimeStamp": "2022-10-04T16:24:36.045Z",
"_metadata": {
"trackingId": "<guid or identifier>",
"merchantTimeStamp": "2022-10-04T20:44:14.706Z"
}
}
시나리오 2
사용자가 계정에 대한 액세스 권한을 상실했고 악의적인 행위자가 해당 사용자의 자격 증명을 사용하여 로그인했습니다. 나중에 사용자가 자격 증명을 복구하고 손상된 시간 간격을 보고했습니다.
{
"labelObjectType": "ACCOUNT",
"labelObjectId": "<userId>",
"labelSource": "CustomerEscalation",
"isFraud": true,
"reasonText": "AccountCompromise",
"labelState": "Fraud",
"eventTimeStamp": "2022-10-04T12:21:46.326Z",
"effectiveStartDate": "2022-10-03T10:00:00.000Z",
"effectiveEndDate": "2022-10-04T12:16:00.000Z",
"_metadata": {
"trackingId": "<guid or identifier>",
"merchantTimeStamp": "2022-10-04T12:21:46.326Z"
}
}
시나리오 3
의심스러운 사용자 로그인을 차단했고 나중에 사용자가 지원 팀에 전화를 걸어 차단을 해제했습니다. 지원 팀에서 증거를 검토하고, 사용자가 합법적인 사용자인지 확인하고, 사용자 차단을 해제하는 경우 FalsePositive 상태의 레이블을 보내야 합니다.
{
"labelObjectType": "ACCOUNT",
"labelObjectId": "<userId>",
"labelSource": "CustomerEscalation",
"isFraud": false,
"reasonText": "AccountCompromise",
"labelState": "FalsePositive",
"eventTimeStamp": "2022-10-04T16:21:46.326Z",
"_metadata": {
"trackingId": "<guid or identifier>",
"merchantTimeStamp": "2022-10-04T16:21:46.326Z"
}
}