Block RFQ - Taker
Channel
block_rfq.taker.{accountId}.any
Description
Subscribe to Block RFQ updates for taker role.
Subscription Method
private/subscribe
Parameters
| Parameter | Type | Required | Description |
|---|---|---|---|
| accountId | string | true | Account ID |
Request Example
{
"method": "private/subscribe",
"rid": 2,
"params": {
"channels": [
"block_rfq.taker.12323.any"
]
}
}
Message
| Name | Type | Description |
|---|---|---|
| blockRfqId | string | The exchange created unique identifier of the RFQ. |
| accountId | long | Sp account id |
| strategy | string | Combo trade strategy |
| createdAt | long | The time in UNIX milliseconds since the epoch when the RFQ was created. |
| expiresAt | long | The time in UNIX milliseconds since the epoch when the RFQ expires. |
| makers | Array of strings | List of targeted Block RFQ makers |
| markPrice | string | Available when rfq is filled. Weighted price of non hedge legs. |
| taker | string | Present only when disclosed is true. |
| role | string | The role of the user to the RFQ. |
| legs | Array of Objects | The composite Instrument legs of the RFQ. |
| > instrumentName | string | The real exchange instrument name. |
| > ratio | int | The relative multiplier applied to the quantity of the Instrument's amount relative to the amount of the RFQ. For hedge leg, it's null. |
| > side | string | The direction of the composite leg relative to the RFQ. Valid values include buy, or sell |
| > price | string | Null for non hedge legs. |
| > quantity | string | The total size of the composite Instrument legs, equals to rfq's quantity. Quanity * ratio is the real quantity of leg. |
| hedge | object | Hedge leg of the Block RFQ. There is only one hedge leg allowed per RFQ |
| > instrumentName | string | The real exchange instrument name. |
| > quantity | string | It represents the requested trade size. |
| > price | string | Hedge leg price for one unit. |
| > side | string | Direction: buy, or sell |
| quantity | string | The total size of the composite Instrument legs, denominated in the clearingCurrency. |
| disclosed | boolean | Indicates whether the RFQ was created as non-anonymous, meaning taker and maker aliases are visible to counterparties |
| label | string | RFQ creator label of the RFQ. |
| status | string | The availability of the RFQ to trade. Valid values include: create, open, filled, traded, cancelled, expired, closed |
| closedReason | string | The reason the RFQ is no longer available. null if the RFQ's status == open. |
| markPrice | string | A combination market price of non-hedged leg. |
| asks | array of object | |
| > quantity | string | This value multiplied by the ratio of a leg gives trade size on that leg |
| > executionInstruction | string | Execution instruction of the quote. Default - any_part_of. Only support all_or_none. "all_or_none (AON)" - The quote can only be filled entirely or not at all, ensuring that its amount matches the amount specified in the Block RFQ. Additionally, 'all_or_none' quotes have priority over 'any_part_of' quotes at the same price level. "any_part_of (APO)" - The quote can be filled either partially or fully, with the filled amount potentially being less than the Block RFQ amount |
| > expiresAt | long | The timestamp when the quote expires (milliseconds since the Unix epoch), equal to the earliest expiry of placed quotes |
| > lastUpdatedAt | long | Timestamp of the last update of the quote (milliseconds since the UNIX epoch) |
| > makers | Array of string | Maker of the quote |
| > price | string | Price of a quote |
| > quoteId | string | ID of Rfq Quote |
| bids | array of object | |
| > quantity | string | This value multiplied by the ratio of a leg gives trade size on that leg |
| > executionInstruction | string | Execution instruction of the quote. Default - any_part_of. "all_or_none (AON)" - The quote can only be filled entirely or not at all, ensuring that its amount matches the amount specified in the Block RFQ. Additionally, 'all_or_none' quotes have priority over 'any_part_of' quotes at the same price level. "any_part_of (APO)" - The quote can be filled either partially or fully, with the filled amount potentially being less than the Block RFQ amount |
| > expiresAt | long | The timestamp when the quote expires (milliseconds since the Unix epoch), equal to the earliest expiry of placed quotes |
| > lastUpdatedAt | long | Timestamp of the last update of the quote (milliseconds since the UNIX epoch) |
| > makers | Array of string | Maker of the quote |
| > quoteId | string | Id of Rfq Quote. |
| trades | array | |
| > quantity | string | Trade amount. For options, linear futures, linear perpetuals and spots the amount is denominated in the underlying base currency coin. The inverse perpetuals and inverse futures are denominated in USD units |
| > price | string | Price in base currency |
| > hedgeQuantity | string | Amount of the hedge leg. For linear futures, linear perpetuals and spots the amount is denominated in the underlying base currency coin. The inverse perpetuals and inverse futures are denominated in USD units |
| > side | string | Direction: buy, or sell |
| > maker | string | Alias of the maker (optional) |
Message Example
{
"jsonrpc": "2.0",
"method": "subscribe",
"params": {
"channel": "block_rfq.maker.any",
"accountId": 10003738,
"data": {
"blockRfqId": "792633536182422064",
"accountId": 10003738,
"createdAt": 1755843093017,
"expiresAt": 1755843393017,
"makers": [],
"role": "maker",
"legs": [
{
"instrumentName": "ETH-USDT-20250930-2500-P",
"ratio": 1,
"side": "buy",
"quantity": "50",
"price": null
}
],
"hedge": null,
"quantity": "50",
"disclosed": true,
"label": null,
"status": "open",
"closedReason": null,
"markPrice": null,
"minTradeQuantity": null,
"asks": [],
"bids": [],
"trades": [],
"strategy": "",
"taker": null
}
}
}