Documentation Index
Fetch the complete documentation index at: https://docs.trustware.io/llms.txt
Use this file to discover all available pages before exploring further.
GET https://api.trustware.io/api/v1/route-intent/:intentId/status
Poll this endpoint after submitting the receipt to track bridge and swap progress through to final settlement. The metadata field echoes exactly what you passed in the POST /route call — use it to attribute the transaction to the correct user or internal record.
Poll until status reaches success or failed.
Path parameters
| Parameter | Description |
|---|
intentId | The intentId returned by POST /route. |
Response
{
"data": {
"id": "bc5a5e82-1ecb-453b-bf78-c7c3ccdc3223",
"intent_id": "d9a10f42-7243-498d-914a-269a18b93660",
"sdk_request": true,
"from_address": "0xeb212fe20f26243ec4d4df2dd49c8aa9fa75a201",
"to_address": "0xeb212fe20f26243ec4d4df2dd49c8aa9fa75a201",
"from_chain_id": "43114",
"to_chain_id": "137",
"source_tx_hash": "0x4c8f91363c5f5e3ac2154f94995f5beac2993cc595af552c2681538af627e05d",
"dest_tx_hash": "0x9b7e3f0a...",
"request_id": "eeaa53a4f2e254896ae690edac309e68",
"status": "bridging",
"routing_provider": "squid",
"quote_to_amount_usd": "0.19000000",
"to_amount_wei": "198584",
"poll_attempt": 1,
"next_poll_at": "2026-04-15T03:13:54.289994Z",
"create_date": "2026-04-15T03:13:22.592483Z",
"update_date": "2026-04-15T03:13:24.290292Z"
}
}
Status values
The status field on the response is one of four values:
status | Meaning |
|---|
submitted | The receipt has been submitted; tracking has started. Continue polling. |
bridging | Assets are in transit across the bridge. Continue polling. |
success | Route completed successfully. Final amounts and destination hash are available. |
failed | The route failed. If funds moved on the source chain, a refund has been initiated back to the source address. |
If intentId is unknown or no receipt has been submitted yet, the endpoint returns HTTP 404 Not Found rather than a status value.
Auxiliary status fields
A few separate fields surface conditions that are not part of the main status enum:
| Field | Meaning |
|---|
gas_status | Set to "needs_gas" when the destination chain step stalled due to insufficient gas. Present only when relevant. |
routing_provider | The bridge provider used for this route (e.g. "squid", "lifi"). Useful when triaging a failed status. |
Response fields
| Field | Description |
|---|
id | Trustware internal transaction record ID. |
intent_id | The intentId from the route response. |
sdk_request | true when the intent originated from a Trustware SDK API key. |
from_address | Source wallet address. |
to_address | Destination wallet address. |
from_chain_id | Source chain ID. |
to_chain_id | Destination chain ID. |
source_tx_hash | Transaction hash on the source chain. |
dest_tx_hash | Transaction hash on the destination chain. Populated once the route settles. |
status | Current status. One of submitted, bridging, success, failed. |
routing_provider | Bridge/swap provider used for this route (e.g. "squid", "lifi"). |
quote_to_amount_usd | Expected destination USD value from the quote. |
to_amount_wei | Destination token amount received (in smallest unit). Populated on success. |
gas_status | Optional. Surfaces conditions such as "needs_gas" when the destination step stalls. |
poll_attempt | Number of times this intent has been polled. |
next_poll_at | Suggested timestamp for the next poll. |
create_date | When the intent record was created (ISO 8601). |
update_date | When the status was last updated (ISO 8601). |
Polling guidance
Use next_poll_at as the suggested time for your next request rather than a fixed interval. This avoids unnecessary requests while the bridge is in transit.
On failed status: if the source chain transaction confirmed but the bridge failed, Trustware initiates a refund to the source address. Your application should not trigger any downstream payout until success is confirmed.
The status endpoint will become a WebSocket stream in a future release. The polling interface will remain supported.