Skip to main content
POST
Node.js

Authorizations

Authorization
string
header
required

ES256-signed JWT bearer token, single-use, 60-second TTL. See Authentication for how to mint one.

X-Request-Signature
string
header
required

ES256 signature over the request, bound to the bearer JWT. Required on every v3 request. See Authentication → Request signing.

Headers

Idempotency-Key
string
required

Client-generated unique key to make a write operation safely retryable. UUID v4 recommended. See Idempotency.

Required string length: 1 - 255
Pattern: ^[a-zA-Z0-9_-]{1,255}$
Example:

"550e8400-e29b-41d4-a716-446655440000"

X-Request-Id
string

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.

Example:

"my-req-abc-123"

Body

application/json

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.

buyCurrency
string
required

Currency to buy.

Pattern: ^[A-Z0-9]{2,15}$
Example:

"USDC"

sellCurrency
string
required

Currency to sell.

Pattern: ^[A-Z0-9]{2,15}$
Example:

"USDC"

buyAmount
string
required

Amount to buy, denominated in buyCurrency. Mutually exclusive with sellAmount.

Pattern: ^[0-9]+(\.[0-9]{1,8})?$
Example:

"1000"

sellAmount
string

Amount to sell, denominated in sellCurrency. Mutually exclusive with buyAmount.

Pattern: ^[0-9]+(\.[0-9]{1,8})?$
Example:

"1000"

quoteForSeconds
enum<number>
default:3

Requested quote expiry validity in seconds.

Available options:
3,
15,
30,
45,
60
Example:

3

settlementWindow
enum<string>
default:T0

Settlement window for the resulting trade. Defaults to T0 when omitted.

Available options:
IMMEDIATE,
T0,
T1,
T2
Example:

"T0"

Response

Quote created.

data
object
required

A time-limited foreign exchange quote that can be used to create a trade.