
अवलोकन
हर बार जब कोई वर्कफ़्लो नोड फ़ोन सत्यापन सुविधा चलाता है, तो एक फ़ोन रिपोर्ट तैयार की जाती है। प्रत्येक रिपोर्ट एक फ़ोन नंबर के विरुद्ध एक OTP चैलेंज का प्रतिनिधित्व करती है और इसमें शामिल हैं:- प्रीफ़िक्स, राष्ट्रीय नंबर और पूर्ण E.164 प्रारूप में विभाजित फ़ोन नंबर, साथ ही ISO देश कोड और देश का नाम।
- गंतव्य नेटवर्क से रिज़ॉल्व किया गया कैरियर मेटाडेटा (
name,type)। - लाइन-प्रकार विश्लेषण से प्राप्त बूलियन जोखिम फ़्लैग (
is_disposable,is_virtual)। - उपयोग किया गया वास्तविक डिलीवरी चैनल (
verification_method) और OTP भेजने के प्रयासों की संख्या। - हर भेजने, पुनः प्रयास, डिलीवरी इवेंट और कोड-जाँच प्रयास का एक कालानुक्रमिक
lifecycle[]लॉग। - अन्य सत्रों में—चाहे उनकी स्थिति कुछ भी हो और वे KYC, KYB या स्टैंडअलोन API सत्यापनों से संबंधित हों—या आपकी ब्लॉकलिस्ट में उसी नंबर को दर्शाने वाला एक
matches[]ऐरे। - एक
warnings[]ऐरे — सत्यापन के दौरान उत्सर्जित जोखिम इवेंट (देखें फ़ोन सत्यापन चेतावनियाँ)। - एक
node_idजो यह पहचानता है कि किस वर्कफ़्लो ग्राफ़ नोड ने रिपोर्ट तैयार की (केवल V3 सत्र)।
POST /v3/phone/send/ और उपयोगकर्ता की प्रविष्टि को मान्य करने के लिए POST /v3/phone/check/। एक लंबित OTP पहले भेजने से 5 मिनट के लिए वैध होता है (पुनः प्रयासों से यह विंडो नहीं बढ़ती)। वर्कफ़्लो सत्रों में उपयोगकर्ताओं को डिफ़ॉल्ट रूप से 2 OTP भेजने के प्रयास (phone_max_retries) और 2 कोड-प्रविष्टि प्रयास (phone_max_check_attempts) मिलते हैं — दोनों प्रति वर्कफ़्लो नोड ट्यून करने योग्य हैं; किसी भी सीमा के समाप्त होने पर चरण VERIFICATION_CODE_ATTEMPTS_EXCEEDED के साथ Declined के रूप में फ़ाइनलाइज़ हो जाता है। स्टैंडअलोन फ़ोन API प्रति सत्यापन 3 कोड-प्रविष्टि प्रयासों की अनुमति देता है।
API रिस्पॉन्स में यह कहाँ दिखाई देता है
निर्णय endpoint (GET /v3/session/{sessionId}/decision/) बहुवचन ऐरे कुंजी phone_verifications के तहत फ़ोन रिपोर्ट लौटाता है। ऐरे में वर्कफ़्लो ग्राफ़ में प्रत्येक फ़ोन सत्यापन नोड के लिए एक प्रविष्टि होती है — आम तौर पर एक, लेकिन स्टेप-अप फ़्लो कई प्रविष्टियाँ उत्पन्न कर सकते हैं।
null मान का अर्थ है कि अभी तक कोई फ़ोन सत्यापन चरण नहीं चला है। जब आपका वर्कफ़्लो एक से अधिक फ़ोन नंबर एकत्र कर सकता है, तो ऐरे को इटरेट करें (केवल phone_verifications[0] को पढ़ने के बजाय)।
स्कीमा
फ़ील्ड-दर-फ़ील्ड कैनोनिकल स्कीमा डेटा मॉडल पेज पर उपलब्ध है।स्टेटस मान
लाइफ़साइकिल इवेंट प्रकार
lifecycle[] कालानुक्रमिक रूप से व्यवस्थित है। प्रत्येक इवेंट में type, timestamp, details, और एक बिल करने योग्य fee (जब लागू हो) शामिल होता है:
details payload इवेंट फ़ैमिली पर निर्भर करता है:
- भेजने के इवेंट (
PHONE_VERIFICATION_MESSAGE_SENT,PHONE_VERIFICATION_RETRY_MESSAGE_SENT,PHONE_VERIFICATION_BLOCKED) —{ status, reason, channel, actual_channel }।statusSuccess,RetryयाBlockedहै;reasonतब तकnullहै जब तक कि भेजा जाना ब्लॉक न किया गया हो (invalid_phone_number,repeated_attempts,suspicious,spam,unknown);channelअनुरोधित चैनल है औरactual_channelवह चैनल है जिसने वास्तव में डिलीवरी की (उदा. WhatsApp संदेश जो SMS पर फ़ालबैक हो गया)। - डिलीवरी इवेंट (
PHONE_DELIVERY_DELIVERED,PHONE_DELIVERY_UNDELIVERABLE) —{ channel, status }जहांstatusdeliveredयाundeliverableहै। - जाँच इवेंट (
VALID_CODE_ENTERED,INVALID_CODE_ENTERED) —{ code_tried, status }जहांstatusApproved,Declined,FailedयाExpired or Not Foundहै। - अंतिम स्टेटस इवेंट —
null, सिवायPHONE_VERIFICATION_DECLINED/PHONE_VERIFICATION_IN_REVIEWके, जिनमें{ "reason": "<risk code>" }(उदा.PHONE_NUMBER_IN_BLOCKLIST) होता है।
fee उस भेजे जाने की कुल कीमत है: कैरियर या WhatsApp की कीमत के साथ $0.02 Didit शुल्क, या [आपके अपने WhatsApp Business नंबर](/hi/core-technology/phone-verification/overview#अपने-स्वयं-के-नंबर-से-whatsapp-कोड-भेजें) से भेजे गए WhatsApp कोड के लिए केवल $0.02 Didit शुल्क। यह डिलीवरी की पुष्टि होने तक अनुमानित कीमत होती है, उसके बाद वास्तविक बिल की गई राशि होती है। केवल Blocked भेजे गए संदेशों के निःशुल्क होने की गारंटी है: किसी भी अन्य भेजे गए संदेश के लिए तब शुल्क लिया जाता है जब सत्यापन फ़ाइनलाइज़ होता है या समय-सीमा समाप्त हो जाती है, भले ही डिलीवरी की कभी पुष्टि न हुई हो या संदेश डिलीवर न हो सका हो। डिलीवरी, जाँच और स्टेटस इवेंट में हमेशा fee: 0 होता है।
क्रॉस-सत्र मिलान
matches[] उसी एप्लिकेशन में अन्य सत्रों को रिकॉर्ड करता है जहाँ वही नंबर देखा गया था — KYC, KYB और स्टैंडअलोन API सत्यापनों में, चाहे उनका स्टेटस कुछ भी हो — साथ ही मैनेजमेंट API सूचियाँ में कॉन्फ़िगर किए गए ब्लॉकलिस्ट मिलान। वर्तमान सत्र के vendor_data को साझा करने वाले सत्रों को बाहर रखा गया है (एक ही अंतिम उपयोगकर्ता स्वयं से मेल नहीं खाता है), और ऐरे अधिकतम 5 प्रविष्टियों तक सीमित है। जब नंबर आपकी ब्लॉकलिस्ट में होता है लेकिन कोई भी मेल खाने वाला सत्र ब्लॉकलिस्टेड नहीं होता है, तो source: "list_entry" (सभी सत्र फ़ील्ड null) वाली एक सिंथेटिक प्रविष्टि ऐरे के आरंभ में जोड़ दी जाती है।
उदाहरण
स्वीकृत — WhatsApp OTP, मोबाइल कैरियर
अस्वीकृत — ब्लॉकलिस्टेड VoIP नंबर
उपयोगकर्ता ने एक मान्य OTP दर्ज किया, लेकिन फ़ाइनलाइज़ेशन के दौरान एप्लिकेशन की ब्लॉकलिस्ट पर नंबर पाया गया (ऑटो-डिक्लाइन) और इसके VoIP लाइन प्रकार को फ़्लैग किया गया (voip_number_action को NO_ACTION पर छोड़ दिया गया, इसलिए यह information के रूप में लॉग होता है)। चूंकि कोई भी मेल खाने वाला सत्र ब्लॉकलिस्टेड नहीं है, ब्लॉकलिस्ट हिट एक सिंथेटिक list_entry मिलान के रूप में दिखाई देता है।
संबंधित
- फ़ोन सत्यापन अवलोकन — सुविधा का व्यवहार, मूल्य निर्धारण, समर्थित चैनल।
- फ़ोन सत्यापन चेतावनियाँ — प्रत्येक जोखिम कोड, अस्वीकृति ट्रिगर और कॉन्फ़िगर करने योग्य कार्रवाइयां।
- डेटा मॉडल — फ़ोन सत्यापन — फ़ील्ड-दर-फ़ील्ड कैनोनिकल स्कीमा।
- स्टैंडअलोन फ़ोन API —
POST /v3/phone/send/औरPOST /v3/phone/check/endpoint। - मैनेजमेंट API — सूचियाँ — फ़ोन ब्लॉकलिस्ट प्रबंधित करें जो
source: list_entryके साथmatches[]को फ़ीड करती है।