Skip to content

Home

About

A Python client for interacting with the Ethereum Beacon Chain API

Beacon Chain API Reference

Ethereum Consensus Specification

Ethereum Consensus Specification Annotated

This implementation also leans on types implemented here

Installation

pip install beacon-client-py

Simple Example

from beacon_client.api import BeaconChainAPI


client = BeaconChainAPI("http://localhost:5052")
client.get_headers_from_block_id(block_id="head")

Streaming Example

for event in client.stream_events(head=True, block=True, attestation=True):
    match event.event:
        case "head":
            print(client.parse_head(event.data))
        case "block":
            print(client.parse_block(event.data))
        case "attestation":
            print(client.parse_attestation(event.data))
        case other:
            pass