> ## 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 投递历史，支持分页、传输类型、消息状态和投递时间戳。

Travel Rule 投递历史 API 提示词
将提示词复制到剪贴板

<pre>
  \`Read the complete Travel Rule delivery history for one transaction.

  Endpoint:
  GET [https://verification.didit.me/v3/transactions/\{transaction\_id}/travel-rule/deliveries/](https://verification.didit.me/v3/transactions/\{transaction_id}/travel-rule/deliveries/)

  Authentication:
  Use the x-api-key header with my Didit API key. {transaction_id} is the Didit transaction uuid on my application. The key needs transaction read permission.

  Query parameters:

  * limit - entries per page, default 100; larger values are capped at 100, and a value above 1,000,000 returns 400.
  * offset - entries to skip, default 0, up to 1,000,000; a larger value returns 400.

  What to read from the response:

  * count, next, previous, results. count is capped at 100 and is not a reliable total for larger histories; follow next until it is null.
  * Entries are ordered oldest first, then by identifier for ties. Each has uuid, kind (SEND, ANSWER, TXID, CANCEL, POLL), status (QUEUED, SENDING, RETRYING, DELIVERED, FAILED), rail (EMAIL, TRP, INTERNAL, NETWORK, or null before selection), created\_at, delivered\_at and detail\_lines.
  * detail\_lines describes the message kind and status without transport payloads or raw errors. The rail is supplier-neutral: NETWORK collapses every named network into one value.

  Transaction detail embeds only the newest 100 entries as travel\_rule.deliveries, with travel\_rule.deliveries\_truncated when older ones were omitted. Transaction lists omit both fields. travel\_rule.delivery remains the newest entry only.

  Failure modes:

  * 400 - limit or offset above 1,000,000.
  * 401 - a wrong, revoked or expired API key.
  * 403 - the x-api-key header is missing, or the key lacks transaction read permission.
  * 404 - unknown transaction, no Travel Rule transfer, or a deleted transaction.

  Full guide: /transaction-monitoring/travel-rule#delivery-and-retries.\`
</pre>

粘贴到

Didit 的 Travel Rule 投递历史 API 会按从最早到最近的顺序分页，返回某笔交易的每条投递记录。

请使用具有交易读取权限的 `x-api-key`。`transaction_id` 为 Didit 交易 UUID。若交易或转账不存在，返回 `404`；权限不足则返回 `403`。

## 分页与排序

响应包含 `count`、`next`、`previous` 和 `results`。`limit` 默认为 100，上限为 100；`offset` 默认为 0，且不得超过 1,000,000，否则返回 `400`。`count` 通常上限为 100，对于较长的历史记录，它不是可靠的总数。无论 `count` 为何值，都应持续跟随 `next`，直到其为 `null`。条目按创建时间排序，创建时间相同时按标识符排序。

每个条目包含 `uuid`、`kind`、`status`、`rail`、`created_at`、`delivered_at` 和 `detail_lines`。`rail` 的取值为 `EMAIL`、`TRP`、`INTERNAL`、`NETWORK` 或 `null`（选择前）。`detail_lines` 描述消息类型和状态，不包含原始错误或传输层 payload。

## 嵌入历史记录

[交易详情](https://docs.didit.me/zh/management-api/transactions/get.md) 仅包含 `travel_rule.deliveries` 中最新的 100 条记录，并按从旧到新的顺序展示。`deliveries_truncated` 用于说明较早的记录是否被省略。交易列表不包含这两个历史字段。现有的 `delivery` 字段仍然描述最新的一次投递。

有关状态含义，请参阅 [投递与重试](https://docs.didit.me/zh/transaction-monitoring/travel-rule.md#投递与重试)。[交易对手消息](https://docs.didit.me/zh/management-api/travel-rule/list-messages.md) 是单独的会话端点。


## OpenAPI

````yaml zh/openapi-25.json GET /v3/transactions/{transaction_id}/travel-rule/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/transactions/{transaction_id}/travel-rule/deliveries/:
    get:
      tags:
        - Travel Rule
      summary: 列出 Travel Rule 投递历史
      description: >-
        按时间顺序（从旧到新）读取某笔交易的完整投递历史。需要具备交易读取权限。与详情中嵌入的最新 100 条记录不同，此接口会对完整历史进行分页。参见
        [投递历史](/zh/management-api/travel-rule/list-deliveries)。
      operationId: listTravelRuleDeliveries
      parameters:
        - name: transaction_id
          in: path
          required: true
          description: 拥有该转账的 Didit 稳定交易 UUID。
          schema:
            type: string
            format: uuid
        - name: limit
          in: query
          schema:
            type: integer
            minimum: 1
            maximum: 1000000
            default: 100
          description: 每页条目数。默认为 100，较大的值上限为 100；超过 1,000,000 的值将返回 `400`。
        - name: offset
          in: query
          schema:
            type: integer
            maximum: 1000000
            minimum: 0
            default: 0
          description: 要跳过的条目数，最大 1,000,000。超过该值将返回 `400`。
      responses:
        '200':
          description: 分页的投递历史记录，按从旧到新排序。
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/TravelRuleDeliveryLogPage'
              example:
                count: 1
                next: null
                previous: null
                results:
                  - uuid: 11111111-2222-4333-8444-555555555555
                    kind: SEND
                    status: DELIVERED
                    rail: NETWORK
                    created_at: '2026-11-01T10:00:00Z'
                    delivered_at: '2026-11-01T10:00:01Z'
                    detail_lines:
                      - Send
                      - Delivered
        '400':
          description: 发送的 `limit` 或 `offset` 超过 1,000,000。
        '401':
          description: 错误、已撤销或已过期的 API 密钥。
        '403':
          description: >-
            缺少、无效或已撤销的 API 密钥，或者该密钥无法读取此应用的交易。缺少密钥返回 `403`；错误、已撤销或已过期的密钥返回
            `401`。
        '404':
          description: 未找到交易或 Travel Rule 转账。
      security:
        - ApiKeyAuth: []
      x-codeSamples:
        - lang: curl
          label: curl
          source: >-
            curl -X GET
            'https://verification.didit.me/v3/transactions/11111111-2222-3333-4444-555555555555/travel-rule/deliveries/?limit=100&offset=0'
            \
              -H 'x-api-key: YOUR_API_KEY'
components:
  schemas:
    TravelRuleDeliveryLogPage:
      type: object
      required:
        - count
        - next
        - previous
        - results
      properties:
        count:
          type: integer
          minimum: 0
          description: 计数通常上限为 100；对于较长的历史记录，它并不是可靠的总数。无论 count 为多少，都应持续跟随 next 直到其为 null。
        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/TravelRuleDeliveryLogEntry'
          description: 条目按创建时间从早到晚排序，创建时间相同时按标识符排序。
    TravelRuleDeliveryLogEntry:
      type: object
      description: 投递历史中的一条供应商中立的记录。
      required:
        - uuid
        - kind
        - status
        - rail
        - created_at
        - delivered_at
        - detail_lines
      properties:
        uuid:
          type: string
          format: uuid
          description: 投递标识符。
        kind:
          type: string
          enum:
            - SEND
            - ANSWER
            - TXID
            - CANCEL
            - POLL
          description: >-
            该消息携带的内容。`SEND`：发送给交易对手的首条转账消息（出站；在发送时选择通道）。`ANSWER`：您对发起请求的网络做出的接受或拒绝（入站）。`TXID`：完成转账后的链上交易哈希。`CANCEL`：取消操作（在您取消转账之后）。`POLL`：向支持状态查询的网络发起的查询请求，在转账等待交易对手期间每
            5 分钟重复一次。
        status:
          type: string
          enum:
            - QUEUED
            - SENDING
            - RETRYING
            - DELIVERED
            - FAILED
          description: 当前投递状态。
        rail:
          type: string
          nullable: true
          enum:
            - EMAIL
            - TRP
            - INTERNAL
            - NETWORK
            - null
          description: 与供应商无关的传输类型；选择前为 null。
        created_at:
          type: string
          format: date-time
          description: 投递创建的时间。
        delivered_at:
          type: string
          format: date-time
          nullable: true
          description: 投递完成的时间；未完成时为 null。
        detail_lines:
          type: array
          items:
            type: string
          description: 人类可读的消息类型和投递状态。不暴露传输 payload 或原始错误。
      example:
        uuid: 11111111-2222-4333-8444-555555555555
        kind: SEND
        status: DELIVERED
        rail: NETWORK
        created_at: '2026-11-01T10:00:00Z'
        delivered_at: '2026-11-01T10:00:01Z'
        detail_lines:
          - Send
          - Delivered
  securitySchemes:
    ApiKeyAuth:
      type: apiKey
      in: header
      name: x-api-key
      description: >-
        您的应用 API 密钥，可在 Business Console 的“开发者 -> API
        密钥”中获取。主密钥拥有完整访问权限。指定名称的密钥可设置作用域：针对每个资源设为无权限、只读或读写，限定于特定工作流或已通过的会话、限定于
        IP 地址列表，以及设置到期日期。401 表示密钥错误、已撤销或已过期；403 表示未发送密钥、密钥无权访问该资源或操作，或请求来自其 IP
        列表之外的地址；在会话路由上返回 404 表示该会话不在该密钥允许的工作流或状态范围内。没有媒体访问权限的密钥获取到的图片、视频和 PDF
        URL 将为 null；没有会话写入权限的密钥获取到的会话链接和 token 将为 null。请参阅
        https://docs.didit.me/console/api-keys。

````

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