
RPC / Node·EVM · Solana · Multi-chain
Alchemy
Hosted RPC plus enhanced APIs (NFT, Token, Transfers, Webhooks, Account Abstraction) across EVM chains and Solana. One SDK, many networks.
- 01EVM RPC at scale
- 02NFT and token data
- 03transfer history
- 04webhooks / notify
- 05account abstraction (smart wallets)
- pnpm add alchemy-sdk
| Variable | Scope | Description |
|---|---|---|
| ALCHEMY_API_KEY | Server | Alchemy API key for the target network. Server-side only. |
| NEXT_PUBLIC_ALCHEMY_API_KEY | Client | Optional client-safe key — only expose a key locked by allowed-origin/HTTP referrer in the Alchemy dashboard. |
Use the `alchemy-sdk` package. Initialize once per network: `const alchemy = new Alchemy({ apiKey: process.env.ALCHEMY_API_KEY, network: Network.ETH_MAINNET })`. Use `alchemy.core.getTokenBalances(address)` for ERC-20 balances, `alchemy.nft.getNftsForOwner(address)` for NFTs, and `alchemy.core.getAssetTransfers({ fromAddress, category: [AssetTransfersCategory.ERC20] })` for history. For webhooks, prefer the Notify REST API. Pin the `Network` enum per chain rather than building URLs by hand.
- ⚑The `alchemyplatform/alchemy-sdk-js` repo was archived in early 2026 (last push Feb 2026) — the `alchemy-sdk` npm package (currently 3.x) is published from that archived repo and is no longer actively maintained; for new account-abstraction work prefer `alchemyplatform/aa-sdk` (Smart Wallets), and check Alchemy's docs for the current recommended client before pinning.
- ⚑`getAssetTransfers` is EVM-only and has a hard 1000-result page cap — paginate with `pageKey` or it silently truncates.
- ⚑Free tier is metered in Compute Units (CUs), not raw requests; NFT and trace methods burn far more CUs than `eth_call` and will exhaust quotas faster than expected.
- ⚑Solana support is a separate product surface — many EVM-style enhanced methods (Transfers API, Token API) do not exist for Solana; use the Solana-specific endpoints.
- ⚑Never ship the raw API key in a client bundle without configuring an allowlist in the dashboard — leaked keys get rate-limit-drained within hours.