Fordert den Integrator auf, ein OTP an die Telefonnummer zu senden.
Wenn der Integrationspartner SUCCESS
zurückgibt, erwartet Google eine SMS, die an die Telefonnummer gesendet wird.
Google stellt nur dann eine accountPhoneNumber
bereit, wenn ein Nutzer sein Konto zum ersten Mal mit Google verknüpft. Danach wird nur associationId
für alle nachfolgenden Aufrufe gesendet.
Wenn der Endpunkt bei der Verarbeitung der Anfrage auf einen Fehler stößt, sollte der Antworttext dieses Endpunkts vom Typ
sein.ErrorResponse
Eine Beispielanfrage sieht so aus:
{
"requestHeader": {
"protocolVersion": {
"major": 1,
"minor": 0,
"revision": 0
},
"requestId": "0123434-otp-abc",
"requestTimestamp": "1502545413026"
},
"accountPhoneNumber": "+918067218010",
"smsMatchingToken": "AB12345678C",
"otpContext": {
"association": {}
}
}
Eine Beispielantwort sieht so aus:
{
"responseHeader": {
"responseTimestamp": "1502545413098"
},
"paymentIntegratorSendOtpId": "99==ABC EF",
"result": "SUCCESS"
}
HTTP-Anfrage
POST https://www.integratorhost.example.com/v1/sendOtp
Anfragetext
Der Anfragetext enthält Daten mit folgender Struktur:
JSON-Darstellung |
---|
{ "requestHeader": { object ( |
Felder | |
---|---|
requestHeader |
REQUIRED: Allgemeiner Header für alle Anfragen. |
smsMatchingToken |
ERFORDERLICH: Dieser Wert wird von Google bereitgestellt und muss in der SMS enthalten sein, die an den Nutzer gesendet wird. Dadurch kann Google die SMS auf Geräten mit Android O automatisch zuordnen (siehe Referenz). Diese ID ist 11 Zeichen. Das kann z. B. so aussehen:
Google sendet außerdem „0123456789A“ für dieses Feld. Die SMS sollte dann so aussehen:
Oder es könnte so aussehen:
|
otpContext |
OPTIONAL: Dies ist der Kontext, in dem ein OTP angefordert wird. |
Union-Feld account_identifier . ERFORDERLICH: Das ist die ID des Kontos, für das ein OTP gesendet werden muss. Für account_identifier ist nur einer der folgenden Werte zulässig: |
|
accountPhoneNumber |
Dies ist eine E.164-formatierte Telefonnummer. Beispiele hierfür sind +14035551111 und +918067218000. Dies führt immer zu einem Pluszeichen und danach nur Zahlen, keine Bindestriche. Wird erfasst, wenn ein Nutzer sein Konto zum ersten Mal mit Google verknüpft und während der erneuten Verknüpfung. |
associationId |
Dies ist die Verknüpfungs-ID, mit der auf das Konto eines Nutzers verwiesen wird. Sie wird für alle nachfolgenden Aufrufe nach der ersten Verknüpfung ausgefüllt. |
Antworttext
Antwortobjekt für die Methode „sendOtp“.
Bei Erfolg enthält der Antworttext Daten mit der folgenden Struktur:
JSON-Darstellung |
---|
{ "responseHeader": { object ( |
Felder | |
---|---|
responseHeader |
REQUIRED: Allgemeiner Header für alle Antworten. |
paymentIntegratorSendOtpId |
OPTIONAL: Kennt den Integrator, der diese OTP-Anfrage kennt. Dies wurde vom Integrationsintegrator generiert. |
result |
ERFORDERLICH: Ergebnis dieser Anfrage |
OTP-Kontext
Kontext, in dem ein OTP angefordert wird.
JSON-Darstellung |
---|
{ // Union field |
Felder | |
---|---|
Union-Feld otp_context . REQUIRED: Kontext, in dem ein OTP angefordert wird. Für otp_context ist nur einer der folgenden Werte zulässig: |
|
association |
OTP wird im Zusammenhang mit einer Verknüpfung/Neuverknüpfung angefordert. |
mandateCreation |
OTP wird im Rahmen der Lastschriftmandat erstellt. |
associationWithMandateCreation |
OTP wird zusammen mit dem Lastschriftmandat für eine Verknüpfung angefordert. |
Leer
Dieser Typ hat keine Felder.
Dieses Objekt wird für die Erweiterbarkeit verwendet, da boolesche Werte und Aufzählungen häufig mit zusätzlichen Daten erweitert werden müssen. Anhand dieser Daten ermittelt der Implementierer die Anwesenheit. Die Aufzählung, die diese repräsentiert, kann erweitert werden, um Daten in zukünftigen Versionen zu enthalten.
Die JSON-Darstellung für Empty
ist ein leeres JSON-Objekt {}
.
SendOtpResultCode
Ergebniscodes für die OTP-Anfrage.
Enums | |
---|---|
UNKNOWN_RESULT |
Legen Sie diesen Standardwert nie fest. |
SUCCESS |
Integrator hat das OTP gesendet. |
PHONE_NUMBER_NOT_ASSOCIATED_WITH_ACCOUNT |
Die Telefonnummer ist nicht mit dem von associationId identifizierten Konto verknüpft. |
UNKNOWN_PHONE_NUMBER |
Die Telefonnummer ist mit keinem Konto verknüpft. Dies wird verwendet, wenn associationId nicht festgelegt ist. |
MESSAGE_UNABLE_TO_BE_SENT |
Integrator konnte das OTP nicht senden. Dies ist ein vorübergehender Fehler und kann dazu führen, dass dieser Anruf wiederholt wird. |
INVALID_PHONE_NUMBER |
Das Format der Telefonnummer war falsch. |
NOT_ELIGIBLE |
Das Nutzerkonto kann diesen Dienst nicht verwenden. |
OTP_LIMIT_REACHED |
Der Nutzer hat zu viele OTPs angefordert oder versucht, sie zu bestätigen. |
ACCOUNT_CLOSED |
Das Nutzerkonto des Integrationspartners wurde geschlossen. Dieser Parameter sollte nur verwendet werden, wenn das Element „associationId“ verwendet wird, um diesen Nutzer zu identifizieren. Die Rückgabe dieses Werts führt dazu, dass das Zahlungsmittel des Nutzers bei Google geschlossen wird. Der Nutzer wird gezwungen, ein neues Zahlungsmittel hinzuzufügen, indem er den Verknüpfungsvorgang noch einmal durchläuft. |
ACCOUNT_CLOSED_ACCOUNT_TAKEN_OVER |
Das Konto des Nutzers beim Integrationspartner wurde geschlossen. Verdacht auf eine Kontoübernahme. Dieser Parameter sollte nur verwendet werden, wenn das Element „associationId“ verwendet wird, um diesen Nutzer zu identifizieren. Die Rückgabe dieses Werts führt dazu, dass das Zahlungsmittel des Nutzers bei Google geschlossen wird. Der Nutzer wird gezwungen, ein neues Zahlungsmittel hinzuzufügen, indem er den Verknüpfungsvorgang noch einmal durchläuft. |
ACCOUNT_CLOSED_FRAUD |
Das Konto des Integrationspartners wurde aufgrund von Betrug geschlossen. Dieser Parameter sollte nur verwendet werden, wenn das Element „associationId“ verwendet wird, um diesen Nutzer zu identifizieren. Die Rückgabe dieses Werts führt dazu, dass das Zahlungsmittel des Nutzers bei Google geschlossen wird. Der Nutzer wird gezwungen, ein neues Zahlungsmittel hinzuzufügen, indem er den Verknüpfungsvorgang noch einmal durchläuft. |