Bundle-Validation
The Bundle Validation utility allows traders to ensure that they are constructing their bundle correctly.
Use the request format below to simulate and validate the bundle. The response will include:
The request in the format that should be used when submitting a bundle to CloudAPI
Details about the bundle such as total gas price, bundle hash and details about the transactions in the bundle - if they are valid.
If an error was returned when validating or simulating the bundle, information about the error.
REQUEST
Parameters
transaction
A string containing a list of raw transaction bytes without a 0x prefix, separated by comma.
block_number
Block number of a future block to include this bundle in, in hex value.
state_block_number
Block number used as the base state to run a simulation on. Valid inputs include hex value of block number, or tags like βlatestβ and βpendingβ.
Optional.
Default: βlatestβ
timestamp
Simulation timestamp, an integer in unix epoch format.
Optional.
Default: None
Bundle submission requests components
transaction
A string containing a list of raw transaction bytes without a 0x prefix, separated by comma.
block_number
Block number of a future block to include this bundle in, in hex value.
reverting_hashes
A list of transaction hashes within the bundle that are allowed to revert. the whole bundle would be excluded if any transaction reverts.
Optional. Default: empty list.
mev_builders
A dictionary of MEV builders that should receive the bundle. For each MEV builder, a signature is required. Possible MEV builders are:
bloxroute: bloXroute internal builder
flashbots: flashbots builder
all: all builders
Optional.
Default: bloxroute builder and flashbots builder
frontrunning
A boolean flag indicating if the MEV bundle executes frontrunning strategy (e.g. generalized frontrunning, sandwiching). Some block builders and validators may not want to accept frontrunning bundles, which may experience a lower hash power.
Optional.
Default: True
min_timestamp
The minimum timestamp that the bundle is valid on, an integer in unix epoch format.
Optional.
Default: None
max_timestamp
The maximum timestamp that the bundle is valid on, an integer in unix epoch format.
Optional.
Default: None
uuid
A unique identifier of the bundle. This field can be used for bundle replacement and bundle cancellation. Some builders like bloxroute, builder0x69 and flashbots support this field. After receiving a new UUID bundle, the builder would replace the previous bundle that has the same UUID. When the list of transactions is empty in new UUID bundle, the previous bundle associated with the same UUID would be effectively canceled. The response is empty/null instead of bundle hash when UUID is provided in the request.
Optional.
Rate Limits and Restriction
Bundle-Validation is limiting requests if they exceed 1 requests per second. In addition, each tier has a limit to how many requests per day are allowed.
Below are the tiers limits:
Ultra and Enterprise-Elite
30 requests per day
Enterprise
10 requests per day
Professional and Introductory
2 requests per day
RESPONSE
Examples
for a valid transaction:
for an invalid transaction - nonce too low for the second transaction:
Last updated