@tevm/voltaire / primitives/RelayData
primitives/RelayData
Classes
InvalidRelayDataError
Defined in: src/primitives/RelayData/errors.js:6 Error thrown when RelayData operations failExtends
Error
Constructors
Constructor
new InvalidRelayDataError(Defined in: src/primitives/RelayData/errors.js:7message,details):InvalidRelayDataError
Parameters
message
any
details
any
Returns
InvalidRelayDataError
Overrides
Error.constructor
Properties
details
details: any
Defined in: src/primitives/RelayData/errors.js:10
name
name: string
Defined in: src/primitives/RelayData/errors.js:9
Inherited from
Error.name
Type Aliases
RelayDataLike
RelayDataLike =Defined in: src/primitives/RelayData/RelayDataType.ts:58 Inputs that can be converted to RelayDataRelayDataType| {builderPubkey?:Uint8Array|string;parentHash:HashType|string|Uint8Array;proposerFeeRecipient:AddressType|string;relayPubkey:Uint8Array|string;relayUrl:string;slot:SlotType|bigint|number|string; }
RelayDataType
RelayDataType = object
Defined in: src/primitives/RelayData/RelayDataType.ts:17
RelayData type
Represents MEV relay connection information for Proposer-Builder Separation (PBS).
Relays act as trusted intermediaries between block builders and validators,
ensuring builders cannot see validator signatures before block delivery.
See
- https://voltaire.tevm.sh/primitives/relay-data for RelayData documentation
- https://boost.flashbots.net/ for MEV-Boost
- https://ethereum.org/en/roadmap/pbs/ for PBS overview
Since
0.0.0Properties
builderPubkey?
Defined in: src/primitives/RelayData/RelayDataType.ts:34 Builder’s BLS public key (48 bytes, optional) If known, used to verify builder identityreadonlyoptionalbuilderPubkey:Uint8Array
parentHash
Defined in: src/primitives/RelayData/RelayDataType.ts:46 Parent block hash (32 bytes) The block being built on top ofreadonlyparentHash:HashType
proposerFeeRecipient
Defined in: src/primitives/RelayData/RelayDataType.ts:52 Validator fee recipient address (20 bytes) Where block rewards should be sentreadonlyproposerFeeRecipient:AddressType
relayPubkey
Defined in: src/primitives/RelayData/RelayDataType.ts:28 Relay’s BLS public key (48 bytes) Used to verify relay signatures and attestationsreadonlyrelayPubkey:Uint8Array
relayUrl
Defined in: src/primitives/RelayData/RelayDataType.ts:22 MEV relay endpoint URL Base URL for relay API (e.g., “https://relay.flashbots.net”)readonlyrelayUrl:string
slot
Defined in: src/primitives/RelayData/RelayDataType.ts:40 Current consensus layer slot The slot this relay data is valid forreadonlyslot:SlotType
Variables
MEV_RELAYS
Defined in: src/primitives/RelayData/RelayDataType.ts:72 Well-known MEV relay endpointsconstMEV_RELAYS:object
Type Declaration
AGNOSTIC
readonlyAGNOSTIC:"https://agnostic-relay.net"
BLOXROUTE_MAX_PROFIT
readonlyBLOXROUTE_MAX_PROFIT:"https://bloxroute.max-profit.bloxroute.com"
BLOXROUTE_REGULATED
readonlyBLOXROUTE_REGULATED:"https://bloxroute.regulated.bloxroute.com"
EDEN
readonlyEDEN:"https://relay.edennetwork.io"
FLASHBOTS
readonlyFLASHBOTS:"https://relay.flashbots.net"
MANIFOLD
readonlyMANIFOLD:"https://mainnet-relay.securerpc.com"
ULTRASOUND
readonlyULTRASOUND:"https://relay.ultrasound.money"
Functions
from()
from(Defined in: src/primitives/RelayData/from.js:68 Creates RelayData from various input typesvalue):RelayDataType
Parameters
value
RelayDataLike
RelayData input
Returns
RelayDataType
RelayData instance
Throws
If format is invalidExample
getEndpoint()
getEndpoint(Defined in: src/primitives/RelayData/getEndpoint.js:20 Constructs API endpoint for a specific relay methodrelay,method):string
Parameters
relay
RelayDataType
RelayData instance
method
string
API method path (e.g., “/eth/v1/builder/header”)
Returns
string
Full endpoint URL

