# Table of Contents - [Private Transactions | bloXroute Documentation](#private-transactions-bloxroute-documentation) - [Overview | bloXroute Documentation](#overview-bloxroute-documentation) - [Speed Boost | bloXroute Documentation](#speed-boost-bloxroute-documentation) - [Streams | bloXroute Documentation](#streams-bloxroute-documentation) - [Flashblocks Statediff | bloXroute Documentation](#flashblocks-statediff-bloxroute-documentation) - [Parsed Flashblocks | bloXroute Documentation](#parsed-flashblocks-bloxroute-documentation) - [Submit Transactions | bloXroute Documentation](#submit-transactions-bloxroute-documentation) - [Flashblocks | bloXroute Documentation](#flashblocks-bloxroute-documentation) - [Overview | bloXroute Documentation](#overview-bloxroute-documentation) --- # Private Transactions | bloXroute Documentation The `blxr_tx` endpoint allows users to send a single transaction using the BDN. The endpoint returns a transaction hash. This service is available via **Cloud API** only. For latency-sensitive orderflow, WebSocket is recommended and can provide latency improvement over HTTP/HTTPS. If you prefer to short-lived connections, use HTTP over HTTPS for improved latency. [hashtag](https://docs.bloxroute.com/base/submit-transactions/submit-transactions#submission-endpoint) Submission Endpoint ------------------------------------------------------------------------------------------------------------------------------- * Method: `blxr_tx` * Cloud API Endpoint: `api.blxrbdn.com` * Request type: `_HTTPS,WSS_` #### [hashtag](https://docs.bloxroute.com/base/submit-transactions/submit-transactions#parameters) Parameters Parameter Description Instructions & Notes `transaction` Raw transactions bytes without `**0x**` prefix. _\[__**Required**__\]_ Learn more about constructing the transaction [here](https://docs.bloxroute.com/eth/sending-transactions/raw-transaction-construction) . `blockchain_network` Blockchain network name. _\[__**Required**__\]_ Set to `Base-Mainnet`. `backrunme_reward_address` Wallet address `String` to receive BackRunMe rewards to _\[__**Optional**__\]_ Transactions are automatically enrolled in Backrunning services, from which rewards are shared with the specified `backrunme_reward_address`. ### [hashtag](https://docs.bloxroute.com/base/submit-transactions/submit-transactions#examples) **Examples** wscat WS HTTPS POST Copy wscat -c wss://api.blxrbdn.com/ws --header "Authorization: " > {"jsonrpc": "2.0", "id": 1, "method": "blxr_tx", "params": {"transaction": "f86b0184...e0b58219", "blockchain_network": "Base-Mainnet"}} < ... Copy curl -X POST https://api.blxrbdn.com \ -H "Authorization: " \ -H "Content-Type: application/json" \ -d '{ "jsonrpc": "2.0", "id": 1, "method": "blxr_tx", "params": { "transaction": "f86b0184...e0b58219", "blockchain_network": "Base-Mainnet" } }' #### [hashtag](https://docs.bloxroute.com/base/submit-transactions/submit-transactions#response) Response Copy { "jsonrpc": "2.0", "id": "1", "result": { "tx_hash": "ffd59870844e5...bfa54a69" } } [PreviousSubmit Transactionschevron-left](https://docs.bloxroute.com/base/submit-transactions) [NextSpeed Boostchevron-right](https://docs.bloxroute.com/base/submit-transactions/speed-boost) Last updated 2 hours ago --- # Overview | bloXroute Documentation bloXroute provides execution and data services for Base, optimized for low-latency and predictable transaction propagation using the Blockchain Distribution Network (BDN). ### [hashtag](https://docs.bloxroute.com/base/overview#available-services) Available services #### [hashtag](https://docs.bloxroute.com/base/overview#execution-services) Execution services bloXroute supports transaction submission on Base, enabling faster and more reliable propagation for latency-sensitive execution workflows. Execution capabilities include: * **Submit transactions** Low-latency submission of Base transactions with optimized propagation paths. → See: [Submit Transactions](https://docs.bloxroute.com/base/submit-transactions) #### [hashtag](https://docs.bloxroute.com/base/overview#data-services) Data services bloXroute provides low-latency access to real-time Base data for execution logic and decision-making. Data capabilities include: * **Streams** Access live Base transaction, block, and event data with minimal delay. → See: [Streams](https://docs.bloxroute.com/base/streams) [PreviousList of bloXroute Builderschevron-left](https://docs.bloxroute.com/eth/block-builders-and-validators/list-of-bloxroute-builders) [NextSubmit Transactionschevron-right](https://docs.bloxroute.com/base/submit-transactions) Last updated 2 hours ago --- # Speed Boost | bloXroute Documentation The **Speed Boost Service** provides a fast and reliable way to submit transactions on the Base chain. Transactions are routed to the closest regional node and then relayed to the sequencer through a private connection, enabling faster and more consistent propagation. Key characteristics: * **Latency advantage from distant regions** – The routing mechanism reduces latency for users located far from the sequencer region. This can allow transactions to arrive **one Flashblock tick earlier**, providing a timing advantage over competitors submitting from the same region through standard infrastructure. * **Fast and reliable submission** – Optimized routing ensures transactions reach the sequencer quickly. * **Flashblocks-aware submission** – Aligns with Base’s ~200 ms Flashblocks cadence to improve preconfirmation landing speed. * **BDN reliability** – Transactions are delivered through bloXroute’s Blockchain Distribution Network (BDN), providing redundancy and optimal routing. The submission method is similar to regular private transaction submission. The performance improvement comes from the optimized routing mechanism used by the service. The Speed Boost Service can be purchased through the portal. [hashtag](https://docs.bloxroute.com/base/submit-transactions/speed-boost#submission-endpoint) Submission Endpoint ----------------------------------------------------------------------------------------------------------------------- * Method: `blxr_tx` * Cloud API Endpoint: `api.blxrbdn.com` * Request type: `_HTTPS,WSS_` #### [hashtag](https://docs.bloxroute.com/base/submit-transactions/speed-boost#parameters) Parameters Parameter Description Instructions & Notes `transaction` Raw transactions bytes without `**0x**` prefix. _\[__**Required**__\]_ Learn more about constructing the transaction [here](https://docs.bloxroute.com/eth/sending-transactions/raw-transaction-construction) . `blockchain_network` Blockchain network name. _\[__**Required**__\]_ Set to `Base-Mainnet`. `backrunme_reward_address` Wallet address `String` to receive BackRunMe rewards to _\[__**Optional**__\]_ Transactions are automatically enrolled in Backrunning services, from which rewards are shared with the specified `backrunme_reward_address`. ### [hashtag](https://docs.bloxroute.com/base/submit-transactions/speed-boost#examples) **Examples** wscat WS HTTPS POST Copy wscat -c wss://api.blxrbdn.com/ws --header "Authorization: " > {"jsonrpc": "2.0", "id": 1, "method": "blxr_tx", "params": {"transaction": "f86b0184...e0b58219", "blockchain_network": "Base-Mainnet"}} < ... Copy curl -X POST https://api.blxrbdn.com \ -H "Authorization: " \ -H "Content-Type: application/json" \ -d '{ "jsonrpc": "2.0", "id": 1, "method": "blxr_tx", "params": { "transaction": "f86b0184...e0b58219", "blockchain_network": "Base-Mainnet" } }' #### [hashtag](https://docs.bloxroute.com/base/submit-transactions/speed-boost#response) Response Copy { "jsonrpc": "2.0", "id": "1", "result": { "tx_hash": "ffd59870844e5...bfa54a69" } } [PreviousPrivate Transactionschevron-left](https://docs.bloxroute.com/base/submit-transactions/submit-transactions) [NextStreamschevron-right](https://docs.bloxroute.com/base/streams) Last updated 1 hour ago --- # Streams | bloXroute Documentation [Flashblockschevron-right](https://docs.bloxroute.com/base/streams/flashblocks) [Parsed Flashblockschevron-right](https://docs.bloxroute.com/base/streams/parsed-flashblocks) [Flashblocks Statediffchevron-right](https://docs.bloxroute.com/base/streams/flashblocks-statediff) [PreviousSpeed Boostchevron-left](https://docs.bloxroute.com/base/submit-transactions/speed-boost) [NextFlashblockschevron-right](https://docs.bloxroute.com/base/streams/flashblocks) This site uses cookies to deliver its service and to analyze traffic. By browsing this site, you accept the [privacy policy](https://policies.gitbook.com/privacy/cookies) . close AcceptReject --- # Flashblocks Statediff | bloXroute Documentation `GetBdnFBTxnStateDiffStream` feed provides low-latency access to transaction state diffs for newly produced Flashblocks on the Base network, parsed into protobuf format for immediate use. Transaction state diffs show the changes each transaction makes to chain state before finalization. This is a real-time WS/gRPC, transaction state diff data stream. **Service available via Cloud API only.** circle-info Note: state diffs may arrive in a different order than transactions are executed; each response includes a `blockPosition` field for ordering. [hashtag](https://docs.bloxroute.com/base/streams/flashblocks-statediff#stream-endpoint) Stream Endpoint ------------------------------------------------------------------------------------------------------------- * Method: `GetBdnFBTxnStateDiffStream` * Endpoint: `wss://base.blxrbdn.com:5005/ws` #### [hashtag](https://docs.bloxroute.com/base/streams/flashblocks-statediff#parameters) Parameters Parameter Description Instructions & Notes `addresses` Stream transaction traces that mention one of these addresses _\[__**Optional**__\]_ List of strings. If omitted, the stream includes state diffs of all transactions. [hashtag](https://docs.bloxroute.com/base/streams/flashblocks-statediff#examples) Examples ----------------------------------------------------------------------------------------------- #### [hashtag](https://docs.bloxroute.com/base/streams/flashblocks-statediff#request) Request WebSocket gRPC Golang Copy wscat -H "Authorization: " \ -c wss://base.blxrbdn.com:5005/ws \ --wait 1000 \ --execute '{"jsonrpc": "2.0", "id": 1, "method": "subscribe", "params": [ "GetBdnFBTxnStateDiffStream", {} ]}' Copy grpcurl -H "Authorization: " \ -H "Content-Type: application/grpc" \ -d '{"addresses":["0x4200000000000000000000000000000000000006"]}' \ base.blxrbdn.com:443 \ streamerapi.Api/GetBdnFBTxnStateDiffStream Copy package main import ( "context" "fmt" "time" "github.com/bloXroute-Labs/base-streamer-client-go/provider" streamerapi "github.com/bloXroute-Labs/base-streamer-proto/streamer_api" "github.com/joho/godotenv" ) func main() { _ = godotenv.Load() // Set you AUTH_HEADER in .env file err := ListenForBdnFBTxnStateDiffStream(10) if err != nil { panic(err) } } func ListenForBdnFBTxnStateDiffStream(numberOfBlocks uint64) error { grpcClient, err := provider.NewGRPCClient() if err != nil { return err } stateDiffsChan := make(chan *streamerapi.GetBdnFBTxnStateDiffStreamResponse) ctx, cancel := context.WithCancel(context.Background()) defer cancel() stream, err := grpcClient.GetBdnFBTxnStateDiffStream(ctx, nil) // Optionally filter by mentioned addresses if err != nil { return fmt.Errorf("failed to get stream with: %v", err) } stream.Into(stateDiffsChan) fmt.Println("waiting on state diffs channel") for range numberOfBlocks { stateDiff, ok := <-stateDiffsChan if !ok { return fmt.Errorf("state diffs channel closed") } updateTime := time.Now() // Display to user fmt.Printf("Bloxroute BDN Flashblock txn state diff at %v: block_number: %v, block_position: %v, flashblock_index: %v, tx_hash: %v, is_success: %v\n", updateTime.UTC(), *stateDiff.BlockNumber, *stateDiff.BlockPosition, *stateDiff.FlashblockIndex, *stateDiff.TxHash, *stateDiff.IsSuccess) for k, v := range stateDiff.Trace.Pre { balance := "" if v.Balance != nil { balance = *v.Balance } fmt.Printf("pre: %s: balance: %s, storage: %+v\n", k, balance, v.Storage) } fmt.Println("") for k, v := range stateDiff.Trace.Post { balance := "" if v.Balance != nil { balance = *v.Balance } fmt.Printf("post: %s: balance: %s, storage: %+v\n", k, balance, v.Storage) } fmt.Println("----------------------") } return nil } #### [hashtag](https://docs.bloxroute.com/base/streams/flashblocks-statediff#response-txn-state-diff) Response (txn state diff) Full response details & format can be found here: [https://github.com/bloXroute-Labs/base-streamer-proto/blob/develop/proto/streamer\_api.protoarrow-up-right](https://github.com/bloXroute-Labs/base-streamer-proto/blob/develop/proto/streamer_api.proto) Txns Event Copy <<< { "blockNumber": "35355567", "blockPosition": "266", "flashblockIndex": "10", "txHash": "0xcde6859f0b483748ae6d85f510ac462e927f02532bf3eae89dde7336b64a878c", "isSuccess": true, "trace": { "pre": { "0x0ad08370c76ff426f534bb2affd9b5555338ee68": { "balance": "0x0" }, "0x1231deb6f5749ef6ce6943a275a1d3e7486f4eae": { "balance": "0x0" }, "0x16613524e02ad97edfef371bc883f2f5d6c480a5": { "balance": "0x0" }, "0x20183dc92e044e6a14c4afa5ce202519a0af4067": { "balance": "0x0", "storage": { "0x0000000000000000000000000000000000000000000000000000000000000000": "0x000100000a000a000201b60c000000000000011040a247b2b9a749de215adc15", "0x0000000000000000000000000000000000000000000000000000000000000001": "0x00000000000000000000000000000000001028f86b968ea8de59efef293d8fa7", "0x000000000000000000000000000000000000000000000000000000000000000b": "0x0100000000000000000001a84b99d4c5f6c25501820000039f70581068c153c3" } }, "0x215e278c44787dffd33b58311a0e9bb0657c1d8d": { "balance": "0x0" }, "0x2ce6311ddae708829bc0784c967b7d77d19fd779": { "balance": "0x0" }, "0x31a9b1835864706af10103b31ea2b79bdb995f5f": { "balance": "0x0" }, "0x3334cf67bfdcc925477950684474bb4603632789": { "balance": "0x0" }, "0x3b0aa7d38bf3c103bf02d1de2e37568cbed3d6e8": { "balance": "0x1" }, "0x3b2b96ba7f07d592deb7831e2e5d0273cde6a1a0": { "balance": "0x0", "storage": { "0x0000000000000000000000000000000000000000000000000000000000000000": "0x00010000140014000b04a68900000000003f4acc18a777c19109bcd0e1aa4452", "0x0000000000000000000000000000000000000000000000000000000000000001": "0x000000000000000000000000000000000000018eee3f715a1b327bb33586bf79", "0x0000000000000000000000000000000000000000000000000000000000000014": "0x010000055c00000000021505524ec13495c67b2d1900000be054be7e68c15335" } }, "0x3c2dfe6d969ad9de9d566727607eb2e9139d3596": { "balance": "0x0", "storage": { "0x0000000000000000000000000000000000000000000000000000000000000006": "0x00000100640064004204a61800000000003eef156dddb0f5fcbd5b0ee30fa664", "0x0000000000000000000000000000000000000000000000000000000000000007": "0x000000000000000000000000000000000000001489269bfed63f1e06f393b6a4", "0x000000000000000000000000000000000000000000000000000000000000000a": "0x00000000000008790012793ed1e3ad5900000000000000000000000097286a4b", "0x0000000000000000000000000000000000000000000000000000000000000057": "0x01000271000000000000292f280c9d60563dbe6a830000173da3a83868c15221" } }, "0x4200000000000000000000000000000000000006": { "balance": "0x2786b1582384b63cfe51", "storage": { "0x51f59d35c70300bc2d4fa7806c495b313e476b2d51285f7dc22af52ad4365c89": "0x000000000000000000000000000000000000000000000004acd08d4d3302a702", "0x64a768cc030388cd72d492ab760ba7360573b25695129208ed87b018bff88676": "0x0000000000000000000000000000000000000000000000000ff86060cf2b1440" } }, "0x4200000000000000000000000000000000000011": { "balance": "0x5883d0756ff82ec51" }, "0x4200000000000000000000000000000000000019": { "balance": "0x13bff4fa2bb27adc1" }, "0x420000000000000000000000000000000000001a": { "balance": "0x1d1e14d61112b89" }, "0x5e7bb104d84c7cb9b682aac2f3d509f5f406809a": { "balance": "0x0" }, "0x8267fcd8e1cace20d483e368727a9d4a35a02b5a": { "balance": "0x83f5c7474b509" }, "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913": { "balance": "0x22d1a2c0d26ed3", "storage": { "0x3dc6befb529c477ccaae72889abc203186f2cb4c25baf9e741fe5e45e91e83ec": "0x00000000000000000000000000000000000000000000000000000050129e7a23", "0x3fd0d340b6ee390f4063ccc31c1c0d6f307898faabb23775e951de3510352a1e": "0x000000000000000000000000000000000000000000000000000000d0277fe9b0", "0xc43e5a5855b77448e9fd87622eb6afad130ff5da04e4033079e6a4b94ec3cc25": "0x000000000000000000000000000000000000000000000000000000009591721c", "0xdceb6bee0c87d6fbc41bf2b42ce11b85d7adb63ce9af58bb75c0b238b1d797dc": "0x0000000000000000000000000000000000000000000000000000000011de5dda", "0xf2b244caf6b1ee1eb87c63bd2f37a244d00181d4fc3a95afee2b95e8778c69e3": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffffa6a3d83a", "0xfbe1e92e20c0e088f2d489a74596737a56b2fc3503e10af0bb4240b5e899a66b": "0xfffffffffffffffffffffffffffffffffffffffffffffffffffff0fa22a8a3a1" } }, "0xac4c6e212a361c968f1725b4d055b47e63f80b75": { "balance": "0x0" }, "0xad27827c312cd5e71311d68e180a9872d42de23d": { "balance": "0x49590" }, "0xb300000b72deaeb607a12d5f54773d1c19c7028d": { "balance": "0x48b0c8a9c5f86" }, "0xdb45818a6db280ecfeb33cbebd445423d0216b5d": { "balance": "0x0" }, "0xdbc6998296caa1652a810dc8d3baf4a8294330f1": { "balance": "0x0", "storage": { "0x0000000000000000000000000000000000000000000000000000000000000006": "0x00000107d007d00572fd0fb1000000000000000000044fcc9df21d39d12a9e63", "0x0000000000000000000000000000000000000000000000000000000000000008": "0x000000000000000000000000000000000000009640cbd2a9aed64989fe1f0444", "0x000000000000000000000000000000000000000000000000000000000000000a": "0x0000000000000000000000016f0019ac000000000000000013bada12e184b0e3", "0x0000000000000000000000000000000000000000000000000000000000000587": "0x010000000000000000878439625f2d43f3a5880e56ffffcbcdd33c7468c1055b" } }, "0xe1bfa25468af64e366ddafc9d91bcc6c97439a14": { "balance": "0x0", "storage": { "0x37e6dc13c068bb909eed8b3e00abcf65959950251ccf7813d3f0998dc1405c5b": "0x00000000000000000000000000000000000000000000111aca4aabaca76272ba", "0x8531e790573ae81c113d98b2985a12deb7058dcb20f43551606a5fd79c607115": "0x000000000000000000000000000000000000000000002c70590829477bf40e37", "0xa6dfa914d28676ae63d9d618165d503f282511e562cfddbdf80b8a97bea706d5": "0x00000000000000000000000000000000000000000000054460c4d9bccb23dbe9", "0xbae135dfedebdd66a0c59d492f1e69025652b231758f5ebf706377ac3f362649": "0x000000000000000000000000000000000000000000095e802c12596bc677fc9f" } }, "0xec8e5342b19977b4ef8892e02d8daecfa1315831": { "balance": "0x0" } }, "post": { "0x20183dc92e044e6a14c4afa5ce202519a0af4067": { "storage": { "0x0000000000000000000000000000000000000000000000000000000000000000": "0x000100000a000a000301b5e8000000000000010fc2fd047e907bdba9af1bee92", "0x0000000000000000000000000000000000000000000000000000000000000001": "0x0000000000000000000000000000000000102a18352a3a3ddeb2bc38271fcb1b", "0x000000000000000000000000000000000000000000000000000000000000000b": "0x0100000000000000000001a84e43b898498c75cdb6000003a0485d0068c15441" } }, "0x3b2b96ba7f07d592deb7831e2e5d0273cde6a1a0": { "storage": { "0x0000000000000000000000000000000000000000000000000000000000000000": "0x00010000140014000c04a65300000000003f1f5e359161f8e02f924222f1fd38", "0x0000000000000000000000000000000000000000000000000000000000000001": "0x000000000000000000000000000000000000018ef571a026e3af72f0a752739d", "0x0000000000000000000000000000000000000000000000000000000000000014": "0x010000055c0000000002157269fe11b54e4aeda57e00000be533ebdc68c15441" } }, "0x3c2dfe6d969ad9de9d566727607eb2e9139d3596": { "storage": { "0x0000000000000000000000000000000000000000000000000000000000000006": "0x00000100640064004304a61000000000003ee9390d13bf8a989e320f2613527f", "0x0000000000000000000000000000000000000000000000000000000000000007": "0x000000000000000000000000000000000000001489631f56177a5f0aaf7952d9", "0x000000000000000000000000000000000000000000000000000000000000000a": "0x00000000000008790012793ed1e3ad59000000000000000000000000972b15c3", "0x0000000000000000000000000000000000000000000000000000000000000057": "0x010002710000000000002954828457acd7135101790000174786b59868c15441" } }, "0x4200000000000000000000000000000000000006": { "storage": { "0x51f59d35c70300bc2d4fa7806c495b313e476b2d51285f7dc22af52ad4365c89": "0x000000000000000000000000000000000000000000000004acbc0ccf430828c4", "0x64a768cc030388cd72d492ab760ba7360573b25695129208ed87b018bff88676": "0x000000000000000000000000000000000000000000000000100ce0debf25927e" } }, "0x4200000000000000000000000000000000000011": { "balance": "0x5883d07d0fef0a7b9" }, "0x4200000000000000000000000000000000000019": { "balance": "0x13bff5175044201c9" }, "0x420000000000000000000000000000000000001a": { "balance": "0x1d1e14e1f1629b9" }, "0x8267fcd8e1cace20d483e368727a9d4a35a02b5a": { "balance": "0x83d0f6de7a769" }, "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913": { "storage": { "0x3dc6befb529c477ccaae72889abc203186f2cb4c25baf9e741fe5e45e91e83ec": "0x00000000000000000000000000000000000000000000000000000050141ba828", "0x3fd0d340b6ee390f4063ccc31c1c0d6f307898faabb23775e951de3510352a1e": "0x000000000000000000000000000000000000000000000000000000d02d74b6c1", "0xc43e5a5855b77448e9fd87622eb6afad130ff5da04e4033079e6a4b94ec3cc25": "0x000000000000000000000000000000000000000000000000000000009ffdd4e0", "0xf2b244caf6b1ee1eb87c63bd2f37a244d00181d4fc3a95afee2b95e8778c69e3": "0xffffffffffffffffffffffffffffffffffffffffffffffffffffffff94c57a60", "0xfbe1e92e20c0e088f2d489a74596737a56b2fc3503e10af0bb4240b5e899a66b": "0xfffffffffffffffffffffffffffffffffffffffffffffffffffff0fa10ca45c7" } }, "0xdbc6998296caa1652a810dc8d3baf4a8294330f1": { "storage": { "0x0000000000000000000000000000000000000000000000000000000000000006": "0x00000107d007d00573fd0fb2000000000000000000044fccc3b9f77152eda412", "0x0000000000000000000000000000000000000000000000000000000000000008": "0x000000000000000000000000000000000000009640cc834066f15b5e76d1a7b9", "0x000000000000000000000000000000000000000000000000000000000000000a": "0x0000000000000000000000016f002134000000000000000013bada12e184b0e3", "0x0000000000000000000000000000000000000000000000000000000000000587": "0x010000000000000000878cbb37a5ae41ba10d320ffffffcae5f103b668c15441" } }, "0xe1bfa25468af64e366ddafc9d91bcc6c97439a14": { "storage": { "0x37e6dc13c068bb909eed8b3e00abcf65959950251ccf7813d3f0998dc1405c5b": "0x000000000000000000000000000000000000000000001103e02fbf18455665bc", "0x8531e790573ae81c113d98b2985a12deb7058dcb20f43551606a5fd79c607115": "0x000000000000000000000000000000000000000000002bcf4e5be6c007109111", "0xa6dfa914d28676ae63d9d618165d503f282511e562cfddbdf80b8a97bea706d5": "0x0000000000000000000000000000000000000000000006583419872001598f78", "0xbae135dfedebdd66a0c59d492f1e69025652b231758f5ebf706377ac3f362649": "0x000000000000000000000000000000000000000000095e244d84db246731d334" } } } } } [PreviousParsed Flashblockschevron-left](https://docs.bloxroute.com/base/streams/parsed-flashblocks) [NextOverviewchevron-right](https://docs.bloxroute.com/x-layer/overview) Last updated 12 days ago --- # Parsed Flashblocks | bloXroute Documentation `GetParsedBdnFlashBlockStream` feed provides low-latency access to newly produced Flashblocks on the Base network, parsed into protobuf format for immediate use. Flashblocks are pre-confirmation blocks available before they are finalized on-chain and may differ from the final canonical chain. This is real-time WS/gRPC, parsed Flashblocks data stream. **Service available via Cloud API only.** [hashtag](https://docs.bloxroute.com/base/streams/parsed-flashblocks#stream-endpoint) Stream Endpoint ---------------------------------------------------------------------------------------------------------- * Method: `GetParsedBdnFlashBlockStream` * Endpoint: `wss://base.blxrbdn.com:5005/ws` ### [hashtag](https://docs.bloxroute.com/base/streams/parsed-flashblocks#examples) Examples **Request** WebSocket gRPC Golang Copy wscat -H "Authorization: " \ -c wss://base.blxrbdn.com:5005/ws \ --wait 1000 \ --execute '{"jsonrpc": "2.0", "id": 1, "method": "subscribe", "params": [ "GetParsedBdnFlashBlockStream", {} ]}' Copy grpcurl -H "Authorization: " \ -H "Content-Type: application/grpc" \ -d '{}' \ base.blxrbdn.com:443 \ streamerapi.Api/GetParsedBdnFlashBlockStream Copy package main import ( "encoding/json" "net/http" "net/url" streamerapi "github.com/bloXroute-Labs/base-streamer-proto/streamer_api" "github.com/gorilla/websocket" "github.com/rs/zerolog/log" "google.golang.org/protobuf/encoding/protojson" ) const ( BxAuthHeader = "PUT_YOUR_AUTH_HEADER" ) type Params struct { Subscription string `json:"subscription"` Result json.RawMessage `json:"result"` } type Response struct { JsonRPC string `json:"jsonrpc"` Method string `json:"method"` Params Params `json:"params"` } func main() { u, err := url.Parse("wss://base.blxrbdn.com:5005/ws") if err != nil { log.Fatal().Err(err).Msg("Invalid WebSocket URL: ") } log.Info().Str("url", u.String()).Msg("Connecting...") conn, _, err := websocket.DefaultDialer.Dial(u.String(), http.Header{ "Authorization": []string{BxAuthHeader}, }) if err != nil { log.Fatal().Err(err).Msg("WebSocket connection failed: ") } defer conn.Close() message := []byte(`{"jsonrpc": "2.0", "id": 1, "method": "subscribe", "params": [ "GetParsedBdnFlashBlockStream", {} ]}`) err = conn.WriteMessage(websocket.TextMessage, message) if err != nil { log.Fatal().Err(err).Msg("Error sending message: ") } log.Info().Msg("Connected! Listening for parsed bdn flashblocks...") for { msgType, msg, err := conn.ReadMessage() if err != nil { log.Error().Err(err).Msg("Read error: ") continue } if msgType != websocket.TextMessage { log.Error().Err(err).Int("msgType", msgType).Msg("Skipping non-text message: ") continue } var response *Response err = json.Unmarshal(msg, &response) if err != nil { log.Error().Err(err).Msg("Failed to unmarshal response: ") continue } if response.Params.Result == nil { // Expected for the first update log.Warn().Msg("parsedBdnFlashBlock is nil") continue } var parsedBdnFlashBlock streamerapi.GetParsedBdnFlashBlockStreamResponse err = protojson.Unmarshal(response.Params.Result, &parsedBdnFlashBlock) if err != nil { log.Error().Err(err).Msg("Failed to protojson unmarshal parsed bdn flashblock: ") continue } log.Info().Uint64("blockNumber", parsedBdnFlashBlock.Metadata.BlockNumber).Uint64("index", parsedBdnFlashBlock.Index).Msg("parsedBdnFlashBlock") } } ### [hashtag](https://docs.bloxroute.com/base/streams/parsed-flashblocks#response-flashblock-event) Response (Flashblock Event) * **Index 0 (with Base):** Shows the Flashblock plus chain-level context (`base`). * **Index 1–10 (without Base):** Shows Flashblocks without repeating that extra context. Index 0 (with Base) Index 1-10 (without Base) Copy <<< { "jsonrpc": "2.0", "method": "subscribe", "params": { "subscription": "7e84d5e2-570b-4750-88c4-fe934ad93531", "result": { "payloadId": "0x039e03386af93ec4", "index": "0", "base": { "parentBeaconBlockRoot": "0x3f2b3d2be05b1aa421062640a52a8fb564c310a6608ee77028b54a4e534a44fd", "parentHash": "0xa373c39558c65f2f276de7c5ca24b92b42b86853d05e9cb4bacc3d28d9c3b5ac", "feeRecipient": "0x4200000000000000000000000000000000000011", "prevRandao": "0xe6e6e07efed22009d57c725011d98d65ae24d568620db7342fa8ae7c3426a8f5", "blockNumber": "0x20ba0f2", "gasLimit": "0x8f0d180", "timestamp": "0x68a19ec7", "extraData": "0x000000003200000003", "baseFeePerGas": "0x5b777" }, "diff": { "stateRoot": "0x0000000000000000000000000000000000000000000000000000000000000000", "receiptsRoot": "0x4a27677b9a161f080a4bdce3a56e6dc7ead5ab900ec62f3c7151a519a45cf6be", "logsBloom": "0x00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000", "gasUsed": "0xb44c", "blockHash": "0x5a70134941f5e08c2b6e122042fefc399606f2e9f7911caed6881c06b3e04792", "transactions": [\ "0x7ef90104a065b3ade1eb334185562510dff0f376f8d8fdaece233e6e3ff8475ee52fbf1fb094deaddeaddeaddeaddeaddeaddeaddeaddead00019442000000000000000000000000000000000000158080830f424080b8b0098999be000008dd00101c1200000000000000050000000068a19e0b0000000001616411000000000000000000000000000000000000000000000000000000000fa68f0900000000000000000000000000000000000000000000000000000000000000010c6071353e4919d87355e022911ddea355fef3f16f0e21e112eade6a58d83d980000000000000000000000005050f69a9786f081509234f1a7f4684b5e5b76c9000000000000000000000000"\ ], "withdrawals": [], "withdrawalsRoot": "0x871f79faec942df96cd90e26b473cb2afca8aee4858d5e2d3fae0c3a64e9ce62" }, "metadata": { "blockNumber": "34316530", "newAccountBalances": { "0x0000f90827f1c53a10cb7a02335b175320002935": "0x0", "0x000f3df6d732807ef1319fb7b8bb8522d0beac02": "0x0", "0x4200000000000000000000000000000000000015": "0x0", "0xdeaddeaddeaddeaddeaddeaddeaddeaddead0001": "0x69076b18a41d8" }, "receipts": { "0x9cfb253a30c498111c6485638b279483c8e61419ee78be3251195c4f88055a02": { "Deposit": { "cumulativeGasUsed": "0xb44c", "logs": [], "status": "0x1", "depositNonce": "0x20ba0f4", "depositReceiptVersion": "0x1" }, "Eip1559": null, "Legacy": null } } } } } } Copy <<< { "jsonrpc": "2.0", "method": "subscribe", "params": { "subscription": "7e84d5e2-570b-4750-88c4-fe934ad93531", "result": { "payloadId": "0x039e03386af93ec4", "index": "2", "base": null, "diff": { "stateRoot": "0x0000000000000000000000000000000000000000000000000000000000000000", "receiptsRoot": "0xfda9665e6849670b3fece129383adeef2bd7980a41bd363f4b530afaf93c7300", "logsBloom": "0x0868ec0039250c38c081109cea00212074620120a2a0500e4d84140760008b48446ee01c2427860216410854490274480404b5009500305c06d2600049250014060d8459a2488c4c3e82043e8b1102a400d0262a025c202010040a18812a000501aa082412050020002199c850464a8b0184500a480c17c1482c1033690a2543820069991e08500048200244690a0140060192494e70001c802a04e4d240209506e02182c107e6480b00dcc2046201883e3146e36452820821c60d1112500990810480ef0001485b8a110d07242239c0e0d8744ec4c0961858244296880a288645fd1c018006b006a170a08a08541da9b06294140542464a9aa262c881000a01", "gasUsed": "0xcebb06", "blockHash": "0xb36d034dd091193b1508410e4055e4f85656cb13496cdb5fcdae65e4eb03aa86", "transactions": [\ "0x02f8b3822105830398418368c3388368c338830f424094ec6c44e704eb1932ec5fe1e4aba58db6fee7146080b84450347fcbffff0000000000000000000000000000000000000068a19ee201c85bffffffff00000000000000000008a8ceecc6dc7600000000000000000000000000000000c001a07b2f5e08dc3e0f48fccbdae48c5a123ac273106ca9d5558eb0b20afa4e7b42faa07351d4444631753727d090151bc37e5fac112b7016478247180f11a4f07905d7",\ "0x02f9059482210583a242ef83132a77832c068683b71b00949fb0f25859d505774ee4e895be5d122147b5c7a380b905240000000b000000000000000000000000000000000000000000000000000000000000002000000000000000000000000000000000000000000000000000000000000004d1014200000000000000000000000000000000000006833589fcd6edb6e08f4c7c32d4f71b54bda029130d0e72ab388e2e2f6facef59e3c3fa2c4e29011c2d3803b4cb800910b228ed3d0834cf79d697127bbb00e503d0b53d9277642d899df5c87a3966a349a798f22442000000000000000000000000000000000000060b3e328455c4059eeb9e3f84b5543f74e24e7e1b0c0b3f0296bf652e19bca772ec3df08b32732f93014a039c087eb773291e50cf6c6a90ef0f4500e349b90342000000000000000000000000000000000000064a0aaf171446dda0ed95295c46820e2015a28b070d14d6ba4bdd2ebdde6b9beab0085f42f08bf69a80e515e399cf93716505c738169b03037c7a15c085f02699aaf1bb64895f18a3956ba0144418cc32e75414fb583c114f74846d957fb6e04a02be1b4c3796fabfa140ef154200000000000000000000000000000000000006833589fcd6edb6e08f4c7c32d4f71b54bda029130a00cbb7c0000ab88b473b1f5afd9ef808440eed33bf0e72ab388e2e2f6facef59e3c3fa2c4e29011c2d380eb94b22332abf5f89877a14cc88f2abc48c34b3df0ec211e1f853a898bd1302385ccde55f33a8c4b3f34200000000000000000000000000000000000006833589fcd6edb6e08f4c7c32d4f71b54bda029130a00cbb7c0000ab88b473b1f5afd9ef808440eed33bf0e72ab388e2e2f6facef59e3c3fa2c4e29011c2d380b4e962bb3889bf030368f56810a9c96b83cb3e7780ec211e1f853a898bd1302385ccde55f33a8c4b3f342000000000000000000000000000000000000060b3e328455c4059eeb9e3f84b5543f74e24e7e1b0a01c44141a684f6aa4e36cd9264ab55550b03c886430b3f0296bf652e19bca772ec3df08b32732f93014a0147006dcfc5aa14b577d3d2a0e39f72046bf4c054015726b63cf6e67fd3d35489cc02a6f1f46bc6965b000000002d65caf8f6f0d0eee29800c78a000000000000001566fcc8aae79b02070a4200000000000000000000000000000000000006833589fcd6edb6e08f4c7c32d4f71b54bda029130a00fde4c96c8593536e31f229ea8f37b2ada2699bb20e72ab388e2e2f6facef59e3c3fa2c4e29011c2d3814f13203ddbf2c9816a79b656a1a952521702715d92fea465b84ae2ed6e94a7f220e526d54cd4fac2e6b2ddcb6bc98b9292603061f8542000000000000000000000000000000000000060b3e328455c4059eeb9e3f84b5543f74e24e7e1b0a014f9fd6be4a90f2620860d680c0d4d5fb53d1a8250b3f0296bf652e19bca772ec3df08b32732f93014a0ec68efca6375b31cdc9b85de345e0f2e968d8a5fb0b22a52bb644f855ebd5ca2edb643ff70222d70c314200000000000000000000000000000000000006cbb7c0000ab88b473b1f5afd9ef808440eed33bf0a00ed6e000def95780fb89734c07ee2ce9f6dcaf1100a2578365b3dfa7ffe60108e181efb79feddec23190b5230845439fa66fbea20af7cf09bc413b99e10b70340c1fc0790e1b09f30a44b4da3b89175d440ba60000000000028fd6c3a1d6411866efbfd28833589fcd6edb6e08f4c7c32d4f71b54bda02913cbb7c0000ab88b473b1f5afd9ef808440eed33bf030eb94b22332abf5f89877a14cc88f2abc48c34b3df0b4e962bb3889bf030368f56810a9c96b83cb3e7780b3e66e55e97ce60096f74b7c475e8249f2d31a9fb000000000000000000000000000000c001a003fb4cdb6ed1126d48bbd657d4c811960ae384bd7723c780f92e2b55b6f45f42a0113e434d0c9ed882e5ce34a6ee8ca9bf208d4b3c20e3d57ca936694f124c3bf4",\ "0xf8f1438305fdcb8302c10994e9d7e6669c39350dd6664fd6fb66fce4d871d374870431d390bbabedb884d014efef00000000000000000000000042000000000000000000000000000000000000060000000000000000000000000b1ba44b22a940c882bcbfffef2e73aad2217bb500000000000000000000000000000000000000000000000000000000000027100000000000000000000000006fe9ab378d55adf4ec340e124849f8425b586baa82422da0774c88955f4ddfa46eda70d2464cb3ef6e26e5194a6718703ecb5974dd0052c8a06cd3516fbdfa34c49771cccd6180668c54618eaf2ed113bac97ff31307bd5256"\ ...\ ], "withdrawals": [], "withdrawalsRoot": "0x871f79faec942df96cd90e26b473cb2afca8aee4858d5e2d3fae0c3a64e9ce62" }, "metadata": { "blockNumber": "34316530", "newAccountBalances": { "0x00000000fc65059bdda566b43e17c310b3076e33": "0x127e151060e5aff", "0x0000f90827f1c53a10cb7a02335b175320002935": "0x0", "0x000f3df6d732807ef1319fb7b8bb8522d0beac02": "0x0", "0x04b84722c14c970b1f830841d98db78ef1a22f9b": "0x378683a645a82", "0x05097b79babb4ce73078c385416b1414ab684ff8": "0x58b2e5af40ad26e", ... }, "receipts": { "0x3868ff5a459458324a408acf0eb7dab06f17e9157f4dfb1586e228d7550de0db": { "Deposit": null, "Eip1559": { "cumulativeGasUsed": "0xca302c", "logs": [\ {\ "address": "0x4200000000000000000000000000000000000006",\ "data": "0x000000000000000000000000000000000000000000000000000011c9277ad20d",\ "topics": [\ "0xe1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c",\ "0x000000000000000000000000f525ff21c370beb8d9f5c12dc0da2b583f4b949f"\ ]\ },\ {\ "address": "0x4200000000000000000000000000000000000006",\ "data": "0x000000000000000000000000000000000000000000000000000011c9277ad20d",\ "topics": [\ "0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef",\ "0x000000000000000000000000f525ff21c370beb8d9f5c12dc0da2b583f4b949f",\ "0x00000000000000000000000088a43bbdf9d098eec7bceda4e2494615dfd9bb9c"\ ]\ },\ {\ "address": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",\ "data": "0x0000000000000000000000000000000000000000000000000000000000015b67",\ "topics": [\ "0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef",\ "0x00000000000000000000000088a43bbdf9d098eec7bceda4e2494615dfd9bb9c",\ "0x000000000000000000000000f5042e6ffac5a625d4e7848e0b01373d8eb9e222"\ ]\ },\ {\ "address": "0x88a43bbdf9d098eec7bceda4e2494615dfd9bb9c",\ "data": "0x00000000000000000000000000000000000000000000003d78680f5e29bf671e000000000000000000000000000000000000000000000000000004b44c598883",\ "topics": [\ "0x1c411e9a96e071241c2f21f7726b17ae89e3cab4c78be50e062b03a9fffbbad1"\ ]\ },\ {\ "address": "0x88a43bbdf9d098eec7bceda4e2494615dfd9bb9c",\ "data": "0x000000000000000000000000000000000000000000000000000011c9277ad20d000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000015b67",\ "topics": [\ "0xd78ad95fa46c994b6551d0da85fc275fe613ce37657fb8d5e3d130840159d822",\ "0x000000000000000000000000f525ff21c370beb8d9f5c12dc0da2b583f4b949f",\ "0x000000000000000000000000f5042e6ffac5a625d4e7848e0b01373d8eb9e222"\ ]\ },\ {\ "address": "0xf5042e6ffac5a625d4e7848e0b01373d8eb9e222",\ "data": "0x0000000000000000000000000000000000001ff3684f28c67538d4d072c227340000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000011c9277ad20d00000000000000000000000000000000000000000000000000000000000004242213bc0b000000000000000000000000f525ff21c370beb8d9f5c12dc0da2b583f4b949f0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000011c9277ad20d000000000000000000000000f525ff21c370beb8d9f5c12dc0da2b583f4b949f00000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000003441fff991f00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000a0b0892fd18c45ecb6ae880aab0af43c0000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000200000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000180000000000000000000000000000000000000000000000000000000000000010438c9c147000000000000000000000000eeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeeee00000000000000000000000000000000000000000000000000000000000027100000000000000000000000004200000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000400000000000000000000000000000000000000000000000000000000000000a00000000000000000000000000000000000000000000000000000000000000024d0e30db00000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000c4103b48be000000000000000000000000f5042e6ffac5a625d4e7848e0b01373d8eb9e2220000000000000000000000004200000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000271000000000000000000000000088a43bbdf9d098eec7bceda4e2494615dfd9bb9c0000000000000000000000000000000000000000000000000000000000001e010000000000000000000000000000000000000000000000000000000000014a58000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",\ "topics": [\ "0x93485dcd31a905e3ffd7b012abe3438fa8fa77f98ddc9f50e879d3fa7ccdc324"\ ]\ },\ {\ "address": "0x833589fcd6edb6e08f4c7c32d4f71b54bda02913",\ "data": "0x0000000000000000000000000000000000000000000000000000000000015b67",\ "topics": [\ "0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef",\ "0x000000000000000000000000f5042e6ffac5a625d4e7848e0b01373d8eb9e222",\ "0x000000000000000000000000f70da97812cb96acdf810712aa562db8dfa3dbef"\ ]\ },\ {\ "address": "0xf5042e6ffac5a625d4e7848e0b01373d8eb9e222",\ "data": "0x000000000000000000000000f5042e6ffac5a625d4e7848e0b01373d8eb9e2220000000000000000000000000000000000000000000000000000000000000060000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000001243b2253c8000000000000000000000000000000000000000000000000000000000000006000000000000000000000000000000000000000000000000000000000000000a000000000000000000000000000000000000000000000000000000000000000e00000000000000000000000000000000000000000000000000000000000000001000000000000000000000000833589fcd6edb6e08f4c7c32d4f71b54bda029130000000000000000000000000000000000000000000000000000000000000001000000000000000000000000f70da97812cb96acdf810712aa562db8dfa3dbef0000000000000000000000000000000000000000000000000000000000000001000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000000",\ "topics": [\ "0x93485dcd31a905e3ffd7b012abe3438fa8fa77f98ddc9f50e879d3fa7ccdc324"\ ]\ }\ ], "status": "0x1" }, "Legacy": null }, "0x4ac1a3d734b2632007f3be6e3757566d1dc7b8bccbc820316f3ebb6245cad7e9": { "Deposit": null, "Eip1559": { "cumulativeGasUsed": "0xccce50", "logs": [], "status": "0x0" }, "Legacy": null }, "0x5dfd7ae0675dd9b2d881680131318dff27d0220b5b053a59ecceaf9569d8f477": { "Deposit": null, "Eip1559": { "cumulativeGasUsed": "0xc75b34", "logs": [], "status": "0x1" }, "Legacy": null }, "0x686723d6dab3c89c33ce81df5fb10f6205bc54d331e8812df5c66d966e35c4d5": { "Deposit": null, "Eip1559": null, "Legacy": { "cumulativeGasUsed": "0xcebb06", "logs": [\ {\ "address": "0x4200000000000000000000000000000000000006",\ "data": "0x000000000000000000000000000000000000000000000000000431d390bbabed",\ "topics": [\ "0xe1fffcc4923d04b559f4d29a8bfc6cda04eb5b0d3c460751c2402c5c5cc9109c",\ "0x000000000000000000000000e9d7e6669c39350dd6664fd6fb66fce4d871d374"\ ]\ },\ {\ "address": "0x4200000000000000000000000000000000000006",\ "data": "0x000000000000000000000000000000000000000000000000000431d390bbabed",\ "topics": [\ "0x8c5be1e5ebec7d5bd14f71427d1e84f3dd0314c0f7b2291e5b200ac8c7c3b925",\ "0x000000000000000000000000e9d7e6669c39350dd6664fd6fb66fce4d871d374",\ "0x0000000000000000000000002626664c2603336e57b271c5c0b26f421741e481"\ ]\ },\ {\ "address": "0x0b1ba44b22a940c882bcbfffef2e73aad2217bb5",\ "data": "0x00000000000000000000000000000000000000000000094307c6692c03c8857d",\ "topics": [\ "0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef",\ "0x0000000000000000000000002d8f2b9672913ebde3512f9beb83aa267bf6e079",\ "0x0000000000000000000000006fe9ab378d55adf4ec340e124849f8425b586baa"\ ]\ },\ {\ "address": "0x4200000000000000000000000000000000000006",\ "data": "0x000000000000000000000000000000000000000000000000000431d390bbabed",\ "topics": [\ "0xddf252ad1be2c89b69c2b068fc378daa952ba7f163c4a11628f55a4df523b3ef",\ "0x000000000000000000000000e9d7e6669c39350dd6664fd6fb66fce4d871d374",\ "0x0000000000000000000000002d8f2b9672913ebde3512f9beb83aa267bf6e079"\ ]\ },\ {\ "address": "0x2d8f2b9672913ebde3512f9beb83aa267bf6e079",\ "data": "0xfffffffffffffffffffffffffffffffffffffffffffff6bcf83996d3fc377a83000000000000000000000000000000000000000000000000000431d390bbabed0000000000000000000000000000000000000000000ab738c70f98e1685f19cf0000000000000000000000000000000000000000000003df7ce124b1861621f6fffffffffffffffffffffffffffffffffffffffffffffffffffffffffffd56d2",\ "topics": [\ "0xc42079f94a6350d7e6235f29174924f928cc2ac818eb64fed8004e115fbcca67",\ "0x0000000000000000000000002626664c2603336e57b271c5c0b26f421741e481",\ "0x0000000000000000000000006fe9ab378d55adf4ec340e124849f8425b586baa"\ ]\ }\ ], "status": "0x1" } }, ... } } } } } [PreviousFlashblockschevron-left](https://docs.bloxroute.com/base/streams/flashblocks) [NextFlashblocks Statediffchevron-right](https://docs.bloxroute.com/base/streams/flashblocks-statediff) Last updated 12 days ago --- # Submit Transactions | bloXroute Documentation [Private Transactionschevron-right](https://docs.bloxroute.com/base/submit-transactions/submit-transactions) [Speed Boostchevron-right](https://docs.bloxroute.com/base/submit-transactions/speed-boost) [PreviousOverviewchevron-left](https://docs.bloxroute.com/base/overview) [NextPrivate Transactionschevron-right](https://docs.bloxroute.com/base/submit-transactions/submit-transactions) Last updated 6 days ago This site uses cookies to deliver its service and to analyze traffic. By browsing this site, you accept the [privacy policy](https://policies.gitbook.com/privacy/cookies) . close AcceptReject --- # Flashblocks | bloXroute Documentation `GetBdnFlashBlockStream` feed provides low-latency access to newly produced **Flashblocks** on the Base network. Flashblocks are pre-confirmation blocks available before they are finalized on-chain and may differ from the final canonical chain. This is a real-time WS/gRPC, raw Flashblocks data stream. **Service available via Cloud API only.** [hashtag](https://docs.bloxroute.com/base/streams/flashblocks#stream-endpoint) Stream Endpoint --------------------------------------------------------------------------------------------------- * Method: `GetBdnFlashBlockStream` * Endpoint: `wss://base.blxrbdn.com:5005/ws` [hashtag](https://docs.bloxroute.com/base/streams/flashblocks#examples) Examples ------------------------------------------------------------------------------------- WebSocket gRPC Golang Copy wscat -H "Authorization: " \ -c wss://base.blxrbdn.com:5005/ws \ --wait 1000 \ --execute '{"jsonrpc": "2.0", "id": 1, "method": "subscribe", "params": [ "GetBdnFlashBlockStream", {} ]}' Copy grpcurl -H "Authorization: " \ -H "Content-Type: application/grpc" \ -d '{}' \ base.blxrbdn.com:443 \ streamerapi.Api/GetBdnFlashBlockStream Copy package main import ( "encoding/json" "net/http" "net/url" "github.com/gorilla/websocket" "github.com/rs/zerolog/log" ) const ( BxAuthHeader = "PUT_YOUR_AUTH_HEADER" ) type Result struct { BdnFlashBlock []byte `json:"bdnFlashBlock"` } type Params struct { Subscription string `json:"subscription"` Result Result `json:"result"` } type Response struct { JsonRPC string `json:"jsonrpc"` Method string `json:"method"` Params Params `json:"params"` } func main() { u, err := url.Parse("wss://base.blxrbdn.com:5005/ws") if err != nil { log.Fatal().Err(err).Msg("Invalid WebSocket URL: ") } log.Info().Str("url", u.String()).Msg("Connecting...") conn, _, err := websocket.DefaultDialer.Dial(u.String(), http.Header{ "Authorization": []string{BxAuthHeader}, }) if err != nil { log.Fatal().Err(err).Msg("WebSocket connection failed: ") } defer conn.Close() request := []byte(`{"jsonrpc": "2.0", "id": 1, "method": "subscribe", "params": [ "GetBdnFlashBlockStream", {} ]}`) err = conn.WriteMessage(websocket.TextMessage, request) if err != nil { log.Fatal().Err(err).Msg("Error sending message: ") } log.Info().Msg("Connected! Listening for Flashblocks...") for { msgType, msg, err := conn.ReadMessage() if err != nil { log.Error().Err(err).Msg("Read error: ") continue } if msgType != websocket.TextMessage { log.Error().Err(err).Int("msgType", msgType).Msg("Skipping non-text message: ") continue } var response *Response err = json.Unmarshal(msg, &response) if err != nil { log.Error().Err(err).Msg("Failed to unmarshal response: ") continue } if response.Params.Result.BdnFlashBlock == nil { // Expected for the first update log.Warn().Msg("BdnFlashBlock is nil") continue } // Use the Brotli-compressed Flashblock... log.Info().Msg("Got Flashblock") } } [hashtag](https://docs.bloxroute.com/base/streams/flashblocks#response) Response ------------------------------------------------------------------------------------- WebSocket gRPC Copy {"jsonrpc":"2.0", "method":"subscribe", "params":{"subscription":"43dcfff5-e67a-44ee-9284-85b8add00db5", "result":{"bdnFlashBlock": "G80JAGS//cKU/7oQmkmm+sABKdoXLMEWDuf/cIHFCaYxxX+09qS5KYt7YZTNcQv3dDrAs7lEL8uy51xSKyicwKfZk/x7vfO/X731uj2v68kFfwGTEOucxaeO1PXgUuq6nsCDS6foejIPEppzcyX7ppp1sy6SEljbItbg96xWK6Q5pixrRtHs5MTdqRN8CpJ5F6ZIDYm3a0RfD3RAgiGxH86op3NNklpN+wo9JJ5q4pO0EmR7ctHU1LIlZ5oMfDb6kbObfbpv9EAflsSPwjoR4prmfOjPtw/+pvxt+/BM27V6h4nFbENOXkDSp2M0B1FFFGKsGhjlmGocYuAS3S0NGw67BMkNIZ08slzzU7/f6IbG1uFeDpFwPbiONXqT7WOnZw+iGvv2UBL2IwfXL9XaSPnek6lNTCD0J+tmmch3/eH21O8KoaVT9/X/g6uez7i77/7RP7aDWwkdwIgPnf383ce74HtbmuQhwYhdpCtnNSEHTaSnSZNqDTUSwcyWKSJm0Ek9vdyRp6ZXb5/eydj9t6+X+q/XUU8SDI2IE/YQ84NHDy2fnbG2YUFvLRMlsJ1GSB3Bmcyc2yTwHNfIo80miBmu6bXpcA/lc+ofbhnv15Pf8G7acwBhO3Rr4Skg4mkXBUJyOodWKibRxjjCUbhXI+ECdRZijtcyh2N+JCcV9AvQCzwS0K6yDAyMYYQEDMKCuGJHU4BoVQMRMFEmgVHokXdcGxtAlVO1X5SUBBLJf0RurIg7omR2lEaKVQoN01GzaOG9VQ7FWlX7jPNU1SrxEhuicSltGxcsmH38qO0BQ8w4xDLoOkIRktUrdNcHXYjF9ceDK2/DEkjkr8iS5WJ6OHzHZRxFrovZaRbx6SViC7ZZHwVHsmj03XpMDdg5ZvrggUagid4ZtxPAgqCOnsLEWaLavwnoiOChAwwPrjf95VYjcG+VB+s+BwfVS80BIx3MxY6QoQ7EvAJ1MWWsdHjp5DyYdtnhml3KZKA9yHgmNCzCFlFBDdEOhKIwOR1FOSYIs/fhnYFRNu6GoeUjvFFTDEs8OEMfVapEgbX3AVNvj9AwTubKq1KCYCtpCANNWSH4HoOH/nt91e/e3tN3"}}} Copy { "bdnFlashBlock": "WVCW1+V6OGXv/0L+w+ickZvRrMKzE1NUDdvBRxevyB...3BKCRABRU1Y4EysRyIGjPY5eTZ4d5uQru8Q3qvAK1SmMien55fDvx5uyjfABjVN4aB5DAZOgRR8pDavcaQdL9PUKqpdmnbsazrg8EWcDpo3YX3xT72la4utinAReKcisqyavBoch5BNsXW4GqrVXVe/MuC7dSV5lXUfUxZMUkbrb4AzchfduxySob/vNTjEGKSA65JssTj+nzCs6jK9IX30XiMtsSCnTA37ckSS+qp6OvZVTdn0M3xndRAay/PCeh3Qjqa7pgHHZHZkO9YOSVpS8CUz6s+Vq6kHcjrSGxwEy9LNOtVR6kgIJnIjZC1eoFR5w4O8yg8vruKQgjyWVqZ6Eh+l66TLrl0QJoULd7s2b2qxr4iY8QwGO5O10CfPVGTtws6HWek7w59HxmlAk3B8NVsHDRKB2RJWeojW54EAqSZJP....3....B"} [PreviousStreamschevron-left](https://docs.bloxroute.com/base/streams) [NextParsed Flashblockschevron-right](https://docs.bloxroute.com/base/streams/parsed-flashblocks) Last updated 12 days ago This site uses cookies to deliver its service and to analyze traffic. By browsing this site, you accept the [privacy policy](https://policies.gitbook.com/privacy/cookies) . close AcceptReject --- # Overview | bloXroute Documentation bloXroute provides execution and data services for Base, optimized for low-latency and predictable transaction propagation using the Blockchain Distribution Network (BDN). ### [hashtag](https://docs.bloxroute.com/base#available-services) Available services #### [hashtag](https://docs.bloxroute.com/base#execution-services) Execution services bloXroute supports transaction submission on Base, enabling faster and more reliable propagation for latency-sensitive execution workflows. Execution capabilities include: * **Submit transactions** Low-latency submission of Base transactions with optimized propagation paths. → See: [Submit Transactions](https://docs.bloxroute.com/base/submit-transactions) #### [hashtag](https://docs.bloxroute.com/base#data-services) Data services bloXroute provides low-latency access to real-time Base data for execution logic and decision-making. Data capabilities include: * **Streams** Access live Base transaction, block, and event data with minimal delay. → See: [Streams](https://docs.bloxroute.com/base/streams) [PreviousList of bloXroute Builderschevron-left](https://docs.bloxroute.com/eth/block-builders-and-validators/list-of-bloxroute-builders) [NextSubmit Transactionschevron-right](https://docs.bloxroute.com/base/submit-transactions) Last updated 2 hours ago This site uses cookies to deliver its service and to analyze traffic. By browsing this site, you accept the [privacy policy](https://policies.gitbook.com/privacy/cookies) . close AcceptReject ---