> ## 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 के साथ फ़्रॉड नेटवर्क का इवेंट इतिहास प्राप्त करें, या contract=2 से सदस्य प्रयासों, लेन-देन, साइन-इन, नियम हिट और लिंक्ड केस की पेजिनेटेड टाइमलाइन।



नेटवर्क टाइमलाइन API प्रॉम्प्ट
        प्रॉम्प्ट को क्लिपबोर्ड पर कॉपी करें



      
      

\<pre>

\`Retrieve a fraud network's event timeline through the Management API.

Endpoint:
GET https://verification.didit.me/v3/organization/{organization_id}/application/{application_id}/networks/{network_uuid}/timeline/

Authentication:
Use the x-api-key header with my Didit API key.
Networks endpoints need a full-access API key: a key with restricted access gets 403.

Path parameter:
\- network_uuid - the network's UUID.

Two shapes, chosen by the contract query parameter:

1\. Default (no contract parameter): unchanged.
Response 200: {"results": [NetworkTimelineEvent, ...]}, oldest first, not paginated.
Each event has event_type (network_detected, signal_observed, network_active, network_in_review, network_resolved, network_dismissed), occurred_at, label, and metadata (event-specific, e.g. {network_id} for detection, {signal_type, subject_count, is_hub} for a signal observation, {reason} for a status change).
limit, cursor and event_type are ignored in this mode.

2\. Typed timeline (contract=2, opt-in):
Query params:
\- contract=2: required for this mode. Any other value is a 400.
\- limit: 1 to 500, default 100.
\- cursor: the previous page's next_cursor. An invalid or empty cursor is a 400 ("This cursor is not valid. Reload the feed.").
\- event_type: repeat it or pass a comma-separated list, at most 20 values. Defaults to every type: network_detected, signal_observed, network_active, network_in_review, network_resolved, network_dismissed, verification_attempt, transaction, login, rule_hit, case_linked, note_added.
Response 200: {"results": [NetworkTypedTimelineEvent, ...], "next_cursor": string|null}, newest first. Keep calling with cursor=next_cursor until next_cursor is null.
Each typed event has:
\- event_type, occurred_at, label, metadata: as in the default shape (metadata is {} for events that are not the network's own).
\- id: "<source>:<uuid>", unique within the timeline. ingested_at: when Didit stored it.
\- account: the member account {node_id ("vendor_user:<uuid>", "vendor_business:<uuid>" or "transaction_party:<uuid>"), node_type (account|business_account|transaction_party), uuid, vendor_data, display_name, ownership (owned|organization), route {kind, id, application_id}}. Null for the network's own events, case_linked and note_added.
\- source_ref: the record it was read from {kind (session|business_session|transaction|monitoring_event|case), id, ownership, route}. route is absent for monitoring_event and case. Null for the network's own events and note_added.
\- ownership: owned when the record belongs to the application I called, organization when it belongs to another application of my organization.
\- One detail block per event type, the others null:
\- verification_attempt {session_id, session_number, attempt, attempt_count, status, status_changed_at, decline_reasons [{risk, feature, short_description}] (declined sessions only)}
\- transaction {transaction_id, transaction_number, transaction_type, action_type, amount {value, currency, direction} or null, status, decision_reason_code, decision_reason_label, party_role}
\- login {action (auth.login, security.login_succeeded, auth.login_failed or security.login_failed), succeeded, status, ip {address, country_code, city, connection_type (free text), is_vpn_or_tor, is_data_center} or null, device {fingerprint, label} or null, is_first_login, is_new_device}
\- rule_hit {rule_id, rule_title, rule_category, rule_source, severity, score_delta, status_target, action_summary}
\- case_linked {case_id, case_number, status, author_email, author_name}
\- note_added {note_id, author_email}: never returned to an API key, only to console members.

Example call:
curl -X GET "https://verification.didit.me/v3/organization/{organization_id}/application/{application_id}/networks/{network_uuid}/timeline/?contract=2&limit=50&event_type=verification_attempt,login" \
-H "x-api-key: YOUR_API_KEY"

Failure modes:
\- 400 (contract mode only): {"contract": [...]}, {"limit": [...]}, {"cursor": ["This cursor is not valid. Reload the feed."]} or {"event_type": {...}}.
\- 404: {"detail": "Network not found."}. The network does not exist, or has no member visible to this application.
\- 401: missing or invalid x-api-key.
\- 403: the API key belongs to another application, or it has restricted access (Networks needs a full-access key). A console member token needs read:networks.
\- 403 with {"code": "networks_not_entitled"}: Networks is not enabled for the organization.

Side effects: none, pure read.

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

\</pre>



      
      

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

किसी नेटवर्क का इवेंट इतिहास प्राप्त करें।
`contract` के बिना, रिस्पॉन्स नेटवर्क का अपना इतिहास होता है, सबसे पुराने से शुरू होकर और बिना पेजिनेशन के: यह कब पहली बार पता चला, हर सिग्नल को आखिरी बार कब देखा गया, और इसका नवीनतम स्थिति परिवर्तन उसके कारण सहित।
यह संरचना अपरिवर्तित रहती है, और `limit`, `cursor` और `event_type` को अनदेखा किया जाता है।## टाइप्ड टाइमलाइनटाइप्ड टाइमलाइन पढ़ने के लिए इसके बजाय `contract=2` पास करें।
इसमें सदस्य खातों ने क्या किया और आपकी टीम ने नेटवर्क पर क्या कार्रवाई की, यह जोड़ा जाता है; सबसे नए से शुरू होकर, एक बार में एक पेज।
`contract` केवल `2` स्वीकार करता है; कोई भी अन्य मान `400` लौटाता है।| पैरामीटर | अर्थ |
| - | - |
| `limit` | प्रति पेज इवेंट की संख्या 1 से 500। डिफ़ॉल्ट 100 है। |
| `cursor` | पिछले पेज का `next_cursor`। अमान्य या खाली cursor `400` लौटाता है। |
| `event_type` | रखे जाने वाले इवेंट प्रकार, दोहराकर या कॉमा से अलग करके, अधिकतम 20 मान। डिफ़ॉल्ट सभी प्रकार हैं। |रिस्पॉन्स है `{"results": [...], "next_cursor": "..."}`।
अगला पेज पढ़ने के लिए `cursor` को `next_cursor` पर सेट करें, जब तक `next_cursor` `null` न हो जाए।## इवेंट प्रकार| `event_type` | क्या दर्ज करता है | विवरण ब्लॉक |
| - | - | - |
| `network_detected` | नेटवर्क का पता चला | कोई नहीं |
| `signal_observed` | एक सिग्नल का नवीनतम अवलोकन | कोई नहीं |
| `network_active`, `network_in_review`, `network_resolved`, `network_dismissed` | नेटवर्क का नवीनतम स्थिति परिवर्तन, इसका कारण `metadata` में | कोई नहीं |
| `verification_attempt` | किसी सदस्य (व्यक्ति या व्यवसाय) का एक सत्यापन सत्र, क्रमांकित (`attempt_count` में से `attempt`), अस्वीकृत होने पर उसके अस्वीकृति कारणों सहित | `verification_attempt` |
| `transaction` | एक लेन-देन जिसमें कोई सदस्य शामिल था, जिसकी तारीख लेन-देन की तारीख से तय होती है | `transaction` |
| `login` | एक साइन-इन या विफल साइन-इन जिसे आपने [इवेंट्स API](https://docs.didit.me/hi/transaction-monitoring/events.md) के जरिए किसी सदस्य के लिए पोस्ट किया | `login` |
| `rule_hit` | एक लाइव नियम जिसने किसी सदस्य के लेन-देन या इवेंट से मिलान किया | `rule_hit` |
| `case_linked` | आपके संगठन में नेटवर्क के लिए खोला गया एक केस | `case_linked` |
| `note_added` | नेटवर्क पर छोड़ा गया एक नोट, उसके टेक्स्ट के बिना | `note_added` |`note_added` इवेंट केवल कंसोल सदस्यों को लौटाए जाते हैं, कभी API कुंजी को नहीं।
दो सदस्यों के बीच का लेन-देन उनमें से हर एक के लिए एक बार दिखता है, हर एक के अपने `account` के साथ।
उस लेन-देन पर एक रूल हिट एक बार दिखता है।
लॉगिन इवेंट केवल उन साइन-इन के लिए मौजूद होते हैं जिन्हें आपने इवेंट के रूप में पोस्ट किया है: `auth.login`, `security.login_succeeded` और उनके विफल रूप।## खाते और रिकॉर्डहर सदस्य इवेंट में `account` होता है, यानी वह सदस्य जिसका वह है, और `source_ref`, यानी वह सत्र, व्यवसाय सत्र, लेन-देन, निगरानी इवेंट या केस जिससे उसे लिया गया।
`ownership` `owned` होता है जब रिकॉर्ड उस एप्लिकेशन का हो जिसे आपने कॉल किया, और `organization` होता है जब वह आपके संगठन के किसी दूसरे एप्लिकेशन का हो।
`route` रिकॉर्ड का प्रकार, UUID और एप्लिकेशन देता है; निगरानी इवेंट या केस के लिए `source_ref` में `route` नहीं होता।
नेटवर्क के अपने इवेंट में न `account` होता है न `source_ref`।## संबंधित- [नेटवर्क प्राप्त करें](https://docs.didit.me/hi/management-api/networks/get.md)
- [नेटवर्क सिग्नल](https://docs.didit.me/hi/management-api/networks/signals.md)
- [नेटवर्क मैप](https://docs.didit.me/hi/management-api/networks/map.md)
- [इवेंट इंजेस्शन](https://docs.didit.me/hi/transaction-monitoring/events.md)


## OpenAPI

````yaml hi/openapi-25.json GET /v3/organization/{organization_id}/application/{application_id}/networks/{network_uuid}/timeline/
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/organization/{organization_id}/application/{application_id}/networks/{network_uuid}/timeline/:
    get:
      tags:
        - Networks
      summary: नेटवर्क टाइमलाइन प्राप्त करें
      description: >-
        `contract` के बिना: नेटवर्क के अपने इवेंट (डिटेक्शन, प्रत्येक सिग्नल का
        नवीनतम अवलोकन और उसकी समीक्षा), सबसे पुराने पहले और पेजिनेट नहीं किए गए।
        `limit`, `cursor` और `event_type` को अनदेखा कर दिया जाता है।
        `contract=2` के साथ: टाइप की गई टाइमलाइन, सबसे नए पहले और cursor द्वारा
        पेजिनेट की गई। यह जोड़ता है कि सदस्य खातों ने क्या किया (सत्यापन प्रयास,
        लेन-देन, साइन-इन जिन्हें आप इवेंट API के माध्यम से पोस्ट करते हैं और जिन
        लाइव नियमों को वे हिट करते हैं) और नेटवर्क के लिए खोले गए केस।
        `note_added` इवेंट केवल कंसोल सदस्यों को लौटाए जाते हैं, कभी भी API
        कुंजी को नहीं। इसके लिए पूर्ण-पहुंच API कुंजी, या कंसोल सदस्य के लिए
        `read:networks` की आवश्यकता होती है।
      operationId: get_network_timeline
      parameters:
        - name: organization_id
          in: path
          required: true
          schema:
            type: string
            format: uuid
          description: संगठन UUID।
        - name: application_id
          in: path
          required: true
          schema:
            type: string
            format: uuid
          description: एप्लिकेशन UUID।
        - name: network_uuid
          in: path
          required: true
          schema:
            type: string
            format: uuid
            example: n3a5e000-0000-4000-8000-000000000001
          description: नेटवर्क UUID।
        - name: contract
          in: query
          required: false
          schema:
            type: string
            enum:
              - '2'
          description: >-
            `2` टाइप की गई टाइमलाइन लौटाता है। डिफ़ॉल्ट टाइमलाइन के लिए इसे छोड़
            दें। कोई भी अन्य मान 400 लौटाता है।
        - name: limit
          in: query
          required: false
          schema:
            type: integer
            default: 100
            minimum: 1
            maximum: 500
          description: >-
            केवल टाइप्ड टाइमलाइन। प्रति पेज इवेंट की संख्या, 1 से 500। डिफ़ॉल्ट
            रूप से 100।
        - name: cursor
          in: query
          required: false
          schema:
            type: string
          description: >-
            केवल टाइप्ड टाइमलाइन। पिछले पेज का `next_cursor`। अमान्य या खाली
            कर्सर 400 लौटाता है।
        - name: event_type
          in: query
          required: false
          style: form
          explode: true
          schema:
            type: array
            maxItems: 20
            items:
              type: string
              enum:
                - network_detected
                - signal_observed
                - network_active
                - network_in_review
                - network_resolved
                - network_dismissed
                - verification_attempt
                - transaction
                - login
                - rule_hit
                - case_linked
                - note_added
          description: >-
            केवल टाइप्ड टाइमलाइन। रखने के लिए इवेंट प्रकार, दोहराए गए या कॉमा
            द्वारा अलग किए गए, अधिकतम 20 मान। डिफ़ॉल्ट रूप से सभी प्रकार।
      responses:
        '200':
          description: >-
            `contract` के बिना: `{results}`, सबसे पुराने पहले, पेजिनेटेड नहीं।
            `contract=2` के साथ: `{results, next_cursor}`, सबसे नए पहले।
          content:
            application/json:
              schema:
                oneOf:
                  - $ref: '#/components/schemas/NetworkTimeline'
                  - $ref: '#/components/schemas/NetworkTimelinePage'
              examples:
                Default timeline:
                  summary: contract के बिना
                  value:
                    results:
                      - event_type: network_detected
                        occurred_at: '2026-10-01T09:12:44Z'
                        label: Network detected
                        metadata:
                          network_id: N-0042
                      - event_type: signal_observed
                        occurred_at: '2026-10-12T16:03:10Z'
                        label: device observed
                        metadata:
                          signal_type: device
                          subject_count: 3
                          is_hub: false
                      - event_type: network_in_review
                        occurred_at: '2026-10-12T16:30:00Z'
                        label: Network in_review
                        metadata:
                          reason: Shared device across three new accounts.
                Typed timeline:
                  summary: contract=2 के साथ
                  value:
                    results:
                      - id: monitoring_event:9b2f1c3e-4d5a-4b6c-8d7e-0f1a2b3c4d5e
                        event_type: login
                        occurred_at: '2026-10-12T18:41:02Z'
                        ingested_at: '2026-10-12T18:41:03Z'
                        label: Login
                        metadata: {}
                        account:
                          node_id: vendor_user:5f6e7d8c-9b0a-4c1d-8e2f-3a4b5c6d7e8f
                          node_type: account
                          uuid: 5f6e7d8c-9b0a-4c1d-8e2f-3a4b5c6d7e8f
                          vendor_data: user-1042
                          display_name: Alex Example
                          ownership: owned
                          route:
                            kind: user
                            id: 5f6e7d8c-9b0a-4c1d-8e2f-3a4b5c6d7e8f
                            application_id: aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee
                        source_ref:
                          kind: monitoring_event
                          id: 9b2f1c3e-4d5a-4b6c-8d7e-0f1a2b3c4d5e
                          ownership: owned
                        verification_attempt: null
                        transaction: null
                        login:
                          action: auth.login
                          succeeded: true
                          status: APPROVED
                          ip:
                            address: 203.0.113.24
                            country_code: ES
                            city: Madrid
                            connection_type: null
                            is_vpn_or_tor: false
                            is_data_center: false
                          device:
                            fingerprint: fp_0a1b2c3d
                            label: Chrome · Android
                          is_first_login: false
                          is_new_device: true
                        rule_hit: null
                        case_linked: null
                        note_added: null
                      - id: session:1c2d3e4f-5a6b-4c7d-8e9f-0a1b2c3d4e5f
                        event_type: verification_attempt
                        occurred_at: '2026-10-12T16:03:10Z'
                        ingested_at: '2026-10-12T16:03:10Z'
                        label: Verification attempt 2 of 2
                        metadata: {}
                        account:
                          node_id: vendor_user:5f6e7d8c-9b0a-4c1d-8e2f-3a4b5c6d7e8f
                          node_type: account
                          uuid: 5f6e7d8c-9b0a-4c1d-8e2f-3a4b5c6d7e8f
                          vendor_data: user-1042
                          display_name: Alex Example
                          ownership: owned
                          route:
                            kind: user
                            id: 5f6e7d8c-9b0a-4c1d-8e2f-3a4b5c6d7e8f
                            application_id: aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee
                        source_ref:
                          kind: session
                          id: 1c2d3e4f-5a6b-4c7d-8e9f-0a1b2c3d4e5f
                          ownership: owned
                          route:
                            kind: session
                            id: 1c2d3e4f-5a6b-4c7d-8e9f-0a1b2c3d4e5f
                            application_id: aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee
                        verification_attempt:
                          session_id: 1c2d3e4f-5a6b-4c7d-8e9f-0a1b2c3d4e5f
                          session_number: 1287
                          attempt: 2
                          attempt_count: 2
                          status: Approved
                          status_changed_at: '2026-10-12T16:05:41Z'
                          decline_reasons: []
                        transaction: null
                        login: null
                        rule_hit: null
                        case_linked: null
                        note_added: null
                      - id: signal_observed:8d7c6b5a-4e3f-4a2b-9c1d-0e9f8a7b6c5d
                        event_type: signal_observed
                        occurred_at: '2026-10-12T16:03:10Z'
                        ingested_at: '2026-10-01T09:12:44Z'
                        label: device observed
                        metadata:
                          signal_type: device
                          subject_count: 3
                          is_hub: false
                        account: null
                        source_ref: null
                        verification_attempt: null
                        transaction: null
                        login: null
                        rule_hit: null
                        case_linked: null
                        note_added: null
                    next_cursor: >-
                      eyJ0IjoiMjAyNi0xMC0xMlQxNjowMzoxMCswMDowMCIsImMiOiIyMDI2LTEwLTAxVDA5OjEyOjQ0KzAwOjAwIiwiciI6MSwidSI6IjhkN2M2YjVhLTRlM2YtNGEyYi05YzFkLTBlOWY4YTdiNmM1ZCJ9
        '400':
          description: >-
            `contract` मौजूद होने पर: एक अमान्य `contract`, `limit`, `cursor` या
            `event_type` मान।
          content:
            application/json:
              examples:
                Unsupported contract:
                  summary: असमर्थित कॉन्ट्रैक्ट
                  value:
                    contract:
                      - '"3" is not a valid choice.'
                Invalid cursor:
                  summary: अमान्य कर्सर
                  value:
                    cursor:
                      - This cursor is not valid. Reload the feed.
                Limit too large:
                  summary: सीमा बहुत बड़ी है
                  value:
                    limit:
                      - Ensure this value is less than or equal to 500.
                Unknown event type:
                  summary: अज्ञात इवेंट प्रकार
                  value:
                    event_type:
                      '0':
                        - '"logout" is not a valid choice.'
        '401':
          description: अनुपलब्ध या अमान्य क्रेडेंशियल।
          content:
            application/json:
              schema:
                type: object
                properties:
                  detail:
                    type: string
                  code:
                    type: string
                    description: >-
                      कोडित त्रुटियों पर मौजूद, उदाहरण के लिए
                      `networks_not_entitled`।
              examples:
                Missing or invalid credentials:
                  summary: अनुपलब्ध या अमान्य क्रेडेंशियल
                  value:
                    detail: >-
                      Authentication credentials were not provided or are
                      invalid.
        '403':
          description: >-
            API कुंजी किसी अन्य एप्लिकेशन से संबंधित है, या यह प्रतिबंधित एक्सेस
            वाली कुंजी है: Networks endpoints के लिए पूर्ण-एक्सेस कुंजी की
            आवश्यकता होती है। कंसोल सदस्य token के लिए `read:networks` आवश्यक
            है। जब संगठन के लिए Networks सक्षम नहीं होता है, तो `code:
            networks_not_entitled` के साथ भी लौटाया जाता है।
          content:
            application/json:
              schema:
                type: object
                properties:
                  detail:
                    type: string
                  code:
                    type: string
                    description: >-
                      कोडित त्रुटियों पर मौजूद, उदाहरण के लिए
                      `networks_not_entitled`।
              examples:
                Networks not enabled:
                  summary: नेटवर्क सक्षम नहीं हैं
                  value:
                    detail: >-
                      Networks is disabled for this organization. Contact Didit
                      support if you believe this is an error.
                    code: networks_not_entitled
                Restricted API key:
                  summary: प्रतिबंधित API कुंजी
                  value:
                    detail: This API key has no access to this endpoint.
                No permission:
                  summary: कोई अनुमति नहीं
                  value:
                    detail: You do not have permission to perform this action.
        '404':
          description: नेटवर्क नहीं मिला (या इस एप्लिकेशन को दिखाई नहीं दे रहा है)।
          content:
            application/json:
              schema:
                type: object
                properties:
                  detail:
                    type: string
      security:
        - ApiKeyAuth: []
      x-codeSamples:
        - lang: curl
          label: curl
          source: >-
            curl -X GET
            'https://verification.didit.me/v3/organization/11111111-2222-3333-4444-555555555555/application/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee/networks/n3a5e000-0000-4000-8000-000000000001/timeline/'
            \
              -H 'x-api-key: YOUR_API_KEY'
        - lang: curl
          label: curl (typed timeline)
          source: >-
            curl -X GET
            'https://verification.didit.me/v3/organization/11111111-2222-3333-4444-555555555555/application/aaaaaaaa-bbbb-cccc-dddd-eeeeeeeeeeee/networks/3fa85f64-5717-4562-b3fc-2c963f66afa6/timeline/?contract=2&limit=50&event_type=verification_attempt,login'
            \
              -H 'x-api-key: YOUR_API_KEY'
        - lang: python
          label: Python
          source: |-
            from didit import Didit

            # Reads DIDIT_API_KEY, DIDIT_ORGANIZATION_ID
            # and DIDIT_APPLICATION_ID.
            client = Didit()

            result = client.networks.retrieve_timeline(
                "n3a5e000-0000-4000-8000-000000000001",
            )
            print(result)
        - lang: javascript
          label: Node.js
          source: >-
            import Didit from "@didit-protocol/sdk-node";


            // Reads DIDIT_API_KEY, DIDIT_ORGANIZATION_ID

            // and DIDIT_APPLICATION_ID.

            const didit = new Didit();


            const result = await
            didit.networks.retrieveTimeline("n3a5e000-0000-4000-8000-000000000001");

            console.log(result);
        - lang: go
          label: Go
          source: "ctx := context.Background()\n// Reads DIDIT_API_KEY, DIDIT_ORGANIZATION_ID\n// and DIDIT_APPLICATION_ID.\nclient := didit.NewClient()\n\nresult, err := client.Networks.RetrieveTimeline(ctx, \"n3a5e000-0000-4000-8000-000000000001\", didit.NetworksRetrieveTimelineParams{})\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_ORGANIZATION_ID

            // and DIDIT_APPLICATION_ID.

            Didit client = new Didit();


            var result =
            client.networks().retrieveTimeline("n3a5e000-0000-4000-8000-000000000001");

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


            require 'vendor/autoload.php';


            use Didit\DiditClient;


            // Reads DIDIT_API_KEY, DIDIT_ORGANIZATION_ID

            // and DIDIT_APPLICATION_ID.

            $didit = new DiditClient();


            $result =
            $didit->networks->retrieveTimeline('n3a5e000-0000-4000-8000-000000000001');

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


            # Reads DIDIT_API_KEY, DIDIT_ORGANIZATION_ID

            # and DIDIT_APPLICATION_ID.

            didit = Didit::Client.new


            result =
            didit.networks.retrieve_timeline("n3a5e000-0000-4000-8000-000000000001")

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

            using System.Text.Json;

            using Didit;


            // Reads DIDIT_API_KEY, DIDIT_ORGANIZATION_ID

            // and DIDIT_APPLICATION_ID.

            using var client = new DiditClient();


            var result = await
            client.Networks.RetrieveTimelineAsync("n3a5e000-0000-4000-8000-000000000001");

            Console.WriteLine(JsonSerializer.Serialize(result));
components:
  schemas:
    NetworkTimeline:
      title: Default timeline (no contract)
      type: object
      description: >-
        `contract` के बिना: नेटवर्क के अपने इवेंट, सबसे पुराने पहले, पेजिनेट
        नहीं किए गए।
      properties:
        results:
          type: array
          items:
            $ref: '#/components/schemas/NetworkTimelineEvent'
    NetworkTimelinePage:
      title: Typed timeline page (contract=2)
      type: object
      description: '`contract=2` के साथ: टाइप किए गए इवेंट्स का एक पेज, सबसे नए पहले।'
      properties:
        results:
          type: array
          items:
            $ref: '#/components/schemas/NetworkTypedTimelineEvent'
        next_cursor:
          type: string
          nullable: true
          description: >-
            अगला पृष्ठ पढ़ने के लिए `cursor` के रूप में पास करें। अंतिम पृष्ठ पर
            नल (Null)।
    NetworkTimelineEvent:
      type: object
      properties:
        event_type:
          type: string
          description: >-
            उदा. network_detected, signal_observed, network_in_review,
            network_resolved, network_dismissed।
        occurred_at:
          type: string
          format: date-time
          nullable: true
        label:
          type: string
        metadata:
          type: object
    NetworkTypedTimelineEvent:
      type: object
      description: >-
        एक टाइप्ड टाइमलाइन इवेंट: चार डिफ़ॉल्ट फ़ील्ड, साथ ही इसकी id, जब Didit
        ने इसे संग्रहीत किया, सदस्य खाता और रिकॉर्ड जिससे यह संबंधित है, और इसके
        इवेंट प्रकार का विवरण ब्लॉक। अन्य विवरण ब्लॉक null हैं।
      properties:
        id:
          type: string
          description: '`<source>:<uuid>`, टाइमलाइन के भीतर अद्वितीय।'
          example: session:3fa85f64-5717-4562-b3fc-2c963f66afa6
        event_type:
          type: string
          enum:
            - network_detected
            - signal_observed
            - network_active
            - network_in_review
            - network_resolved
            - network_dismissed
            - verification_attempt
            - transaction
            - login
            - rule_hit
            - case_linked
            - note_added
        occurred_at:
          type: string
          format: date-time
          description: यह कब हुआ।
        ingested_at:
          type: string
          format: date-time
          description: Didit ने इसे कब संग्रहीत किया।
        label:
          type: string
          description: >-
            एक संक्षिप्त अंग्रेज़ी लेबल, उदाहरण के लिए `Verification attempt 2
            of 3`।
        metadata:
          type: object
          description: >-
            नेटवर्क के अपने इवेंट के लिए, डिफ़ॉल्ट टाइमलाइन जैसा ही मेटाडेटा।
            अन्यथा खाली।
        account:
          allOf:
            - $ref: '#/components/schemas/NetworkTimelineAccount'
          nullable: true
          description: >-
            सदस्य खाता। नेटवर्क के अपने इवेंट्स, `case_linked` और `note_added`
            के लिए Null।
        source_ref:
          allOf:
            - $ref: '#/components/schemas/NetworkTimelineSourceRef'
          nullable: true
          description: >-
            स्रोत रिकॉर्ड। नेटवर्क के अपने इवेंट और `note_added` के लिए नल
            (Null)।
        verification_attempt:
          allOf:
            - $ref: '#/components/schemas/NetworkTimelineAttempt'
          nullable: true
          description: '`verification_attempt` इवेंट्स पर सेट होता है।'
        transaction:
          allOf:
            - $ref: '#/components/schemas/NetworkTimelineTransaction'
          nullable: true
          description: '`transaction` इवेंट्स पर सेट होता है।'
        login:
          allOf:
            - $ref: '#/components/schemas/NetworkTimelineLogin'
          nullable: true
          description: '`login` इवेंट्स पर सेट होता है।'
        rule_hit:
          allOf:
            - $ref: '#/components/schemas/NetworkTimelineRuleHit'
          nullable: true
          description: '`rule_hit` इवेंट्स पर सेट होता है।'
        case_linked:
          allOf:
            - $ref: '#/components/schemas/NetworkTimelineCaseLinked'
          nullable: true
          description: '`case_linked` इवेंट्स पर सेट होता है।'
        note_added:
          allOf:
            - $ref: '#/components/schemas/NetworkTimelineNoteAdded'
          nullable: true
          description: >-
            `note_added` इवेंट्स पर सेट होता है। किसी API कुंजी को कभी नहीं
            लौटाया जाता।
    NetworkTimelineAccount:
      type: object
      description: सदस्य खाता जिससे यह इवेंट संबंधित है।
      properties:
        node_id:
          type: string
          description: >-
            `<kind>:<uuid>`, जहां kind `vendor_user`, `vendor_business` या
            `transaction_party` है।
          example: vendor_user:3fa85f64-5717-4562-b3fc-2c963f66afa6
        node_type:
          type: string
          enum:
            - account
            - business_account
            - transaction_party
        uuid:
          type: string
          format: uuid
        vendor_data:
          type: string
          nullable: true
        display_name:
          type: string
          nullable: true
        ownership:
          type: string
          enum:
            - owned
            - organization
          description: >-
            जब रिकॉर्ड उस एप्लिकेशन से संबंधित हो जिसे आपने कॉल किया है (कंसोल
            सदस्य के लिए, उस एप्लिकेशन से जिसका एक्सेस उन्हें दिया गया था) तब
            `owned`। जब यह आपके संगठन के किसी अन्य एप्लिकेशन से संबंधित हो तब
            `organization`।
        route:
          $ref: '#/components/schemas/NetworkTimelineRoute'
    NetworkTimelineSourceRef:
      type: object
      description: वह रिकॉर्ड जिससे इवेंट पढ़ा गया था।
      properties:
        kind:
          type: string
          enum:
            - session
            - business_session
            - transaction
            - monitoring_event
            - case
        id:
          type: string
          format: uuid
        ownership:
          type: string
          enum:
            - owned
            - organization
          description: >-
            जब रिकॉर्ड उस एप्लिकेशन से संबंधित हो जिसे आपने कॉल किया है (कंसोल
            सदस्य के लिए, उस एप्लिकेशन से जिसका एक्सेस उन्हें दिया गया था) तब
            `owned`। जब यह आपके संगठन के किसी अन्य एप्लिकेशन से संबंधित हो तब
            `organization`।
        route:
          allOf:
            - $ref: '#/components/schemas/NetworkTimelineRoute'
          description: '`monitoring_event` और `case` के लिए अनुपस्थित।'
    NetworkTimelineAttempt:
      type: object
      description: खाते का एक सत्यापन सत्र।
      properties:
        session_id:
          type: string
          format: uuid
          description: सत्र UUID, या किसी कंपनी के लिए व्यावसायिक सत्र UUID।
        session_number:
          type: integer
          nullable: true
        attempt:
          type: integer
          description: निर्माण क्रम में, खाते के सत्रों के बीच इस सत्र की स्थिति।
        attempt_count:
          type: integer
          description: खाते में कितने सत्र हैं।
        status:
          type: string
          description: सत्र की स्थिति, उदाहरण के लिए `Approved` या `Declined`।
        status_changed_at:
          type: string
          format: date-time
          nullable: true
        decline_reasons:
          type: array
          items:
            $ref: '#/components/schemas/NetworkTimelineDeclineReason'
          description: >-
            केवल अस्वीकृत सत्र के लिए: इसकी चेतावनियाँ, सबसे पुरानी पहले, प्रति
            चेतावनी एक बार। अन्यथा खाली।
    NetworkTimelineTransaction:
      type: object
      description: >-
        एक लेन-देन जिसमें किसी सदस्य खाते ने भाग लिया था, उसकी लेन-देन तिथि के
        अनुसार दिनांकित।
      properties:
        transaction_id:
          type: string
          format: uuid
        transaction_number:
          type: integer
          nullable: true
        transaction_type:
          type: string
        action_type:
          type: string
        amount:
          allOf:
            - $ref: '#/components/schemas/NetworkTimelineAmount'
          nullable: true
          description: जब लेन-देन में कोई राशि न हो तो नल।
        status:
          type: string
        decision_reason_code:
          type: string
          nullable: true
        decision_reason_label:
          type: string
          nullable: true
        party_role:
          type: string
          description: >-
            लेन-देन में खाते की भूमिका: `APPLICANT`, `REMITTER`, `BENEFICIARY`
            या `COUNTERPARTY`।
    NetworkTimelineLogin:
      type: object
      description: >-
        एक साइन-इन इवेंट जिसे आपने इवेंट API के माध्यम से किसी व्यक्ति के लिए
        पोस्ट किया था।
      properties:
        action:
          type: string
          description: >-
            `<event_category>.<action_type>`: साइन-इन के लिए `auth.login` या
            `security.login_succeeded`, असफल होने पर `auth.login_failed` या
            `security.login_failed`।
        succeeded:
          type: boolean
        status:
          type: string
          description: इवेंट की स्थिति।
        ip:
          allOf:
            - $ref: '#/components/schemas/NetworkTimelineIP'
          nullable: true
          description: जब इवेंट में कोई IP पता न हो तो नल।
        device:
          allOf:
            - $ref: '#/components/schemas/NetworkTimelineDevice'
          nullable: true
          description: जब इवेंट में कोई डिवाइस फ़िंगरप्रिंट या संदर्भ न हो तो नल।
        is_first_login:
          type: boolean
          description: रिकॉर्ड में खाते का पहला सफल साइन-इन।
        is_new_device:
          type: boolean
          description: >-
            एक ऐसे डिवाइस से एक सफल साइन-इन जिससे खाते के पिछले सफल साइन-इन में
            से कोई भी नहीं आया था। पहले साइन-इन पर कभी भी सत्य (true) नहीं होता।
    NetworkTimelineRuleHit:
      type: object
      description: >-
        एक लाइव नियम जो किसी सदस्य के लेन-देन या इवेंट से मेल खाता है। टेस्ट-मोड
        मिलान शामिल नहीं हैं।
      properties:
        rule_id:
          type: string
          format: uuid
        rule_title:
          type: string
        rule_category:
          type: string
        rule_source:
          type: string
        severity:
          type: string
          nullable: true
        score_delta:
          type: integer
        status_target:
          type: string
          nullable: true
        action_summary:
          type: string
          nullable: true
    NetworkTimelineCaseLinked:
      type: object
      description: >-
        आपके संगठन में नेटवर्क के लिए खोला गया एक केस। `source_ref.ownership`
        बताता है कि यह आपके द्वारा कॉल किए गए एप्लिकेशन से संबंधित है या नहीं।
      properties:
        case_id:
          type: string
          format: uuid
        case_number:
          type: string
          nullable: true
        status:
          type: string
        author_email:
          type: string
          nullable: true
        author_name:
          type: string
          nullable: true
    NetworkTimelineNoteAdded:
      type: object
      description: नेटवर्क पर छोड़ा गया एक नोट। नोट टेक्स्ट शामिल नहीं है।
      properties:
        note_id:
          type: string
          format: uuid
        author_email:
          type: string
    NetworkTimelineRoute:
      type: object
      description: >-
        रिकॉर्ड कहाँ खुलता है: इसका प्रकार, इसका UUID और वह एप्लिकेशन जिससे यह
        संबंधित है।
      properties:
        kind:
          type: string
          description: >-
            खाते के लिए `user`, `business` या `transaction_party`; स्रोत रिकॉर्ड
            के लिए `session`, `business_session` या `transaction`।
        id:
          type: string
          format: uuid
        application_id:
          type: string
          format: uuid
    NetworkTimelineDeclineReason:
      type: object
      properties:
        risk:
          type: string
          description: चेतावनी कोड।
        feature:
          type: string
          description: वह सुविधा जिसने चेतावनी उत्पन्न की।
        short_description:
          type: string
    NetworkTimelineAmount:
      type: object
      properties:
        value:
          type: string
          description: स्ट्रिंग के रूप में दशमलव राशि।
        currency:
          type: string
        direction:
          type: string
          nullable: true
    NetworkTimelineIP:
      type: object
      properties:
        address:
          type: string
        country_code:
          type: string
          nullable: true
        city:
          type: string
          nullable: true
        connection_type:
          type: string
          nullable: true
          description: पते के लिए कनेक्शन प्रकार का लेबल, फ़्री टेक्स्ट के रूप में।
        is_vpn_or_tor:
          type: boolean
        is_data_center:
          type: boolean
    NetworkTimelineDevice:
      type: object
      properties:
        fingerprint:
          type: string
          nullable: true
        label:
          type: string
          nullable: true
          description: इवेंट के डिवाइस संदर्भ से निर्मित एक पठनीय डिवाइस लेबल।
  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.