diff --git a/graphql/graphql.go b/graphql/graphql.go index 9b9fffb041..e57389a625 100644 --- a/graphql/graphql.go +++ b/graphql/graphql.go @@ -1105,6 +1105,17 @@ func (b *Block) SlotNumber(ctx context.Context) (*hexutil.Uint64, error) { return &ret, nil } +func (b *Block) BlockAccessListHash(ctx context.Context) (*common.Hash, error) { + header, err := b.resolveHeader(ctx) + if err != nil { + return nil, err + } + if header.BlockAccessListHash == nil { + return nil, nil + } + return header.BlockAccessListHash, nil +} + // BlockFilterCriteria encapsulates criteria passed to a `logs` accessor inside // a block. type BlockFilterCriteria struct { diff --git a/graphql/schema.go b/graphql/schema.go index 15e4557915..d275ca6c2a 100644 --- a/graphql/schema.go +++ b/graphql/schema.go @@ -276,6 +276,11 @@ const schema string = ` blobGasUsed: Long # ExcessBlobGas is a running total of blob gas consumed in excess of the target, prior to the block. excessBlobGas: Long + # SlotNumber is the slot number of the block. + slotNumber: Long + # BlockAccessListHash is the hash of the EIP-7928 block-level access list. + # If the access list is unavailable for this block, this field will be null. + blockAccessListHash: Bytes32 } # CallData represents the data associated with a local contract call.