Providers
Providers make it easy to add well-known third-parties RPC endpoints quickly. Here are the supported providers:
repositoryA special provider to automatically add "public" RPC endpoints for 2,000+ EVM chains.erpcAccepts erpc.cloud endpoint and automatically adds all their EVM chains.alchemyAccepts alchemy.com api key and automatically adds all their EVM chains.drpcAccepts drpc.org api key and automatically adds all their EVM chains.blastapiAccepts blastapi.io api key and automatically adds all their EVM chains.thirdwebAccepts thirdweb.com client-id and automatically adds all their EVM chains.infuraAccepts infura.io api key and automatically adds all their EVM chains.envioAccepts envio.dev rpc endpoint and automatically adds all chains by HyperRPC.pimlicoAccepts pimlico.io rpc endpoint for account-abstraction (ERC-4337) support.etherspotAccepts etherspot.io rpc endpoint for account-abstraction (ERC-4337) support.dwellirAccepts dwellir.com api key and automatically adds all their EVM chains.conduitAccepts conduit.xyz api key and automatically adds all their EVM chains.superchainAccepts superchain registry (opens in a new tab) and automatically adds all chains from it.chainstackAccepts chainstack.com api key and automatically adds all their EVM chains.onfinalityAccepts onfinality.io api key and automatically adds all their EVM chains.tenderlyAccepts tenderly.co api key and automatically adds all their EVM chains.blockpiAccepts blockpi.io api key and automatically adds all their EVM chains.ankrAccepts ankr.com api key and automatically adds all their EVM chains.quicknodeAccepts quicknode.com api key and automatically adds all their EVM chains.
eRPC supports any EVM-compatible JSON-RPC endpoint when using evm type.
Simple endpoints
repository
This special provider read a remote repository (a simple JSON file) that contains a list of RPC endpoints for any EVM chain. This allows automatic and lazy-loading of EVM chains on "first request":
eRPC design aims to be robust towards any number of endpoints in terms of failures or response times, but it is recommended to test before you use this provider in production.
# ...
projects:
- id: main
# ...
upstreams:
- endpoint: repository://evm-public-endpoints.erpc.cloudeRPC team regularly updates an IPFS file containing 4,000+ public endpoints from chainlist.org (opens in a new tab), chainid.network (opens in a new tab) and viem library (opens in a new tab), which is pointed to by https://evm-public-endpoints.erpc.cloud (opens in a new tab) domain.
alchemy
Built for Alchemy (opens in a new tab) 3rd-party provider to make it easier to import "all supported evm chains" with just an API-KEY.
# ...
projects:
- id: main
# ...
upstreams:
- endpoint: alchemy://YOUR_ALCHEMY_API_KEY
# ...drpc
Built for dRPC (opens in a new tab) 3rd-party provider to make it easier to import "all supported evm chains" with just an API-KEY.
# ...
projects:
- id: main
# ...
upstreams:
- endpoint: drpc://YOUR_DRPC_API_KEY
# ...erpc
Built for eRPC Cloud (opens in a new tab) endpoints to make it easier to connect to eRPC-hosted RPC services. You don't have to pass chainId as that will be automatically detected based on the request you send.
# ...
projects:
- id: main
# ...
upstreams:
# With project and architecture specified
- endpoint: erpc://xxx.aws.erpc.cloud/project/evm
# With authentication secret (optional)
- endpoint: erpc://xxx.aws.erpc.cloud/project/evm?secret=xxxxxblastapi
Built for BlastAPI (opens in a new tab) 3rd-party provider to make it easier to import "all supported evm chains" with just an API-KEY.
# ...
projects:
- id: main
# ...
upstreams:
- endpoint: blastapi://YOUR_BLASTAPI_API_KEY
# ...infura
Built for Infura (opens in a new tab) 3rd-party provider to make it easier to import "all supported evm chains" with just an API-KEY.
# ...
projects:
- id: main
# ...
upstreams:
- endpoint: infura://YOUR_INFURA_API_KEY
# ...thirdweb
Built for Thirdweb (opens in a new tab) 3rd-party provider to make it easier to import "all supported evm chains" with just a CLIENT-ID.
# ...
projects:
- id: main
# ...
upstreams:
- endpoint: thirdweb://YOUR_THIRDWEB_CLIENT_ID
# ...For production traffic consult with Thirdweb team about the chains you are goin to use and amount of traffic you expect to handle.
envio
Envio HyperRPC (opens in a new tab) service provides a higher-performance alternative for certain read methods. When handling requests if a method is supported by HyperRPC (opens in a new tab), then this upstream may be used.
# ...
projects:
- id: main
# ...
upstreams:
- endpoint: envio://rpc.hypersync.xyz
# ...For indexing use-cases it is recommended to this upstream. This will automatically add all supported EVM chains by HyperRPC.
pimlico
Pimlico (opens in a new tab) adds account-abstraction (ERC-4337) support to your eRPC instance. With this upstream added when a AA-related request arrives it'll be forwarded to Pimlico, which allows you to use the same RPC endpoint for both usual eth_* methods along with ERC-4337 methods.
# ...
projects:
- id: main
# ...
upstreams:
- endpoint: pimlico://public
# Or provide your API-KEY as:
# endpoint: pimlico://xxxxxmy-api-key
# ...etherspot
Etherspot (opens in a new tab) adds account-abstraction (ERC-4337) support to your eRPC instance. With this upstream added when a AA-related request arrives it'll be forwarded to Etherspot, which allows you to use the same RPC endpoint for both usual eth_* methods along with ERC-4337 methods.
# ...
projects:
- id: main
# ...
upstreams:
- endpoint: etherspot://public
# Or provide your API-KEY as:
# endpoint: etherspot://xxxxxmy-api-key
# ...dwellir
Built for Dwellir (opens in a new tab) 3rd-party provider to make it easier to import their supported EVM chains with just an API-KEY.
You can obtain an API key by registering at dashboard.dwellir.com/register (opens in a new tab).
# ...
projects:
- id: main
# ...
upstreams:
- endpoint: dwellir://YOUR_DWELLIR_API_KEY
# Optional: Limit to specific chains if needed
# onlyNetworks:
# - evm:1 # Ethereum Mainnet
# - evm:137 # Polygon Mainnet
# ...conduit
Built for Conduit (opens in a new tab) rollup platform to make it easier to import all their rollup EVM chains with just an API key.
# ...
projects:
- id: main
# ...
upstreams:
- endpoint: conduit://YOUR_CONDUIT_API_KEY
# ...superchain
This provider accepts superchain registry json file (e.g github.com/ethereum-optimism/superchain-registry/main/chainList.json (opens in a new tab)) and automatically adds all chains from it.
Note: If you are using a github URL, you can simply use the shorthand of superchain://github.com/org/repo/<branch>/chainList.json. if your url includes blob, t will be automatically stripped.
# ...
projects:
- id: main
# ...
upstreams:
- endpoint: superchain://github.com/ethereum-optimism/superchain-registry/main/chainList.json
# ...tenderly
Built for Tenderly (opens in a new tab) 3rd-party provider to make it easier to import "all supported evm chains" with just an API key.
# ...
projects:
- id: main
# ...
upstreams:
- endpoint: tenderly://YOUR_TENDERLY_API_KEY
# ...For production traffic consult with Tenderly team about the chains you are going to use and amount of traffic you expect to handle.
chainstack
Built for Chainstack (opens in a new tab) 3rd-party provider to make it easier to import "all supported evm chains" with just an API key.
See also Chainstack docs: Using eRPC with Chainstack: Quickstart (opens in a new tab).
This key must be created using Platform API key (opens in a new tab) settings page.
# ...
projects:
- id: main
# ...
upstreams:
# Simple usage with just API key
- endpoint: chainstack://YOUR_CHAINSTACK_PLATFORM_API_KEY
# ...
# With query parameters for filtering
- endpoint: chainstack://YOUR_CHAINSTACK_PLATFORM_API_KEY?project=PROJECT_ID&organization=ORG_ID®ion=us-east-1&provider=aws&type=dedicated
# ...Chainstack supports a wide range of EVM-compatible networks. For production traffic, ensure your Chainstack subscription plan supports the expected load and number of networks you plan to use.
Supported filter parameters:
project: Filter by project IDorganization: Filter by organization IDregion: Filter by region (e.g.,asia-southeast1,ap-southeast-1,us-west-2,us-east-1,uksouth,eu3)provider: Filter by cloud provider (e.g.,aws,azure,gcloud,vzo)type: Filter by node type (e.g.,shared,dedicated)
onfinality
Built for Onfinality (opens in a new tab) 3rd-party provider to make it easier to import "all supported evm chains" with just an API key.
# ...
projects:
- id: main
# ...
upstreams:
- endpoint: onfinality://YOUR_ONFINALITY_API_KEY
# ...blockpi
Built for BlockPi (opens in a new tab) 3rd-party provider to make it easier to import "all supported evm chains" with just an API key.
You can contact BlockPi team (opens in a new tab) to get a global API key for all your evm chains.
# ...
projects:
- id: main
# ...
upstreams:
- endpoint: blockpi://YOUR_BLOCKPI_API_KEY
# ...ankr
Built for Ankr (opens in a new tab) 3rd-party provider to make it easier to import "all supported evm chains" with just an API key.
# ...
projects:
- id: main
# ...
upstreams:
- endpoint: ankr://YOUR_ANKR_API_KEY
# ...quicknode
Built for QuickNode (opens in a new tab) 3rd-party provider to make it easier to import "all supported evm chains" with just an API key.
You can create an API key from your QuickNode dashboard (opens in a new tab).
# ...
projects:
- id: main
# ...
upstreams:
- endpoint: quicknode://YOUR_QUICKNODE_API_KEY
# ...Advanced config
You can use dedicated providers: config to customize per-network configurations (e.g. different config for Alchemy eth-mainnet vs Alchemy polygon) as follows:
# ...
projects:
- id: main
# ...
providers:
- id: alchemy-prod # (optional) Unique ID that will be prefixed to the dynamically generated upstream ID
vendor: alchemy # (REQUIRED) Defines the provider type
settings: # (optional) Provider-specific settings
apiKey: xxxxx
onlyNetworks: # (optional) If you want to limit the lazy-loaded networks (instead of loading all supported chains)
- evm:1
- evm:137
ignoreNetworks: # (optional) If you want to exclude specific networks from this provider
- evm:56
- evm:43114
# (optional) If you want to customize the dynamically generated upstream ID
upstreamIdTemplate: "<PROVIDER>-<NETWORK>"
# (optional) Customize upstream configs for specific networks:
# - The key must be a networkId, and it supports matcher syntax (https://docs.erpc.cloud/config/matcher).
# - The value is a typical upstream config (https://docs.erpc.cloud/config/projects/upstreams#config).
overrides:
"evm:1":
rateLimitBudget: # ...
jsonRpc: # ...
ignoreMethods: # ...
allowMethods: # ...
failsafe: # ...
"evm:*":
failsafe: # ...
"evm:123|evm:10":
failsafe: # ...Vendor settings reference
Here is a reference of all the settings you can use for each vendor:
# ...
providers:
- vendor: alchemy
settings:
apiKey: xxxxx
- vendor: blastapi
settings:
apiKey: xxxxx
- vendor: drpc
settings:
apiKey: xxxxx
- vendor: envio
settings:
rootDomain: rpc.hypersync.xyz
- vendor: erpc
settings:
endpoint: xxx.aws.erpc.cloud/project/evm
secret: xxxxx # Optional authentication secret
- vendor: etherspot
settings:
apiKey: xxxxx
- vendor: infura
settings:
apiKey: xxxxx
- vendor: llama
settings:
apiKey: xxxxx
- vendor: pimlico
settings:
apiKey: xxxxx # can be "public" or your API-KEY
- vendor: thirdweb
settings:
clientId: xxxxx
- vendor: repository
settings:
repositoryUrl: https://evm-public-endpoints.erpc.cloud
recheckInterval: 1h # (optional) How often to recheck the repository for newly added RPC endpoints (default: 1h)
- vendor: dwellir
settings:
apiKey: xxxxx
- vendor: conduit
settings:
apiKey: xxxxx
networksUrl: https://api.conduit.xyz/public/network/all # (optional) Endpoint to fetch all supported networks
recheckInterval: 24h # (optional) How often to recheck the API for newly added networks (default: 24h)
- vendor: superchain
settings:
registryUrl: "github.com/ethereum-optimism/superchain-registry/main/chainList.json"
recheckInterval: 24h # (optional) How often to recheck the registry for newly added chains (default: 24h)
- vendor: tenderly
settings:
apiKey: xxxxx # Your Tenderly API key
- vendor: chainstack
settings:
apiKey: xxxxx # Your Chainstack API key
recheckInterval: 1h # (optional) How often to recheck the API for newly added networks (default: 1h)
project: xxxxx # (optional) Filter by project ID
organization: xxxxx # (optional) Filter by organization ID
region: us-east-1 # (optional) Filter by region (asia-southeast1, ap-southeast-1, us-west-2, us-east-1, uksouth, eu3)
provider: aws # (optional) Filter by cloud provider (aws, azure, gcloud, vzo)
type: dedicated # (optional) Filter by node type (shared, dedicated)
- vendor: onfinality
settings:
apiKey: xxxxx # Your OnFinality API key
- vendor: blockpi
settings:
apiKey: xxxxx # Your BlockPi API key
- vendor: ankr
settings:
apiKey: xxxxx # Your Ankr API key
- vendor: quicknode
settings:
apiKey: xxxxx # Your QuickNode API key
recheckInterval: 1h # (optional) How often to recheck the API for newly added networks (default: 1h)