Method Name
private/send_rfq
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}