इंटिग्रेटर से फ़ोन नंबर पर ओटीपी भेजने का अनुरोध किया जाता है.
अगर इंटिग्रेटर SUCCESS
दिखाता है, तो Google उम्मीद करता है कि फ़ोन नंबर पर मैसेज (एसएमएस) भेजा जाएगा.
जब कोई उपयोगकर्ता शुरुआत में अपने खाते को 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"
}
एचटीटीपी अनुरोध
POST https://www.integratorhost.example.com/v1/sendOtp
अनुरोध का मुख्य भाग
अनुरोध के मुख्य हिस्से में, यहां दिए गए स्ट्रक्चर का डेटा शामिल होता है:
JSON के काेड में दिखाना |
---|
{ "requestHeader": { object ( |
फ़ील्ड | |
---|---|
requestHeader |
ज़रूरी: सभी अनुरोधों के लिए सामान्य हेडर. |
smsMatchingToken |
ज़रूरी: यह वैल्यू Google ने दी है और उपयोगकर्ता को डिलीवर किए गए एसएमएस में शामिल की जानी चाहिए. इससे Google, Android O डिवाइसों के लिए, डिवाइस पर मौजूद एसएमएस का अपने-आप मिलान कर लेता है (रेफ़रंस देखें). इसमें 11 वर्ण होंगे. उदाहरण के लिए, अगर एसएमएस सामान्य तौर पर ऐसा दिखता है:
और Google "0123456789A" भेजता है तो एसएमएस ऐसा दिखना चाहिए:
इसके अलावा, यह ऐसा दिख सकता है:
|
otpContext |
ज़रूरी नहीं: यह वह कॉन्टेक्स्ट है जिसमें ओटीपी का अनुरोध किया जा रहा है. |
यूनियन फ़ील्ड account_identifier . ज़रूरी: यह उस खाते का आइडेंटिफ़ायर है जिसके लिए ओटीपी भेजना ज़रूरी है. account_identifier इनमें से सिर्फ़ एक हो सकता है: |
|
accountPhoneNumber |
यह फ़ोन नंबर E.164 फ़ॉर्मैट में है. उदाहरण के लिए, +14035551111 और +918067218000. यह हमेशा एक + के साथ शुरू होगा और उसके बाद सिर्फ़ अंक शामिल करेगा (कोई डैश नहीं). इसमें तब जानकारी होती है, जब कोई उपयोगकर्ता अपने खाते को शुरुआत में Google से और फिर से असोसिएट करने के दौरान जोड़ता है. |
associationId |
यह असोसिएशन आइडेंटिफ़ायर है, जिसका इस्तेमाल उपयोगकर्ता के खाते की जानकारी देने के लिए किया जाता है. असोसिएशन के बाद आने वाले सभी कॉल के लिए, यह जानकारी अपने-आप भर जाती है. |
जवाब का मुख्य भाग
sendOtp तरीके के लिए रिस्पॉन्स ऑब्जेक्ट.
अगर एपीआई सही से जुड़ जाता है, ताे जवाब के मुख्य भाग में नीचे दिए गए स्ट्रक्चर शामिल होता है.
JSON के काेड में दिखाना |
---|
{ "responseHeader": { object ( |
फ़ील्ड | |
---|---|
responseHeader |
ज़रूरी: सभी जवाबों के लिए सामान्य हेडर. |
paymentIntegratorSendOtpId |
ज़रूरी नहीं: इंटिग्रेटर के आइडेंटिफ़ायर के पास यह जानकारी होती है कि ओटीपी का अनुरोध इस तौर पर भेजा गया है. यह इंटिग्रेटर जनरेट किया गया है. |
result |
ज़रूरी: इस अनुरोध का नतीजा |
OtpContext
ओटीपी के लिए अनुरोध की जानकारी.
JSON के काेड में दिखाना |
---|
{ // Union field |
फ़ील्ड | |
---|---|
यूनियन फ़ील्ड otp_context . ज़रूरी: वह कॉन्टेक्स्ट जिसमें ओटीपी का अनुरोध किया जा रहा है. otp_context इनमें से सिर्फ़ एक हो सकता है: |
|
association |
असोसिएशन/फिर से असोसिएशन के लिए ओटीपी का अनुरोध किया जा रहा है. |
mandateCreation |
मैंडेट बनाने के लिए, ओटीपी का अनुरोध किया जा रहा है. |
associationWithMandateCreation |
मैंडेट बनाने के साथ-साथ जोड़ने के लिए, ओटीपी का अनुरोध किया जा रहा है. |
खाली
इस टाइप में कोई फ़ील्ड नहीं है.
इस ऑब्जेक्ट का इस्तेमाल एक्सटेंशन के लिए किया जाता है, क्योंकि बूलियन और वैल्यू को अक्सर ज़्यादा डेटा के साथ बढ़ाना पड़ता है. लागू करने वाला इसका इस्तेमाल, मौजूदगी का पता लगाने के लिए करता है. इस तरह की जानकारी को आने वाले वर्शन में डेटा शामिल करने के लिए बढ़ाया जा सकता है.
Empty
के लिए JSON में, खाली JSON ऑब्जेक्ट {}
है.
SendOtpResultCode
ओटीपी का अनुरोध भेजने के लिए नतीजों के कोड.
Enums | |
---|---|
UNKNOWN_RESULT |
कभी भी इस डिफ़ॉल्ट वैल्यू को सेट न करें! |
SUCCESS |
इंटिग्रेटर ने ओटीपी भेज दिया है. |
PHONE_NUMBER_NOT_ASSOCIATED_WITH_ACCOUNT |
यह फ़ोन नंबर, उस खाते से नहीं जुड़ा है जिसकी पहचान associationId ने की है. |
UNKNOWN_PHONE_NUMBER |
यह फ़ोन नंबर किसी भी खाते से नहीं जुड़ा है. इसका इस्तेमाल तब किया जाता है, जब associationId सेट न हो. |
MESSAGE_UNABLE_TO_BE_SENT |
इंटिग्रेटर किसी वजह से ओटीपी नहीं भेज सका. यह कुछ समय के लिए होने वाली गड़बड़ी है. इस वजह से, इस कॉल को फिर से इस्तेमाल करने की कोशिश की जा सकती है. |
INVALID_PHONE_NUMBER |
फ़ोन नंबर का फ़ॉर्मैट गलत था. |
NOT_ELIGIBLE |
उपयोगकर्ता का खाता इस सेवा के लिए ज़रूरी शर्तें पूरी नहीं करता. |
OTP_LIMIT_REACHED |
उपयोगकर्ता ने बहुत ज़्यादा ओटीपी के लिए अनुरोध किया है या पुष्टि करने की कोशिश की है. |
ACCOUNT_CLOSED |
इंटिग्रेटर के पास मौजूद उपयोगकर्ता का खाता बंद कर दिया गया है. इसका इस्तेमाल सिर्फ़ तब करना चाहिए, जब "associationId" का इस्तेमाल इस उपयोगकर्ता की पहचान करने के लिए किया जा रहा है. इस मान को लौटाने से उपयोगकर्ता का डिवाइस Google के साथ बंद हो जाएगा. फिर से असोसिएशन फ़्लो का इस्तेमाल करके, उपयोगकर्ता को एक नया इंस्ट्रुमेंट जोड़ना होगा. |
ACCOUNT_CLOSED_ACCOUNT_TAKEN_OVER |
इंटिग्रेटर के साथ काम करने वाले उपयोगकर्ता का खाता बंद कर दिया गया है. संदिग्ध खाते का अधिग्रहण कर लिया गया है. इसका इस्तेमाल सिर्फ़ तब करना चाहिए, जब "associationId" का इस्तेमाल इस उपयोगकर्ता की पहचान करने के लिए किया जा रहा है. इस मान को लौटाने से उपयोगकर्ता का डिवाइस Google के साथ बंद हो जाएगा. फिर से असोसिएशन फ़्लो का इस्तेमाल करके, उपयोगकर्ता को एक नया इंस्ट्रुमेंट जोड़ना होगा. |
ACCOUNT_CLOSED_FRAUD |
धोखाधड़ी के कारण, इंटिग्रेटर के पास मौजूद उपयोगकर्ता का खाता बंद कर दिया गया है. इसका इस्तेमाल सिर्फ़ तब करना चाहिए, जब "associationId" का इस्तेमाल इस उपयोगकर्ता की पहचान करने के लिए किया जा रहा है. इस मान को लौटाने से उपयोगकर्ता का डिवाइस Google के साथ बंद हो जाएगा. फिर से असोसिएशन फ़्लो का इस्तेमाल करके, उपयोगकर्ता को एक नया इंस्ट्रुमेंट जोड़ना होगा. |