timeboost_sendBundle
{
"jsonrpc": "2.0",
"id": 1,
"method": "timeboost_sendBundle",
"params": [
{
// Array[String]
// A list of signed transactions to execute in an atomic bundle,
// list can be empty for bundle cancellations.
txs,
// Array[String]
// A list of sequencer transactions (rlp encoded bytes) for Kairos to simulate ahead of your bundle.
pendingTxs,
// (Optional) Array[String]
// A list of tx hashes that are allowed to revert or be discarded.
revertingTxHashes,
// (Optional) String
// Any arbitrary string that can be used to replace or cancel this bundle.
replacementUuid,
}
]
}
Pending Transactions
Searchers may send bundles that depend on changes in the sequencer feed state that Kairos has not fully processed, causing bundles to revert during simulation. To avoid this, transactions can be added to the pendingTxs
field and will be applied on top of local state before bundle simulation. If Kairos has already processed these transactions, they are simply ignored and the bundle is simulated as normal.
CURL Example
curl -X POST \
-H "Content-Type: application/json" \
-d '{
"jsonrpc": "2.0",
"method": "timeboost_sendBundle",
"params": [
{
"txs": [
"0x123456",
"0x123456"
],
"pendingTxs": [
"0x123456"
]
}
],
"id": 1
}' \
https://rpc.kairos-timeboost.xyz
Websocket Example
wscat -c wss://rpc.kairos-timeboost.xyz/ws/timeboost_sendbundle
Connected (press CTRL+C to quit)
>
{
"txs":["0x123456","0x123456"],
"pendingTxs":["0x123456"]
}
Response Example
Result will contain the internally generated uuid, which can be used to query the Stats API
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"id": "f278b3a2-004e-48dd-859a-2021e46776ee",
"express_lane_controller": true
}
}
express_lane_controller
is true
if Kairos currently controls the express lane.
Last updated