Create a quote
Locks a rate for a currency pair and amount, returning a quote id valid until expiresAt.
Authorizations
ES256-signed JWT bearer token, single-use, 60-second TTL. See Authentication for how to mint one.
ES256 signature over the request, bound to the bearer JWT. Required on every v3 request. See Authentication → Request signing.
Headers
Client-generated unique key to make a write operation safely retryable. UUID v4 recommended. See Idempotency.
1 - 255^[a-zA-Z0-9_-]{1,255}$"550e8400-e29b-41d4-a716-446655440000"
Optional, client-supplied correlation ID for this request. Echoed verbatim on the response when supplied; the response omits it when the request did not supply one. Distinct from X-Trace-Id (server-generated, always present). See Metadata & tracing.
"my-req-abc-123"
Body
- Lock the buy amount (you choose exactly what you'll receive)
- Lock the sell amount (you choose exactly what you'll spend)
Locks a rate for a currency pair against one anchored side of the trade. The client supplies exactly one of buyAmount (the exact amount they want to receive) or sellAmount (the exact amount they want to spend); the server computes the unspecified side at the quoted rate. Unknown fields are rejected with 400 VALIDATION_BODY_FAILED.
Currency to buy.
^[A-Z0-9]{2,15}$"USDC"
Currency to sell.
^[A-Z0-9]{2,15}$"USDC"
Amount to buy, denominated in buyCurrency. Mutually exclusive with sellAmount.
^[0-9]+(\.[0-9]{1,8})?$"1000"
Amount to sell, denominated in sellCurrency. Mutually exclusive with buyAmount.
^[0-9]+(\.[0-9]{1,8})?$"1000"
Requested quote expiry validity in seconds.
3, 15, 30, 45, 60 3
Settlement window for the resulting trade. Defaults to T0 when omitted.
IMMEDIATE, T0, T1, T2 "T0"
Response
Quote created.
A time-limited foreign exchange quote that can be used to create a trade.