For providers
A provider desk can propose model-specific capacity, choose its commercial constraints, and use the book, RFQ, or voice when its trading authority is active.
Request a capacity product
An active SELLER desk submits proposed capacity with POST /api/v1/capacity/listings. The body names the model, provider, service tier, available token quantity, floor price, region, validity window, participant reason, and optional idempotency_key.
A first valid request remains inactive and returns 409 product-approval-required with its approval_request_id. Exact pending retries identify the same request; the resource becomes available only after an attributed venue decision. PATCH /api/v1/capacity/listings/{id} can deactivate or reduce an owned active listing. It does not activate, expand, or reprice one.
GET /api/v1/capacity/listings requires the selected desk header and pages only that desk's capacity products. A current row includes its approval_request_id and approval_state as PENDING, APPROVED, or REJECTED; both are null only for a legacy row without a product request.
A listing advertises capacity to the participant workflows. It is not documentation of downstream external performance.
Publish a forward curve
When an owned, approved capacity listing has a matching active fixed-window forward product, the Provider Desk can publish a curve point. It records the token leg, exact tenor and delivery window, price per MFT, available MFT, minimum clip, and firm expiry.
Use GET /api/v1/forward-offers to page the selected desk's points, POST /api/v1/forward-offers to publish one, and PATCH /api/v1/forward-offers/{id} to amend, pause, or resume it. A point cannot change product identity or reduce available MFT below already-sold MFT. Pausing remains available as a risk-reducing action when new-exposure controls are closed.
Quote and trade
- Inspect requests with
GET /api/v1/rfqsandGET /api/v1/rfqs/{id}. - Submit a negotiated price with
POST /api/v1/rfqs/{id}/quoteswhen the desk and instrument controls permit new exposure. - Place a sell order on an active bundle symbol through
POST /api/v1/ordersunder the same checks. - Use voice sessions when a negotiation needs a live transcript and explicit terms.
All exact prices are decimal strings. The instrument identity determines which provider endpoint, bundle, tier, and term the quote addresses.
Use bounded voice controls
Voice booking remains human-confirmed by default. A desk can separately opt into bounded voice autonomy; a term outside any declared limit is refused rather than adjusted. Existing algo records remain available for review, pause, and cancel through the execution-algo record routes.