> ## 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: KYC वर्कफ़्लो कॉन्फ़िगरेशन

> Didit के KYC या KYB वर्कफ़्लो की पूरी कॉन्फ़िगरेशन प्राप्त करें, जिसमें फ़ीचर टॉगल, थ्रेशोल्ड और स्वीकृत दस्तावेज़ शामिल हैं। प्रति उपयोग मूल्य निर्धारण।



वर्कफ़्लो प्राप्त करने के लिए API प्रॉम्प्ट
        प्रॉम्प्ट को क्लिपबोर्ड पर कॉपी करें



      
      

\<pre>

\`Fetch the full configuration of a single Didit workflow through the Management API.

Endpoint:
GET https://verification.didit.me/v3/workflows/{settings_uuid}/

Authentication:
Use the x-api-key header with my Didit API key.

Goal:
\- Retrieve every editable field on the workflow (feature toggles, score thresholds, documents_allowed per country, KYB role config, retry policy, callback config, etc.).
\- Useful for back-office "view workflow" screens, debugging why a verification declined/routed to review, or verifying a freshly published version.

Path parameter:
\- settings_uuid — the per-version workflow UUID returned by GET /v3/workflows/ or POST /v3/workflows/. Each workflow version has its own settings_uuid; workflow_id is the stable group id shared by every version.

Example call:
curl -X GET "https://verification.didit.me/v3/workflows/{settings_uuid}/" \
-H "x-api-key: YOUR_API_KEY"

What to read from the response:
\- workflow_id — stable group id; compare across versions to walk version history.
\- features and the underlying workflow_graph — describes which checks run and in what order.
\- Threshold and action fields per feature — see /management-api/workflows/feature-configs for the full reference.

Failure modes:
\- 401 — missing or malformed x-api-key.
\- 403 — canonical { "detail": "You do not have permission to perform this action." } envelope when the workflow belongs to a different application than the API key.
\- 404 — workflow not found in this application (also returned when settings_uuid is valid in another application).

Side effects: none. This is a pure read.

For the full integration shape, see /integration/integration-prompt.`

\</pre>



      
      

यहाँ पेस्ट करें



## OpenAPI

````yaml hi/openapi-25.json GET /v3/workflows/{settings_uuid}/
openapi: 3.0.0
info:
  version: 3.0.0
  title: Didit Verification API
  description: पहचान सत्यापन API। x-api-key हेडर के साथ प्रमाणीकृत करें।
servers:
  - url: https://verification.didit.me
security: []
tags: []
paths:
  /v3/workflows/{settings_uuid}/:
    get:
      tags:
        - Workflows
      summary: वर्कफ़्लो प्राप्त करें
      description: >-
        `settings_uuid` द्वारा एक वर्कफ़्लो संस्करण के लिए पूर्ण कॉन्फ़िगरेशन
        प्राप्त करें: फ़ीचर टॉगल, थ्रेशोल्ड, अनुमत दस्तावेज़, ग्राफ़, पुनः
        प्रयास नीति, कॉलबैक और मूल्य निर्धारण।
      operationId: get_workflow
      parameters:
        - name: settings_uuid
          in: path
          required: true
          schema:
            type: string
            format: uuid
          description: >-
            वर्कफ़्लो का प्रति-संस्करण UUID (सूची endpoint द्वारा लौटाया गया
            `uuid` मान)। वर्कफ़्लो के प्रत्येक संस्करण का अपना `settings_uuid`
            होता है।
      responses:
        '200':
          description: >-
            पूर्ण वर्कफ़्लो कॉन्फ़िगरेशन। इसका स्वरूप रॉ `VerificationSettings`
            सीरियलाइज़ेशन है (~190 फ़ील्ड: प्रत्येक सुविधा टॉगल, थ्रेशोल्ड,
            चेतावनी कार्रवाई, अनुमत-दस्तावेज़ कॉन्फ़िग, `workflow_graph`, पुनः
            प्रयास नीति, कॉलबैक और मूल्य निर्धारण)। नीचे दिया गया उदाहरण
            संक्षिप्त है। नोट: `features` एक `" + "` से जुड़ी हुई स्ट्रिंग है
            (उदा. `"OCR + LIVENESS"`), कीमतें JSON संख्याएँ हैं, और
            `is_editable` केवल `draft` संस्करणों के लिए `true` है।
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/WorkflowDetail'
              examples:
                KYC workflow with face match (abbreviated):
                  value:
                    uuid: a1b2c3d4-5678-90ab-cdef-111111111111
                    workflow_id: a1b2c3d4-5678-90ab-cdef-111111111111
                    workflow_label: Standard KYC
                    workflow_type: kyc
                    is_default: true
                    is_archived: false
                    is_liveness_enabled: true
                    face_liveness_method: passive
                    face_liveness_score_decline_threshold: 50
                    face_liveness_score_review_threshold: 70
                    is_face_match_enabled: true
                    face_match_score_decline_threshold: 40
                    face_match_score_review_threshold: 60
                    is_aml_enabled: false
                    is_phone_verification_enabled: false
                    is_email_verification_enabled: false
                    is_database_validation_enabled: false
                    is_ip_analysis_enabled: false
                    is_nfc_enabled: false
                    duplicated_user_action: no_action
                    documents_allowed:
                      ESP:
                        P:
                          sides: 1
                          enabled: 1
                          subtypes:
                            - EPASSPORT
                            - PASSPORT_GENERIC
                          preferred_characters: latin
                          expiration_check_mode: strict
                    max_retry_attempts: 3
                    retry_window_days: 7
                    session_expiration_time: 604800
                    version: 2
                    status: published
                    published_at: '2026-04-12T10:30:00Z'
                    is_simple_workflow: false
                    is_editable: false
                    workflow_url: https://verify.didit.me/u/_yljPOx8RWG3UAz5ZRQGVQ
                    total_price: 0.15
                    min_price: 0.15
                    max_price: 0.15
                    features: OCR + LIVENESS + FACE_MATCH
                    created_at: '2025-01-15T10:30:00Z'
                    updated_at: '2026-04-12T10:30:00Z'
        '403':
          description: >-
            API कुंजी अनुपलब्ध है, विकृत है, समाप्त हो चुकी है, या किसी भिन्न
            एप्लिकेशन के लिए स्कोप की गई है।
          content:
            application/json:
              examples:
                Invalid token:
                  value:
                    detail: You do not have permission to perform this action.
        '404':
          description: >-
            प्रमाणित एप्लिकेशन के लिए इस `settings_uuid` वाला कोई वर्कफ़्लो
            मौजूद नहीं है। या तो UUID गलत है या यह किसी अन्य एप्लिकेशन से
            संबंधित है — Didit क्रॉस-एप्लिकेशन रिकॉर्ड्स के अस्तित्व को लीक होने
            से बचाने के लिए जानबूझकर इन दोनों मामलों में अंतर नहीं करता है।
          content:
            application/json:
              examples:
                Not found:
                  value:
                    detail: Not found.
        '429':
          description: रेट लिमिट पार हो गई। घातीय बैकऑफ़ के साथ पुनः प्रयास करें।
        '500':
          description: अप्रत्याशित सर्वर त्रुटि। पुनः प्रयास करना सुरक्षित है।
      security:
        - ApiKeyAuth: []
      x-codeSamples:
        - lang: curl
          label: cURL
          source: >-
            curl -X GET
            'https://verification.didit.me/v3/workflows/a1b2c3d4-5678-90ab-cdef-111111111111/'
            \
              -H 'x-api-key: YOUR_API_KEY'
        - lang: python
          label: Python
          source: |-
            from didit import Didit

            # Reads DIDIT_API_KEY.
            client = Didit()

            result = client.workflows.retrieve(
                "11111111-2222-3333-4444-555555555555",
            )
            print(result)
        - lang: javascript
          label: Node.js
          source: >-
            import Didit from "@didit-protocol/sdk-node";


            // Reads DIDIT_API_KEY.

            const didit = new Didit();


            const result = await
            didit.workflows.retrieve("11111111-2222-3333-4444-555555555555");

            console.log(result);
        - lang: go
          label: Go
          source: "ctx := context.Background()\n// Reads DIDIT_API_KEY.\nclient := didit.NewClient()\n\nresult, err := client.Workflows.Retrieve(ctx, \"11111111-2222-3333-4444-555555555555\")\nif err != nil {\n\tlog.Fatal(err)\n}\nfmt.Printf(\"%+v\\n\", result)"
        - lang: java
          label: Java
          source: >-
            import me.didit.Didit;


            // Reads DIDIT_API_KEY.

            Didit client = new Didit();


            var result =
            client.workflows().retrieve("11111111-2222-3333-4444-555555555555");

            System.out.println(result);
        - lang: php
          label: PHP
          source: >-
            <?php


            require 'vendor/autoload.php';


            use Didit\DiditClient;


            // Reads DIDIT_API_KEY.

            $didit = new DiditClient();


            $result =
            $didit->workflows->retrieve('11111111-2222-3333-4444-555555555555');

            print_r($result->toArray());
        - lang: ruby
          label: Ruby
          source: >-
            require "didit"


            # Reads DIDIT_API_KEY.

            didit = Didit::Client.new


            result =
            didit.workflows.retrieve("11111111-2222-3333-4444-555555555555")

            puts result.to_h
        - lang: csharp
          label: .NET
          source: >-
            using System;

            using System.Text.Json;

            using Didit;


            // Reads DIDIT_API_KEY.

            using var client = new DiditClient();


            var result = await
            client.Workflows.RetrieveAsync("11111111-2222-3333-4444-555555555555");

            Console.WriteLine(JsonSerializer.Serialize(result));
components:
  schemas:
    WorkflowDetail:
      type: object
      description: >-
        नीचे दिए गए फ़ील्ड टाइप किए गए हैं; ऑब्जेक्ट अतिरिक्त विशेषताओं के रूप
        में वर्कफ़्लो कॉन्फ़िगरेशन के हर दूसरे कॉलम (सुविधा टॉगल, थ्रेशोल्ड,
        चेतावनी कार्रवाइयाँ, अनुमत दस्तावेज़, कॉलबैक) को भी ले जाता है। वे
        फ़ील्ड जो `workflow_type` पर लागू नहीं होते हैं, वे `null` हैं।
      properties:
        uuid:
          type: string
          format: uuid
          description: >-
            प्रति-संस्करण पहचानकर्ता (`settings_uuid`)। वर्कफ़्लो के प्रत्येक
            संस्करण का अपना पहचानकर्ता होता है।
        workflow_id:
          type: string
          format: uuid
          description: >-
            वर्कफ़्लो के प्रत्येक संस्करण द्वारा साझा किया गया स्थिर पहचानकर्ता।
            इसके साथ बनाए गए सत्र नवीनतम प्रकाशित संस्करण का उपयोग करते हैं।
        workflow_label:
          type: string
          description: वर्कफ़्लो का डिस्प्ले नाम।
        workflow_type:
          type: string
          nullable: true
          enum:
            - kyc
            - kyb
            - adaptive_age_verification
            - biometric_authentication
            - address_verification
            - questionnaire_verification
            - email_verification
            - phone_verification
            - null
          description: >-
            वर्कफ़्लो टेम्पलेट। बिना टेम्पलेट के बनाए गए ग्राफ़ वर्कफ़्लो के लिए
            `null`।
        is_default:
          type: boolean
          description: क्या यह एप्लिकेशन का डिफ़ॉल्ट वर्कफ़्लो है।
        is_archived:
          type: boolean
          description: संग्रहीत वर्कफ़्लो नए सत्र शुरू नहीं कर सकते।
        version:
          type: integer
          description: वर्कफ़्लो के भीतर संस्करण संख्या।
        status:
          type: string
          enum:
            - draft
            - published
          description: >-
            ड्राफ़्ट वर्ज़न संपादन योग्य होते हैं; प्रकाशित वर्ज़न अपरिवर्तनीय
            होते हैं और नए सत्रों के लिए उपयोग किए जाते हैं।
        published_at:
          type: string
          format: date-time
          nullable: true
          description: यह संस्करण कब प्रकाशित हुआ था। ड्राफ़्ट के लिए `null`।
        is_simple_workflow:
          type: boolean
          description: '`true` जब वर्कफ़्लो में कोई कस्टम `workflow_graph` न हो।'
        is_editable:
          type: boolean
          description: केवल `draft` संस्करणों के लिए `true`।
        workflow_url:
          type: string
          format: uri
          description: सार्वजनिक URL जो इस वर्कफ़्लो के साथ एक सत्र शुरू करता है।
        workflow_graph:
          type: object
          nullable: true
          additionalProperties: true
          description: >-
            वर्कफ़्लो की ग्राफ़ संरचना (नोड्स और एजेस)। सरल वर्कफ़्लो के लिए
            `null`।
        features:
          type: string
          description: >-
            सक्षम सुविधाएँ `" + "` से जुड़ी हुई हैं, उदाहरण के लिए `"OCR +
            LIVENESS"`।
        total_price:
          type: number
          nullable: true
          description: प्रति सत्र कीमत; ग्राफ़ वर्कफ़्लो के लिए सबसे महंगा पथ।
        min_price:
          type: number
          nullable: true
          description: वर्कफ़्लो के माध्यम से सबसे सस्ते पथ की कीमत।
        max_price:
          type: number
          nullable: true
          description: वर्कफ़्लो के माध्यम से सबसे महंगे पथ की कीमत।
        special_add_on_prices:
          type: object
          nullable: true
          additionalProperties: true
          description: संगठन-विशिष्ट ऐड-ऑन कीमतें, या कोई सेट न होने पर `null`।
        max_retry_attempts:
          type: integer
          description: अस्वीकृत सत्यापन के बाद अनुमत पुनः प्रयास।
        retry_window_days:
          type: integer
          nullable: true
          description: वे दिन जिनके दौरान पुनः प्रयास करने की अनुमति है।
        session_expiration_time:
          type: integer
          description: किसी अधूरे सत्र की समय-सीमा समाप्त होने से पहले के सेकंड।
        questionnaire:
          type: object
          nullable: true
          additionalProperties: true
          description: वर्कफ़्लो से जुड़ी प्रश्नावली, या `null`।
        kyb_role_settings:
          type: array
          items:
            type: object
            additionalProperties: true
          description: KYB प्रमुख व्यक्तियों के लिए प्रति-भूमिका सत्यापन सेटिंग्स।
        created_at:
          type: string
          format: date-time
        updated_at:
          type: string
          format: date-time
        signature_availability:
          type: object
          description: >-
            कौन से ई-हस्ताक्षर स्तर अभी हस्ताक्षर कर सकते हैं। `signature_level`
            सेट करने से पहले इसे जांचें। `kyc`, `kyb` और ग्राफ़ वर्कफ़्लो पर
            लौटाया जाता है।
          properties:
            simple:
              type: boolean
              description: Simple हमेशा उपलब्ध रहता है।
            aes:
              type: boolean
              description: >-
                क्या Advanced (AES) अब हस्ताक्षर कर सकता है। जब तक यह `false`
                है, `signature_level: "aes"` पर एक नया चरण सहेजना
                `aes_not_available` के साथ अस्वीकृत कर दिया जाता है।
            qes:
              type: boolean
              description: >-
                क्या Qualified (QES) अब हस्ताक्षर कर सकता है। जब तक कोई योग्य
                प्रदाता कनेक्ट नहीं हो जाता, यह `false` रहता है।
        is_bank_verification_enabled:
          type: boolean
          description: >-
            क्या एक सरल KYC या KYB वर्कफ़्लो बैंक सत्यापन चलाता है। यह संपर्क
            चरणों (और स्थान सत्यापन) के बाद और डेटाबेस सत्यापन, AML और IP
            विश्लेषण से पहले चलता है। बैंक सत्यापन अभी सामान्य रूप से उपलब्ध
            नहीं है: जहां भी यह सक्षम नहीं है, इसे चालू करना अस्वीकृत कर दिया
            जाता है।
        bank_verification_config:
          type: object
          additionalProperties: true
          description: >-
            एक सरल वर्कफ़्लो की बैंक सत्यापन सेटिंग्स, उन्हीं कुंजियों के साथ जो
            एक `BANK_VERIFICATION` नोड लेता है (उदाहरण के लिए `bank_countries`
            और `bank_method_order`)। अज्ञात कुंजियाँ छोड़ दी जाती हैं। प्रत्येक
            कुंजी वैकल्पिक है और एक अनुपस्थित कुंजी अपने डिफ़ॉल्ट को बनाए रखती
            है, इसलिए `{}` का अर्थ सभी डिफ़ॉल्ट हैं। देखें [बैंक सत्यापन
            सेटिंग्स](/hi/management-api/workflows/feature-configs#बैंक-सत्यापन)।
          example: {}
        is_geolocation_enabled:
          type: boolean
          description: >-
            क्या एक सरल KYC वर्कफ़्लो स्थान सत्यापन चलाता है। यह संपर्क चरणों के
            बाद और बैंक सत्यापन तथा डेटाबेस सत्यापन से पहले चलता है। व्यवसाय
            (KYB) वर्कफ़्लो इसे नहीं चला सकते।
        geolocation_config:
          type: object
          additionalProperties: true
          description: >-
            एक साधारण वर्कफ़्लो की स्थान सत्यापन सेटिंग्स, जिनमें वही कुंजियाँ
            होती हैं जो एक `GEOLOCATION` नोड लेता है (उदाहरण के लिए
            `is_geolocation_geofencing_enabled` और `geolocation_max_attempts`)।
            अज्ञात कुंजियों को छोड़ दिया जाता है। प्रत्येक कुंजी वैकल्पिक है और
            अनुपस्थित कुंजी अपना डिफ़ॉल्ट मान बनाए रखती है, इसलिए `{}` का अर्थ
            सभी डिफ़ॉल्ट मान हैं।
          example: {}
      additionalProperties: true
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key
      description: >-
        आपकी एप्लिकेशन की API कुंजी, Business Console में Developers -> API keys
        से। प्राथमिक कुंजी के पास पूर्ण एक्सेस होता है। एक नामित कुंजी को स्कोप
        किया जा सकता है: प्रति संसाधन none, read या write, कुछ वर्कफ़्लो या
        स्वीकृत सत्रों तक सीमित, IP पतों की सूची तक सीमित, और समाप्ति तिथि तक
        सीमित। 401 का अर्थ है कि कुंजी गलत है, निरस्त कर दी गई है या उसकी
        समय-सीमा समाप्त हो गई है; 403 का अर्थ है कि कोई कुंजी नहीं भेजी गई थी,
        कुंजी के पास इस संसाधन या कार्रवाई का एक्सेस नहीं है, या अनुरोध उसकी IP
        सूची से बाहर के पते से आया था; सत्र रूट पर 404 का अर्थ है कि सत्र कुंजी
        के वर्कफ़्लो या स्थितियों से बाहर है। मीडिया एक्सेस के बिना एक कुंजी को
        छवि, वीडियो और PDF URL null के रूप में प्राप्त होते हैं, और सत्र write
        के बिना एक कुंजी को सत्र लिंक और token null के रूप में प्राप्त होते हैं।
        देखें https://docs.didit.me/console/api-keys।

````

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