Rfq.create
JSON-RPC method rfq.create on the trading socket. Idempotent on (account, client_ref). The request stays open for quotes for 5 seconds; follow it on the rfq channel after rfq.subscribe.
WSS
/
Messages
{
"client_ref": "123e4567-e89b-12d3-a456-426614174000",
"side": "two_way",
"legs": [
{
"instrument": "BTC_USDC-2MAY26-77000-C",
"quantity": "1.000000"
},
{
"instrument": "BTC_USDC-2MAY26-80000-C",
"quantity": "-2.000000"
}
]
}{
"rfq_id": "0192f1a3b4c5d6e7f8091a2b3c4d5e6f",
"state": "pending",
"request_deadline": "2026-05-01T15:40:06.000Z"
}{
"error": "RFQ_NOT_READY",
"message": "RFQ chain-service state is not warm",
"operation_id": "rfq-18",
"retryable": true,
"rfq_id": "0192f1a3b4c5d6e7f8091a2b3c4d5e6f"
}Request params
type:object
Result
type:object
Error
type:object
Every rfq.* failure is JSON-RPC error 1200; this is its error.data object.
Messages
{
"client_ref": "123e4567-e89b-12d3-a456-426614174000",
"side": "two_way",
"legs": [
{
"instrument": "BTC_USDC-2MAY26-77000-C",
"quantity": "1.000000"
},
{
"instrument": "BTC_USDC-2MAY26-80000-C",
"quantity": "-2.000000"
}
]
}{
"rfq_id": "0192f1a3b4c5d6e7f8091a2b3c4d5e6f",
"state": "pending",
"request_deadline": "2026-05-01T15:40:06.000Z"
}{
"error": "RFQ_NOT_READY",
"message": "RFQ chain-service state is not warm",
"operation_id": "rfq-18",
"retryable": true,
"rfq_id": "0192f1a3b4c5d6e7f8091a2b3c4d5e6f"
}