Method: sendOtp

בקשת השילוב תשלח OTP למספר הטלפון.

אם השילוב יחזיר SUCCESS, Google תצפה לקבל הודעת SMS למספר הטלפון.

Google מספקת רק accountPhoneNumber כשמשתמש משייך בפעם הראשונה את החשבון שלו ל-Google. אחר כך יישלח רק 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": string,
  "otpContext": {
    object (OtpContext)
  },

  // Union field account_identifier can be only one of the following:
  "accountPhoneNumber": string,
  "associationId": string
  // End of list of possible types for union field account_identifier.
}
שדות
requestHeader

object (RequestHeader)

חובה: כותרת משותפת לכל הבקשות.

smsMatchingToken

string

חובה: הערך הזה מסופק על ידי Google ויש לכלול אותו בהודעת ה-SMS שתישלח למשתמש. הדבר מאפשר ל-Google להתאים אוטומטית את הודעות ה-SMS במכשיר עבור מכשירי Android O (ראה מידע נוסף ). האורך יהיה 11 תווים.

לדוגמה, אם הודעת ה-SMS נראית כך:

Here's the OTP you requested: <OTP>

ו-Google שולחת את המספר 0123456789A בשדה הזה, הודעת ה-SMS אמורה להיראות כך:

0123456789A

Here's the OTP you requested: YYXXZZ

דוגמה נוספת:

Here's the OTP you requested: YYXXZZ

0123456789A

otpContext

object (OtpContext)

אופציונלי: זה ההקשר שבו מבקשים סיסמה חד-פעמית (OTP).

שדה איחוד account_identifier. חובה: זהו המזהה של החשבון שאליו צריך לשלוח OTP. account_identifier יכול להיות רק אחת מהאפשרויות הבאות:
accountPhoneNumber

string

זהו מספר טלפון בפורמט E.164. לדוגמה: +14035551111 ו-+918067218000. הפרמטר הזה תמיד יוביל את הסימן + ויכלול רק מספרים לאחר מכן (ללא מקפים).

השדה הזה מאוכלס כשהמשתמש משייך בפעם הראשונה את החשבון שלו ל-Google ובמהלך השיוך מחדש.

associationId

string

זהו מזהה השיוך שמשמש לצורך התייחסות לחשבון של המשתמש.

השדה הזה יאוכלס בכל הקריאות הבאות אחרי השיוך הראשוני.

גוף התשובה

אובייקט תשובה ל-method sendOtp.

אם הפעולה בוצעה ללא שגיאות, גוף התגובה יכיל נתונים במבנה הבא:

ייצוג JSON
{
  "responseHeader": {
    object (ResponseHeader)
  },
  "paymentIntegratorSendOtpId": string,
  "result": enum (SendOtpResultCode)
}
שדות
responseHeader

object (ResponseHeader)

חובה: כותרת משותפת לכל התשובות.

paymentIntegratorSendOtpId

string

אופציונלי: מזהה מבצע השילוב יודע איך לשלוח את בקשת ה-OTP הזו. זהו כלי השילוב שנוצר.

result

enum (SendOtpResultCode)

חובה: התוצאה של הבקשה

OtpContext

ההקשר שבו נדרשת בקשה ל-OTP.

ייצוג JSON
{

  // Union field otp_context can be only one of the following:
  "association": {
    object (Empty)
  },
  "mandateCreation": {
    object (Empty)
  },
  "associationWithMandateCreation": {
    object (Empty)
  }
  // End of list of possible types for union field otp_context.
}
שדות
שדה איחוד otp_context. חובה: ההקשר שבו מוצגת הבקשה לסיסמה חד-פעמית (OTP). otp_context יכול להיות רק אחת מהאפשרויות הבאות:
association

object (Empty)

הבקשה לסיסמה חד-פעמית (OTP) נשלחת בהקשר של שיוך או שיוך מחדש.

mandateCreation

object (Empty)

הבקשה ל-OTP בהקשר של יצירת ייפוי כוח.

associationWithMandateCreation

object (Empty)

נשלחה בקשה לשיוך (OTP) לשיוך לצורך יצירת ייפוי כוח.

ריק

אין שדות בסוג הזה.

האובייקט הזה משמש להרחבה כי לעיתים קרובות צריך להרחיב ערכים בוליאניים וספירות באמצעות נתונים נוספים. מכשיר ההטמעה משתמש בו כדי לקבוע את הנוכחות. אנחנו עשויים להרחיב את המספור הזה כך שיכלול נתונים בגרסאות עתידיות.

ייצוג ה-JSON של Empty הוא אובייקט JSON ריק {}.

SendOtpResultCode

קודי התוצאות לשליחת בקשת OTP.

טיפוסים בני מנייה (enum)
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 המשתמש ביקש או ניסה לאמת יותר מדי סיסמאות חד-פעמיות.
ACCOUNT_CLOSED

חשבון המשתמש, שהיה מנוהל אצל מבצע השילוב, נסגר. צריך להשתמש בו רק כאשר ה-'associationId' משמש לזיהוי המשתמש.

החזרת הערך הזה תגרום לסגירת אמצעי התשלום של המשתמש ב-Google. המשתמש ייאלץ להוסיף אמצעי תשלום חדש על ידי ביצוע חוזר של תהליך השיוך.

ACCOUNT_CLOSED_ACCOUNT_TAKEN_OVER

חשבון המשתמש אצל מבצע השילוב נסגר, חשד להשתלטות על חשבון. צריך להשתמש בו רק כאשר ה-'associationId' משמש לזיהוי המשתמש.

החזרת הערך הזה תגרום לסגירת אמצעי התשלום של המשתמש ב-Google. המשתמש ייאלץ להוסיף אמצעי תשלום חדש על ידי ביצוע חוזר של תהליך השיוך.

ACCOUNT_CLOSED_FRAUD

חשבון המשתמש, שהיה שמור אצל מבצע השילוב, נסגר עקב הונאה. צריך להשתמש בו רק כאשר ה-'associationId' משמש לזיהוי המשתמש.

החזרת הערך הזה תגרום לסגירת אמצעי התשלום של המשתמש ב-Google. המשתמש ייאלץ להוסיף אמצעי תשלום חדש על ידי ביצוע חוזר של תהליך השיוך.