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
Name | Description | Options & Additional notes |
---|---|---|
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
Name | Description | Options & Additional notes |
---|---|---|
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:
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:
Plan | Bundle Validation Limit per Day |
---|---|
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