The quickest way to start building on NEAR with Quicknode is by sending a JSON-RPC request to your endpoint. In this quickstart, you’ll create an endpoint, copy its provider URL, and make your first request. Code samples are available in cURL, JavaScript, Python, and Ruby.
Get Your NEAR Endpoint
Create a Quicknode account
Sign up here if you haven't already.
Go to your dashboard
Open the Endpoints dashboard from the left sidebar menu to manage all your blockchain endpoints
Create a new endpoint
Click Create an Endpoint in the top-right corner, select NEAR as your blockchain, then select your preferred network
Copy your provider URLs
Keep the HTTP URL handy. You'll use it in your requests below.
For a detailed walkthrough of the Quicknode dashboard, check out our guide
Send Your First Request
Your endpoint is ready. Now, let's make your first call to the NEAR blockchain. We’ll use the status method, which returns general status information about the NEAR node including version, sync status, and validator information. Select your preferred language or SDK and follow the steps below to send your first request.
- cURL
- Node.js
- Python
- Ruby
Check cURL installation
Most *nix based systems have cURL support out of the box. Open your terminal and check the cURL version by running the command below:
curl --version
Send a JSON-RPC request
In your terminal, copy and paste the following cURL command to retrieve the node status:
curl -X POST YOUR_QUICKNODE_ENDPOINT_URL/ \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","method":"status","params":[],"id":1}'
Sample Response
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"version": {
"version": "1.37.1",
"build": "crates-0.21.1-216-gd6385b0eb"
},
"chain_id": "mainnet",
"sync_info": {
"latest_block_hash": "44L5qF4NitTZgNd5haxFLgWaJJ3FD9VafPo4WdL1p3M8",
"latest_block_height": 106503813,
"latest_state_root": "7Bf2aQoAqo1FcYjSddJvPEkrSCsw5j9uEPMBbEE7Kk8",
"latest_block_time": "2024-01-15T12:00:00.000000000Z",
"syncing": false
}
}
}
Set up your project
First, verify Node.js is installed with node --version. If not installed, download it from https://nodejs.org. Then create a new directory and initialize a Node.js project:
mkdir near-api-quickstart
cd near-api-quickstart
npm init -y
Create your script
Create a new file called index.js and add the following code to retrieve the node status:
const https = require('https');
const data = JSON.stringify({
"jsonrpc": "2.0",
"method": "status",
"params": [],
"id": 1
});
const options = {
hostname: '{your-endpoint-name}.quiknode.pro',
path: '/{your-token}/',
method: 'POST',
headers: {
'Content-Type': 'application/json',
'Content-Length': data.length
}
};
const req = https.request(options, (res) => {
let result = '';
res.on('data', (chunk) => {
result += chunk;
});
res.on('end', () => {
console.log(result);
});
});
req.on('error', (error) => {
console.error('Error:', error);
});
req.write(data);
req.end();
Run your script
Execute your script in the terminal to retrieve the node status:
node index.js
Set up your project
First, verify Python is installed with python --version or python3 --version. Then create a new directory for your project:
mkdir near-api-quickstart
cd near-api-quickstart
Create and activate a virtual environment
Create a virtual environment to manage dependencies:
python3 -m venv venv
source venv/bin/activate
Install dependencies
Install the requests library for making HTTP requests:
pip install requests
Create your script
Create a new file called main.py and add the following code to retrieve the node status:
import requests
import json
url = "YOUR_QUICKNODE_ENDPOINT_URL/"
payload = json.dumps({
"jsonrpc": "2.0",
"method": "status",
"params": [],
"id": 1
})
headers = {
'Content-Type': 'application/json'
}
response = requests.request("POST", url, headers=headers, data=payload)
print(response.text)
Run your script
Execute your script in the terminal to retrieve the node status:
python main.py
Set up your project
First, create a new directory for your project:
mkdir near-api-quickstart
cd near-api-quickstart
Check Ruby installation
Verify Ruby is installed on your system. If not, install it from https://ruby-lang.org:
ruby --version
Create your script
Create a new file called main.rb and add the following code to retrieve the node status:
require "uri"
require "json"
require "net/http"
url = URI("YOUR_QUICKNODE_ENDPOINT_URL/")
https = Net::HTTP.new(url.host, url.port)
https.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Content-Type"] = "application/json"
request.body = JSON.dump({
"jsonrpc": "2.0",
"method": "status",
"params": [],
"id": 1
})
response = https.request(request)
puts response.read_body
Run your script
Execute your script in the terminal to retrieve the node status:
ruby main.rb
If you want to continue learning about making API requests, check out our guides and sample apps.
We ❤️ Feedback!
If you have any feedback or questions about this documentation, let us know. We'd love to hear from you!