curl
The Client Uniform Resource Locator (curl) command line tool sends API requests via URLs and returns responses.
Requests to Infura APIs commonly use curl.
Your operating system may include curl, or you may need to download and install it.
Check the "Get curl" chapter of Everything curl for the best way to install curl for your operating system.
Many Infura requests take the form:
curl https://mainnet.infura.io/v3/YOUR-API-KEY \
-X POST \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","method":"eth_blockNumber","params": [],"id":1}'
The code snippet above is an API call to Infura's Ethereum mainnet endpoint.
It requests the latest block number using the method
eth_blockNumber
.Let's step through each line of the code snippet to understand what's happening.
The first line uses the
curl
command to send a request to the URL https://mainnet.infura.io/v3/
YOUR-API-KEY. curl https://mainnet.infura.io/v3/YOUR-API-KEY \
-X POST \
The example specifies the
Content-Type
to be application/json
which means the requested resource is a JavaScript Object Notation (JSON) object.-H "Content-Type: application/json" \
The
-d
or --data
flag specifies more information sent along with the curl request.In the example, the data object is a list of key value pairs in JSON format. This follows the JSON RPC 2.0 specification which requires the four specific keys seen here.
The
method
, params
, and id
values are modifiable. The
jsonrpc
value is required by the specification.-d '{"jsonrpc":"2.0","method":"eth_blockNumber","params": [],"id":1}'
Enter curl code in a terminal window, or a command line tool from your computer's operating system and click return.
curl returns a response object if the request is successful.
{"jsonrpc":"2.0","id":3,"result":"0xe0a763"}
Last modified 9mo ago