API
This section aims to provide a detailed description of all APIs. If you are looking for something more hands-on or higher-level check out the existing guides.
Warning
We expect each alpha release to have breaking changes to the API.
- ABC
- MiningHeaderAPI
MiningHeaderAPI
MiningHeaderAPI.as_dict()
MiningHeaderAPI.build_changeset()
MiningHeaderAPI.base_fee_per_gas
MiningHeaderAPI.block_number
MiningHeaderAPI.bloom
MiningHeaderAPI.coinbase
MiningHeaderAPI.difficulty
MiningHeaderAPI.extra_data
MiningHeaderAPI.gas_limit
MiningHeaderAPI.gas_used
MiningHeaderAPI.hash
MiningHeaderAPI.hex_hash
MiningHeaderAPI.is_genesis
MiningHeaderAPI.mining_hash
MiningHeaderAPI.parent_hash
MiningHeaderAPI.receipt_root
MiningHeaderAPI.state_root
MiningHeaderAPI.timestamp
MiningHeaderAPI.transaction_root
MiningHeaderAPI.uncles_hash
MiningHeaderAPI.withdrawals_root
- BlockHeaderAPI
- LogAPI
- ReceiptAPI
- BaseTransactionAPI
- TransactionFieldsAPI
TransactionFieldsAPI
TransactionFieldsAPI.blob_versioned_hashes
TransactionFieldsAPI.chain_id
TransactionFieldsAPI.data
TransactionFieldsAPI.gas
TransactionFieldsAPI.gas_price
TransactionFieldsAPI.hash
TransactionFieldsAPI.max_fee_per_blob_gas
TransactionFieldsAPI.max_fee_per_gas
TransactionFieldsAPI.max_priority_fee_per_gas
TransactionFieldsAPI.nonce
TransactionFieldsAPI.r
TransactionFieldsAPI.s
TransactionFieldsAPI.to
TransactionFieldsAPI.value
- UnsignedTransactionAPI
- SignedTransactionAPI
SignedTransactionAPI
SignedTransactionAPI.as_dict()
SignedTransactionAPI.check_signature_validity()
SignedTransactionAPI.encode()
SignedTransactionAPI.get_message_for_signing()
SignedTransactionAPI.get_sender()
SignedTransactionAPI.make_receipt()
SignedTransactionAPI.validate()
SignedTransactionAPI.is_signature_valid
SignedTransactionAPI.sender
SignedTransactionAPI.type_id
SignedTransactionAPI.y_parity
- BlockAPI
BlockAPI
BlockAPI.copy()
BlockAPI.from_header()
BlockAPI.get_receipt_builder()
BlockAPI.get_receipts()
BlockAPI.get_transaction_builder()
BlockAPI.hash
BlockAPI.header
BlockAPI.is_genesis
BlockAPI.number
BlockAPI.receipt_builder
BlockAPI.transaction_builder
BlockAPI.transactions
BlockAPI.uncles
BlockAPI.withdrawals
- DatabaseAPI
- AtomicDatabaseAPI
- HeaderDatabaseAPI
HeaderDatabaseAPI
HeaderDatabaseAPI.get_block_header_by_hash()
HeaderDatabaseAPI.get_canonical_block_hash()
HeaderDatabaseAPI.get_canonical_block_header_by_number()
HeaderDatabaseAPI.get_canonical_head()
HeaderDatabaseAPI.get_header_chain_gaps()
HeaderDatabaseAPI.get_score()
HeaderDatabaseAPI.header_exists()
HeaderDatabaseAPI.persist_checkpoint_header()
HeaderDatabaseAPI.persist_header()
HeaderDatabaseAPI.persist_header_chain()
HeaderDatabaseAPI.db
- ChainDatabaseAPI
ChainDatabaseAPI
ChainDatabaseAPI.add_receipt()
ChainDatabaseAPI.add_transaction()
ChainDatabaseAPI.exists()
ChainDatabaseAPI.get()
ChainDatabaseAPI.get_block_transaction_hashes()
ChainDatabaseAPI.get_block_transactions()
ChainDatabaseAPI.get_block_uncles()
ChainDatabaseAPI.get_block_withdrawals()
ChainDatabaseAPI.get_receipt_by_index()
ChainDatabaseAPI.get_receipts()
ChainDatabaseAPI.get_transaction_by_index()
ChainDatabaseAPI.get_transaction_index()
ChainDatabaseAPI.persist_block()
ChainDatabaseAPI.persist_trie_data_dict()
ChainDatabaseAPI.persist_uncles()
ChainDatabaseAPI.persist_unexecuted_block()
ChainDatabaseAPI.db
- GasMeterAPI
- MessageAPI
- OpcodeAPI
- TransactionContextAPI
- MemoryAPI
- StackAPI
- CodeStreamAPI
- StackManipulationAPI
StackManipulationAPI
StackManipulationAPI.stack_pop1_any()
StackManipulationAPI.stack_pop1_bytes()
StackManipulationAPI.stack_pop1_int()
StackManipulationAPI.stack_pop_any()
StackManipulationAPI.stack_pop_bytes()
StackManipulationAPI.stack_pop_ints()
StackManipulationAPI.stack_push_bytes()
StackManipulationAPI.stack_push_int()
- ExecutionContextAPI
ExecutionContextAPI
ExecutionContextAPI.base_fee_per_gas
ExecutionContextAPI.block_number
ExecutionContextAPI.chain_id
ExecutionContextAPI.coinbase
ExecutionContextAPI.difficulty
ExecutionContextAPI.excess_blob_gas
ExecutionContextAPI.gas_limit
ExecutionContextAPI.mix_hash
ExecutionContextAPI.prev_hashes
ExecutionContextAPI.timestamp
- ComputationAPI
ComputationAPI
ComputationAPI.add_child_computation()
ComputationAPI.add_log_entry()
ComputationAPI.apply_child_computation()
ComputationAPI.apply_computation()
ComputationAPI.apply_create_message()
ComputationAPI.apply_message()
ComputationAPI.consume_gas()
ComputationAPI.extend_memory()
ComputationAPI.generate_child_computation()
ComputationAPI.get_accounts_for_deletion()
ComputationAPI.get_gas_meter()
ComputationAPI.get_gas_refund()
ComputationAPI.get_gas_remaining()
ComputationAPI.get_gas_used()
ComputationAPI.get_log_entries()
ComputationAPI.get_opcode_fn()
ComputationAPI.get_precompiles()
ComputationAPI.get_raw_log_entries()
ComputationAPI.get_self_destruct_beneficiaries()
ComputationAPI.memory_copy()
ComputationAPI.memory_read_bytes()
ComputationAPI.memory_write()
ComputationAPI.prepare_child_message()
ComputationAPI.raise_if_error()
ComputationAPI.refund_gas()
ComputationAPI.register_account_for_deletion()
ComputationAPI.return_gas()
ComputationAPI.stack_dup()
ComputationAPI.stack_swap()
ComputationAPI.accounts_to_delete
ComputationAPI.beneficiaries
ComputationAPI.children
ComputationAPI.code
ComputationAPI.contracts_created
ComputationAPI.error
ComputationAPI.is_error
ComputationAPI.is_origin_computation
ComputationAPI.is_success
ComputationAPI.logger
ComputationAPI.msg
ComputationAPI.opcodes
ComputationAPI.output
ComputationAPI.precompiles
ComputationAPI.return_data
ComputationAPI.should_burn_gas
ComputationAPI.should_erase_return_data
ComputationAPI.should_return_gas
ComputationAPI.state
ComputationAPI.transaction_context
- AccountStorageDatabaseAPI
AccountStorageDatabaseAPI
AccountStorageDatabaseAPI.commit()
AccountStorageDatabaseAPI.delete()
AccountStorageDatabaseAPI.discard()
AccountStorageDatabaseAPI.get()
AccountStorageDatabaseAPI.get_accessed_slots()
AccountStorageDatabaseAPI.get_changed_root()
AccountStorageDatabaseAPI.lock_changes()
AccountStorageDatabaseAPI.make_storage_root()
AccountStorageDatabaseAPI.persist()
AccountStorageDatabaseAPI.record()
AccountStorageDatabaseAPI.set()
AccountStorageDatabaseAPI.has_changed_root
- AccountDatabaseAPI
AccountDatabaseAPI
AccountDatabaseAPI.account_exists()
AccountDatabaseAPI.account_has_code_or_nonce()
AccountDatabaseAPI.account_is_empty()
AccountDatabaseAPI.commit()
AccountDatabaseAPI.delete_account()
AccountDatabaseAPI.delete_code()
AccountDatabaseAPI.delete_storage()
AccountDatabaseAPI.discard()
AccountDatabaseAPI.get_balance()
AccountDatabaseAPI.get_code()
AccountDatabaseAPI.get_code_hash()
AccountDatabaseAPI.get_nonce()
AccountDatabaseAPI.get_storage()
AccountDatabaseAPI.has_root()
AccountDatabaseAPI.increment_nonce()
AccountDatabaseAPI.is_address_warm()
AccountDatabaseAPI.is_storage_warm()
AccountDatabaseAPI.lock_changes()
AccountDatabaseAPI.make_state_root()
AccountDatabaseAPI.mark_address_warm()
AccountDatabaseAPI.mark_storage_warm()
AccountDatabaseAPI.persist()
AccountDatabaseAPI.record()
AccountDatabaseAPI.set_balance()
AccountDatabaseAPI.set_code()
AccountDatabaseAPI.set_nonce()
AccountDatabaseAPI.set_storage()
AccountDatabaseAPI.touch_account()
AccountDatabaseAPI.state_root
- TransactionExecutorAPI
- ConfigurableAPI
- StateAPI
StateAPI
StateAPI.account_exists()
StateAPI.account_is_empty()
StateAPI.apply_all_withdrawals()
StateAPI.apply_transaction()
StateAPI.apply_withdrawal()
StateAPI.clear_transient_storage()
StateAPI.commit()
StateAPI.costless_execute_transaction()
StateAPI.delete_account()
StateAPI.delete_code()
StateAPI.delete_storage()
StateAPI.delta_balance()
StateAPI.get_account_db_class()
StateAPI.get_ancestor_hash()
StateAPI.get_balance()
StateAPI.get_code()
StateAPI.get_code_hash()
StateAPI.get_computation()
StateAPI.get_gas_price()
StateAPI.get_nonce()
StateAPI.get_storage()
StateAPI.get_tip()
StateAPI.get_transaction_context()
StateAPI.get_transaction_context_class()
StateAPI.get_transaction_executor()
StateAPI.get_transient_storage()
StateAPI.has_code_or_nonce()
StateAPI.increment_nonce()
StateAPI.is_address_warm()
StateAPI.is_storage_warm()
StateAPI.lock_changes()
StateAPI.make_state_root()
StateAPI.mark_address_warm()
StateAPI.mark_storage_warm()
StateAPI.override_transaction_context()
StateAPI.persist()
StateAPI.revert()
StateAPI.set_balance()
StateAPI.set_code()
StateAPI.set_nonce()
StateAPI.set_storage()
StateAPI.set_transient_storage()
StateAPI.snapshot()
StateAPI.touch_account()
StateAPI.validate_transaction()
StateAPI.account_db_class
StateAPI.base_fee
StateAPI.blob_base_fee
StateAPI.block_number
StateAPI.coinbase
StateAPI.computation_class
StateAPI.difficulty
StateAPI.execution_context
StateAPI.gas_limit
StateAPI.logger
StateAPI.mix_hash
StateAPI.state_root
StateAPI.timestamp
StateAPI.transaction_context_class
StateAPI.transaction_executor_class
- VirtualMachineAPI
VirtualMachineAPI
VirtualMachineAPI.add_receipt_to_header()
VirtualMachineAPI.apply_all_transactions()
VirtualMachineAPI.apply_all_withdrawals()
VirtualMachineAPI.apply_transaction()
VirtualMachineAPI.build_state()
VirtualMachineAPI.compute_difficulty()
VirtualMachineAPI.configure_header()
VirtualMachineAPI.create_execution_context()
VirtualMachineAPI.create_genesis_header()
VirtualMachineAPI.create_header_from_parent()
VirtualMachineAPI.create_transaction()
VirtualMachineAPI.create_unsigned_transaction()
VirtualMachineAPI.execute_bytecode()
VirtualMachineAPI.finalize_block()
VirtualMachineAPI.generate_block_from_parent_header_and_coinbase()
VirtualMachineAPI.get_block()
VirtualMachineAPI.get_block_class()
VirtualMachineAPI.get_block_reward()
VirtualMachineAPI.get_header()
VirtualMachineAPI.get_nephew_reward()
VirtualMachineAPI.get_prev_hashes()
VirtualMachineAPI.get_receipt_builder()
VirtualMachineAPI.get_state_class()
VirtualMachineAPI.get_transaction_builder()
VirtualMachineAPI.get_uncle_reward()
VirtualMachineAPI.import_block()
VirtualMachineAPI.in_costless_state()
VirtualMachineAPI.increment_blob_gas_used()
VirtualMachineAPI.make_receipt()
VirtualMachineAPI.mine_block()
VirtualMachineAPI.pack_block()
VirtualMachineAPI.set_block_transactions_and_withdrawals()
VirtualMachineAPI.transaction_applied_hook()
VirtualMachineAPI.validate_block()
VirtualMachineAPI.validate_header()
VirtualMachineAPI.validate_receipt()
VirtualMachineAPI.validate_seal()
VirtualMachineAPI.validate_seal_extension()
VirtualMachineAPI.validate_transaction_against_header()
VirtualMachineAPI.validate_uncle()
VirtualMachineAPI.chaindb
VirtualMachineAPI.consensus_class
VirtualMachineAPI.consensus_context
VirtualMachineAPI.extra_data_max_bytes
VirtualMachineAPI.fork
VirtualMachineAPI.previous_hashes
VirtualMachineAPI.state
- HeaderChainAPI
HeaderChainAPI
HeaderChainAPI.from_genesis_header()
HeaderChainAPI.get_block_header_by_hash()
HeaderChainAPI.get_canonical_block_hash()
HeaderChainAPI.get_canonical_block_header_by_number()
HeaderChainAPI.get_canonical_head()
HeaderChainAPI.get_headerdb_class()
HeaderChainAPI.header_exists()
HeaderChainAPI.import_header()
HeaderChainAPI.chain_id
HeaderChainAPI.header
HeaderChainAPI.vm_configuration
- ChainAPI
ChainAPI
ChainAPI.build_block_with_transactions_and_withdrawals()
ChainAPI.create_header_from_parent()
ChainAPI.create_transaction()
ChainAPI.create_unsigned_transaction()
ChainAPI.estimate_gas()
ChainAPI.from_genesis()
ChainAPI.from_genesis_header()
ChainAPI.get_ancestors()
ChainAPI.get_block()
ChainAPI.get_block_by_hash()
ChainAPI.get_block_by_header()
ChainAPI.get_block_header_by_hash()
ChainAPI.get_canonical_block_by_number()
ChainAPI.get_canonical_block_hash()
ChainAPI.get_canonical_block_header_by_number()
ChainAPI.get_canonical_head()
ChainAPI.get_canonical_transaction()
ChainAPI.get_canonical_transaction_by_index()
ChainAPI.get_canonical_transaction_index()
ChainAPI.get_chaindb_class()
ChainAPI.get_score()
ChainAPI.get_transaction_receipt()
ChainAPI.get_transaction_receipt_by_index()
ChainAPI.get_transaction_result()
ChainAPI.get_vm()
ChainAPI.get_vm_class()
ChainAPI.get_vm_class_for_block_number()
ChainAPI.import_block()
ChainAPI.validate_block()
ChainAPI.validate_chain()
ChainAPI.validate_chain_extension()
ChainAPI.validate_receipt()
ChainAPI.validate_seal()
ChainAPI.validate_uncles()
ChainAPI.chain_id
ChainAPI.chaindb
ChainAPI.consensus_context_class
ChainAPI.vm_configuration
- MiningChainAPI
- MiningHeaderAPI
- Chain
- BaseChain
- Chain
Chain
Chain.chaindb_class
Chain.consensus_context_class
Chain.build_block_with_transactions_and_withdrawals()
Chain.create_header_from_parent()
Chain.create_transaction()
Chain.create_unsigned_transaction()
Chain.ensure_header()
Chain.estimate_gas()
Chain.from_genesis()
Chain.from_genesis_header()
Chain.get_ancestors()
Chain.get_block()
Chain.get_block_by_hash()
Chain.get_block_by_header()
Chain.get_block_header_by_hash()
Chain.get_canonical_block_by_number()
Chain.get_canonical_block_hash()
Chain.get_canonical_block_header_by_number()
Chain.get_canonical_head()
Chain.get_canonical_transaction()
Chain.get_canonical_transaction_by_index()
Chain.get_canonical_transaction_index()
Chain.get_chaindb_class()
Chain.get_score()
Chain.get_transaction_receipt()
Chain.get_transaction_receipt_by_index()
Chain.get_transaction_result()
Chain.get_vm()
Chain.import_block()
Chain.persist_block()
Chain.validate_block()
Chain.validate_receipt()
Chain.validate_seal()
Chain.validate_uncles()
Chain.gas_estimator
Chain.logger
- MiningChain
- DataBase
- Exceptions
BlockNotFound
CanonicalHeadNotFound
CheckpointsMustBeCanonical
ContractCreationCollision
FullStack
GapTrackingCorrupted
Halt
HeaderNotFound
IncorrectContractCreationAddress
InsufficientFunds
InsufficientStack
InvalidInstruction
InvalidJumpDestination
OutOfBoundsRead
OutOfGas
ParentNotFound
PyEVMError
ReceiptNotFound
ReservedBytesInCode
Revert
StackDepthLimit
StateRootNotFound
TransactionNotFound
UnrecognizedTransactionType
VMError
VMNotFound
WriteProtection
- RLP
- Tools
- Virtual Machine