StreamOrderUpdates pushes every order change to keyed integrators that follow the whole protocol.
GetOrder
string
required
Hash returned by
GetQuote.QuoteView
The stored quote: hash, order parameters, fee breakdown, trade type, creation time, expiry time. Always present.
Order
Carries
state, confirmations, and transaction hashes. A successful response always includes it; before the deposit is indexed the call returns NOT_FOUND instead.Deposit
The matched source-chain deposit. Its
token and amount are what the depositor actually sent, read from the chain events: the router’s input on a source swap, otherwise what reached the escrow. They can differ from the quote’s src_token and expected_amount_in.Fulfillment
Present once a fulfillment is attempted. Includes attempts, last error, and realized gas cost.
Refund
Present once a refund is attempted.
NOT_FOUND with quote not found if the hash is unknown, and NOT_FOUND with order not found if the quote exists but no deposit has been indexed yet. Poll until the order appears after depositing.
GetSourceSwap
string
required
Hash returned by
GetQuote.string
Object id of the on-chain
SourceSwapIntent.string
pending or submitting while the relayer prepares the swap, submitted while its transaction is in flight, executed once the swap has deposited, and lapsed when the intent can no longer run. A lapsed intent moved nothing: the user’s coins stay in their address balance.string
Digest of the user’s transaction that opened the intent.
string
Digest of the relayer’s swap transaction, once one is submitted. When
status is executed it is the order’s source transaction.string
When the intent and its allowance expire, RFC 3339.
string
Why the intent lapsed. Present only when
status is lapsed.NOT_FOUND with source swap not found until the intent’s transaction is indexed, which usually takes a few seconds after it lands. When a quote has several intents, the response describes the one that executed or is still running.
Search
string
required
A quote hash or transaction hash. Empty input returns
INVALID_ARGUMENT.orders, a list of the same OrderSummary rows as ListOrders, in deposit order within the transaction. Call GetOrder with a row’s quote_hash for the full detail. Returns NOT_FOUND with no order matched when nothing resolves. This is the right call to put behind a support search box.
SearchAddress
string
required
Address to look up.
AddressMatch[]
Each carries
quote_hash, state, src_chain, dst_chain, and created_at.ListOrders
string
required
Address the orders belong to.
int64
Page size. Defaults to 20, clamped to 100.
string
Opaque cursor from the previous page’s
next_cursor.OrderSummary[]
Each carries the quote hash, the order, the deposit, both token addresses and amounts, the recipient, a
gasless flag, and settled_at once the fulfillment or refund confirmed. src_token and src_amount are the deposit’s token and amount: what the depositor actually sent, not the quoted input.string
Absent on the last page.
ListRecentOrders
limit and cursor only. This is what the public explorer feed reads.
StreamOrderUpdates
UNAUTHENTICATED without one. Opening the stream spends its method cost, and every order message spends 5 more points from the same budget as the key’s other requests; heartbeats are free. Disabling the key ends its open streams with UNAUTHENTICATED within 15 seconds, and a changed rate limit applies to open streams from the next order message. When the key runs out of points the stream ends with RESOURCE_EXHAUSTED before the message is sent.
OrderDetail
The quote’s current
GetOrder view, read right after a change to any order under that quote. When a quote was deposited more than once, a change to the duplicate order still sends the view of the order GetOrder describes. Sent when an order is created, when its state or transaction hashes change, and when its fulfillment or refund changes, including a late filled_amount or refunded_amount. A destination hidden on the first messages of a fresh order is sent again once it is revealed. Confirmation counts alone do not produce a message.Heartbeat
Empty. The first message on every stream is a heartbeat, sent once the subscription is live, and another follows every 15 seconds.
ABORTED when it may have missed changes, and with UNAVAILABLE when it restarts. After ABORTED, UNAVAILABLE, or RESOURCE_EXHAUSTED, reconnect, wait for the first heartbeat, then read the orders you still track with GetOrder.
Notes
Order state is the only authority on settlement.dst_tx_hash is populated at submission, before confirmation. See Order lifecycle for the state list and types for full field definitions.