Get Block RFQs
This method returns a list of Block RFQs that were either created by the user or assigned to them as a maker, sorted in descending order. trades and markPrice are only visible for filled Block RFQs. When a blockRfqId is specified, only that particular Block RFQ will be returned. If called by a taker, the response will additionally include the makers list and label if previously provided. If called by the maker, the trades will include the maker's alias, but only for trades in which this maker participated. Can be optionally filtered by currency.
Endpoint
block/rfqs/get_rfqs
Parameters
| Parameter |
Type |
Required |
Description |
| continuation |
string |
false |
The continuation parameter specifies the starting point for fetching historical Block RFQs. When provided, the endpoint returns Block RFQs starting from the specified ID and continuing backward (e.g., if continuation is 50, results will include Block RFQs of ID 49, 48, etc.) |
| count |
int |
false |
Count of Block RFQs returned |
| role |
string |
false |
Role of the user in Block RFQ. Valid values: taker, maker |
| status |
string |
false |
State of Block RFQ. Valid values: open, filled, cancelled, expired, closed |
| currency |
string |
false |
The currency the Instrument is exposed to. Valid values: BTC, ETH |
| blockRfqId |
string |
false |
ID of the Block RFQ |
| accountId |
long |
true |
Signalplus account ID |
Request Example
{
"rid": 6330334299680390000,
"method": "block/rfqs/get_rfqs",
"params": {
"continuation": null,
"count": 3,
"role": null,
"status": "closed",
"currency": null,
"blockRfqId": null,
"accountId": 10003723
}
}
Response
| Name |
Type |
Description |
| continuation |
string |
Continuation token for pagination |
| blockRfqs |
Array of Objects |
Array of Objects with details related to specific Instruments |
| > blockRfqId |
string |
The exchange created unique identifier of the RFQ |
| > accountId |
long |
Signalplus 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. Valid values: taker, maker |
| > 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: buy, sell |
| >> price |
string |
null for non-hedge legs |
| >> quantity |
string |
The total size of the composite Instrument legs, equals to RFQ's quantity. Quantity * 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, 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: create, open, filled, traded, cancelled, expired, closed |
| > closedReason |
string |
The reason the RFQ is no longer available. null if the RFQ's status == open |
| > asks |
array of object |
Ask quotes |
| >> 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 |
Bid quotes |
| >> 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 |
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, sell |
| >> maker |
string |
Alias of the maker (optional) |
Response Example
{
"rid": 489732061193075840,
"result": {
"continuation": "792633536938917549",
"blockRfqs": [
{
"blockRfqId": "792633536938919597",
"accountId": 10003723,
"createdAt": 1758872671913,
"expiresAt": 1758872971913,
"makers": null,
"role": "taker",
"legs": [
{
"instrumentName": "BTC-USDC-20251226-160000-P",
"ratio": 37,
"side": "buy",
"quantity": "0.02",
"price": null
},
{
"instrumentName": "BTC-USDC-20251226-160000-C",
"ratio": 16,
"side": "buy",
"quantity": "0.02",
"price": null
},
{
"instrumentName": "BTC-USDC-20251226-140000-P",
"ratio": 19,
"side": "buy",
"quantity": "0.02",
"price": null
}
],
"hedge": null,
"quantity": "0.02",
"disclosed": true,
"label": "9215746419323394271",
"status": "expired",
"closedReason": null,
"asks": null,
"bids": null,
"trades": [],
"strategy": "CUSTOM",
"taker": "duplicate_test_1758012859610",
"markPrice": null
}
]
}
}