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

# Travel Rule ट्रांसफ़र सूची API

> Didit से अपने Travel Rule ट्रांसफ़र की सूची पाएँ: स्थिति, रेल, काउंटरपार्टी VASP नाम, वॉलेट और मेमो। दिशा, स्थिति, रेल या काउंटरपार्टी से फ़िल्टर करें।



Travel Rule ट्रांसफ़र सूचीबद्ध करने का API प्रॉम्प्ट
        प्रॉम्प्ट को क्लिपबोर्ड पर कॉपी करें



      
      

\<pre>

\`List my application's Travel Rule transfers.

Endpoint:
GET https://verification.didit.me/v3/travel-rule/transfers/

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

Query parameters (all optional; direction, status, rail and kind are case-sensitive and take comma-separated values to select several, while currency, start_date, end_date and counterparty take one value each):
\- direction - INBOUND, OUTBOUND (case-sensitive).
\- status - any transfer status, for example AWAITING_COUNTERPARTY or COUNTERPARTY_VASP_NOT_FOUND.
\- rail - INTERNAL, TRP, GTR, TRUST, VERIFYVASP, SYGNA, EMAIL, TEST_VASP.
\- kind - withdrawal (outbound), message (an inbound transfer a rail created from a counterparty's message: a TRP inquiry, the INTERNAL inbound leg, or a GTR, VerifyVASP or Sygna Bridge message), deposit (any other inbound transfer).
\- currency - the transaction's currency, case-insensitive.
\- start_date, end_date - YYYY-MM-DD, inclusive, on the transfer's creation day in UTC.
\- counterparty - the id of a directory entry or Didit network member from GET /v3/travel-rule/vasps/.
\- limit (default 50), offset.

What to read from each row:
\- id (the transfer), transaction_id, txn_id, txn_date, kind, direction, status, rail, asset, amount, deadline_at, created_at.
\- reason - why a COUNTERPARTY_VASP_NOT_FOUND or COUNTERPARTY_VASP_NOT_REACHABLE transfer is stuck, for example email_undeliverable or directory_match_no_route; empty for any other status.
\- originator_vasp, beneficiary_vasp - VASP names: my own legal name on my side; on the other side the directory entry, the Didit network member, the TRP sender, the Didit Test VASP in sandbox, or the name the transfer declared. Empty when none is known.
\- originator_wallet, beneficiary_wallet, originator_memo, beneficiary_memo, originator_wallet_type, beneficiary_wallet_type (vasp | self_hosted | own).
\- matched_transaction_id - the other side of a deposit matched by hand.
Rows never carry person data. For a transfer's full detail, read the transaction with GET /v3/transactions/{transaction_id}/.

Failure modes:
\- 400 - a filter value is not valid, for example {"direction": ["Unknown value(s): inbound."]}, {"start_date": ["Use the YYYY-MM-DD format."]} or {"counterparty": ["Use a valid id."]}.

Full guide: /transaction-monitoring/travel-rule.`

\</pre>



      
      

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



## OpenAPI

````yaml hi/openapi-25.json GET /v3/travel-rule/transfers/
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/travel-rule/transfers/:
    get:
      tags:
        - Travel Rule
      summary: Travel Rule ट्रांसफर सूचीबद्ध करें
      description: >-
        आपकी एप्लिकेशन के Travel Rule ट्रांसफ़र, नवीनतम पहले, `limit` (डिफ़ॉल्ट
        50) और `offset` के साथ पृष्ठांकित। पंक्तियों में केवल VASP नाम, वॉलेट और
        मेमो होते हैं, कभी भी व्यक्तिगत डेटा नहीं। अल्पविराम से अलग किए गए मान
        एकाधिक मानों का चयन करते हैं। एक अज्ञात मान पैरामीटर का नाम बताते हुए
        400 का उत्तर देता है, उदाहरण के लिए `{"direction": ["Unknown value(s):
        inbound."]}`।
      operationId: listTravelRuleTransfers
      parameters:
        - name: direction
          in: query
          required: false
          schema:
            type: string
          description: INBOUND, OUTBOUND, या दोनों कॉमा से अलग किए गए। केस-संवेदी।
        - name: status
          in: query
          required: false
          schema:
            type: string
          description: एक या अधिक ट्रांसफ़र स्थितियाँ, अल्पविराम से अलग की गईं।
        - name: rail
          in: query
          required: false
          schema:
            type: string
          description: >-
            INTERNAL, TRP, GTR, TRUST, VERIFYVASP, SYGNA, EMAIL, TEST_VASP में
            से एक या अधिक, अल्पविराम से अलग किए गए।
        - name: kind
          in: query
          required: false
          schema:
            type: string
          description: withdrawal, deposit या message, अल्पविराम से अलग किए गए।
        - name: currency
          in: query
          required: false
          schema:
            type: string
          description: लेन-देन की मुद्रा, केस-इनसेंसिटिव।
        - name: start_date
          in: query
          required: false
          schema:
            type: string
            format: date
          description: इस दिन (UTC) या इसके बाद बनाए गए ट्रांसफ़र, YYYY-MM-DD।
        - name: end_date
          in: query
          required: false
          schema:
            type: string
            format: date
          description: इस दिन (UTC) या इससे पहले बनाए गए ट्रांसफ़र, YYYY-MM-DD।
        - name: counterparty
          in: query
          required: false
          schema:
            type: string
            format: uuid
          description: >-
            GET /v3/travel-rule/vasps/ से किसी डायरेक्टरी प्रविष्टि या Didit
            नेटवर्क सदस्य का `id`: उस प्रतिपक्ष के साथ आपके ट्रांसफर। जो मान
            मान्य id नहीं है, वह 400 का उत्तर देता है।
        - name: limit
          in: query
          required: false
          schema:
            type: integer
            minimum: 1
          description: पेज का आकार, डिफ़ॉल्ट 50।
        - name: offset
          in: query
          required: false
          schema:
            type: integer
            minimum: 0
          description: छोड़ने के लिए पंक्तियां।
      responses:
        '200':
          description: ट्रांसफ़र का एक पेज।
          content:
            application/json:
              schema:
                type: object
                properties:
                  count:
                    type: integer
                  next:
                    type: string
                    nullable: true
                  previous:
                    type: string
                    nullable: true
                  results:
                    type: array
                    items:
                      $ref: '#/components/schemas/TravelRuleTransferRow'
              example:
                count: 1
                next: null
                previous: null
                results:
                  - id: 5b0f6c2e-2a4d-4f0e-9a41-0c3f9a7e1d22
                    transaction_id: a3c1e8f4-7b62-4d1a-8e0b-2f9d6c4b7a10
                    txn_id: wd-2026-10-19-0042
                    txn_date: '2026-10-19T08:41:12Z'
                    kind: withdrawal
                    direction: OUTBOUND
                    status: AWAITING_COUNTERPARTY
                    rail: TRP
                    asset: ETH
                    amount: '1.25'
                    originator_vasp: Origin CASP SL
                    beneficiary_vasp: Example Counterparty VASP
                    originator_wallet: '0x77ccff0cc624a53cd8b8d8703ced826710211ec7'
                    beneficiary_wallet: '0xede2d7e4f5b097e6391ab6bbcf2f47a53f4778cb'
                    originator_memo: ''
                    beneficiary_memo: ''
                    originator_wallet_type: vasp
                    beneficiary_wallet_type: vasp
                    matched_transaction_id: null
                    deadline_at: '2026-10-21T08:41:13Z'
                    created_at: '2026-10-19T08:41:13Z'
        '400':
          description: फ़िल्टर मान अमान्य है।
          content:
            application/json:
              example:
                start_date:
                  - Use the YYYY-MM-DD format.
      security:
        - ApiKeyAuth: []
      x-codeSamples:
        - lang: curl
          label: curl
          source: >-
            curl -X GET
            'https://verification.didit.me/v3/travel-rule/transfers/?direction=OUTBOUND&status=AWAITING_COUNTERPARTY'
            \
              -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.travel_rule.transfers.list():
                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.travelRule.transfers.list()) {
              console.log(item);
            }
        - lang: go
          label: Go
          source: "ctx := context.Background()\n// Reads DIDIT_API_KEY.\nclient := didit.NewClient()\n\niter := client.TravelRule.Transfers.ListAutoPaging(ctx, didit.TravelRuleTransfersListParams{})\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.travelRule().transfers().list()) {
                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->travelRule->transfers->list() as $item) {
                print_r($item->toArray());
            }
        - lang: ruby
          label: Ruby
          source: |-
            require "didit"

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

            didit.travel_rule.transfers.list.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.TravelRule.Transfers.ListAsync())

            {
                Console.WriteLine(JsonSerializer.Serialize(item));
            }
components:
  schemas:
    TravelRuleTransferRow:
      type: object
      description: >-
        एक Travel Rule ट्रांसफर जैसा कि ट्रांसफर सूची दिखाती है: केवल VASP नाम,
        वॉलेट और मेमो, कभी भी प्रेषक या लाभार्थी का व्यक्तिगत डेटा नहीं।
      properties:
        id:
          type: string
          format: uuid
          description: ट्रांसफर की id।
        transaction_id:
          type: string
          format: uuid
          description: Didit लेन-देन जिससे यह ट्रांसफर संबंधित है।
        txn_id:
          type: string
          nullable: true
          description: >-
            लेन-देन के लिए आपका अपना id। Didit आपके लिए जो ट्रांसफ़र बुक करता
            है, जैसे कि Didit Test VASP इनबाउंड ट्रांसफ़र, उनमें जनरेट किया गया
            id होता है।
        txn_date:
          type: string
          format: date-time
        kind:
          type: string
          enum:
            - withdrawal
            - deposit
            - message
          description: >-
            withdrawal: आउटबाउंड। message: एक इनबाउंड ट्रांसफर जिसे किसी रेल ने
            प्रतिपक्ष के संदेश (एक TRP पूछताछ, INTERNAL इनबाउंड लेग, या एक GTR,
            VerifyVASP या Sygna Bridge संदेश) से बनाया है। deposit: कोई अन्य
            इनबाउंड ट्रांसफर।
        direction:
          type: string
          enum:
            - INBOUND
            - OUTBOUND
        status:
          type: string
          enum:
            - AWAITING_COUNTERPARTY
            - ON_HOLD
            - COMPLETED
            - FINISHED
            - CANCELLED
            - EXPIRED
            - COUNTERPARTY_MISMATCHED_DATA
            - COUNTERPARTY_VASP_NOT_FOUND
            - COUNTERPARTY_VASP_NOT_REACHABLE
            - UNCONFIRMED_OWNERSHIP
            - COUNTERPARTY_VASP_GENERAL_DECLINE
            - NOT_ENOUGH_COUNTERPARTY_DATA
            - NOT_APPLICABLE
        reason:
          type: string
          description: >-
            एक `COUNTERPARTY_VASP_NOT_FOUND` या
            `COUNTERPARTY_VASP_NOT_REACHABLE` ट्रांसफर क्यों अटका हुआ है,
            ट्रांसफर के अपने `reason` जैसा ही मान, ताकि सूची प्रत्येक ट्रांसफर
            को खोले बिना बाउंस हुए अनुपालन ईमेल और बिना किसी रूट वाले प्रतिपक्ष
            के बीच अंतर बता सके। किसी अन्य स्थिति के लिए `""`। देखें [ट्रांसफर
            क्यों अटका हुआ
            है](/hi/transaction-monitoring/travel-rule#ट्रांसफ़र-क्यों-अटका-है)।
        rail:
          type: string
          nullable: true
          enum:
            - INTERNAL
            - TRP
            - GTR
            - TRUST
            - VERIFYVASP
            - SYGNA
            - EMAIL
            - TEST_VASP
            - null
        asset:
          type: string
          description: लेन-देन की मुद्रा।
        amount:
          type: string
          description: सादे दशमलव के रूप में राशि, उदाहरण के लिए "1.25"।
        originator_vasp:
          type: string
          description: >-
            आउटबाउंड: आपके VASP का कानूनी नाम। इनबाउंड: प्रतिपक्ष का नाम, उसकी
            डायरेक्टरी प्रविष्टि से, Didit नेटवर्क सदस्य, TRP प्रेषक, Didit Test
            VASP, या ट्रांसफर द्वारा घोषित नाम। कोई ज्ञात न होने पर खाली।
        beneficiary_vasp:
          type: string
          description: >-
            आउटबाउंड: प्रतिपक्ष का नाम, जिसे उसी तरह निकाला गया है। इनबाउंड:
            आपके VASP का कानूनी नाम।
        originator_wallet:
          type: string
        beneficiary_wallet:
          type: string
        originator_memo:
          type: string
          description: मेमो या गंतव्य टैग, उन श्रृंखलाओं पर खाली जहाँ यह नहीं होता।
        beneficiary_memo:
          type: string
        originator_wallet_type:
          type: string
          enum:
            - vasp
            - self_hosted
            - own
          description: >-
            vasp, self_hosted (अनहोस्टेड घोषित) या own (एक वॉलेट जिसे आपकी पता
            पुस्तिका आपका मानकर रिकॉर्ड करती है)। आपका अपना पक्ष हमेशा vasp होता
            है।
        beneficiary_wallet_type:
          type: string
          enum:
            - vasp
            - self_hosted
            - own
        matched_transaction_id:
          type: string
          format: uuid
          nullable: true
          description: >-
            किसी डिपॉज़िट का दूसरा पक्ष जिसे आपने घोषित ट्रांसफ़र से मैन्युअल
            रूप से मिलाया है।
        deadline_at:
          type: string
          format: date-time
          nullable: true
          description: >-
            यदि ट्रांसफर अभी भी अपने प्रतिपक्ष की प्रतीक्षा कर रहा है, तो इसकी
            समय-सीमा कब समाप्त होगी। आपके द्वारा `POST /v3/transactions/` के साथ
            बनाए जाने वाले प्रत्येक ट्रांसफर पर सेट किया जाता है, जिसके लिए
            एक्सचेंज की आवश्यकता होती है, चाहे वह आउटबाउंड हो या इनबाउंड।
            थ्रेशोल्ड से नीचे, ऐसे Lightning भुगतान पर जिस पर Travel Rule लागू
            नहीं होता है, और ऐसे इनबाउंड ट्रांसफर पर null होता है जिसे प्रतिपक्ष
            द्वारा आपसे संपर्क करने पर Didit बनाता है (एक इनबाउंड TRP पूछताछ, एक
            नेटवर्क संदेश या INTERNAL इनबाउंड लेग)।
        created_at:
          type: string
          format: date-time
  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.