Send Bundle
接口說明
本接口用於接收用戶提交的bundle,方法名為eth_sendBundle
。
BlockRazor MEV服務的區塊構建算法傾向於向BlockRazor Builder EOA轉賬原生代幣(BNB)數量更多的bundle,當前BlockRazor Builder EOA地址為0x1266C6bE60392A8Ff346E8d5ECCd3E69dD9c5F20。 bundle中交易的gas price需不小於BSC Validator要求的最低標準(當前為0.1 gwei)。
對於Tier 2 / Tier 1 / Tier0用戶,可以在bundle中包含0 gwei的交易,但bundle中交易(public mempool中的交易除外)的平均gasPrice仍需不小於0.1 gwei。
流控說明
BPS
不限
不限
不限
不限
不限
每區塊可接受bundle數
不限
不限
不限
不限
不限
bundle包含0 gwei交易
-
-
支持
支持
支持
gRPC
-
-
-
支持
支持
請求參數
txs
是
array[hex]
["0x…4b", "0x…5c"]
經過簽名的raw transaction列表
maxBlockNumber
否
uint64
39177941
該bundle有效的最大區塊號,默認為當前區塊號+100
minTimestamp
否
uint64
1710229370
期望bundle有效的最小Unix秒級時間戳
maxTimestamp
否
uint64
1710829390
期望bundle有效的最大Unix秒級時間戳
revertingTxHashes
否
array[hash]
["0x…c7", "0x…b7"]
允許丟棄的交易哈希列表
noMerge
否
bool
false
bundle merge可提升區塊價值,加快bundle上鏈速度,如不設置則默認為false(允許bundle merge)
請求示例
{
"jsonrpc": "2.0",
"id": "1",
"method": "eth_sendBundle",
"params": [
{
"txs":["0x…4b", "0x…5c"], // 經過簽名的raw transaction列表
"maxBlockNumber":39177941, // 該bundle有效的最大區塊號,默認為當前區塊號+100
"minTimestamp":1710229370, // 期望bundle有效的最小Unix秒級時間戳
"maxTimestamp":1710829390, // 期望bundle有效的最大Unix秒級時間戳
"revertingTxHashes":[
"0x44b89abe860142d3c3bda789cf955b69ba00b71882cd968ec407a70f4719ff06",
"0x7d7652c685e9fda4fe2e41bad017519cffeed8ba03d59aa6401284be2ec4244c"
] // 允許丟棄的交易哈希列表
}
]
}
Proto
syntax = "proto3";
package sendbundle;
option go_package = "internal/ethapi/sendbundle;sendbundle";
service BundleService {
rpc SendBundle (SendBundleArgs) returns (SendBundleResponse);
rpc SendTransaction (SendTransactionArgs) returns (SendTransactionResponse);
}
message SendBundleArgs {
repeated bytes txs = 1;
uint64 maxBlockNumber = 2;
uint64 minTimestamp = 3;
uint64 maxTimestamp = 4;
repeated string revertingTxHashes = 5;
}
message SendTransactionArgs {
bytes tx = 1;
}
message SendBundleResponse {
string result = 1;
}
message SendTransactionResponse {
string result = 1;
}
返回示例
{
"jsonrpc":"2.0",
"id":"1",
"result":"0xa06b……f7e8ec" //bundle哈希
}
{
"jsonrpc":"2.0",
"id":"1",
"error":{
"code":-38000,
"message":"the maxBlockNumber should not be smaller than currentBlockNum"
}
}
Last updated