I'm reading the documentation and I see that they say that it is recommended to have an ApiKey with one of the providers, eg:

export const provider = new EtherscanProvider();


There is no other way to not need an ApiKey to not have limit restrictions?

I'm building one Dapp without needs to ApiKey and serveless in React.

Investigating an ancient way was to recognize metamask window.web3.currentProvider. But that leads to several problems modern wallets like TrustWallet and that windows key words JS in modern FWKs CreateReactApp windows is forbidden to use it

1 Answer 1


ApiKeys exist to limit the resource consumption on public rpc providers and to protect against abusive behaviors such as DDoS attacks.

In order to avoid use of an ApiKey, one option is to run your own private ethereum node, which requires a large amount of disk space, a considerable amount of time to sync and extra caretaking.

If it is desirable for you to run your own node, take a look at this tutorial to get starged: https://ethereum.org/en/developers/docs/nodes-and-clients/run-a-node/

  • I am developing an application without serverless and without the need for ApiKey. This solution is not feasible. In a Web3js I know a property window.web3.currentProvider But windows in react-create-app or moderns FWK like as Angular is not viable use word windows Dec 31, 2021 at 10:04

Your Answer

By clicking “Post Your Answer”, you agree to our terms of service and acknowledge you have read our privacy policy.

Not the answer you're looking for? Browse other questions tagged or ask your own question.