On this page

Track a transfer

Decode TransferSent from the source router receipt and retain its GUID. Poll GET /messages/{guid} until settlement.

Persist the source receipt

Filter logs by the configured router address before decoding. Save chain ID, source transaction hash, asset ID and GUID. A timeout after wallet submission is not proof of failure: look up that hash before asking the user to send again.

The runnable starter prints the GUID after source confirmation. The API reference documents base URLs, response envelopes, filters, null fields, pagination, rate limits and polling guidance.

Read API

EndpointPurpose
GET /assets?creator=0x…Cursor-paginated creator-scoped assets
GET /assets/{assetId}Asset detail and registered tokens
GET /assets/{chainId}/{token}/{creator}Exact origin identity; 404 before creation
GET /tokens/{chainId}/{address}Original-token assets or local facade lookup
GET /transfers?assetId=0x…Transfers and restores
GET /messages?assetId=0x…Includes syncs and owner actions
GET /wallets/{address}/activityWallet-related messages
GET /chainsDeployment metadata; deployed=false is not live

Lists return { items, page: { nextCursor, hasMore } }. Pass the cursor unchanged. Amounts are raw integer strings, and fees are source-chain native units.

Status

pending, delivered, failed and restored are derived from observed router events. Indexing can lag. restored links to restoreGuid; only that message's delivery confirms return of funds.

The API is a history index, not transaction authority. Read current asset configuration, approvals, balances and fees on-chain before sending. Distinguish API unavailability from a confirmed absence.

Confirm the user's outcome

For a plain transfer, destination TransferReceived and MessageDelivered confirm router credit. For compose, additionally track your application event. For enablement or remote owner actions, read the destination configuration and check rejection/stale-update events. For a restore, track the new return GUID until delivery. Never collapse these different outcomes into one generic success indicator.