GET https://api.trustware.io/api/v1/route-intent/:intentId/status
Poll this endpoint to track routing and settlement progress through to completion. The metadata field echoes exactly what you passed in the POST /route call, so use it to attribute the transaction to the correct user or internal record.
You can start polling as soon as the intent exists. Until you submit the receipt there is no transaction record yet, so the endpoint returns 200 with "status": "pending" instead of an error.
Poll until status reaches success or failed.
Path parameters
Response
Status values
Thestatus field on the response is one of five values:
HTTP
404 Not Found means the intent ID is unknown. It is terminal, so stop polling.
The pending response
Apending payload is a stub. The intent row exists, so the response reports the intent’s own status, but none of the transaction fields exist yet:
status before reading any other field. steps appears only once the intent has an execution plan, so a resuming client can see that an approval already landed while the route transaction has not been submitted.
Auxiliary status fields
A few separate fields surface conditions that are not part of the mainstatus enum:
Response fields
These are the fields of a transaction payload, which the endpoint returns fromsubmitted onward. On a pending payload only intent_id, status, intent_status, create_date, and sometimes steps are present.
Polling guidance
Usenext_poll_at as the suggested time for your next request rather than a fixed interval. This avoids unnecessary requests while the route is in transit. next_poll_at is absent on a pending payload, so use your own interval until the receipt lands.
Keep polling on pending, submitted, and bridging. Stop on success, on failed, and on a 404. Retrying a 404 cannot change the answer, and every attempt counts against your key’s rate limit.
On failed status: if the source chain transaction confirmed but the route 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.