Pre-alphaWork in progress
Skip to content

eth_createAccessList ​

Generates an access list for a transaction.

Ethereum specification · All supported methods

Parameters ​

Parameters are positional, in the order below.

ParameterTypeRequiredDescription
TransactionTransaction objectYesTransaction fields for the call.
BlockBlock number, tag, or EIP-1898 hash selectorNoThe state is the one after the block has been executed.

Transaction fields ​

FieldMeaning
fromSender address used during execution
toDestination address; omit for contract creation where supported
data or inputEncoded call data or contract creation code; use one field
valueValue transferred in wei, as a hexadecimal quantity
gasGas allowance for the simulation, as a hexadecimal quantity
gasPriceLegacy gas price in wei; use instead of EIP-1559 fee fields
maxFeePerGas, maxPriorityFeePerGasEIP-1559 fee limits in wei, where applicable
accessListAddresses and storage keys supplied for execution

Return value ​

An object containing the generated accessList, the estimated gasUsed, and an error field when execution reports an error.

The returned object includes these fields:

FieldTypeDescription
accessListaccessListAddresses and storage keys accessed by the transaction.
errorerrorExecution error, when the simulation reports one.
gasUsedHexadecimal quantityExecution gas consumed.

Example ​

Replace <gateway-url> with your gateway base URL and <service-url> with the chain’s service path, such as service/ethereum.

sh
curl -X POST "<gateway-url>/<service-url>" \
  -H "Content-Type: application/json" \
  --data '{"jsonrpc":"2.0","id":1,"method":"eth_createAccessList","params":[{"from":"0xaea8f8f781326bfe6a7683c2bd48dd6aa4d3ba63","input":"0x608060806080608155"},"latest"]}'

Illustrative response; values depend on the selected network and request:

json
{
  "jsonrpc": "2.0",
  "id": 1,
  "result": {
    "accessList": [
      {
        "address": "0xa02457e5dfd32bda5fc7e1f1b008aa5979568150",
        "storageKeys": [
          "0x0000000000000000000000000000000000000000000000000000000000000081"
        ]
      }
    ],
    "gasUsed": "0x125f8"
  }
}

Direct behavior ​

State at the network head and its 128 preceding blocks is available through the recent service. Older state requests are automatically routed to providers with archive state.

Requests using latest follow Direct’s reference-block rules. The selected reference is preserved during recovery; separate requests can see a newer reference.

Limits ​

Simulations allow up to 30 million gas per call. Omitted gas uses that ceiling; an explicit higher allowance is rejected rather than silently reduced. State and block overrides are not included in the supported contract.

There is no separate address or storage-key count limit; the complete generated list must fit the response ceiling.

For providers ​

Support the recent-state window and the covered EIP-1898 selectors, including requireCanonical. Historical requests require verified archive state.

This method is checked independently as an optional method capability. Failure does not disqualify ordinary RPC service. Historical coverage is checked in combination with the relevant history capability.

See provider qualification for checks and continued eligibility.

Unstoppable Infrastructure.