---
title: "Get intent by ID"
method: GET
path: "/intents/{id}"
tags: ["Intents"]
---

# Get intent by ID

`GET /intents/{id}`

Retrieves information about a specific intent using its unique id

## Path parameters

- `id` string, required

## Response `200`

Intent details retrieved successfully

- object
  - `id` number
  - `client_id` string
  - `sender` string
  - `initialAmount` string
  - `fees` string
  - `app_fee_in_usd` string
  - `total_amount_in_usd` string
  - `total_amount_in_asset_token` string
  - `fees_in_asset_token` string
  - `app_fee_in_asset_token` string
  - `asset_token_symbol` string
  - `asset_token_decimals` number
  - `slippage` string
  - `tokenIn` string
  - `tokenOut` string
  - `intent_address` string — Solana: intent PDA — show to users for QR/Send; transfer tokenIn here (wallet derives deposit ATA). EVM/Starknet: contract address.
  - `deposit_token_account` string — Solana only: ATA(mint, intent PDA). Indexer and recovery only — do not use for QR/Send; fund via intent_address instead.
  - `destination_intent_address` string
  - `source_chain` string
  - `destination_chain` string
  - `recipient` string
  - `refund_address` string
  - `relayer` string
  - `coordinator` string
  - `bridger` string
  - `bridgeExtraData` string
  - `intent_nonce` number
  - `intent_status` 'PENDING' | 'FUNDED' | 'INITIATED' | 'COMPLETED' | 'EXPIRED'
  - `tx_hash` string, nullable
  - `needs_relay` boolean
  - `relayer_claimed` boolean
  - `paymaster_used` boolean
  - `mode` 'test' | 'live'
  - `expires_at` string, date-time
  - `metadata` object
  - `created_at` string, date-time
  - `updated_at` string, date-time

## Other responses

- `401` — Unauthorized - Invalid or missing API key
- `404` — Intent not found

---

[API](https://skmtc.net/horuslabsio/apis/chainrails-api.md) · [All operations](https://skmtc.net/horuslabsio/apis/chainrails-api/llms.txt) · [OpenAPI document](https://skmtc-service-staging.skmtc.workers.dev/v1/apis/horuslabsio/chainrails-api/versions/76a4e00b118d/schema)
