Skip to main content
Version: Next

eth_getBlockAccessList

Returns the EIP-7928 block access list of the given block, decoded into JSON. Every account entry contains all six fields, with empty change lists encoded as empty arrays, and entries follow the ordering of the canonical RLP encoding. The result is `null` if the block is unknown or the `pending` tag is requested. For blocks that predate the Amsterdam fork clients MUST return the `-32001: Resource not found` error, and for blocks whose access list has been pruned clients MUST return the `4444: Pruned history unavailable` error.

Returns the block access list for a given block.

Parameters (by position)

Block string or string or string required


Show Option 1 Block number string

Block number fields

Block string required

Block number

Match pattern: ^0x(0|[1-9a-f][0-9a-f]*)$


Show Option 2 Block tag string

Block tag fields

earliest: The lowest numbered block the client has available; finalized: The most recent crypto-economically secure block, cannot be re-orged outside of manual intervention driven by community coordination; safe: The most recent block that is safe from re-orgs under honest majority and certain synchronicity assumptions; latest: The most recent block in the canonical chain observed by the client, this block may be re-orged out of the canonical chain even under healthy/normal conditions; pending: A sample next block built by the client on top of latest and containing the set of transactions usually taken from local mempool. Before the merge transition is finalized, any call querying for finalized or safe block MUST be responded to with -39001: Unknown block error

Block string required

earliest: The lowest numbered block the client has available; finalized: The most recent crypto-economically secure block, cannot be re-orged outside of manual intervention driven by community coordination; safe: The most recent block that is safe from re-orgs under honest majority and certain synchronicity assumptions; latest: The most recent block in the canonical chain observed by the client, this block may be re-orged out of the canonical chain even under healthy/normal conditions; pending: A sample next block built by the client on top of latest and containing the set of transactions usually taken from local mempool. Before the merge transition is finalized, any call querying for finalized or safe block MUST be responded to with -39001: Unknown block error

Allowed values: earliest finalized safe latest pending


Show Option 3 Block hash string

Block hash fields

Block string required

Block hash

Match pattern: ^0x[0-9a-f]{64}$


Result

Block access list null or array<object>


Show Option 1 Not Found (null) null

Not Found (null) fields

Block access list null

Not Found (null)


Show Option 2 Block access list array

Block access list fields

Block access list array<object>

Account access


Show Block access list object

Block access list fields

  • address string required

    hex encoded address

    Match pattern: ^0x[0-9a-fA-F]{40}$


  • balanceChanges array<object> required

    Balance change


    Show balanceChanges object

    balanceChanges fields

    • index string required

      hex encoded 32 bit unsigned integer

      Match pattern: ^0x(0|[1-9a-f][0-9a-f]{0,7})$


    • value string required

      hex encoded 256 bit unsigned integer

      Match pattern: ^0x(0|[1-9a-f][0-9a-f]{0,63})$


    • additionalProperties false


  • codeChanges array<object> required

    Code change


    Show codeChanges object

    codeChanges fields

    • code string required

      hex encoded bytes

      Match pattern: ^0x[0-9a-f]*$


    • index string required

      hex encoded 32 bit unsigned integer

      Match pattern: ^0x(0|[1-9a-f][0-9a-f]{0,7})$


    • additionalProperties false


  • nonceChanges array<object> required

    Nonce change


    Show nonceChanges object

    nonceChanges fields

    • index string required

      hex encoded 32 bit unsigned integer

      Match pattern: ^0x(0|[1-9a-f][0-9a-f]{0,7})$


    • value string required

      hex encoded 64 bit unsigned integer

      Match pattern: ^0x(0|[1-9a-f][0-9a-f]{0,15})$


    • additionalProperties false


  • storageChanges array<object> required

    Slot changes


    Show storageChanges object

    storageChanges fields

    • changes array<object> required

      Storage change


      Show changes object

      changes fields

      • index string required

        hex encoded 32 bit unsigned integer

        Match pattern: ^0x(0|[1-9a-f][0-9a-f]{0,7})$


      • value string required

        32 byte hex value

        Match pattern: ^0x[0-9a-f]{64}$


      • additionalProperties false


    • key string required

      32 byte hex value

      Match pattern: ^0x[0-9a-f]{64}$


    • additionalProperties false


  • storageReads array<string> required

    32 byte hex value

    Match pattern: ^0x[0-9a-f]{64}$


  • additionalProperties false


Errors

Error code: 4444

  • code

    4444

  • message

    Pruned history unavailable

Error code: -32001

  • code

    -32001

  • message

    Resource not found

Examples

eth_getBlockAccessList example

Request

{
"params": [
"latest"
]
}

Response

[
{
"address": "0xa94f5374fce5edbc8e2a8697c15331677e6ebf0b",
"balanceChanges": [
{
"index": "0x0",
"value": "0x56bc75e2d63100000"
},
{
"index": "0x1",
"value": "0x56bc75e2d63000000"
}
],
"codeChanges": [],
"nonceChanges": [
{
"index": "0x0",
"value": "0x0"
},
{
"index": "0x1",
"value": "0x1"
}
],
"storageChanges": [
{
"changes": [
{
"index": "0x0",
"value": "0x0000000000000000000000000000000000000000000000000000000000000000"
},
{
"index": "0x1",
"value": "0x0000000000000000000000000000000000000000000000000000000000000100"
}
],
"key": "0x0000000000000000000000000000000000000000000000000000000000000000"
}
],
"storageReads": []
}
]