EvmHistoryOptions
Defined in: history-evm/src/types.ts:13
Options for createEvmHistory: the chain, explorer keys or a proxy, and limits.
Properties
Section titled “Properties”alchemyApiKey?
Section titled “alchemyApiKey?”
optionalalchemyApiKey?:string
Defined in: history-evm/src/types.ts:43
Alchemy API key (free tier: 30M CU/month, no card). Enables the alchemy backend —
alchemy_getAssetTransfers (120 CU) for the lists plus one JSON-RPC batch of
eth_getTransactionByHash + eth_getTransactionReceipt per page for fee / status / calldata.
The only free source on Base and BSC. Every network must be enabled for the app in the
Alchemy dashboard first; otherwise the backend answers <NETWORK> is not enabled for this app
and the source falls through to the next backend.
alchemyComputeUnitsPerSecond?
Section titled “alchemyComputeUnitsPerSecond?”
optionalalchemyComputeUnitsPerSecond?:number
Defined in: history-evm/src/types.ts:49
Alchemy compute units per second, shared per key across every chain (a batch costs the sum of its calls). Default 300 — the free tier’s 500 CU/s with headroom.
alchemyNetwork?
Section titled “alchemyNetwork?”
optionalalchemyNetwork?:string
Defined in: history-evm/src/types.ts:45
Alchemy network slug override (base-mainnet); default from ALCHEMY_NETWORKS[chainId]. Also enables the backend on chains the table does not list for the Transfers API.
alchemyUrl?
Section titled “alchemyUrl?”
optionalalchemyUrl?:string
Defined in: history-evm/src/types.ts:47
Override the Alchemy host template; {network} and {key} are substituted. Default https://{network}.g.alchemy.com/v2/{key}.
blockscoutProApiKey?
Section titled “blockscoutProApiKey?”
optionalblockscoutProApiKey?:string
Defined in: history-evm/src/types.ts:30
Blockscout PRO multichain API key (proapi_…, free tier 100K credits/day, 5 rps, every
Blockscout chain through one key). Etherscan-format (chain_id= instead of chainid=), so it
covers chains where the free Etherscan key is refused (Base, Optimism, BSC, Avalanche, Gnosis,
Arc, Robinhood) and ones Etherscan v2 lacks (Scroll, zkSync, Ink, Plume). Tried after Etherscan.
blockscoutProRateLimit?
Section titled “blockscoutProRateLimit?”
optionalblockscoutProRateLimit?:number
Defined in: history-evm/src/types.ts:34
Blockscout PRO requests per second (free tier: 5). Shared per key across chains.
blockscoutProUrl?
Section titled “blockscoutProUrl?”
optionalblockscoutProUrl?:string
Defined in: history-evm/src/types.ts:32
Override the Blockscout PRO endpoint. Default https://api.blockscout.com/v2/api.
blockscoutUrl?
Section titled “blockscoutUrl?”
optionalblockscoutUrl?:string|null
Defined in: history-evm/src/types.ts:51
Blockscout instance root (https://eth.blockscout.com). Overrides / adds to the built-in table; null disables the built-in entry.
chainId
Section titled “chainId”chainId:
number
Defined in: history-evm/src/types.ts:15
EVM chain id (1, 8453, …). The source’s chain is eip155:<chainId>.
etherscanApiKey?
Section titled “etherscanApiKey?”
optionaletherscanApiKey?:string
Defined in: history-evm/src/types.ts:21
Etherscan v2 API key. Without it Etherscan is never called (since 2026 the v2 API rejects keyless requests) and the source relies on the keyless fallbacks (Routescan / Blockscout) of the chain, if any.
etherscanCompatUrl?
Section titled “etherscanCompatUrl?”
optionaletherscanCompatUrl?:string|null
Defined in: history-evm/src/types.ts:53
Keyless Etherscan-format endpoint (Routescan style). Overrides / adds to the built-in table; null disables the built-in entry.
etherscanUrl?
Section titled “etherscanUrl?”
optionaletherscanUrl?:string
Defined in: history-evm/src/types.ts:23
Override the Etherscan v2 endpoint (e.g. a proxy that adds the key server-side). Default https://api.etherscan.io/v2/api.
fetch?
Section titled “fetch?”
optionalfetch?:FetchLike
Defined in: history-evm/src/types.ts:55
Fetch implementation; defaults to globalThis.fetch.
prefer?
Section titled “prefer?”
optionalprefer?:"etherscan"|"alchemy"|"blockscout"
Defined in: history-evm/src/types.ts:59
Try Blockscout (or Alchemy) before Etherscan when both exist (saves Etherscan quota / the only free source on Base). Default: Etherscan first.
rateLimit?
Section titled “rateLimit?”
optionalrateLimit?:number
Defined in: history-evm/src/types.ts:57
Etherscan requests per second for this key. Default 3 (the free tier’s limit; Lite 5, Standard 10). Shared by every source using the same key — 25 chains do not multiply it.
timeoutMs?
Section titled “timeoutMs?”
optionaltimeoutMs?:number
Defined in: history-evm/src/types.ts:61
Per-request timeout, ms. Default 15 000.