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

# Check bridge transaction status

> Returns comprehensive information about a cross-chain bridge transaction, including LayerZero message status, on-chain events, and transaction data from Enso.



## OpenAPI

````yaml /public/openapi.json get /api/v1/stargate/bridge/check
openapi: 3.0.0
info:
  title: Enso API
  description: >-
    #### Enso API

    - Find detailed documentation on
    [docs.enso.finance](https://docs.enso.finance).

    - To use the API, **you must include your API Key in the Authorization
    header** (Bearer format).

    - For testing, Swagger pre-authorizes you using the key:
    `1e02632d-6feb-4a75-a157-documentation` (1rps).

    - Get your own API Key at
    [enso.finance/developers](https://enso.finance/developers).
  version: 1.0.1
  contact: {}
servers:
  - url: https://api.enso.build
security:
  - {}
tags:
  - name: shortcuts
    description: ''
paths:
  /api/v1/stargate/bridge/check:
    get:
      tags:
        - Integration
        - Crosschain
      summary: Check bridge transaction status
      description: >-
        Returns comprehensive information about a cross-chain bridge
        transaction, including LayerZero message status, on-chain events, and
        transaction data from Enso.
      operationId: LayerZeroController_checkBridgeTransaction
      parameters:
        - name: chainId
          required: true
          in: query
          description: Chain ID of the source transaction
          schema:
            type: number
        - name: txHash
          required: true
          in: query
          description: Transaction hash
          schema:
            example: 0x1234567890abcdef...
            type: string
      responses:
        '200':
          description: Bridge transaction status and details
          content:
            application/json:
              schema:
                $ref: '#/components/schemas/BridgeTransactionResponse'
        '429':
          description: Rate limit exceeded
components:
  schemas:
    BridgeTransactionResponse:
      type: object
      properties:
        sourceChainId:
          type: number
          description: Source chain ID
        sourceTxHash:
          type: string
          description: Source transaction hash
        destinationChainId:
          type: number
          description: Destination chain ID (if known)
        destinationTxHash:
          type: string
          description: Destination transaction hash (if completed)
        status:
          type: string
          description: Overall bridge status
          enum:
            - pending
            - inflight
            - delivered
            - failed
            - ready_for_manual_execution
            - unknown
        isMultiBridge:
          type: boolean
          description: >-
            Whether this transaction involves multiple sequential bridges. Only
            present when true.
        hops:
          description: >-
            Array of individual bridge hops. Only present for multi-bridge
            transactions.
          type: array
          items:
            $ref: '#/components/schemas/BridgeHop'
        layerZeroMessage:
          description: LayerZero message information
          allOf:
            - $ref: '#/components/schemas/LayerZeroMessageStatus'
        ensoSourceEvent:
          description: >-
            Enso shortcut event from source chain (ShortcutExecuted + execution
            result). Null if not found.
          nullable: true
          allOf:
            - $ref: '#/components/schemas/EnsoEvent'
        ensoDestinationEvent:
          description: >-
            Enso shortcut event from destination chain (ShortcutExecuted +
            execution result). Null if not found. On an intent route this is
            read from the keeper's execution transaction
            (destinationExecutionTxHash), not from the bridge delivery.
          nullable: true
          allOf:
            - $ref: '#/components/schemas/EnsoEvent'
        ensoMetadata:
          description: Enso transaction metadata
          allOf:
            - $ref: '#/components/schemas/EnsoMetadata'
        intent:
          description: >-
            Present when the source transaction published a cross-chain intent:
            this bridge only delivers funds to the intent's ephemeral executor,
            and a keeper then executes the intent (or refunds it past its
            deadline) in a separate destination transaction. `status: delivered`
            means the bridge delivered the funds to the executor; the execution
            itself is reported here (phase, keeper status, execution / repayment
            transactions).
          allOf:
            - $ref: '#/components/schemas/BridgeRouteIntent'
        destinationExecutionTxHash:
          type: string
          description: >-
            The keeper's intent execution transaction on the destination chain,
            once executed - the transaction that performed the Enso swap.
            destinationTxHash is only the bridge delivery that funded the
            executor.
        error:
          type: string
          description: Error message if something went wrong
      required:
        - sourceChainId
        - sourceTxHash
        - status
    BridgeHop:
      type: object
      properties:
        sourceChainId:
          type: number
          description: Source chain ID for this hop
        sourceTxHash:
          type: string
          description: Source transaction hash for this hop
        destinationChainId:
          type: number
          description: Destination chain ID (if known)
        destinationTxHash:
          type: string
          description: Destination transaction hash (if completed)
        status:
          type: string
          description: Status of this hop
          enum:
            - pending
            - inflight
            - delivered
            - failed
            - ready_for_manual_execution
            - unknown
        layerZeroMessage:
          description: LayerZero message information
          allOf:
            - $ref: '#/components/schemas/LayerZeroMessageStatus'
        ensoSourceEvent:
          description: >-
            Enso shortcut event from source chain (ShortcutExecuted + execution
            result). Null if not found.
          nullable: true
          allOf:
            - $ref: '#/components/schemas/EnsoEvent'
        ensoDestinationEvent:
          description: >-
            Enso shortcut event from destination chain (ShortcutExecuted +
            execution result). Null if not found. On an intent route this is
            read from the keeper's execution transaction
            (destinationExecutionTxHash), not from the bridge delivery.
          nullable: true
          allOf:
            - $ref: '#/components/schemas/EnsoEvent'
      required:
        - sourceChainId
        - sourceTxHash
        - status
    LayerZeroMessageStatus:
      type: object
      properties:
        srcEid:
          type: number
          description: Source chain endpoint ID
        dstEid:
          type: number
          description: Destination chain endpoint ID
        srcChainId:
          type: number
          description: Source chain ID (EVM)
        dstChainId:
          type: number
          description: Destination chain ID (EVM)
        status:
          type: string
          description: Message status from LayerZero
        srcTxHash:
          type: string
          description: Source transaction hash
        dstTxHash:
          type: string
          description: Destination transaction hash (if delivered)
        srcBlockNumber:
          type: number
          description: Source block number
        dstBlockNumber:
          type: number
          description: Destination block number (if delivered)
        srcTimestamp:
          type: string
          description: Source timestamp
        dstTimestamp:
          type: string
          description: Destination timestamp (if delivered)
        sender:
          type: string
          description: Sender address
        receiver:
          type: string
          description: Receiver address
      required:
        - srcEid
        - dstEid
        - status
    EnsoEvent:
      type: object
      properties:
        accountId:
          type: string
          description: Account ID from ShortcutExecuted event
        requestId:
          type: string
          description: Request ID from ShortcutExecuted event
        blockNumber:
          type: number
          description: Block number where the event was emitted
        transactionHash:
          type: string
          description: Transaction hash
        chainId:
          type: number
          description: Chain ID where the event was emitted
        success:
          type: boolean
          description: Whether the shortcut execution was successful
        error:
          type: string
          description: Error data if execution failed
        refundDetails:
          description: Refund details if execution failed and funds were returned
          allOf:
            - $ref: '#/components/schemas/RefundDetails'
      required:
        - blockNumber
        - transactionHash
        - chainId
        - success
    EnsoMetadata:
      type: object
      properties:
        tokenIn:
          type: string
          description: Token in address
        tokenOut:
          type: string
          description: Token out address
        amountIn:
          type: string
          description: Amount in
        chainId:
          type: number
          description: Chain ID from the request
        timestamp:
          type: number
          description: Timestamp of the request
    BridgeRouteIntent:
      type: object
      properties:
        requestId:
          type: string
          description: Intent request id (bytes32) published by the source transaction
        executor:
          type: string
          description: >-
            Ephemeral executor address the bridge delivers to on the execution
            chain (lowercase)
        executionChainId:
          type: number
          description: Chain the intent executes (and refunds) on
        phase:
          type: string
          description: Coarse lifecycle phase of the destination stage
          enum:
            - awaiting_funds
            - executing
            - executed
            - refunding
            - refunded
            - failed
            - unknown
        status:
          type: string
          description: >-
            The keeper's own lifecycle status (pending | waiting_funds |
            inflight | executed | failed | failed_permanent | expired |
            refund_pending | refund_inflight | refunded | refund_skipped |
            refund_failed), or unknown
        statusDescription:
          type: string
          description: Human-readable status explanation
        source:
          type: string
          description: >-
            Where the stage was read from: the intent keeper, or only the chain
            itself
          enum:
            - keeper
            - onchain
        deadline:
          type: string
          description: Intent deadline (ISO 8601). Past it the executor can only refund.
        executionTxHash:
          type: string
          description: The keeper's execution transaction
        executionExplorerUrl:
          type: string
          description: Block-explorer link for the execution transaction
        executedAt:
          type: string
          description: When the execution mined (ISO 8601)
        refundTxHash:
          type: string
          description: The repayment transaction, when funds were swept back
        refundExplorerUrl:
          type: string
          description: Block-explorer link for the repayment transaction
        refundedAt:
          type: string
          description: When the repayment mined (ISO 8601)
        error:
          type: string
          description: Last error the keeper recorded for this intent, if any
      required:
        - requestId
        - executor
        - phase
        - status
        - source
    RefundDetails:
      type: object
      properties:
        token:
          type: string
          description: Token address (0xeee... for native token)
        amount:
          type: string
          description: Amount refunded
        recipient:
          type: string
          description: Recipient address
        isNative:
          type: boolean
          description: Whether the refund is in native token
      required:
        - token
        - amount
        - recipient
        - isNative

````

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