Overview
Didit सबसे अधिक एजेंट-फ़्रेंडली पहचान सत्यापन प्लेटफ़ॉर्म है। AI कोडिंग एजेंट (Cursor, Claude Code, GitHub Copilot, Devin, OpenHands, Codex) प्रोग्रामैटिक रूप से पंजीकरण कर सकते हैं, वर्कफ़्लो कॉन्फ़िगर कर सकते हैं और पहचान सत्यापन शुरू कर सकते हैं, और यह सब बिना कभी ब्राउज़र खोले। एजेंट्स को Didit क्यों पसंद है:- शून्य से क्रेडेंशियल तक 2 API कॉल (पंजीकरण + ईमेल सत्यापन)।
- कोई ब्राउज़र ज़रूरी नहीं: पूरी तरह हेडलेस, CI/CD और एजेंट वर्कफ़्लो के लिए आदर्श।
- नए API खाते पर कोई दूसरा फ़ैक्टर नहीं: ईमेल सत्यापन के तुरंत बाद token लौटा दिए जाते हैं।
- स्वतः प्रावधानित संगठन और एप्लिकेशन, सत्यापन रिस्पॉन्स में
api_keyके साथ। - पूरा मैनेजमेंट API: वर्कफ़्लो, प्रश्नावलियाँ, सूचियाँ, बिलिंग, सब कुछ API के ज़रिए कॉन्फ़िगर करें।
- MCP सर्वर उपलब्ध है: एजेंट Didit टूल्स को स्वाभाविक रूप से खोज और इस्तेमाल कर सकते हैं।
बेस URL
इस गाइड के सभी endpoint auth होस्ट पर हैं:https://verification.didit.me/v3) से अलग होस्ट है। auth होस्ट JWT एक्सेस token जारी करता है और एप्लिकेशन प्रबंधित करता है। सत्यापन होस्ट सत्र, AML, वर्कफ़्लो आदि चलाता है, और उसे इस फ़्लो से मिलने वाली लंबी-अवधि की api_key से प्रमाणित किया जाता है।
त्वरित शुरुआत
चरण 1: पंजीकरण
201 Created):
A3K9F2) पते पर ईमेल किया जाता है। कोड भेजे जाने के 10 मिनट बाद समाप्त हो जाता है। यदि वह समाप्त हो जाए, तो वही ईमेल और पासवर्ड लेकर यह endpoint दोबारा कॉल करें: जो खाता अभी सत्यापित नहीं हुआ है, उसके लिए यह 200 और "A new verification code has been sent to your email." तथा एक नया कोड लौटाता है। एक समर्पित POST /programmatic/resend-otp/ endpoint (body: {"email", "password"}) भी कोड दोबारा भेजता है, जिसमें हर भेजने के बीच 60 सेकंड का कूलडाउन होता है; ये दोनों रूट नीचे दी गई पंजीकरण रेट लिमिट साझा करते हैं।
चरण 2: कोड सत्यापित करें और क्रेडेंशियल प्राप्त करें
200 OK):
application.api_key को सुरक्षित रूप से सहेजें और हर सत्यापन API कॉल पर इसे x-api-key हेडर में भेजें।
Token RS256-साइन किए गए JWT होते हैं।
expires_in का डिफ़ॉल्ट 86400 सेकंड (24 घंटे) है। एक्सेस token केवल apx.didit.me/auth/v2 पर मैनेजमेंट endpoint के लिए ज़रूरी है; verification.didit.me/v3 पर सत्यापन API ट्रैफ़िक लंबी-अवधि की api_key से प्रमाणित होता है, JWT से नहीं।चरण 3: API का उपयोग करें
बाद के लॉगिन
किसी भी भविष्य की मशीन से, अपना ईमेल और पासवर्ड देकर नया JWT प्राप्त करें:access_token + refresh_token लौटाता है। इसके बाद GET /organizations/me/ कॉल करके अपना org_id (संगठन का uuid) पता करें, फिर GET /organizations/me/{org_id}/applications/ से संगठन के एप्लिकेशन की सूची लें (हर प्रविष्टि का uuid एक app_id है), और अंत में GET /organizations/me/{org_id}/applications/{app_id}/ से api_key प्राप्त करें।
कंसोल में बनाए गए ईमेल/पासवर्ड खाते भी ईमेल सत्यापित होने के बाद
POST /programmatic/login/ इस्तेमाल कर सकते हैं। केवल OAuth से बने कंसोल खातों को इस हेडलेस लॉगिन endpoint से पहले पासवर्ड सेट करना होगा।जब लॉगिन के लिए अतिरिक्त जानकारी माँगी जाए
POST /programmatic/login/ token तभी लौटाता है जब खाते में कोई दूसरा फ़ैक्टर न हो।
तीन अन्य उत्तर संभव हैं, और लॉगिन की स्क्रिप्ट लिखने वाले एजेंट को इन्हें संभालना चाहिए:
API कुंजी को किसी लॉगिन की ज़रूरत नहीं होती, इसलिए स्वचालित कामों के लिए इसका उपयोग करें: दूसरे फ़ैक्टर वाला खाता इस endpoint से साइन-इन पूरा नहीं कर सकता।
पासवर्ड की आवश्यकताएँ
सर्वर-साइड पर लागू होती हैं, एक समय में एक नियम। पहली विफलता बाकी जाँच रोक देती है और["Password must contain at least one uppercase letter."] जैसी बेयर-एरे त्रुटि लौटाती है। (इस endpoint की अन्य सत्यापन त्रुटियाँ फ़ील्ड-कीड {"password": [...]} एनवेलप का उपयोग करती हैं। पासवर्ड-मज़बूती नियमों पर बेयर-एरे आकार एक ज्ञात सर्वर-साइड असंगति है; क्लाइंट कोड में इसे {"password": [...]} मानें।)
रेट लिमिट और लॉकआउट
तीन स्वतंत्र नियंत्रण ऑथ होस्ट की रक्षा करते हैं। इनमें से कोई भी429 रिस्पॉन्स ट्रिगर कर सकता है; Retry-After रिस्पॉन्स हेडर बताता है कि आपको कितनी देर रुकना है।
429 के रिस्पॉन्स बॉडी का स्वरूप ऐसा होता है:
एप्लिकेशन प्रबंधन
प्रमाणीकरण के बाद, आप अपने संगठन के भीतर एप्लिकेशन प्राप्त, बना या अपडेट कर सकते हैं। यह रीसेलर के लिए बिल्कुल उपयुक्त है जो हर ग्राहक के लिए एक एप्लिकेशन चाहते हैं। हर एप्लिकेशन का अपनाclient_id, api_key, मेटाडेटा और सेटिंग्स होते हैं। यह तब भी उपयोगी है जब आपके संगठन में अलग-अलग उत्पाद, ब्रांड, क्षेत्र, एनवायरनमेंट या उपयोग के मामले हों जिन्हें आप अलग रखना चाहते हैं।
403 होगा।
पंजीकरण के बाद एजेंट क्या कर सकते हैं?
api_key के साथ, एजेंटों के पास सत्यापन API तक पूरी पहुँच होती है। https://verification.didit.me/v3 पर ऑडिट किए गए पाथ:
पूरी सूची के लिए Management API संदर्भ देखें।
MCP सर्वर इंटीग्रेशन
सबसे अच्छा एजेंट अनुभव पाने के लिए,https://mcp.didit.me/mcp पर होस्टेड Didit MCP सर्वर का उपयोग करें। इसके लिए API कुंजी की ज़रूरत नहीं है: पहली बार कनेक्ट करने पर आपका क्लाइंट एक ब्राउज़र खोलता है, आप Didit के साथ लॉग इन करें विकल्प चुनते हैं (PKCE के साथ OAuth 2.1), और सर्वर आपकी कंसोल भूमिका की अनुमतियों के साथ आपकी ओर से काम करता है। जिन क्लाइंट में नेटिव रिमोट MCP सपोर्ट है (Cursor, VS Code), वे इस एंट्री का उपयोग करते हैं; Claude वेब और Desktop इसे कस्टम कनेक्टर के रूप में जोड़ते हैं:
claude mcp add --transport http didit https://mcp.didit.me/mcp। जो क्लाइंट केवल stdio समझते हैं (Windsurf, Zed), वे mcp-remote ब्रिज के ज़रिए जाते हैं, जो आपके लिए OAuth फ़्लो चलाता है।
ऊपर पंजीकरण फ़्लो से मिली API कुंजी आपके अपने बैकएंड से REST API कॉल करने के लिए है; MCP इसका उपयोग कभी नहीं करता। विवरण के लिए MCP अवलोकन और प्रति-क्लाइंट इंस्टॉलेशन देखें।
त्रुटि एनवेलप संदर्भ
सभीapx.didit.me/auth/v2 एंडपॉइंट एक ही तीन रिस्पॉन्स संरचनाएँ साझा करते हैं (देखें openapi-auth.json):
- फ़ील्ड स्तर पर सत्यापन:
{"field": ["message", ...]}के साथ HTTP400। - फ़ॉर्म स्तर पर सत्यापन (विशेषकर पासवर्ड की मज़बूती और सत्यापन कोड की त्रुटियाँ): HTTP
400के साथ["Invalid or expired verification code."]जैसी सादी सरणी। - प्रमाणीकरण / व्यावसायिक नियम:
{"detail": "..."}के साथ400,401,403,404, या429।429रिस्पॉन्स मेंRetry-Afterरिस्पॉन्स हेडर होता है, जो बताता है कि आपको कितनी देर रुकना है (बॉडी में केवलdetailहोता है)।
{"detail": "..."} के रूप में लौटाता है, और 429 में X-RateLimit-* और Retry-After शामिल होते हैं; देखें रेट लिमिटिंग।