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

## Changes

- **2026-07-22** `76a4e00b118d` — 1 info
  - added the optional property `deposit_token_account` to the response with the `200` status
- **2026-02-17** `2168c5f4fdd5` — 1 warning, 8 info
  - removed the optional property `totalAmount` from the response with the `200` status
  - added the optional property `app_fee_in_asset_token` to the response with the `200` status
  - added the optional property `app_fee_in_usd` to the response with the `200` status
  - added the optional property `asset_token_decimals` to the response with the `200` status
  - …5 more
- **2025-12-13** `0172b83f90c7` — 3 info
  - added the media type `application/json` for the response with the status `200`
  - added the media type `application/json` for the response with the status `401`
  - added the media type `application/json` for the response with the status `404`
- **2025-11-11** `fce39ccb3e9d` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/horuslabsio/apis/chainrails-api/changes/intents/:id/get.md)

---

[API](https://skmtc.dev/horuslabsio/apis/chainrails-api.md) · [All operations](https://skmtc.dev/horuslabsio/apis/chainrails-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/horuslabsio/chainrails-api/revisions/dcf19c1bab20/schema)
