API Reference

Send Rfq

Method Name

private/send_rfq

Requests two-sided quotes from participating market makers.
Required minimum session key permission level is account

Parameters

subaccount_id integer required
Subaccount ID
legs array of objects required
RFQ legs
legs[].amount string required
Amount in units of the base
legs[].direction string required
Leg direction
enum buy sell
legs[].instrument_name string required
Instrument name
counterparties array of strings
Optional list of market maker account addresses to request quotes from. If not supplied, all market makers who are approved as RFQ makers will be notified.
label string
Optional user-defined label for the RFQ
max_total_cost string
An optional max total cost for the RFQ. Only used when the RFQ sender executes as buyer. Polling endpoints and channels will ignore quotes where the total cost across all legs is above this value. Positive values mean the RFQ sender expects to pay $, negative mean the RFQ sender expects to receive $.This field is not disclosed to the market makers.
min_total_cost string
An optional min total cost for the RFQ. Only used when the RFQ sender executes as seller. Polling endpoints and channels will ignore quotes where the total cost across all legs is below this value. Positive values mean the RFQ sender expects to receive $, negative mean the RFQ sender expects to pay $.This field is not disclosed to the market makers.

Response

id string or integer required
result object required
result.cancel_reason string required
Cancel reason, if any
enum user_request insufficient_margin signed_max_fee_too_low mmp_trigger cancel_on_disconnect session_key_deregistered subaccount_withdrawn rfq_no_longer_open compliance
result.counterparties array of strings or null required
List of requested counterparties, if applicable
result.creation_timestamp integer required
Creation timestamp in ms since Unix epoch
result.filled_direction string or null required
Direction at which the RFQ was filled (only if filled)
enum buy sell
result.label string required
User-defined label, if any
result.last_update_timestamp integer required
Last update timestamp in ms since Unix epoch
result.max_total_cost string or null required
Max total cost for the RFQ
result.min_total_cost string or null required
Min total cost for the RFQ
result.rfq_id string required
RFQ ID
result.status string required
Status
enum open filled cancelled expired
result.subaccount_id integer required
Subaccount ID
result.total_cost string or null required
Total cost for the RFQ (only if filled)
result.valid_until integer required
RFQ expiry timestamp in ms since Unix epoch
result.legs array of objects required
RFQ legs
result.legs[].amount string required
Amount in units of the base
result.legs[].direction string required
Leg direction
enum buy sell
result.legs[].instrument_name string required
Instrument name

Example

{request_example_shell}
{request_example_javascript}
{request_example_python}

The above command returns JSON structured like this:

{response_example_json}