> ## Documentation Index
> Fetch the complete documentation index at: https://docs.didit.me/llms.txt
> Use this file to discover all available pages before exploring further.

# मैनेजमेंट API v3: वर्कफ़्लो और बिलिंग

> API कुंजी से Didit के वर्कफ़्लो, प्रश्नावलियाँ, उपयोगकर्ता, बिलिंग और ब्लॉकलिस्ट कॉन्फ़िगर करें। MCP-तैयार। प्रति उपयोग मूल्य निर्धारण, कोई अनुबंध नहीं।

## प्रमाणीकरण

इस प्रबंधन API के सभी endpoints आपकी एप्लिकेशन API कुंजी का उपयोग करते हैं। URL में org/app UUID की ज़रूरत नहीं है, क्योंकि एप्लिकेशन आपकी कुंजी से पहचानी जाती है।

```bash theme={null}
curl -H "x-api-key: YOUR_API_KEY" https://verification.didit.me/v3/...
```

अभी तक API कुंजी नहीं है? [2 API कॉल में प्रोग्रामेटिक रूप से पंजीकरण करें](https://docs.didit.me/hi/integration/programmatic-registration.md)।

***

## वर्कफ़्लो

वर्कफ़्लो तय करते हैं कि आपके उपयोगकर्ताओं को किन सत्यापन चरणों से गुजरना होगा (ID स्कैन, लाइवनेस, चेहरा मिलान, AML स्क्रीनिंग, आदि)। हर वर्कफ़्लो एक पुनः प्रयोज्य कॉन्फ़िगरेशन है, जिसे आप सत्रों से जोड़ते हैं।

**GET /v3/workflows/** `GET`

आपके एप्लिकेशन के सभी वर्कफ़्लो की सूची देखें। हर वर्कफ़्लो की सुविधाएँ, थ्रेशोल्ड, और यह भी कि वह डिफ़ॉल्ट है या नहीं, लौटाता है।

**POST /v3/workflows/** `POST`

नया वर्कफ़्लो बनाएँ। तय करें कि कौन-सी सत्यापन सुविधाएँ सक्षम हों, थ्रेशोल्ड सेट करें, स्वीकृत दस्तावेज़ प्रकार कॉन्फ़िगर करें, और बहुत कुछ।

**GET /v3/workflows/\{uuid}/** `GET`

किसी विशिष्ट वर्कफ़्लो का पूरा विवरण पाएँ, जिसमें सभी सुविधा कॉन्फ़िगरेशन और थ्रेशोल्ड शामिल हैं।

**PATCH /v3/workflows/\{uuid}/** `PATCH`

वर्कफ़्लो कॉन्फ़िगरेशन अपडेट करें। आप किसी भी सुविधा सेटिंग, थ्रेशोल्ड, या स्वीकृत दस्तावेज़ों में बदलाव कर सकते हैं।

**DELETE /v3/workflows/\{uuid}/** `DELETE`

वर्कफ़्लो हटाएँ। जो सत्र पहले से इस वर्कफ़्लो का उपयोग कर रहे हैं, उन पर कोई असर नहीं पड़ता।

> [!WARNING]
>
> हम **बिजनेस कंसोल** का उपयोग करके वर्कफ़्लो बनाने और कॉन्फ़िगर करने की दृढ़ता से सलाह देते हैं। विज़ुअल वर्कफ़्लो बिल्डर टेम्पलेट, ड्रैग-एंड-ड्रॉप सुविधा कॉन्फ़िगरेशन, दस्तावेज़ सेटिंग्स, थ्रेशोल्ड ट्यूनिंग, और प्रीव्यू देता है, और यह सब बिना कोड लिखे। API का उपयोग केवल स्वचालन या वर्कफ़्लो के प्रोग्रामेटिक प्रबंधन के लिए करें।

### त्वरित उदाहरण: वर्कफ़्लो बनाना

`workflow_type` मूल सुविधा सेट तय करता है। अलग-अलग सुविधाएँ `is_*_enabled` फ़्लैग से चालू या बंद की जाती हैं।

```bash theme={null}
curl -X POST https://verification.didit.me/v3/workflows/ \
  -H "x-api-key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "workflow_label": "Standard KYC",
    "workflow_type": "kyc",
    "is_default": true,
    "is_face_match_enabled": true,
    "is_liveness_enabled": true,
    "is_aml_enabled": false
  }'
```

`workflow_type` के उपलब्ध मान: `kyc`, `kyb`, `adaptive_age_verification`, `biometric_authentication`, `address_verification`, `questionnaire_verification`, `email_verification`, `phone_verification`।

`kyc` वर्कफ़्लो में पहचान सत्यापन अपने आप शामिल होता है, इसके लिए अलग फ़्लैग की ज़रूरत नहीं है। वैकल्पिक सुविधाएँ जोड़ने या हटाने के लिए `is_*_enabled` फ़्लैग का उपयोग करें, जैसे चेहरा मिलान, लाइवनेस, AML, NFC, फ़ोन, ईमेल, पते का प्रमाण, डिवाइस और IP विश्लेषण, और अन्य।

फिर सत्र बनाते समय वर्कफ़्लो का उपयोग करें:

```bash theme={null}
curl -X POST https://verification.didit.me/v3/session/ \
  -H "x-api-key: YOUR_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "callback_url": "https://myapp.com/callback",
    "workflow_id": "WORKFLOW_UUID_FROM_ABOVE"
  }'
```

***

## प्रश्नावलियाँ

सत्यापन वर्कफ़्लो में जोड़े जा सकने वाले कस्टम फ़ॉर्म, जिनसे उपयोगकर्ताओं से अतिरिक्त जानकारी ली जाती है।

**GET /v3/questionnaires/** `GET`

सभी प्रश्नावलियों की सूची देखें।

**POST /v3/questionnaires/** `POST`

कस्टम प्रश्नों, ब्रांचिंग लॉजिक और अनुवादों के साथ नई प्रश्नावली बनाएँ।

**GET /v3/questionnaires/\{uuid}/** `GET`

प्रश्नावली का विवरण पाएँ, जिसमें सभी प्रश्न और फ़ॉर्म की संरचना शामिल है।

**PATCH /v3/questionnaires/\{uuid}/** `PATCH`

प्रश्नावली अपडेट करें।

**DELETE /v3/questionnaires/\{uuid}/** `DELETE`

प्रश्नावली हटाएँ।

***

## उपयोगकर्ता

अपने एप्लिकेशन में सत्यापित व्यक्तियों (उपयोगकर्ताओं) का प्रबंधन करें। हर उपयोगकर्ता की पहचान एक `vendor_data` स्ट्रिंग से होती है, जिसे आप सत्र बनाते समय देते हैं।

**GET /v3/users/** `GET`

आपके एप्लिकेशन के सभी उपयोगकर्ताओं की सूची देखें, जिसमें उनकी सत्यापन स्थिति और सत्र इतिहास शामिल है।

**GET /v3/users/\{vendor\_data}/** `GET`

अपने vendor\_data पहचानकर्ता से उपयोगकर्ता का विवरण पाएँ।

**PATCH /v3/users/\{vendor\_data}/** `PATCH`

उपयोगकर्ता का मेटाडेटा अपडेट करें।

**POST /v3/users/delete/** `POST`

उपयोगकर्ताओं को बैच में हटाएँ। बॉडी: `{"vendor_data_list": ["user-1", "user-2"]}` या `{"delete_all": true}`। इससे उन उपयोगकर्ताओं के लिए रखे गए सभी बायोमेट्रिक टेम्पलेट भी स्थायी रूप से हटा दिए जाते हैं।

***

## बायोमेट्रिक टेम्पलेट

इमेज-रहित चेहरे के वे बायोमेट्रिक टेम्पलेट, जिन्हें ऑप्ट-इन करने वाला एप्लिकेशन सत्र हटाने के बाद भी रखता है। देखें [बायोमेट्रिक टेम्पलेट](https://docs.didit.me/hi/management-api/biometric-templates/overview.md)।

**GET /v3/biometric-templates/** `GET`

फ़िल्टर के साथ पेजिनेटेड सूची (`vendor_data`, `vendor_user_uuid`, `status`, `source_type`, `retained_from`, `retained_to`, `ordering`)।

**GET /v3/biometric-templates/count/** `GET`

उन्हीं फ़िल्टर के साथ गिनती।

**GET /v3/biometric-templates/\{template\_uuid}/** `GET`

एक टेम्पलेट: जिस उपयोगकर्ता का यह टेम्पलेट है, उद्गम संदर्भ, समाप्ति, निर्देश, स्थिति।

**DELETE /v3/biometric-templates/\{template\_uuid}/** `DELETE`

एक टेम्पलेट को स्थायी रूप से हटाएँ। लौटाता है `{"uuid": "...", "outcome": "purged" | "already_purged"}`।

**POST /v3/biometric-templates/delete/** `POST`

बल्क में स्थायी रूप से हटाना। बॉडी: `{"template_uuids": [...]}` या `{"delete_all": true}`, साथ में वैकल्पिक फ़िल्टर।

***

## सत्र संचालन

**POST /v3/sessions/delete/** `POST`

सत्रों को बैच में हटाएँ। इसके लिए `delete:sessions` अनुमति चाहिए। बॉडी: `{"session_numbers": ["1", "2", "3"]}` या `{"delete_all": true}` (`delete_all` को `filter_` से शुरू होने वाले सत्र सूची फ़िल्टर से सीमित करें, जैसे `filter_status`), साथ में वैकल्पिक `retain_face_embeddings`, `face_retention_days`, `face_retention_deadline`, `deletion_instruction`, और `instruction_id`। अधिकतम 20 मिलते सत्र होने पर `200` लौटता है, जिसमें हर सत्र के लिए `face_retention_outcome` होता है। इससे अधिक होने पर `202` लौटता है, जिसके साथ एक डिलीशन जॉब आता है।

**GET /v3/sessions/delete/\{job\_id}/** `GET`

`202` लौटाने वाले बल्क सत्र हटाने की प्रगति और परिणामों की गिनती।

**GET /v3/sessions/\{uuid}/reviews/** `GET`

सत्र के लिए समीक्षाओं और गतिविधि लॉग की सूची।

**POST /v3/sessions/\{uuid}/reviews/** `POST`

सत्र में समीक्षा नोट या स्थिति परिवर्तन जोड़ें।

***

## बिलिंग

**GET /v3/billing/balance/** `GET`

मौजूदा क्रेडिट बैलेंस और ऑटो-रीफ़िल सेटिंग्स प्राप्त करें।

```json theme={null}
{
  "balance": "142.5000",
  "auto_refill_enabled": true,
  "auto_refill_amount": "100.0000",
  "auto_refill_threshold": "10.0000"
}
```

**POST /v3/billing/top-up/** `POST`

क्रेडिट टॉप अप करने के लिए Stripe चेकआउट सत्र बनाएँ। प्रत्येक टॉप अप \$50 से \$20,000 के बीच होता है और उसे अंकित मूल्य पर जोड़ा जाता है।

```json theme={null}
{
  "amount_in_dollars": 100,
  "success_url": "https://myapp.com/billing/success",
  "cancel_url": "https://myapp.com/billing/cancel"
}
```

***

## सूचियाँ (ब्लॉकलिस्ट, एलाउलिस्ट और कस्टम)

ब्लॉकलिस्टिंग, एलाउलिस्टिंग और कस्टम वर्कफ़्लो शर्तों के लिए प्रकार-आधारित सूचियाँ प्रबंधित करें। पूरा [सूचियों का API दस्तावेज़ीकरण](https://docs.didit.me/hi/management-api/lists/overview.md) देखें।

**GET /v3/lists/** `GET`

एप्लिकेशन की सभी सूचियाँ सूचीबद्ध करें (ब्लॉकलिस्ट, एलाउलिस्ट, कस्टम)।

**POST /v3/lists/\{list\_uuid}/entries/** `POST`

किसी सूची में एक प्रविष्टि जोड़ें। सत्र से डेटा स्वतः निकालने के लिए `reference_session_id` समर्थित है, और लेन-देन/उपयोगकर्ता/व्यवसाय तक ट्रेसेबिलिटी के लिए `reference_object_uuid` समर्थित है।

**DELETE /v3/lists/\{list\_uuid}/entries/\{entry\_uuid}/** `DELETE`

किसी सूची से एक प्रविष्टि हटाएँ।

**POST /v3/lists/\{list\_uuid}/entries/face-upload/** `POST`

चेहरा ब्लॉकलिस्ट में एक चेहरे की छवि (base64) अपलोड करें।

***

## Webhook कॉन्फ़िगरेशन

**GET /v3/webhook/** `GET`

Webhook की मौजूदा कॉन्फ़िगरेशन प्राप्त करें, जिसमें URL, वर्शन, webhook हस्ताक्षर सत्यापित करने के लिए सीक्रेट कुंजी, और एप्लिकेशन की डेटा प्रतिधारण व बायोमेट्रिक-टेम्पलेट प्रतिधारण नीति शामिल हैं।
रिस्पॉन्स में `allowed_domains` भी शामिल होता है, जिसका वर्णन नीचे `PATCH /v3/webhook/` के अंतर्गत है।

```json theme={null}
{
  "webhook_url": "https://myapp.com/webhooks/didit",
  "webhook_version": "v3",
  "secret_shared_key": "whsec_a1b2c3d4e5f6...",
  "capture_method": "both",
  "data_retention_months": null,
  "face_retention_policy": "delete_with_session",
  "face_retention_days": null,
  "allowed_return_hosts": ["app.example.com"],
  "allowed_domains": ["https://app.example.com"]
}
```

**PATCH /v3/webhook/** `PATCH`

Webhook URL, वर्शन अपडेट करें, या सीक्रेट कुंजी रोटेट करें। नया webhook सीक्रेट बनाने के लिए `rotate_secret_key: true` सेट करें (पुराना सीक्रेट तुरंत अमान्य हो जाता है)। यह एप्लिकेशन की प्रतिधारण नीति भी सेट करता है: `data_retention_months`, और `face_retention_policy` (डिफ़ॉल्ट `delete_with_session`, या `retain_until_user_deleted`) जिसके साथ प्रतिधारण सक्षम होने पर अनिवार्य, सीमित `face_retention_days` (1-3650) देना होता है। देखें [बायोमेट्रिक टेम्पलेट प्रतिधारण](https://docs.didit.me/hi/console/data-retention.md#बायोमेट्रिक-टेम्पलेट-प्रतिधारण)। यह `allowed_return_hosts` भी पंजीकृत करता है: अधिकतम 20 सादे होस्टनेम (उदाहरण के लिए `app.example.com`, बिना स्कीम, पोर्ट, पाथ या वाइल्डकार्ड के) जिन पर [डिजिटल ID वॉलेट API](https://docs.didit.me/hi/standalone-apis/digital-id-wallets.md#अपना-रिटर्न-गंतव्य-पंजीकृत-करें) सत्यापन व्यक्ति को HTTPS पर वापस भेज सकता है। नई सूची पंजीकृत सूची की जगह ले लेती है, और आपके एप्लिकेशन का व्हाइट लेबल डोमेन हमेशा अनुमत रहता है।

यह `allowed_domains` भी सेट करता है: अधिकतम 50 वेब ओरिजिन (उदाहरण के लिए `https://app.example.com`) जिनमें होस्टेड सत्यापन फ़्लो एम्बेड किया जा सकता है और जिन पर वह सत्र `callback` के साथ उपयोगकर्ता को वापस भेज सकता है।
हर प्रविष्टि एक स्कीम, एक होस्ट और एक वैकल्पिक पोर्ट होती है, जिसमें कोई पाथ, क्वेरी या वाइल्डकार्ड नहीं होता।
`https` का उपयोग करें; `http` केवल `localhost`, `127.0.0.1` और `::1` के लिए स्वीकार किया जाता है।
Didit हर ओरिजिन को लोअर केस में, बिना डिफ़ॉल्ट पोर्ट के संग्रहित करता है, और सूची को `allowed_domains` में लौटाता है।
अमान्य प्रविष्टि `allowed_domains` पर 400 के साथ विफल होती है।
नई सूची पंजीकृत सूची की जगह ले लेती है, और खाली सूची प्रतिबंध हटा देती है।
जब तक सूची खाली नहीं है, [`POST /v3/session/`](https://docs.didit.me/hi/sessions-api/create-session) उसके बाहर के वेब `callback` को 400 के साथ अस्वीकार करता है, और होस्टेड फ़्लो उपयोगकर्ता को सूची से बाहर के संग्रहित या वर्कफ़्लो-डिफ़ॉल्ट कॉलबैक पर रीडायरेक्ट नहीं करता।
कस्टम URL स्कीम (ऐप डीप लिंक) और सर्वर-से-सर्वर API कॉल प्रभावित नहीं होते।

यदि आप `endpoints` भेजते हैं, तो सूची में शामिल न किया गया हर webhook गंतव्य उसके साइनिंग सीक्रेट और उसके पूरे डिलीवरी लॉग सहित स्थायी रूप से हटा दिया जाता है, बिल्कुल वैसे ही जैसे [`DELETE /v3/webhook/destinations/{destination_uuid}/`](https://docs.didit.me/hi/management-api/webhook/delete-destination)।
यह पूर्ववत नहीं किया जा सकता।
गंतव्यों को एक-एक करके प्रबंधित करने के लिए इसके बजाय [webhook गंतव्य endpoint](https://docs.didit.me/hi/management-api/webhook/list-destinations.md) का उपयोग करें।

```json theme={null}
{
  "webhook_url": "https://myapp.com/webhooks/didit",
  "webhook_version": "v3",
  "allowed_domains": ["https://app.example.com"]
}
```

***

## endpoint का पूरा API सारांश

| Endpoint | मेथड | विवरण |
| - | - | - |
| `/v3/session/` | POST | सत्यापन सत्र बनाएँ |
| `/v3/sessions/` | GET | सभी सत्र सूचीबद्ध करें |
| `/v3/session/{id}/decision/` | GET | सत्र का सत्यापन परिणाम प्राप्त करें |
| `/v3/session/{id}/update-status/` | PATCH | सत्र को स्वीकृत या अस्वीकृत करें |
| `/v3/session/{id}/delete/` | DELETE | एक सत्र हटाएँ |
| `/v3/sessions/delete/` | POST | सत्र बैच डिलीट करें |
| `/v3/sessions/delete/{job_id}/` | GET | बल्क सत्र हटाने वाले जॉब की स्थिति |
| `/v3/sessions/{id}/reviews/` | GET, POST | सत्र गतिविधि/समीक्षाएँ |
| `/v3/workflows/` | GET, POST | वर्कफ़्लो सूचीबद्ध करें/बनाएँ |
| `/v3/workflows/{id}/` | GET, PATCH, DELETE | वर्कफ़्लो विवरण/अपडेट/हटाएँ |
| `/v3/questionnaires/` | GET, POST | प्रश्नावलियाँ सूचीबद्ध करें/बनाएँ |
| `/v3/questionnaires/{id}/` | GET, PATCH, DELETE | प्रश्नावली विवरण |
| `/v3/users/` | GET | सत्यापित उपयोगकर्ता सूचीबद्ध करें |
| `/v3/users/{vendor_data}/` | GET, PATCH | उपयोगकर्ता विवरण/अपडेट |
| `/v3/users/delete/` | POST | उपयोगकर्ता बैच डिलीट करें (उनके रखे गए बायोमेट्रिक टेम्पलेट भी पूरी तरह हटा दिए जाते हैं) |
| `/v3/biometric-templates/` | GET | रखे गए बायोमेट्रिक टेम्पलेट सूचीबद्ध करें |
| `/v3/biometric-templates/count/` | GET | रखे गए बायोमेट्रिक टेम्पलेट गिनें |
| `/v3/biometric-templates/{id}/` | GET, DELETE | टेम्पलेट विवरण / पूरी तरह हटाएँ |
| `/v3/biometric-templates/delete/` | POST | टेम्पलेट बल्क में पूरी तरह हटाएँ |
| `/v3/lists/` | GET, POST | सभी सूचियाँ सूचीबद्ध करें / सूची बनाएँ |
| `/v3/lists/{id}/` | GET, PATCH, DELETE | सूची विवरण / अपडेट / हटाएँ |
| `/v3/lists/{id}/entries/` | GET, POST | सूची की प्रविष्टियाँ / प्रविष्टि जोड़ें |
| `/v3/lists/{id}/entries/{eid}/` | DELETE | प्रविष्टि हटाएँ |
| `/v3/lists/{id}/entries/face-upload/` | POST | ब्लॉकलिस्ट में चेहरा अपलोड करें |
| `/v3/webhook/` | GET, PATCH | Webhook कॉन्फ़िगरेशन (URL, सीक्रेट, वर्शन), प्रतिधारण नीति और वॉलेट रिटर्न होस्ट |
| `/v3/billing/balance/` | GET | क्रेडिट बैलेंस जाँचें |
| `/v3/billing/top-up/` | POST | क्रेडिट टॉप अप करें |


This documentation is built and hosted on [Mintlify](https://mintlify.com), a developer documentation platform.