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
MiningHeaderAPIMiningHeaderAPI.as_dict()MiningHeaderAPI.build_changeset()MiningHeaderAPI.base_fee_per_gasMiningHeaderAPI.block_numberMiningHeaderAPI.bloomMiningHeaderAPI.coinbaseMiningHeaderAPI.difficultyMiningHeaderAPI.extra_dataMiningHeaderAPI.gas_limitMiningHeaderAPI.gas_usedMiningHeaderAPI.hashMiningHeaderAPI.hex_hashMiningHeaderAPI.is_genesisMiningHeaderAPI.mining_hashMiningHeaderAPI.parent_hashMiningHeaderAPI.receipt_rootMiningHeaderAPI.state_rootMiningHeaderAPI.timestampMiningHeaderAPI.transaction_rootMiningHeaderAPI.uncles_hashMiningHeaderAPI.withdrawals_root
- BlockHeaderAPI
- LogAPI
- ReceiptAPI
- BaseTransactionAPI
- TransactionFieldsAPI
TransactionFieldsAPITransactionFieldsAPI.authorization_listTransactionFieldsAPI.blob_versioned_hashesTransactionFieldsAPI.chain_idTransactionFieldsAPI.dataTransactionFieldsAPI.gasTransactionFieldsAPI.gas_priceTransactionFieldsAPI.hashTransactionFieldsAPI.max_fee_per_blob_gasTransactionFieldsAPI.max_fee_per_gasTransactionFieldsAPI.max_priority_fee_per_gasTransactionFieldsAPI.nonceTransactionFieldsAPI.rTransactionFieldsAPI.sTransactionFieldsAPI.toTransactionFieldsAPI.value
- UnsignedTransactionAPI
- SignedTransactionAPI
SignedTransactionAPISignedTransactionAPI.as_dict()SignedTransactionAPI.check_signature_validity()SignedTransactionAPI.encode()SignedTransactionAPI.get_message_for_signing()SignedTransactionAPI.get_sender()SignedTransactionAPI.make_receipt()SignedTransactionAPI.validate()SignedTransactionAPI.is_signature_validSignedTransactionAPI.senderSignedTransactionAPI.type_idSignedTransactionAPI.y_parity
- BlockAPI
BlockAPIBlockAPI.copy()BlockAPI.from_header()BlockAPI.get_receipt_builder()BlockAPI.get_receipts()BlockAPI.get_transaction_builder()BlockAPI.block_requestsBlockAPI.hashBlockAPI.headerBlockAPI.is_genesisBlockAPI.numberBlockAPI.receipt_builderBlockAPI.transaction_builderBlockAPI.transactionsBlockAPI.unclesBlockAPI.withdrawals
- DatabaseAPI
- AtomicDatabaseAPI
- HeaderDatabaseAPI
HeaderDatabaseAPIHeaderDatabaseAPI.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
ChainDatabaseAPIChainDatabaseAPI.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()
- GasMeterAPI
- MessageAPI
MessageAPIMessageAPI.codeMessageAPI.code_addressMessageAPI.create_addressMessageAPI.dataMessageAPI.data_as_bytesMessageAPI.depthMessageAPI.gasMessageAPI.is_createMessageAPI.is_delegationMessageAPI.is_staticMessageAPI.refundMessageAPI.senderMessageAPI.should_transfer_valueMessageAPI.storage_addressMessageAPI.toMessageAPI.value
- OpcodeAPI
- TransactionContextAPI
- MemoryAPI
- StackAPI
- CodeStreamAPI
- StackManipulationAPI
StackManipulationAPIStackManipulationAPI.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
ExecutionContextAPIExecutionContextAPI.base_fee_per_gasExecutionContextAPI.block_numberExecutionContextAPI.chain_idExecutionContextAPI.coinbaseExecutionContextAPI.difficultyExecutionContextAPI.excess_blob_gasExecutionContextAPI.gas_limitExecutionContextAPI.mix_hashExecutionContextAPI.prev_hashesExecutionContextAPI.timestamp
- ComputationAPI
ComputationAPIComputationAPI.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_deleteComputationAPI.beneficiariesComputationAPI.childrenComputationAPI.codeComputationAPI.contracts_createdComputationAPI.data_floor_gasComputationAPI.errorComputationAPI.is_errorComputationAPI.is_origin_computationComputationAPI.is_successComputationAPI.loggerComputationAPI.msgComputationAPI.opcodesComputationAPI.outputComputationAPI.precompilesComputationAPI.return_dataComputationAPI.should_burn_gasComputationAPI.should_erase_return_dataComputationAPI.should_return_gasComputationAPI.stateComputationAPI.transaction_context
- AccountStorageDatabaseAPI
AccountStorageDatabaseAPIAccountStorageDatabaseAPI.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
AccountDatabaseAPIAccountDatabaseAPI.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
StateAPIStateAPI.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.process_set_code_authorizations()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_classStateAPI.base_feeStateAPI.blob_base_feeStateAPI.block_numberStateAPI.coinbaseStateAPI.computation_classStateAPI.difficultyStateAPI.execution_contextStateAPI.gas_limitStateAPI.loggerStateAPI.mix_hashStateAPI.state_rootStateAPI.timestampStateAPI.transaction_context_classStateAPI.transaction_executor_class
- VirtualMachineAPI
VirtualMachineAPIVirtualMachineAPI.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.chaindbVirtualMachineAPI.consensus_classVirtualMachineAPI.consensus_contextVirtualMachineAPI.extra_data_max_bytesVirtualMachineAPI.forkVirtualMachineAPI.previous_hashesVirtualMachineAPI.state
- HeaderChainAPI
HeaderChainAPIHeaderChainAPI.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_idHeaderChainAPI.headerHeaderChainAPI.vm_configuration
- ChainAPI
ChainAPIChainAPI.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_idChainAPI.chaindbChainAPI.consensus_context_classChainAPI.vm_configuration
- MiningChainAPI
- MiningHeaderAPI
- Chain
- BaseChain
- Chain
ChainChain.chaindb_classChain.consensus_context_classChain.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_estimatorChain.logger
- MiningChain
- DataBase
- Exceptions
BlockNotFoundCanonicalHeadNotFoundCheckpointsMustBeCanonicalContractCreationCollisionFullStackGapTrackingCorruptedHaltHeaderNotFoundIncorrectContractCreationAddressInsufficientFundsInsufficientStackInvalidInstructionInvalidJumpDestinationOutOfBoundsReadOutOfGasParentNotFoundPyEVMErrorReceiptNotFoundReservedBytesInCodeRevertStackDepthLimitStateRootNotFoundTransactionNotFoundUnrecognizedTransactionTypeVMErrorVMNotFoundWriteProtection
- RLP
- Tools
- Virtual Machine