Get started with Infura
1. Sign up to Infura
Infura is a MetaMask service that offers a comprehensive set of services to facilitate dapp and Snap development. Sign up for an account on the MetaMask Developer website.
To activate your account, verify your email address by clicking the link sent to your inbox.
Based on your plan, Infura allows for the following amount of API keys:
- Free plan - Allows one API key.
- Developer plan - Allows up to five API keys.
- Team plans and higher - No limit on the number of API keys.
For more information refer to the Infura pricing information.
2. View your API key
After verification, you'll be directed to the MetaMask Developer dashboard where you can view or configure your API key. Infura automatically generates the My First Key API key.
Select My First Key or the Configure link to view your API key settings.
In the All Endpoints tab that displays, all network endpoints are enabled by default, and you can view your API key.
3. Send requests
Use the API key when sending requests. The following examples interact with the Ethereum network by sending requests using HTTP:
- All requests are
POST
requests. - Replace
<YOUR-API-KEY>
with your own unique API key. - We recommend using Postman if you're a Windows user.
Use a tool such as the Client Uniform Resource Locator (curl) or Postman to make requests.
3.1 Get the current block number
Retrieve the current block number.
- curl
- Postman
curl https://mainnet.infura.io/v3/<YOUR-API-KEY> \
-X POST \
-H "Content-Type: application/json" \
--data '{"jsonrpc": "2.0", "id": 1, "method": "eth_blockNumber", "params": []}'
URL: https://mainnet.infura.io/v3/<YOUR-API-KEY>
Request_Type: POST
Body:
{
"jsonrpc": "2.0",
"method": "eth_blockNumber",
"params": [],
"id": 1
}
You'll receive a response similar to:
{"jsonrpc": "2.0", "id": 1, "result": "0xde5fba"}
The data returned is in hexadecimal, prefixed with 0x
. If you convert de5fba
to decimal, the resulting number is 14573498, representing the current block number at the time the query was made.
3.2 View the Ether balance of a specified contract
Check the balance of an Ethereum smart contract.
The example code checks the latest balance of the Ethereum Proof of Stake (PoS) contract.
- curl
- Postman
curl https://mainnet.infura.io/v3/<YOUR-API-KEY> \
-X POST \
-H "Content-Type: application/json" \
-d '{"jsonrpc": "2.0", "method": "eth_getBalance", "params": ["0x00000000219ab540356cBB839Cbe05303d7705Fa", "latest"], "id": 1}'
URL: https://mainnet.infura.io/v3/<YOUR-API-KEY>
Request_Type: POST
Body:
{
"jsonrpc": "2.0",
"method": "eth_getBalance",
"params": [
"0x00000000219ab540356cBB839Cbe05303d7705Fa",
"latest"
],
"id": 1
}
You'll receive a result similar to:
{"jsonrpc": "2.0", "id": 1, "result": "0x96c8e932f1e499c855045"}
This result is the hexadecimal value of the contract in wei (the smallest denomination of Ether).
The decimal conversion of the result is 11392978000069000000000069
wei, which equals 11392978.000069000000000069
Ether.
4. Secure your API key
Configure security settings in the Settings tab. This is optional.
For example, you can force API requests to include the API key secret and/or JSON Web Tokens (JWTs).
5. View your project stats
The dashboard displays an overview of your daily request health and credit usage. Select View Stats or Stats (in the left navigation) to monitor your project request stats.
From the Stats page of the dashboard, view real-time statistics about your API usage. Optimize your app and better understand your users by reviewing your API request stats.
6. View your credit usage
The dashboard provides an overview of your daily credit usage. Select View Usage for a wider view of your credit usage.
7. Manage your account
Find additional settings in the Settings menu in the left navigation to manage your account. You can do the following:
- Set notifications for daily limits from the Account option.
- Manage your billing information in the Billing option.
- Manage shared API keys in the Key Sharing option.