> ## Documentation Index
> Fetch the complete documentation index at: https://docs.route.fun/llms.txt
> Use this file to discover all available pages before exploring further.

# Read canonical transaction status

> No API key required. 60 requests per minute per caller, with separate shared data capacity. Search covers listed tokens or an exact contract address. Balances cover listed and selected tokens, not every wallet asset, and report partial failures. Transaction status reports chain inclusion and finality; not_found is not proof a transaction was never submitted. It does not verify a swap against its quote.

No API key required.

[API overview](/api-reference/overview)


## OpenAPI

````yaml openapi.json GET /api/v2/transactions/{hash}
openapi: 3.1.0
info:
  title: route
  version: 2.15.0
  description: >-
    Route compares swap paths offchain and executes swaps on Robinhood Chain.
    The API returns quotes and unsigned transactions. It does not sign or submit
    for you. V2 deducts a disclosed pair-dependent output fee up to 0.50%; pool
    fees, provider charges and gas may still apply. Contracts are experimental
    and unaudited. Public routing and data endpoints require no API key. Use the
    documented /api/v2 endpoints for integrations. Builder endpoints require a
    scoped x-api-key from build.route.fun. Public quote, swap and data endpoints
    remain keyless.
servers:
  - url: https://api.route.fun
security: []
paths:
  /api/v2/transactions/{hash}:
    get:
      tags:
        - Data
      summary: Read canonical transaction status
      description: >-
        No API key required. 60 requests per minute per caller, with separate
        shared data capacity. Search covers listed tokens or an exact contract
        address. Balances cover listed and selected tokens, not every wallet
        asset, and report partial failures. Transaction status reports chain
        inclusion and finality; not_found is not proof a transaction was never
        submitted. It does not verify a swap against its quote.
      operationId: transactionStatus
      parameters:
        - in: path
          name: hash
          required: true
          schema:
            type: string
            pattern: ^0x[0-9a-fA-F]{64}$
      responses:
        '200':
          description: Data response; see developer data guide for coverage and fields
          content:
            application/json:
              schema:
                type: object
                properties:
                  hash:
                    type: string
                  chainId:
                    const: 4663
                  status:
                    enum:
                      - not_found
                      - pending
                      - confirmed
                      - reverted
                  finalized:
                    type: boolean
                  blockNumber:
                    type: string
                  blockHash:
                    type: string
                  from:
                    type: string
                  to:
                    type:
                      - string
                      - 'null'
                  gasUsed:
                    type: string
                  effectiveGasPrice:
                    type: string
                  settlementCoverage:
                    const: none
                  settlements:
                    type: array
                    maxItems: 0
                    items:
                      type: object
        '400':
          description: Invalid query or address
        '409':
          description: Chain reorganization; retry status
        '429':
          description: Data lane capacity exceeded; observe Retry-After
        '503':
          description: Data source unavailable
      security: []

````