> ## 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.

# webhook डिलीवरी सूची API - List Webhook Deliveries API

> Didit के Management API से किसी webhook गंतव्य के हर डिलीवरी प्रयास को नवीनतम पहले देखें, HTTP स्टेटस, रिस्पॉन्स समय और इवेंट प्रकार के साथ।



Webhook गंतव्य डिलीवरी सूची API प्रॉम्प्ट
        प्रॉम्प्ट को क्लिपबोर्ड पर कॉपी करें



      
      

\<pre>

\`List the delivery attempts made to one Didit webhook destination through the Management API.

Endpoint:
GET https://verification.didit.me/v3/webhook/destinations/{destination_uuid}/deliveries/

Authentication:
Use the x-api-key header with my Didit API key. A scoped API key needs webhooks: read and decisions: read. A key limited to some workflows or to approved sessions cannot use this endpoint.

Goal:
\- Find the webhooks my endpoint failed to accept, so I can fix the endpoint and resend them.

Path parameter:
\- destination_uuid: the destination uuid from GET /v3/webhook/destinations/.

Query parameters (optional):
\- limit (default 50) and offset for pagination.
\- date_from, date_to: UTC days as YYYY-MM-DD, both inclusive.

Behavior:
\- Newest first. Every attempt is its own entry: the first send of an event, each automatic retry and each resend.
\- Response: { count, next, previous, results }. count is exact up to 100 and reads 100 above that, so follow next until it is null instead of computing pages from count.
\- Entries do not carry the payload. Fetch one with GET /v3/webhook/destinations/{destination_uuid}/deliveries/{delivery_uuid}/ to read the headers and body.

Example call:
curl -X GET "https://verification.didit.me/v3/webhook/destinations/{destination_uuid}/deliveries/?limit=50&date_from=2026-05-01" \
-H "x-api-key: YOUR_API_KEY"

What to read from each result:
\- uuid: the delivery id, for the detail and resend calls.
\- response_status: what my endpoint answered. null means the attempt has not been made yet; 504 is a timeout, 503 a connection failure, 400 a URL Didit refused to call, 404 any other request error; 400 or above is a failure.
\- Delivery records are available for about 30 days.
\- response_time_ms, created_at, webhook_type, status, request_url.
\- session_id: the verification session the event is about, or null for business, user, transaction and other events.

Failure modes:
\- 400: invalid date_from or date_to, date_to earlier than date_from, or limit or offset above 1000000.
\- 401: { "detail": "This API key has expired." }
\- 403: { "detail": "You do not have permission to perform this action." }, { "detail": "This API key has no read access to webhooks." }, { "detail": "This API key has no read access to decisions." }, or the limited-key message.
\- 404: { "detail": "Webhook destination not found." }
\- 429: more than 600 GET requests per minute with this key; wait for Retry-After.

Side effects: none. This is a pure read.

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

\</pre>



      
      

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

डिलीवरी वे प्रयास हैं जो Didit ने इस गंतव्य पर webhook भेजने के लिए किए। स्वचालित पुनः प्रयास [पुनः प्रयास नीति](https://docs.didit.me/hi/integration/webhooks.md#पुनः-प्रयास-नीति) का पालन करते हैं, और हर प्रयास की अपनी अलग प्रविष्टि दिखाई देती है। अपना endpoint ठीक करने के बाद किसी डिलीवरी को फिर से भेजने के लिए, [Webhook गंतव्य डिलीवरी फिर से भेजें](https://docs.didit.me/hi/management-api/webhook/resend-delivery.md) कॉल करें। किसी अवधि के कुल आँकड़ों के लिए, [Webhook गंतव्य एनालिटिक्स प्राप्त करें](https://docs.didit.me/hi/management-api/webhook/destination-analytics.md) का उपयोग करें।


## OpenAPI

````yaml hi/openapi-25.json GET /v3/webhook/destinations/{destination_uuid}/deliveries/
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/webhook/destinations/{destination_uuid}/deliveries/:
    get:
      tags:
        - Webhook
      summary: webhook गंतव्य डिलीवरी की सूची बनाएं
      description: >-
        एक webhook गंतव्य पर प्रत्येक डिलीवरी प्रयास को पेजिनेट करें, नवीनतम
        पहले। प्रत्येक इवेंट का पहला प्रेषण, प्रत्येक स्वचालित [पुनः प्रयास
        करें](https://docs.didit.me/hi/integration/webhooks#पुनः-प्रयास-नीति) और
        प्रत्येक पुनः प्रेषण अलग प्रविष्टियाँ हैं। प्रविष्टियों में HTTP स्थिति
        और रिस्पॉन्स समय शामिल होता है लेकिन payload नहीं: इसके हेडर और बॉडी को
        पढ़ने के लिए एक डिलीवरी फ़ेच करें। `count` 100 तक सटीक है और उससे ऊपर
        100 दिखाता है, इसलिए `next` का अनुसरण करें जब तक कि यह `null` न हो।
        डिलीवरी रिकॉर्ड लगभग 30 दिनों के लिए उपलब्ध रहते हैं। एक स्कोप्ड API
        कुंजी को `webhooks: read` और `decisions: read` की आवश्यकता होती है; कुछ
        वर्कफ़्लो या स्वीकृत सत्रों तक सीमित कुंजी इस endpoint का उपयोग नहीं कर
        सकती।
      operationId: list_webhook_destination_deliveries
      parameters:
        - name: destination_uuid
          in: path
          required: true
          description: >-
            गंतव्य का UUID (`GET /v3/webhook/destinations/` द्वारा लौटाया गया
            `uuid`)।
          schema:
            type: string
            format: uuid
          example: 11111111-2222-3333-4444-555555555555
        - name: limit
          in: query
          required: false
          description: >-
            प्रति पेज डिलीवरी की अधिकतम संख्या। डिफ़ॉल्ट 50 है। धनात्मक पूर्णांक
            न होने वाला मान वापस 50 हो जाता है; 1000000 से अधिक मान `400` लौटाता
            है।
          schema:
            type: integer
            default: 50
            minimum: 1
            maximum: 1000000
          example: 50
        - name: offset
          in: query
          required: false
          description: >-
            छोड़ी जाने वाली डिलीवरी की संख्या। डिफ़ॉल्ट 0 है। रिस्पॉन्स से
            `next` और `previous` URL का अनुसरण करना बेहतर है।
          schema:
            type: integer
            maximum: 1000000
            minimum: 0
            default: 0
          example: 0
        - name: date_from
          in: query
          required: false
          description: >-
            शामिल करने के लिए पहला UTC दिन, `YYYY-MM-DD` के रूप में (समावेशी)।
            उपलब्ध सबसे पुरानी डिलीवरी से शुरू करने के लिए छोड़ दें। `dateFrom`
            को एक उपनाम के रूप में स्वीकार किया जाता है।
          schema:
            type: string
            format: date
          example: '2026-10-01'
        - name: date_to
          in: query
          required: false
          description: >-
            शामिल करने के लिए अंतिम UTC दिन, `YYYY-MM-DD` के रूप में (समावेशी)।
            यह `date_from` से पहले का नहीं होना चाहिए। `dateTo` को एक उपनाम के
            रूप में स्वीकार किया जाता है।
          schema:
            type: string
            format: date
          example: '2026-10-16'
      responses:
        '200':
          description: डिलीवरी का एक पेज, सबसे नया पहले।
          content:
            application/json:
              schema:
                type: object
                required:
                  - count
                  - next
                  - previous
                  - results
                properties:
                  count:
                    type: integer
                    minimum: 0
                    description: >-
                      मिलान डिलीवरी, 100 तक सटीक और उससे अधिक होने पर 100 तक
                      सीमित। यह जानने के लिए कि क्या अधिक पेज मौजूद हैं, `next`
                      का उपयोग करें।
                  next:
                    type: string
                    format: uri
                    nullable: true
                    description: अगले पेज का पूर्ण URL, या अंतिम पेज पर `null`।
                  previous:
                    type: string
                    format: uri
                    nullable: true
                    description: पिछले पेज का पूर्ण URL, या पहले पेज पर `null`।
                  results:
                    type: array
                    items:
                      $ref: '#/components/schemas/WebhookDestinationDelivery'
              examples:
                Failed delivery, its retry and a queued event:
                  value:
                    count: 3
                    next: null
                    previous: null
                    results:
                      - uuid: 66666666-7777-8888-9999-000000000003
                        session_id: null
                        request_url: https://yourapp.com/webhooks/didit
                        response_status: null
                        response_time_ms: null
                        status: APPROVED
                        webhook_type: transaction.created
                        created_at: '2026-10-15T09:23:02.871190Z'
                      - uuid: 66666666-7777-8888-9999-000000000002
                        session_id: 22222222-3333-4444-5555-666666666666
                        request_url: https://yourapp.com/webhooks/didit
                        response_status: 200
                        response_time_ms: 143
                        status: In Progress
                        webhook_type: status.updated
                        created_at: '2026-10-15T09:22:19.104233Z'
                      - uuid: 66666666-7777-8888-9999-000000000001
                        session_id: 22222222-3333-4444-5555-666666666666
                        request_url: https://yourapp.com/webhooks/didit
                        response_status: 503
                        response_time_ms: 412
                        status: In Progress
                        webhook_type: status.updated
                        created_at: '2026-10-15T09:21:18.412345Z'
        '400':
          description: >-
            `date_from` या `date_to` कोई `YYYY-MM-DD` तिथि नहीं है, `date_to`
            `date_from` से पहले की है, या `limit` या `offset` 1000000 से अधिक है
            (वह त्रुटि संदेशों की एक JSON ऐरे है)।
          content:
            application/json:
              examples:
                Malformed date:
                  value:
                    date_from:
                      - >-
                        Date has wrong format. Use one of these formats instead:
                        YYYY-MM-DD.
                Reversed range:
                  value:
                    date_to:
                      - date_to must be greater than or equal to date_from.
                Limit too large:
                  value:
                    - limit must not exceed 1000000.
        '401':
          description: >-
            API कुंजी की समय-सीमा समाप्त हो गई है: इसे एक समाप्ति तिथि के साथ
            बनाया गया था जो बीत चुकी है। किसी गलत या निरस्त की गई कुंजी पर भी
            `401` मिलता है; अनुपलब्ध कुंजी पर `403` मिलता है।
          content:
            application/json:
              schema:
                type: object
                properties:
                  detail:
                    type: string
                    description: मानव-पठनीय त्रुटि संदेश।
              examples:
                Expired key:
                  value:
                    detail: This API key has expired.
        '403':
          description: >-
            अनुरोध की अनुमति नहीं है। अनुपलब्ध, अमान्य या निरस्त `x-api-key` पर
            `You do not have permission to perform this action.` मिलता है। इस
            endpoint के लिए आवश्यक एक्सेस के बिना स्कोप्ड कुंजी होने पर अनुपलब्ध
            एक्सेस का नाम बताते हुए एक संदेश मिलता है, और इसकी IP allowlist के
            बाहर से उपयोग की गई कुंजी पर `This API key can't be used from this
            IP address.` मिलता है। कुछ वर्कफ़्लो या स्वीकृत सत्रों तक सीमित
            कुंजी पर `This API key only reaches sessions inside its workflow or
            status limits, so it can't use this endpoint.` मिलता है।
          content:
            application/json:
              schema:
                type: object
                properties:
                  detail:
                    type: string
                    description: मानव-पठनीय त्रुटि संदेश।
              examples:
                Missing or invalid key:
                  value:
                    detail: You do not have permission to perform this action.
                Scoped key without webhooks read:
                  value:
                    detail: This API key has no read access to webhooks.
                Scoped key without decisions read:
                  value:
                    detail: This API key has no read access to decisions.
                Key limited to workflows or approved sessions:
                  value:
                    detail: >-
                      This API key only reaches sessions inside its workflow or
                      status limits, so it can't use this endpoint.
                Outside the IP allowlist:
                  value:
                    detail: This API key can't be used from this IP address.
        '404':
          description: >-
            एप्लिकेशन के लिए इस UUID वाला कोई गंतव्य मौजूद नहीं है, या इसे हटा
            दिया गया है।
          content:
            application/json:
              schema:
                type: object
                properties:
                  detail:
                    type: string
                    description: मानव-पठनीय त्रुटि संदेश।
              examples:
                Destination not found:
                  value:
                    detail: Webhook destination not found.
        '429':
          description: >-
            रेट लिमिट पार हो गई: इस API कुंजी के लिए वर्तमान एक मिनट की विंडो
            में 600 से अधिक GET अनुरोध। पुनः प्रयास करने से पहले `Retry-After`
            सेकंड प्रतीक्षा करें।
          headers:
            Retry-After:
              description: पुनः प्रयास करने से पहले प्रतीक्षा करने के सेकंड।
              schema:
                type: integer
                minimum: 1
                example: 30
            X-RateLimit-Limit:
              description: एक मिनट की विंडो में अनुमत अनुरोध (600)।
              schema:
                type: integer
                example: 600
            X-RateLimit-Remaining:
              description: वर्तमान विंडो में शेष अनुरोध।
              schema:
                type: integer
                example: 0
            X-RateLimit-Reset:
              description: Unix समय (सेकंड) जब वर्तमान विंडो रीसेट होती है।
              schema:
                type: integer
                example: 1792056120
            X-RateLimit-Scope:
              description: उस बजट का नाम जो पार हो गया था।
              schema:
                type: string
                example: generic-get
          content:
            application/json:
              schema:
                type: object
                properties:
                  detail:
                    type: string
                    description: मानव-पठनीय त्रुटि संदेश।
              examples:
                Throttled:
                  value:
                    detail: >-
                      GET request rate limit exceeded. You can make up to 600
                      requests per minute.
      security:
        - ApiKeyAuth: []
      x-codeSamples:
        - lang: curl
          label: curl
          source: >-
            curl -X GET
            'https://verification.didit.me/v3/webhook/destinations/11111111-2222-3333-4444-555555555555/deliveries/?limit=50&date_from=2026-10-01'
            \
              -H 'x-api-key: YOUR_API_KEY'
        - lang: python
          label: Python
          source: |-
            from didit import Didit

            # Reads DIDIT_API_KEY.
            client = Didit()

            for item in client.webhooks.destinations.list_deliveries(
                "11111111-2222-3333-4444-555555555555",
            ):
                print(item)
        - lang: javascript
          label: Node.js
          source: >-
            import Didit from "@didit-protocol/sdk-node";


            // Reads DIDIT_API_KEY.

            const didit = new Didit();


            for await (const item of
            didit.webhooks.destinations.listDeliveries("11111111-2222-3333-4444-555555555555"))
            {
              console.log(item);
            }
        - lang: go
          label: Go
          source: "ctx := context.Background()\n// Reads DIDIT_API_KEY.\nclient := didit.NewClient()\n\niter := client.Webhooks.Destinations.ListDeliveriesAutoPaging(ctx, \"11111111-2222-3333-4444-555555555555\", didit.WebhooksDestinationsListDeliveriesParams{})\nfor iter.Next() {\n\tfmt.Printf(\"%+v\\n\", iter.Current())\n}\nif err := iter.Err(); err != nil {\n\tlog.Fatal(err)\n}"
        - lang: java
          label: Java
          source: >-
            import me.didit.Didit;


            // Reads DIDIT_API_KEY.

            Didit client = new Didit();


            for (var item :
            client.webhooks().destinations().listDeliveries("11111111-2222-3333-4444-555555555555"))
            {
                System.out.println(item);
            }
        - lang: php
          label: PHP
          source: >-
            <?php


            require 'vendor/autoload.php';


            use Didit\DiditClient;


            // Reads DIDIT_API_KEY.

            $didit = new DiditClient();


            foreach
            ($didit->webhooks->destinations->listDeliveries('11111111-2222-3333-4444-555555555555')
            as $item) {
                print_r($item->toArray());
            }
        - lang: ruby
          label: Ruby
          source: >-
            require "didit"


            # Reads DIDIT_API_KEY.

            didit = Didit::Client.new


            didit.webhooks.destinations.list_deliveries("11111111-2222-3333-4444-555555555555").auto_paging_each
            do |item|
              puts item.to_h
            end
        - lang: csharp
          label: .NET
          source: >-
            using System;

            using System.Text.Json;

            using Didit;


            // Reads DIDIT_API_KEY.

            using var client = new DiditClient();


            await foreach (var item in await
            client.Webhooks.Destinations.ListDeliveriesAsync("11111111-2222-3333-4444-555555555555"))

            {
                Console.WriteLine(JsonSerializer.Serialize(item));
            }
components:
  schemas:
    WebhookDestinationDelivery:
      type: object
      description: >-
        एक webhook गंतव्य पर एक डिलीवरी प्रयास। किसी इवेंट का पहला प्रेषण,
        प्रत्येक स्वचालित पुनः प्रयास और प्रत्येक पुनः प्रेषण अलग-अलग डिलीवरी
        हैं।
      required:
        - uuid
        - session_id
        - request_url
        - response_status
        - response_time_ms
        - status
        - webhook_type
        - created_at
      properties:
        uuid:
          type: string
          format: uuid
          description: डिलीवरी ID, विवरण और पुनः भेजने के कॉल के लिए।
        session_id:
          type: string
          format: uuid
          nullable: true
          description: >-
            उपयोगकर्ता सत्यापन सत्र जिससे यह इवेंट संबंधित है। व्यवसाय सत्र,
            उपयोगकर्ता, व्यवसाय, लेन-देन, Travel Rule और वर्कफ़्लो इवेंट के लिए
            `null`।
        request_url:
          type: string
          format: uri
          nullable: true
          description: >-
            वह URL जिस पर डिलीवरी भेजी गई थी: इवेंट जनरेट होने के समय गंतव्य का
            URL।
        response_status:
          type: integer
          nullable: true
          description: >-
            आपके endpoint द्वारा लौटाया गया HTTP स्टेटस। जब डिलीवरी कतार में हो
            और अभी तक प्रयास न किया गया हो तो `null`। जब कोई HTTP उत्तर प्राप्त
            नहीं हुआ, तो Didit अपनी स्वयं की स्थिति दर्ज करता है: जब आपके
            endpoint ने 5 सेकंड के भीतर उत्तर नहीं दिया तो `504`, कनेक्शन विफलता
            के लिए `503`, जब URL को असुरक्षित (उदाहरण के लिए एक निजी या आंतरिक
            पता) के रूप में अस्वीकार कर दिया गया था तो `400`, और किसी भी अन्य
            अनुरोध त्रुटि के लिए `404`। `400` या उससे अधिक को विफल डिलीवरी माना
            जाता है।
        response_time_ms:
          type: integer
          nullable: true
          minimum: 0
          description: >-
            प्रयास में लगा समय, मिलीसेकंड में। जब तक डिलीवरी कतार में है तब तक
            `null`।
        status:
          type: string
          nullable: true
          description: >-
            इवेंट जनरेट होने पर उसके द्वारा रिपोर्ट किया गया स्टेटस: सत्र इवेंट
            के लिए सत्र स्टेटस (उदाहरण के लिए `Approved` या `In Review`),
            उपयोगकर्ता और व्यवसाय इवेंट के लिए व्यक्ति या कंपनी का स्टेटस, और
            लेन-देन इवेंट के लिए लेन-देन का स्टेटस। बिना किसी स्टेटस वाले इवेंट
            के लिए `null`।
        webhook_type:
          $ref: '#/components/schemas/WebhookEvent'
        created_at:
          type: string
          format: date-time
          description: जब डिलीवरी बनाई गई थी।
    WebhookEvent:
      type: string
      description: >-
        समर्थित webhook इवेंट का नाम। `subscribed_events` में इन सटीक स्ट्रिंग्स
        का उपयोग करें; असमर्थित मान अस्वीकृत कर दिए जाते हैं।
      enum:
        - status.updated
        - data.updated
        - user.status.updated
        - user.data.updated
        - business.status.updated
        - business.data.updated
        - activity.created
        - transaction.created
        - transaction.status.updated
        - travel_rule.status.updated
        - workflow.compliance_changed
        - transaction_rule_suggestions.created
        - auth.signup
        - auth.login
        - auth.login_failed
        - auth.password_reset_requested
        - auth.password_reset_completed
        - auth.mfa_changed
        - auth.new_device
        - auth.account_locked
        - investigator.report.ready
        - investigator.decision.automated
        - investigator.decision.overridden
        - investigator.decision.contested
        - investigator.question.raised
        - investigator.automation.paused
        - investigator.rfi.answered
        - investigator.rfi.overdue
        - investigator.drift.detected
        - investigator.sla.breached
        - investigator.qa.failed
        - investigator.external.report.ready
  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.