Skip to content
docs

AlchemyClientOptions

Defined in: history-evm/src/alchemy.ts:26

Alchemy backend: alchemy_getAssetTransfers (Transfers API) for the address lists, plain JSON-RPC on the same endpoint for what the Transfers API lacks (fee, status, calldata). Free tier: 30M CU / month; a Transfers call is 120 CU, eth_getTransactionByHash 15 CU, eth_getTransactionReceipt 15 CU.

Lists: one per direction (fromAddress, toAddress), both paged by block (toBlock = below - 1, order: desc, maxCount = limit) exactly like the Etherscan lists. The API’s own pageKey is deliberately NOT used as the list cursor: measured 2026-10-14 on base-mainnet, a request carrying a pageKey ignores toBlock, an unknown / expired pageKey (TTL 10 min) silently restarts from the first page, and a malformed one is a 400 — none of which fits a cursor that may be resumed hours later or re-fetched with a narrower window. Block paging has no TTL and is idempotent.

apiKey: string

Defined in: history-evm/src/alchemy.ts:29


bucket: TokenBucket

Defined in: history-evm/src/alchemy.ts:35


fetch: FetchLike

Defined in: history-evm/src/alchemy.ts:34


internal: boolean

Defined in: history-evm/src/alchemy.ts:33

Ask for the internal category (only where Alchemy supports it; elsewhere the call is rejected).


network: string

Defined in: history-evm/src/alchemy.ts:28

Network slug, e.g. base-mainnet.


timeoutMs: number

Defined in: history-evm/src/alchemy.ts:36


optional urlTemplate?: string

Defined in: history-evm/src/alchemy.ts:31

https://{network}.g.alchemy.com/v2/{key} by default.