Wallet-less price preview (integrator key required)
POST/quote/preview
The quote_only shape with no wallet and no ownership proof: prices every chain the
ticker lists (or those your chain / protocol filters allow) and returns the same legs
POST /quote/buy would, minus quote_id,
expires_at, every leg's signable_payloads, and warnings_ack_token. Nothing is
persisted, so there is no /quote/{quote_id}/status to poll and nothing to submit;
re-quote through /quote/buy for anything you intend to sign.
A key is required here, unlike every other quote route: this is the one quote that
binds no wallet at all. Send your general tik_ key; a read-only trk_ reporting key is
refused 403 insufficient_scope like everywhere else off the reporting routes.
Identical requests inside a 10-second window are answered from one venue fan-out; a
refusal is never cached. Budgets are per-IP and per-organisation as elsewhere, plus a
global ceiling shared by every caller of this route, so a 429 here can be someone
else's traffic. Honour Retry-After rather than retrying immediately.
Read X-RateLimit-* on this route as the shared bucket, not as yours. The headers
report the last limiter applied, which here is that global ceiling, so
X-RateLimit-Remaining: 0 says the route is saturated across all callers, not that
you are out of budget. Back off for Retry-After seconds and retry; do not stand down
for a whole minute on the assumption you exhausted a per-caller window.
Request
Responses
- 200
- 400
- 401
- 403
- 422
- 429
- 502
- 503
Non-executable price preview.
Invalid request body, slippage out of range, unknown ticker, zero amount, or an amount_usdc above the 1000000 preview cap.
No integrator key presented, or an unknown one.
A read-only trk_ reporting key was presented (insufficient_scope), the key was
retired (key_revoked), or your organisation is suspended (integrator_suspended).
No fillable routes returned by the planner, or a basket listing whose issuer-published price is unusable.
Sliding window exceeded: per-IP or per-(IP, wallet), plus a per-organisation bucket (shared across all of your keys) whenever a valid X-API-Key is presented. Retry-After header carries delta-seconds.
Upstream provider failed or rate-limited us.
Your configured fee schedule no longer fits a venue Treasures routes through
(integrator_fee_misconfigured). A Treasures-side configuration issue that retrying soon
won't clear; contact Treasures, or send integrator_fee_bps: 0 to preview without your fee.