Skip to main content
POST
Commit the best available quote on an active quote request. The server revalidates every market, selects the best quote at or above your min_payout_odds_seen, and creates the trade atomically. The trade is an RFQ with its own rfq_id. The body ties the commit to exactly what you last saw, so you never fill at a stale price. After a successful commit, the selected market maker receives a quote:accepted event and must confirm before confirmation_deadline. It may also receive mm_quote:accepted on its private mm:quotes:{mm_id} channel, with the final quote economics and exact exposure legs. Vault settlement follows.

Authentication

Send your API key in the X-API-Key header. The key needs the trading:write scope.
A Privy JWT (Authorization: Bearer <jwt>) is also accepted. See Authentication.

Path parameters

string
required
The quote request ID (UUID).

Request body

integer
required
The quote request version you are committing against. If the request has changed since, the commit is rejected.
string
required
The id of the best quote you saw at commit time.
integer
required
The book_seq from the SSE event that delivered the displayed quote. It proves your data was up to date.
number
required
The minimum payout odds you were shown. Only quotes at or above it are eligible. Must be at least 1.0001.

Response

object

Rejection reasons

A rejected commit carries its reason in error.details.reason. What each reason means and how to respond is on Errors.

Errors