- HTTP 요청
- 요청 본문
- 응답 본문
- OtpContext
<ph type="x-smartling-placeholder">
- </ph>
- JSON 표현
- 비어 있음
- SendOtpResultCode
통합업체가 전화번호로 OTP를 전송하도록 요청합니다.
통합업체가 SUCCESS
를 반환하면 Google은 전화번호로 SMS가 전송되리라 예상합니다.
Google에서는 사용자가 계정을 Google에 처음 연결할 때만 accountPhoneNumber
를 제공합니다. 그 후에는 모든 후속 호출에서 associationId
만 전송됩니다.
요청을 처리하는 동안 엔드포인트에서 오류가 발생하면 이 엔드포인트의 응답 본문은
유형이어야 합니다.ErrorResponse
요청의 예는 다음과 같습니다.
{
"requestHeader": {
"protocolVersion": {
"major": 1,
"minor": 0,
"revision": 0
},
"requestId": "0123434-otp-abc",
"requestTimestamp": "1502545413026"
},
"accountPhoneNumber": "+918067218010",
"smsMatchingToken": "AB12345678C",
"otpContext": {
"association": {}
}
}
응답 예는 다음과 같습니다.
{
"responseHeader": {
"responseTimestamp": "1502545413098"
},
"paymentIntegratorSendOtpId": "99==ABC EF",
"result": "SUCCESS"
}
HTTP 요청
POST https://www.integratorhost.example.com/v1/sendOtp
요청 본문
요청 본문에는 다음과 같은 구조의 데이터가 포함됩니다.
JSON 표현 |
---|
{ "requestHeader": { object ( |
필드 | |
---|---|
requestHeader |
필수: 모든 요청의 공통 헤더입니다. |
smsMatchingToken |
필수: 이 값은 Google에서 제공하며 사용자에게 전달되는 SMS에 포함되어야 합니다. 이렇게 하면 Google에서 Android O 기기용 기기의 SMS를 자동으로 일치시킬 수 있습니다 (참조 참조). 11자(영문 기준)입니다. 예를 들어 SMS가 일반적으로 다음과 같이 표시됩니다.
그리고 Google은 '0123456789A'를 SMS는 다음과 같이 표시됩니다.
또는 다음과 같이 표시될 수 있습니다.
|
otpContext |
선택사항: OTP를 요청하는 컨텍스트입니다. |
통합 필드 account_identifier . 필수: OTP를 전송해야 하는 계정의 식별자입니다. account_identifier 은 다음 중 하나일 수 있습니다. |
|
accountPhoneNumber |
E.164 형식의 전화번호입니다. +14035551111, +918067218000을 예로 들 수 있습니다. 항상 +로 시작하고 뒤에 숫자만 포함됩니다 (대시 없음). 사용자가 계정을 Google에 처음 연결할 때와 재연결하는 동안 채워집니다. |
associationId |
사용자 계정을 참조하는 데 사용되는 연결 식별자입니다. 이 필드는 초기 연결 후 모든 후속 호출에 대해 채워집니다. |
응답 본문
sendOtp 메서드의 응답 객체입니다.
성공할 경우 응답 본문에 다음 구조의 데이터가 포함됩니다.
JSON 표현 |
---|
{ "responseHeader": { object ( |
필드 | |
---|---|
responseHeader |
REQUIRED: 모든 응답의 공통 헤더입니다. |
paymentIntegratorSendOtpId |
선택사항: 통합업체가 이 전송 OTP 요청임을 알고 있는 식별자입니다. 통합업체에서 생성되었습니다. |
result |
REQUIRED: 이 요청의 결과 |
OtpContext
OTP를 요청하는 컨텍스트입니다.
JSON 표현 |
---|
{ // Union field |
필드 | |
---|---|
통합 필드 otp_context . 필수: OTP를 요청하는 컨텍스트입니다. otp_context 은 다음 중 하나일 수 있습니다. |
|
association |
연결/재연결 컨텍스트에서 OTP가 요청되고 있습니다. |
mandateCreation |
위임장 생성 맥락에서 OTP가 요청되고 있습니다. |
associationWithMandateCreation |
위임장 생성과 함께 OTP의 연결을 요청하고 있습니다. |
비어 있음
이 유형에는 필드가 없습니다.
부울과 열거형을 추가 데이터로 확장해야 하는 경우가 많기 때문에 이 객체는 확장성을 위해 사용됩니다. 구현자는 이를 사용하여 존재를 확인합니다. 이를 나타내는 열거형은 향후 버전에서 데이터를 포함하도록 확장될 수 있습니다.
Empty
의 JSON 표현은 빈 JSON 객체 {}
입니다.
SendOtpResultCode
OTP 요청 전송의 결과 코드입니다.
열거형 | |
---|---|
UNKNOWN_RESULT |
이 기본값을 설정하면 안 됩니다. |
SUCCESS |
통합업체가 OTP를 전송했습니다. |
PHONE_NUMBER_NOT_ASSOCIATED_WITH_ACCOUNT |
전화번호가 associationId 에서 식별하는 계정과 연결되어 있지 않습니다. |
UNKNOWN_PHONE_NUMBER |
전화번호가 계정과 연결되어 있지 않습니다. associationId 가 설정되지 않은 경우에 사용됩니다. |
MESSAGE_UNABLE_TO_BE_SENT |
어떤 이유로 통합업체에서 OTP를 전송하지 못했습니다. 일시적인 오류이며 이 호출을 재시도할 수 있습니다. |
INVALID_PHONE_NUMBER |
전화번호 형식이 잘못되었습니다. |
NOT_ELIGIBLE |
사용자의 계정으로는 이 서비스를 사용할 수 없습니다. |
OTP_LIMIT_REACHED |
사용자가 너무 많은 OTP를 요청했거나 확인하려고 시도했습니다. |
ACCOUNT_CLOSED |
통합업체에 보관된 사용자 계정이 해지되었습니다. 'associationId' 속성이 이 사용자를 식별하는 데 사용됩니다. 이 값을 반환하면 사용자의 결제 수단이 Google에서 종료됩니다. 사용자는 연결 흐름을 다시 거쳐 새 결제 수단을 추가해야 합니다. |
ACCOUNT_CLOSED_ACCOUNT_TAKEN_OVER |
통합업체와 연결된 사용자 계정이 폐쇄되었으며 계정이 탈취된 것으로 의심됩니다. 'associationId' 속성이 이 사용자를 식별하는 데 사용됩니다. 이 값을 반환하면 사용자의 결제 수단이 Google에서 종료됩니다. 사용자는 연결 흐름을 다시 거쳐 새 결제 수단을 추가해야 합니다. |
ACCOUNT_CLOSED_FRAUD |
통합업체에 보류된 사용자 계정이 사기로 인해 해지되었습니다. 'associationId' 속성이 이 사용자를 식별하는 데 사용됩니다. 이 값을 반환하면 사용자의 결제 수단이 Google에서 종료됩니다. 사용자는 연결 흐름을 다시 거쳐 새 결제 수단을 추가해야 합니다. |