> ## 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: कैरियर और धोखाधड़ी संकेत

> Didit के साथ बिना OTP भेजे फ़ोन नंबर का जोखिम स्कोर पाएँ। एक सर्वर-से-सर्वर कॉल में कैरियर, लाइन प्रकार, पोर्टिंग, डिस्पोजेबल नंबर और धोखाधड़ी संकेत।

जब आपको OTP प्रवाह से पहले, उसके बजाय, या उसके बाहर फ़ोन इंटेलिजेंस चाहिए, तब `POST /v3/phone/risk/` का उपयोग करें।

यह उपयोगकर्ता को कोई कोड नहीं भेजता। यह एक API सत्र बनाता है, नंबर को समृद्ध करता है, आपके फ़ोन-जोखिम नियम लागू करता है, और एक सिंक्रोनस प्रतिक्रिया में वही सामान्यीकृत फ़ोन ब्लॉक लौटाता है जो फ़ोन सत्यापन में उपयोग किया जाता है।

जब अनुरोध सहेजा जाता है, तब Didit स्कोर किए गए फ़ोन नंबर को **Networks** में एकत्रित साक्ष्य के रूप में भी उपयोग कर सकता है। नेटवर्क ग्राफ़ साझा फ़ोन संकेतों पर उच्च-जोखिम वाली फ़ोन इंटेलिजेंस, पोर्टिंग और लाइन-प्रकार का संदर्भ दिखा सकते हैं, लेकिन वे अन्य संगठनों को कच्चा फ़ोन नंबर नहीं दिखाते।

## प्रतिक्रिया की व्याख्या करें

* `status` इस API सत्र का अंतिम निर्णय है। यह आमतौर पर `Approved` होता है। जोखिम मूल्यांकन `In Review` या `Declined` दे सकता है।
* `phone.full_number` सामान्यीकृत E.164 नंबर है। `phone.phone_number_prefix` और `phone.phone_number` इसे अंतरराष्ट्रीय उपसर्ग और राष्ट्रीय नंबर में विभाजित करते हैं।
* `phone.is_disposable` और `phone.is_virtual` एप्लिकेशन लॉजिक के लिए स्थिर हाँ/नहीं संकेत हैं। कैरियर लुकअप `carrier.name` और `carrier.type` (`mobile`, `voip` और इसी तरह के अन्य मान) जोड़ता है।
* `phone.phone_intelligence.score` 0-100 के जोखिम पैमाने का उपयोग करता है, जहाँ अधिक संख्या का अर्थ अधिक जोखिम है। `phone_type_risk` (`Low`, `Medium`, `High`) और `phone_trust_index` (स्कोर का विलोम) व्युत्पन्न संकेतक हैं।
* `phone.phone_intelligence` और `phone.enrichment` एक ही सामान्यीकृत ऑब्जेक्ट वाले संगतता उपनाम हैं। नए इंटीग्रेशन `phone.enrichment` पढ़ सकते हैं।
* `phone.matches` आपके एप्लिकेशन के उन अन्य सत्रों की सूची देता है जिनमें यही नंबर किसी दूसरे उपयोगकर्ता ने इस्तेमाल किया। इसका उपयोग डुप्लिकेट खाता पहचान के लिए करें।
* `request_id` API सत्र का ID है। यदि आपको परिणाम को बाद के webhook या कंसोल गतिविधि से मिलाना है, तो इसे `vendor_data` के साथ सहेजें।

> [!WARNING]
>
> `phone.phone_intelligence` और `phone.enrichment` सर्वोत्तम-प्रयास फ़ील्ड हैं। पूरा हुआ लुकअप दोनों को छोड़ सकता है, यदि उस नंबर, देश या प्लान के लिए कोई उपयोगी इंटेलिजेंस डेटा नहीं मिला। पहले स्थिर सामान्यीकृत फ़ील्ड पर नियम बनाएँ, और गायब इंटेलिजेंस को "अज्ञात" मानें, "सुरक्षित" नहीं।

## सोशल फ़ुटप्रिंट ऐड-ऑन

`phone` के अंतर्गत प्रतिक्रिया में `phone_social` ब्लॉक जोड़ने के लिए `enable_social` को `true` पर सेट करें। इसमें वे ऑनलाइन प्लेटफ़ॉर्म होते हैं जिन पर यह फ़ोन नंबर पंजीकृत है, जिन्हें श्रेणी के अनुसार समूहित किया गया है, साथ में सारांश संख्याएँ और हमारे डेटा साझेदारों द्वारा लौटाए गए प्रोफ़ाइल विवरण।

* `phone.phone_social.profiles_registered` और `phone.phone_social.profiles_checked` मुख्य संख्याएँ हैं: मूल्यांकन किए गए प्लेटफ़ॉर्मों में से वे प्लेटफ़ॉर्म जहाँ फ़ोन नंबर के पंजीकृत होने की पुष्टि हुई है, और मूल्यांकन किए गए प्लेटफ़ॉर्मों की कुल संख्या।
* `phone.phone_social.registered_platforms` और `phone.phone_social.not_registered_platforms` हर प्लेटफ़ॉर्म को उसकी `category` और `scope` (`global`, या क्षेत्र-विशिष्ट प्लेटफ़ॉर्म के लिए `local`) के साथ सूचीबद्ध करते हैं।
* `phone.phone_social.categories` प्रति श्रेणी पंजीकृत संख्या और अनुपात देता है, और जब कोई प्लेटफ़ॉर्म उन्हें उपलब्ध कराता है, तब `phone.phone_social.profiles` प्रति-प्लेटफ़ॉर्म प्रोफ़ाइल विवरण रखता है (नाम, फ़ोटो URL, परिचय टेक्स्ट, गोपनीयता स्थिति, व्यावसायिक-खाता फ़्लैग)।
* सारांश सूचकांक (`digital_footprint_diversity`, `digital_sophistication_index`, `engagement_depth_index`, `subscription_affordability_index`) 0-10 के समग्र मान हैं। यदि जाँच ने किसी संख्या के लिए डेटा नहीं लौटाया, तो हर संख्या `null` हो सकती है।

`profiles_registered: 0` एक वास्तविक उत्तर है, विफलता नहीं: प्लेटफ़ॉर्म की जाँच हुई और फ़ोन नंबर उनमें से किसी पर भी नहीं मिला, जो एक आम सिंथेटिक पहचान संकेत है। यह एंडपॉइंट इसके आधार पर अपने आप कोई कार्रवाई नहीं करता। इसे Review या Decline निर्णय में बदलने के लिए किसी वर्कफ़्लो में `phone_no_social_presence_action` का उपयोग करें।

यदि `enable_social` सेट नहीं है, तो ब्लॉक अनुपस्थित रहता है। यह तब भी अनुपस्थित रहता है जब सोशल जाँच पूरी नहीं हो सकी, और ऐसी स्थिति में उसका बिल नहीं किया जाता।

## सैंडबॉक्स व्यवहार

सैंडबॉक्स कुंजियाँ अनुरोध को मान्य करती हैं और निर्धारित रूप से स्वीकृत डेटा लौटाती हैं। वे OTP नहीं भेजतीं, क्रेडिट खर्च नहीं करतीं, सत्र नहीं बनातीं, और नेटवर्क में योगदान नहीं देतीं। `enable_social` सेट होने पर वे निर्धारित `phone_social` ब्लॉक भी लौटाती हैं।

## बिलिंग

Phone Risk API कॉल की सूचीबद्ध कीमत \$0.04 है, जो पूर्ण फ़ोन सत्यापन से कम है, क्योंकि इसमें OTP नहीं भेजा जाता। लाइव अनुरोध तब बिल योग्य हो जाता है जब लुकअप शुरू हो जाए, भले ही कुछ सर्वोत्तम-प्रयास फ़ील्ड उपलब्ध न हों।

सोशल फ़ुटप्रिंट ऐड-ऑन का अलग से बिल होता है: जब भी जाँच पूरी होती है, Phone Risk API की कीमत के ऊपर प्रति अनुरोध एक `phone_social` यूनिट। लुकअप से पहले की क्रेडिट जाँच दोनों को कवर करती है।


## OpenAPI

````yaml hi/openapi-25.json POST /v3/phone/risk/
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/phone/risk/:
    post:
      tags:
        - Standalone APIs
      summary: फ़ोन नंबर का जोखिम स्कोर निकालें
      description: >-
        किसी फ़ोन नंबर को रीसॉल्व करें और OTP भेजे बिना कैरियर, लाइन-प्रकार,
        पोर्टिंग, डिस्पोज़ेबल-नंबर, क्रॉस-सत्र मिलान और नॉर्मलाइज़्ड
        जोखिम-इंटेलिजेंस संकेत प्राप्त करें। यह endpoint एक API सत्र बनाता है और
        उसकी id को `request_id` के रूप में लौटाता है।


        **निर्णय।** शीर्ष-स्तरीय `status`, `phone.status` को दर्शाता है। यह आम
        तौर पर `Approved` होता है; जोखिम मूल्यांकन से `In Review` या `Declined`
        प्राप्त हो सकता है।


        **कंपैटिबिलिटी उपनाम।** लाइव रिस्पॉन्स नॉर्मलाइज़्ड इंटेलिजेंस ऑब्जेक्ट
        को `phone.phone_intelligence` और `phone.enrichment` दोनों के रूप में
        प्रदर्शित करते हैं। इनके मान एक समान होते हैं। नए इंटीग्रेशन
        `phone.enrichment` को पढ़ सकते हैं। जब कोई उपयोगी इंटेलिजेंस डेटा वापस
        नहीं मिलता है, तो दोनों कुंजियाँ अनुपस्थित होती हैं।


        **बिलिंग।** लाइव कॉल Phone Risk API मूल्य निर्धारण का उपयोग करते हैं।
        लुकअप शुरू होते ही अनुरोध बिल योग्य हो जाता है, भले ही कुछ
        सर्वोत्तम-प्रयास फ़ील्ड अनुपलब्ध हों।


        **सैंडबॉक्स।** सैंडबॉक्स कुंजियाँ अनुरोध को मान्य करती हैं और बिना OTP
        भेजे, क्रेडिट का उपभोग किए, सत्र बनाए या Networks में योगदान दिए
        नियतात्मक स्वीकृत डेटा लौटाती हैं।


        **प्रमाणीकरण।** `x-api-key` में अपने एप्लिकेशन की API कुंजी भेजें।
        अनुपलब्ध या अमान्य क्रेडेंशियल `403` लौटाते हैं - यह API कभी भी `401`
        नहीं लौटाती है।


        **रेट लिमिट।** POST/PATCH/DELETE endpoints पर प्रति API कुंजी प्रति मिनट
        300 अनुरोधों का साझा राइट बजट (लेन-देन निर्माण और इवेंट अंतर्ग्रहण का
        600 का एक अलग बजट होता है)।


        **सोशल फ़ुटप्रिंट।** `phone_social` ब्लॉक जोड़ने के लिए `enable_social`
        को `true` पर सेट करें: वे ऑनलाइन प्लेटफ़ॉर्म जिन पर यह नंबर पंजीकृत है,
        प्रति-श्रेणी गणना और उपलब्ध प्रोफ़ाइल विवरण के साथ।
        `profiles_registered: 0` का अर्थ है कि प्लेटफ़ॉर्म की जाँच की गई थी और
        नंबर उनमें से किसी पर भी नहीं मिला - एक मान्य, बिल योग्य उत्तर। जब ऐड-ऑन
        का अनुरोध नहीं किया गया था या जाँच पूरी नहीं की जा सकी थी, तो यह ब्लॉक
        अनुपस्थित रहता है, और उस स्थिति में इसका बिल नहीं लिया जाता है। बिलिंग
        इस endpoint की अपनी कीमत के अतिरिक्त प्रति अनुरोध एक `phone_social`
        यूनिट जोड़ती है।
      operationId: post_v3phone_risk
      requestBody:
        required: true
        content:
          application/json:
            schema:
              $ref: '#/components/schemas/PhoneRiskRequest'
            examples:
              Minimal:
                summary: डिफ़ॉल्ट मानों के साथ किसी संख्या का स्कोर निकालें
                value:
                  phone_number: '+14155552671'
              Full context:
                summary: सिग्नलों, देश संकेत और सहसंबंध ID के साथ स्कोरिंग करें
                value:
                  phone_number: '+14155552671'
                  country_code: US
                  signals:
                    ip: 192.0.2.1
                    device_id: 8F0B8FDD-C2CB-4387-B20A-56E9B2E5A0D2
                    device_platform: ios
                    device_model: iPhone17,2
                    os_version: 18.0.1
                    app_version: 1.2.34
                    user_agent: >-
                      Mozilla/5.0 (iPhone; CPU iPhone OS 18_0_1 like Mac OS X)
                      AppleWebKit/605.1.15 (KHTML, like Gecko) Version/18.0
                      Mobile/15E148 Safari/604.1
                  vendor_data: lead-123
                  metadata:
                    source: signup_prescreen
      responses:
        '200':
          description: >-
            जोखिम मूल्यांकन पूरा हो गया। निर्णय के लिए `status` का निरीक्षण
            करें; पूर्ण लुकअप के लिए HTTP हमेशा `200` होता है।
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/PhoneRiskResponse'
              examples:
                Clean mobile number:
                  summary: इंटेलिजेंस कवरेज वाला साफ़ मोबाइल नंबर
                  value:
                    request_id: 4fd09d2e-9bc9-4c4e-9c46-7f625ac0ab62
                    status: Approved
                    phone:
                      status: Approved
                      phone_number_prefix: '+1'
                      phone_number: '4155552671'
                      full_number: '+14155552671'
                      country_code: US
                      country_name: United States
                      carrier:
                        name: Example Mobile
                        type: mobile
                      is_disposable: false
                      is_virtual: false
                      verification_method: null
                      verification_attempts: 0
                      verified_at: null
                      warnings: []
                      lifecycle: []
                      matches: []
                      phone_intelligence:
                        score: 3
                        phone_type_risk: Low
                        phone_trust_index: 97
                        network_stability_index: 95
                        is_disposable: false
                        is_ported: false
                        is_recently_ported: false
                        carrier_type: mobile
                        reason_codes: []
                      enrichment:
                        score: 3
                        phone_type_risk: Low
                        phone_trust_index: 97
                        network_stability_index: 95
                        is_disposable: false
                        is_ported: false
                        is_recently_ported: false
                        carrier_type: mobile
                        reason_codes: []
                    vendor_data: lead-123
                    metadata:
                      source: signup_prescreen
                    created_at: '2026-09-01T10:30:00.123456+00:00'
                Number in review:
                  summary: समीक्षा के लिए फ़्लैग किया गया डिस्पोज़ेबल या वर्चुअल नंबर
                  value:
                    request_id: 8c22e1f0-4b3d-4a3a-9d1e-2f6b7c8d9e0f
                    status: In Review
                    phone:
                      status: In Review
                      phone_number_prefix: '+44'
                      phone_number: '7700900123'
                      full_number: '+447700900123'
                      country_code: GB
                      country_name: United Kingdom
                      carrier:
                        name: Example VoIP
                        type: voip
                      is_disposable: true
                      is_virtual: true
                      verification_method: null
                      verification_attempts: 0
                      verified_at: null
                      warnings: []
                      lifecycle: []
                      matches: []
                      phone_intelligence:
                        score: 72
                        phone_type_risk: High
                        phone_trust_index: 28
                        network_stability_index: 40
                        is_disposable: true
                        is_ported: true
                        is_recently_ported: true
                        carrier_type: voip
                        reason_codes:
                          - code: IR-5AC67A32
                            direction: risk
                            message: Phone type identified as non-mobile
                            impact_level: medium
                      enrichment:
                        score: 72
                        phone_type_risk: High
                        phone_trust_index: 28
                        network_stability_index: 40
                        is_disposable: true
                        is_ported: true
                        is_recently_ported: true
                        carrier_type: voip
                        reason_codes:
                          - code: IR-5AC67A32
                            direction: risk
                            message: Phone type identified as non-mobile
                            impact_level: medium
                    vendor_data: lead-124
                    metadata: null
                    created_at: '2026-09-01T10:30:00.123456+00:00'
        '400':
          $ref: '#/components/responses/PhoneRiskValidationError'
        '403':
          $ref: '#/components/responses/RiskPermissionDenied'
        '429':
          $ref: '#/components/responses/RateLimitedWrite'
      security:
        - ApiKeyAuth: []
      x-codeSamples:
        - lang: curl
          label: curl
          source: |-
            curl -X POST https://verification.didit.me/v3/phone/risk/ \
              -H 'x-api-key: YOUR_API_KEY' \
              -H 'Content-Type: application/json' \
              -d '{
                "phone_number": "+14155552671",
                "country_code": "US",
                "vendor_data": "lead-123",
                "metadata": {"source": "signup_prescreen"}
              }'
        - lang: python
          label: Python
          source: |-
            from didit import Didit

            # Reads DIDIT_API_KEY.
            client = Didit()

            result = client.phone.assess_risk(
                phone_number="+14155552671",
            )
            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.phone.assessRisk({
              phone_number: "+14155552671",
            });
            console.log(result);
        - lang: go
          label: Go
          source: "ctx := context.Background()\n// Reads DIDIT_API_KEY.\nclient := didit.NewClient()\n\nresult, err := client.Phone.AssessRisk(ctx, didit.PhoneRiskRequest{\n\tPhoneNumber: \"+14155552671\",\n})\nif err != nil {\n\tlog.Fatal(err)\n}\nfmt.Printf(\"%+v\\n\", result)"
        - lang: java
          label: Java
          source: |-
            import me.didit.Didit;
            import me.didit.types.PhoneRiskRequest;

            // Reads DIDIT_API_KEY.
            Didit client = new Didit();

            var result = client.phone().assessRisk(PhoneRiskRequest.builder()
                    .phoneNumber("+14155552671")
                    .build());
            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->phone->assessRisk([
                'phone_number' => '+14155552671',
            ]);
            print_r($result->toArray());
        - lang: ruby
          label: Ruby
          source: |-
            require "didit"

            # Reads DIDIT_API_KEY.
            didit = Didit::Client.new

            result = didit.phone.assess_risk(phone_number: "+14155552671")
            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.Phone.AssessRiskAsync(new PhoneRiskRequest
            {
                PhoneNumber = "+14155552671",
            });
            Console.WriteLine(JsonSerializer.Serialize(result));
components:
  schemas:
    PhoneRiskRequest:
      type: object
      required:
        - phone_number
      properties:
        phone_number:
          type: string
          maxLength: 20
          description: >-
            स्कोर करने के लिए फ़ोन नंबर। इसे मान्य किया जाता है और E.164 में
            सामान्यीकृत किया जाता है।
          example: '+14155552671'
        country_code:
          type: string
          maxLength: 3
          description: >-
            इंटेलिजेंस कवरेज के लिए वैकल्पिक ISO 3166-1 alpha-2 या alpha-3 देश
            संकेत।
          example: US
        signals:
          $ref: '#/components/schemas/RiskSignals'
        vendor_data:
          type: string
          description: >-
            इस अनुरोध के लिए आपका स्थिर संदर्भ। API सत्र पर संग्रहीत और
            रिस्पॉन्स में लौटाया गया।
        metadata:
          type: object
          nullable: true
          additionalProperties: true
          description: >-
            आपका गैर-संवेदनशील JSON मेटाडेटा। API सत्र पर संग्रहीत और रिस्पॉन्स
            में दोहराया गया।
        enable_social:
          type: boolean
          default: false
          description: >-
            true होने पर, नंबर के सोशल फ़ुटप्रिंट की भी खोज करें - मैसेजिंग,
            सोशल, ई-कॉमर्स और व्यावसायिक प्लेटफ़ॉर्म जिन पर यह पंजीकृत है। इस
            endpoint की अपनी कीमत के अतिरिक्त प्रति अनुरोध एक `phone_social`
            इकाई के रूप में बिल किया जाता है।
          example: true
    PhoneRiskResponse:
      type: object
      required:
        - request_id
        - status
        - created_at
      properties:
        request_id:
          type: string
          format: uuid
          description: >-
            इस अनुरोध के लिए बनाए गए API सत्र की Id। यदि आपको बाद के webhook
            इवेंट या कंसोल गतिविधि के साथ परिणाम को सहसंबंधित करने की आवश्यकता
            है, तो इसे `vendor_data` के साथ संग्रहीत करें।
        status:
          type: string
          enum:
            - Approved
            - In Review
            - Declined
          description: >-
            इस API सत्र के लिए अंतिम निर्णय। आमतौर पर `Approved`; जोखिम
            मूल्यांकन `In Review` या `Declined` उत्पन्न कर सकता है।
        vendor_data:
          type: string
          nullable: true
          description: >-
            आपके द्वारा भेजे गए `vendor_data` का इको, जब आपने इसे नहीं भेजा हो
            तो `null`।
        metadata:
          type: object
          nullable: true
          additionalProperties: true
          description: >-
            आपके द्वारा भेजे गए `metadata` का इको, जब आपने इसे नहीं भेजा हो तो
            `null`।
        created_at:
          type: string
          format: date-time
          description: इस रिस्पॉन्स का टाइमस्टैम्प।
        phone:
          type: object
          description: >-
            सामान्यीकृत फ़ोन रिपोर्ट, वही ब्लॉक जो फ़ोन सत्यापन रिस्पॉन्स द्वारा
            उपयोग किया जाता है।
          required:
            - status
          properties:
            status:
              type: string
              enum:
                - Approved
                - In Review
                - Declined
              description: इस फ़ोन नंबर के लिए निर्णय। शीर्ष-स्तरीय `status` को दर्शाता है।
            phone_number_prefix:
              type: string
              description: शुरुआती `+` के साथ देश का कॉलिंग कोड (उदा., `+1`)।
              example: '+1'
            phone_number:
              type: string
              description: देश के कॉलिंग कोड के बिना राष्ट्रीय नंबर।
              example: '4155552671'
            full_number:
              type: string
              description: E.164 प्रारूप में पूरा नंबर।
              example: '+14155552671'
            country_code:
              type: string
              nullable: true
              description: नंबर का ISO 3166-1 alpha-2 देश।
              example: US
            country_name:
              type: string
              description: '`country_code` से प्राप्त देश का पूरा नाम।'
              example: United States
            carrier:
              type: object
              nullable: true
              description: >-
                नंबर को सेवा प्रदान करने वाला वर्तमान नेटवर्क। `null` जब लुकअप
                किसी कैरियर को रिज़ॉल्व नहीं कर सका।
              properties:
                name:
                  type: string
                  description: कैरियर का नाम। जब लुकअप इसे पहचान नहीं सका तो खाली स्ट्रिंग।
                type:
                  type: string
                  description: >-
                    लुकअप द्वारा रिपोर्ट किया गया लाइन प्रकार: `mobile`,
                    `fixed_line`, `voip`, `isp`, `vpn`, `toll_free`,
                    `premium_rate`, या समान।
            is_disposable:
              type: boolean
              description: '`true` जब नंबर किसी अस्थायी या बर्नर नंबर सेवा से संबंधित हो।'
            is_virtual:
              type: boolean
              description: '`true` जब लाइन का प्रकार वर्चुअल हो (`voip`, `isp`, या `vpn`)।'
            verification_method:
              type: string
              nullable: true
              description: >-
                अंतर्निहित सत्यापन का OTP चैनल। जोखिम लुकअप के लिए `null`, जो
                कभी कोड नहीं भेजते हैं।
            verification_attempts:
              type: integer
              description: इस नंबर के लिए भेजे गए OTP। जोखिम लुकअप के लिए `0`।
            verified_at:
              type: string
              format: date-time
              nullable: true
              description: >-
                नंबर को अंतिम बार OTP द्वारा कब सत्यापित किया गया था। जोखिम
                लुकअप के लिए `null`।
            warnings:
              type: array
              description: >-
                इस अनुरोध के लिए रिकॉर्ड की गई जोखिम चेतावनियां। कोई न होने पर
                खाली ऐरे।
              items:
                $ref: '#/components/schemas/RiskWarning'
            lifecycle:
              type: array
              description: >-
                अनुरोध का कालानुक्रमिक ऑडिट ट्रेल। जिन जोखिम लुकअप में सेंड
                इवेंट नहीं हैं, उनके लिए खाली ऐरे।
              items:
                $ref: '#/components/schemas/RiskLifecycleEvent'
            matches:
              type: array
              description: >-
                आपके एप्लिकेशन के अन्य सत्र जहाँ एक अलग उपयोगकर्ता (अलग
                `vendor_data`) द्वारा समान फ़ोन नंबर का उपयोग किया गया था।
                अधिकतम 5 प्रविष्टियाँ। कोई मिलान न होने पर खाली ऐरे।
              items:
                $ref: '#/components/schemas/PhoneMatchItem'
            phone_intelligence:
              $ref: '#/components/schemas/PhoneIntelligence'
            enrichment:
              $ref: '#/components/schemas/PhoneIntelligence'
            phone_social:
              $ref: '#/components/schemas/PhoneSocialFootprint'
    RiskSignals:
      type: object
      description: >-
        आपके एप्लिकेशन द्वारा देखा गया वैकल्पिक डिवाइस और नेटवर्क संदर्भ। सभी
        फ़ील्ड वैकल्पिक हैं। इन्हें पास करने से Networks में क्रॉस-सत्र मिलान
        डिटेक्शन को सहायता मिलती है।
      properties:
        ip:
          type: string
          format: ip
          description: अंतिम उपयोगकर्ता के लिए देखा गया IPv4 या IPv6 पता।
          example: 192.0.2.1
        device_id:
          type: string
          maxLength: 255
          description: >-
            आपके एप्लिकेशन द्वारा एकत्र किया गया स्थिर डिवाइस पहचानकर्ता
            (Android `ANDROID_ID`, iOS `identifierForVendor`)।
        device_platform:
          type: string
          enum:
            - android
            - ios
            - ipados
            - tvos
            - web
          description: अंतिम उपयोगकर्ता के डिवाइस का प्लेटफ़ॉर्म।
        device_model:
          type: string
          maxLength: 255
          description: आपके एप्लिकेशन द्वारा रिपोर्ट किया गया डिवाइस मॉडल।
        os_version:
          type: string
          maxLength: 64
          description: ऑपरेटिंग-सिस्टम संस्करण।
        app_version:
          type: string
          maxLength: 64
          description: आपके एप्लिकेशन का संस्करण।
        user_agent:
          type: string
          maxLength: 512
          description: ब्राउज़र या ऐप का user agent।
    RiskWarning:
      type: object
      required:
        - feature
        - risk
        - log_type
        - short_description
        - long_description
      properties:
        feature:
          type: string
          description: सुविधा जिसने चेतावनी उत्पन्न की।
        risk:
          type: string
          description: मशीन-पठनीय जोखिम कोड। समय के साथ नए मान जोड़े जा सकते हैं।
        additional_data:
          type: object
          nullable: true
          additionalProperties: true
          description: जोखिम-विशिष्ट संदर्भ, या `null`।
        log_type:
          type: string
          enum:
            - error
            - warning
            - information
          description: निर्णय नियमों द्वारा उपयोग की जाने वाली गंभीरता।
        short_description:
          type: string
          description: मानव-पठनीय एक पंक्ति का सारांश।
        long_description:
          type: string
          description: मानव-पठनीय स्पष्टीकरण।
    RiskLifecycleEvent:
      type: object
      required:
        - type
        - timestamp
        - details
        - fee
      properties:
        type:
          type: string
          description: मशीन-पठनीय इवेंट प्रकार। समय के साथ नए मान जोड़े जा सकते हैं।
        timestamp:
          type: string
          format: date-time
          description: जब इवेंट हुआ था।
        details:
          type: object
          nullable: true
          additionalProperties: true
          description: इवेंट-विशिष्ट payload, या `null`।
        fee:
          type: number
          description: इस इवेंट के लिए बिल की गई USD राशि।
    PhoneMatchItem:
      type: object
      description: >-
        आपके एप्लिकेशन का एक अन्य सत्र जिसने भिन्न `vendor_data` के साथ समान
        फ़ोन नंबर का उपयोग किया।
      properties:
        session_id:
          type: string
          format: uuid
          description: उस अन्य सत्यापन का सत्र id जिसने इस फ़ोन नंबर का उपयोग किया था।
        session_number:
          type: integer
          description: उस सत्र की मानव-पठनीय अनुक्रमिक संख्या।
        vendor_data:
          type: string
          nullable: true
          description: उस सत्र का `vendor_data`।
        verification_date:
          type: string
          description: जब वह सत्र बनाया गया था (`YYYY-MM-DDTHH:MM:SSZ`)।
        phone_number:
          type: string
          description: मिलान किया गया फ़ोन नंबर।
        status:
          type: string
          description: उस सत्र की स्थिति (उदा., `Approved`, `Declined`, `In Progress`)।
        is_blocklisted:
          type: boolean
          description: क्या फ़ोन नंबर आपके एप्लिकेशन की ब्लॉकलिस्ट में है।
        api_service:
          type: string
          nullable: true
          description: >-
            API-प्रकार के सत्रों के लिए, इसे बनाने वाला स्टैंडअलोन API; नियमित
            सत्यापन सत्रों के लिए `null`।
        source:
          type: string
          description: >-
            मिलान कहाँ पाया गया था। आमतौर पर `session`; किसी संगठन सूची
            प्रविष्टि के माध्यम से ब्लॉकलिस्ट हिट `list_entry` का उपयोग करता है।
    PhoneIntelligence:
      type: object
      description: >-
        सामान्यीकृत फ़ोन-इंटेलिजेंस ब्लॉक। केवल तभी मौजूद होता है जब इस लुकअप के
        लिए इंटेलिजेंस ऐड-ऑन चला हो; मौजूद होने पर इसे समान मानों के साथ
        `enrichment` उपनाम के तहत भी दिखाया जाता है।
      properties:
        score:
          type: number
          nullable: true
          description: सामान्यीकृत 0-100 जोखिम स्कोर। उच्च मान अधिक जोखिम भरा होता है।
        phone_type_risk:
          type: string
          nullable: true
          description: '`Low`, `Medium` या `High`, स्कोर से निकाला गया।'
        phone_trust_index:
          type: number
          nullable: true
          description: >-
            स्कोर का व्युत्क्रम, उन डैशबोर्ड के लिए जो उच्च स्कोर को बेहतर मानते
            हैं।
        network_stability_index:
          type: number
          nullable: true
          description: लाइन के नेटवर्क की स्थिरता।
        is_disposable:
          type: boolean
          nullable: true
          description: '`true` जब नंबर डिस्पोज़ेबल या वर्चुअल प्रतीत होता हो।'
        is_ported:
          type: boolean
          nullable: true
          description: '`true` जब नंबर ने कैरियर बदल लिया हो।'
        is_recently_ported:
          type: boolean
          nullable: true
          description: '`true` जब पोर्ट हाल ही में हुआ हो।'
        carrier_type:
          type: string
          nullable: true
          description: लुकअप द्वारा रिपोर्ट किया गया लाइन वर्गीकरण (उदा. `mobile`)।
        reason_codes:
          type: array
          items:
            type: object
            properties:
              code:
                type: string
                description: >-
                  सिग्नल का स्थिर Didit पहचानकर्ता, उदाहरण के लिए `IR-5AC67A32`।
                  अपारदर्शी: इसके आधार पर समूह बनाएँ और फ़िल्टर करें, इसे पार्स
                  न करें।
              value:
                nullable: true
                description: >-
                  जोखिम फ़्लैग के लिए (उदाहरण के लिए `voip`, `leaked`,
                  `disposable`, `spam_trap`), इसका मान: एक बूलियन, एक स्तर या एक
                  तिथि। स्कोर्ड कारण कोड के लिए नल।
              direction:
                type: string
                enum:
                  - risk
                  - trust
                description: क्या सिग्नल ने जोखिम बढ़ाया या विश्वास जोड़ा।
              message:
                type: string
                description: सिग्नल का मानव-पठनीय स्पष्टीकरण, अंग्रेज़ी में।
              impact_level:
                type: string
                nullable: true
                description: >-
                  सिग्नल ने स्कोर को कितनी दृढ़ता से प्रभावित किया, उदाहरण के
                  लिए `low`, `medium` या `high`।
          description: >-
            स्कोर की व्याख्या करने वाले सिग्नल, प्रत्येक एक स्थिर Didit कोड, एक
            दिशा, एक संदेश और एक प्रभाव स्तर के साथ। समय के साथ नए कोड दिखाई दे
            सकते हैं, इसलिए अज्ञात कोड को अस्वीकार न करें।
    PhoneSocialFootprint:
      type: object
      nullable: true
      description: >-
        फ़ोन नंबर का सोशल फ़ुटप्रिंट: वे ऑनलाइन प्लेटफ़ॉर्म जिन पर यह पंजीकृत
        है। केवल तभी मौजूद होता है जब `enable_social` सेट किया गया था और जांच
        पूरी हो गई थी। प्रत्येक संख्या शून्य हो सकती है यदि इसके लिए कोई डेटा
        वापस नहीं आया। `profiles_registered: 0` का अर्थ है कि प्लेटफ़ॉर्म की
        जांच की गई थी और उनमें से किसी पर भी फ़ोन नंबर नहीं मिला - एक मान्य, बिल
        योग्य उत्तर और एक सामान्य सिंथेटिक-पहचान संकेत।
      properties:
        profiles_registered:
          type: integer
          nullable: true
          description: वे प्लेटफ़ॉर्म जहाँ फ़ोन नंबर के पंजीकृत होने की पुष्टि हुई है।
          example: 5
        profiles_checked:
          type: integer
          nullable: true
          description: पंजीकरण के लिए मूल्यांकन किए गए प्लेटफ़ॉर्म।
          example: 14
        names_found:
          type: integer
          nullable: true
          description: वे प्लेटफ़ॉर्म जिन्होंने संबद्ध नाम लौटाया।
          example: 0
        photos_found:
          type: integer
          nullable: true
          description: वे प्लेटफ़ॉर्म जिन्होंने प्रोफ़ाइल फ़ोटो लौटाई।
          example: 0
        communication_breadth:
          type: integer
          nullable: true
          description: संचार प्लेटफ़ॉर्म जिनमें उपस्थिति का पता चला है।
          example: 2
        digital_footprint_diversity:
          type: integer
          nullable: true
          description: संसूचित उपस्थिति वाली विशिष्ट प्लेटफ़ॉर्म श्रेणियां।
          example: 5
        digital_sophistication_index:
          type: integer
          nullable: true
          description: कंपोजिट डिजिटल-परिपक्वता संकेतक, 0-10।
          example: 5
        engagement_depth_index:
          type: integer
          nullable: true
          description: प्रोफ़ाइल-समृद्धि संकेतक, 0-10।
          example: 3
        subscription_affordability_index:
          type: integer
          nullable: true
          description: निःशुल्क बनाम सशुल्क प्लेटफ़ॉर्म मिक्स, 0-10।
          example: 2
        free_platforms:
          type: integer
          nullable: true
          description: निःशुल्क प्लेटफ़ॉर्म पर पंजीकरण।
          example: 4
        full_paid_platforms:
          type: integer
          nullable: true
          description: पूरी तरह से भुगतान वाले प्लेटफ़ॉर्म पर पंजीकरण।
          example: 0
        partial_paid_platforms:
          type: integer
          nullable: true
          description: फ़्रीमियम प्लेटफ़ॉर्म पर पंजीकरण।
          example: 1
        whatsapp_profile_completeness:
          type: string
          nullable: true
          enum:
            - Basic
            - Partial
            - Complete
            - Not Present
            - null
          description: WhatsApp प्रोफ़ाइल की पूर्णता। केवल फ़ोन; ईमेल के लिए null।
          example: Partial
        registered_platforms:
          type: array
          description: वे प्लेटफ़ॉर्म जहाँ पंजीकरण की पुष्टि हुई है।
          items:
            $ref: '#/components/schemas/SocialFootprintPlatform'
        not_registered_platforms:
          type: array
          description: नकारात्मक परिणाम के साथ जाँचे गए प्लेटफ़ॉर्म।
          items:
            $ref: '#/components/schemas/SocialFootprintPlatform'
        categories:
          type: object
          description: प्रति प्लेटफ़ॉर्म श्रेणी पंजीकृत संख्या और अनुपात।
          additionalProperties:
            $ref: '#/components/schemas/SocialFootprintCategorySummary'
        profiles:
          type: object
          description: >-
            प्रति-प्लेटफ़ॉर्म प्रोफ़ाइल विवरण, प्लेटफ़ॉर्म द्वारा की-बद्ध, जब
            प्लेटफ़ॉर्म उन्हें प्रदर्शित करता है।
          additionalProperties:
            $ref: '#/components/schemas/SocialFootprintProfile'
    SocialFootprintPlatform:
      type: object
      properties:
        platform:
          type: string
          description: प्लेटफ़ॉर्म पहचानकर्ता।
          example: whatsapp
        category:
          type: string
          description: >-
            प्लेटफ़ॉर्म श्रेणी, उदाहरण के लिए MESSAGING, SOCIAL_MEDIA,
            ECOMMERCE, PROFESSIONAL, EMAIL_PROVIDER।
          example: MESSAGING
        scope:
          type: string
          enum:
            - global
            - local
          description: >-
            विश्वव्यापी प्लेटफ़ॉर्म के लिए `global`, क्षेत्र-विशिष्ट प्लेटफ़ॉर्म
            के लिए `local`।
          example: global
    SocialFootprintCategorySummary:
      type: object
      properties:
        registered:
          type: integer
          nullable: true
          description: इस श्रेणी के वे प्लेटफ़ॉर्म जहाँ पंजीकरण की पुष्टि हो गई है।
          example: 2
        ratio:
          type: number
          format: float
          nullable: true
          description: श्रेणी के जाँचे गए प्लेटफ़ॉर्म का पंजीकरण सहित हिस्सा, 0.0-1.0।
          example: 0.6667
    SocialFootprintProfile:
      type: object
      properties:
        name:
          type: string
          nullable: true
          description: प्रोफ़ाइल का नाम, जब प्लेटफ़ॉर्म इसे प्रदर्शित करता है।
        photo:
          type: string
          nullable: true
          description: प्रोफ़ाइल फ़ोटो URL, जब प्लेटफ़ॉर्म इसे प्रदर्शित करता है।
        about:
          type: string
          nullable: true
          description: >-
            प्रोफ़ाइल का अबाउट/बायो टेक्स्ट, जब प्लेटफ़ॉर्म इसे प्रदर्शित करता
            है।
        privacy_status:
          type: string
          nullable: true
          enum:
            - PUBLIC
            - PRIVATE
            - null
          description: प्रोफ़ाइल दृश्यता, जब प्लेटफ़ॉर्म इसे प्रदर्शित करता है।
        business_account:
          type: boolean
          nullable: true
          description: >-
            क्या प्रोफ़ाइल एक व्यावसायिक खाता है, जब प्लेटफ़ॉर्म इसे प्रदर्शित
            करता है।
  responses:
    PhoneRiskValidationError:
      description: अनुरोध सत्यापन विफल रहा।
      content:
        application/json:
          examples:
            Missing phone number:
              summary: फ़ोन नंबर मौजूद नहीं है
              value:
                phone_number:
                  - This field is required.
            Invalid phone number:
              summary: अमान्य फ़ोन नंबर
              value:
                phone_number:
                  - Invalid phone number provided.
            Invalid signal IP:
              summary: अमान्य सिग्नल IP
              value:
                signals:
                  ip:
                    - Enter a valid IPv4 or IPv6 address.
    RiskPermissionDenied:
      description: >-
        API कुंजी अनुपलब्ध या अमान्य है, या संगठन लाइव लुकअप को कवर नहीं कर सकता
        है। यह API कभी भी `401` नहीं लौटाता है।
      content:
        application/json:
          examples:
            Missing or invalid API key:
              summary: कोई `x-api-key` हेडर नहीं, या कुंजी अमान्य या निरस्त है
              value:
                detail: You do not have permission to perform this action.
            Not enough credits:
              summary: संगठन का बैलेंस लुकअप की कीमत को कवर नहीं कर सकता
              value:
                error: You don't have enough credits to perform this request.
    RateLimitedWrite:
      description: >-
        प्रति API कुंजी प्रति मिनट 300 अनुरोधों की साझा लिखने की सीमा पार हो गई।
        पुनः प्रयास करने से पहले `Retry-After` का पालन करें।
      content:
        application/json:
          schema:
            type: object
            required:
              - detail
            properties:
              detail:
                type: string
          example:
            detail: >-
              Write request rate limit exceeded. You can make up to 300 requests
              per minute.
  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.