The quickest way to start building on Hyperliquid 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 as well as popular SDKs and programming languages.
Get Your Hyperliquid Endpoint
Quicknode を作成する
まだ登録がお済みでない方は、こちらから登録してください。
ダッシュボードに移動してください
左側のサイドバーメニューから「エンドポイント」ダッシュボードを開き、すべてのブロックチェーンエンドポイントを管理してください
新しいendpointを作成する
Click Create an Endpoint in the top-right corner, select Hyperliquid as your blockchain, then select your preferred network
プロバイダーのURLをコピーしてください
HTTP URL を手元に用意しておいてください。後述のリクエストでこれを使用します。
Quicknode 詳細な操作手順については、当社の ガイドをご覧ください
The quickstart below uses HyperEVM (/evm path), which is available on all plans including free trial.
HyperCore services have additional requirements:
/infoendpoint: available on all plans; 50 of 52 methods are natively supported (see method availability)/ハイパーコアJSON-RPC and WebSocket: requires Build plan or higher- gRPC streaming: requires Build plan or higher
最初のリクエストを送信する
Your endpoint is ready. Now, let's make your first call to the Hyperliquid blockchain. We’ll use the eth_blockNumber method, which returns the latest block number. ご希望の言語またはSDK を選択しSDK 以下の手順に従って最初のリクエストを送信してください.
- cURL
- SDK
Python
- JavaScript
- ルビー
- Go
- Ethers.js
Web3.py
- Eth.rb
- Ethgo
cURLのインストール状況を確認する
ほとんどの *nix ベースのシステムでは、cURL が標準でサポートされています。ターミナルを開き、以下のコマンドを実行して cURL のバージョンを確認してください:
curl --version
JSON-RPCリクエストを送信する
ターミナルで、以下の cURL コマンドをコピーして貼り付け、最新のブロック番号を取得してください:
curl -X POST YOUR_QUICKNODE_ENDPOINT_URL/ \
-H "Content-Type: application/json" \
-d '{"jsonrpc":"2.0","method":"eth_blockNumber","params":[],"id":1}'
回答例
{
"jsonrpc": "2.0",
"id": 1,
"result": "0x1234567"
}
プロジェクトの設定
まず、`node --version` を実行して、Node.js がインストールされているか確認してください。インストールされていない場合は、https://nodejs.org からダウンロードしてください。その後、新しいディレクトリを作成し、Node.js プロジェクトを初期化します:
mkdir hyperliquid-api-quickstart
cd hyperliquid-api-quickstart
npm init -y
SDKをインストールする
SDK をインストールします:
npm installsdk
メインファイルを作成する
コード用の index.js ファイルを作成します:
touch index.js
このコードを index.js ファイルに追加してください
このコードをコピーして、index.js ファイルに貼り付けてください:
const { Core } = require('@quicknode/sdk');
const main = async () => {
const core = new Core({
endpointUrl: 'YOUR_QUICKNODE_ENDPOINT_URL/',
});
const blockNumber = await core.client.request({
method: 'eth_blockNumber',
});
console.log('Block number:', parseInt(blockNumber, 16));
};
main();
プロジェクトを実行する
スクリプトを実行して、最新のブロック番号を確認してください:
node index.js
プロジェクトの設定
Pythonプロジェクト用の新しいディレクトリを作成します:
mkdir hyperliquid-python-quickstart
cd hyperliquid-python-quickstart
仮想環境の作成と起動
依存関係を管理するための仮想環境を作成します:
python3 -m venv venv
source venv/bin/activate
インストール依頼
HTTPリクエストを行うためのrequestsライブラリをインストールします:
pip インストール requests
Pythonスクリプト(app.py)を作成する
次のコードを含むPythonファイルを作成してください:
import requests
import json
# Your Quicknode endpoint URL
endpoint_url = "YOUR_QUICKNODE_ENDPOINT_URL/"
# JSON-RPC request payload
payload = {
"jsonrpc": "2.0",
"id": 1,
"method": "eth_blockNumber",
"params": []
}
# Make the request
response = requests.post(endpoint_url, json=payload)
result = response.json()
print("Latest block number (hex):", result["result"])
print("Latest block number (decimal):", int(result["result"], 16))
スクリプトを実行する
Pythonスクリプトを実行してください:
python app.py
プロジェクトの設定
新しいディレクトリを作成し、Node.js プロジェクトを初期化します:
mkdir hyperliquid-js-quickstart
cd hyperliquid-js-quickstart
npm init -y
JavaScript ファイル(app.js)を作成します
以下のコードを含む app.js ファイルを作成します(Node.js 18 以降で利用可能なネイティブの fetch を使用します):
const url = 'YOUR_QUICKNODE_ENDPOINT_URL/';
const options = {
method: 'POST',
headers: { 'Content-Type': 'application/json' },
body: JSON.stringify({
jsonrpc: '2.0',
method: 'eth_blockNumber',
params: [],
id: 1
})
};
async function main() {
try {
const response = await fetch(url, options);
const data = await response.json();
console.log('Block Number (hex):', data.result);
console.log('Block Number (decimal):', parseInt(data.result, 16));
} catch (error) {
console.error('Error:', error);
}
}
main();
スクリプトを実行する
JavaScriptスクリプトを実行してください:
node app.js
プロジェクトの設定
Rubyプロジェクト用の新しいディレクトリを作成します:
mkdir hyperliquid-ruby-quickstart
cd hyperliquid-ruby-quickstart
Rubyのインストール状況を確認する
お使いのシステムにRubyがインストールされているか確認してください。インストールされていない場合は、https://ruby-lang.org からインストールしてください:
ruby --version
Rubyスクリプト(main.rb)を作成する
以下のコードを記載した main.rb ファイルを作成してください:
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({
"method": "eth_blockNumber",
"params": [],
"id": 1,
"jsonrpc": "2.0"
})
response = https.request(request)
result = JSON.parse(response.read_body)
hex_result = result["result"]
decimal_result = hex_result.to_i(16)
puts "Block number (hex): #{hex_result}"
puts "Block number (decimal): #{decimal_result}"
スクリプトを実行する
Rubyスクリプトを実行して、最新のブロック番号を確認してください:
ruby main.rb
プロジェクトの設定
Goプロジェクト用の新しいディレクトリを作成します:
mkdir hyperliquid-go-quickstart
cd hyperliquid-go-quickstart
囲碁の布石を確認する
お使いのシステムにGoがインストールされているか確認してください。インストールされていない場合は、https://golang.org からインストールしてください:
go version
Goスクリプト(main.go)を作成する
次のコードを「main.go」ファイルに記述してください:
package main
import (
"encoding/json"
"fmt"
"strings"
"net/http"
"io/ioutil"
"strconv"
)
type Response struct {
Result string `json:"result"`
}
func main() {
url := "YOUR_QUICKNODE_ENDPOINT_URL/"
method := "POST"
payload := strings.NewReader(`{"method":"eth_blockNumber","params":[],"id":1,"jsonrpc":"2.0"}`)
client := &http.Client{}
req, err := http.NewRequest(method, url, payload)
if err != nil {
fmt.Println(err)
return
}
req.Header.Add("Content-Type", "application/json")
res, err := client.Do(req)
if err != nil {
fmt.Println(err)
return
}
defer res.Body.Close()
body, err := ioutil.ReadAll(res.Body)
if err != nil {
fmt.Println(err)
return
}
var response Response
err = json.Unmarshal(body, &response)
if err != nil {
fmt.Println("Error parsing JSON:", err)
return
}
// Convert hex to decimal
blockNumber, err := strconv.ParseInt(response.Result, 0, 64)
if err != nil {
fmt.Println("Error converting hex to decimal:", err)
return
}
fmt.Printf("Block number (hex): %s\n", response.Result)
fmt.Printf("Block number (decimal): %d\n", blockNumber)
}
スクリプトを実行する
Goスクリプトを実行して、最新のブロック番号を確認してください:
main.go を実行してください
プロジェクトの設定
新しいディレクトリを作成し、Node.js プロジェクトを初期化します(Node.js がすでにインストールされていることを前提としています):
mkdir hyperliquid-ethers-quickstart
cd hyperliquid-ethers-quickstart
npm init -y
npm pkg set type=module
ethers.js をインストールする
Ethereum のために、ethers.js ライブラリをインストールします:
npm install ethers
メインファイル(index.js)を作成します
以下のコードを「index.js」というファイルに記述してください:
import { ethers } from "ethers";
(async () => {
const provider = new ethers.JsonRpcProvider("YOUR_QUICKNODE_ENDPOINT_URL/");
const blockNum = await provider.getBlockNumber();
console.log('Current block number (decimal):', blockNum);
console.log('Block number (hex):', '0x' + blockNum.toString(16));
})();
プロジェクトを実行する
スクリプトを実行して、最新のブロック番号を確認してください:
node index.js
プロジェクトの設定
web3.py プロジェクト用の新しいディレクトリを作成します:
mkdir hyperliquid-web3py-quickstart
cd hyperliquid-web3py-quickstart
web3.py をインストールしてください(まだインストールされていない場合)
`pip list | grep web3` を実行して、web3.py がインストールされているか確認してください。見つからない場合は、次のようにインストールしてください:
pip インストール web3
Pythonスクリプト(main.py)を作成する
以下のコードを「main.py」というファイルに記述してください:
from web3 import Web3
w3 = Web3(Web3.HTTPProvider("YOUR_QUICKNODE_ENDPOINT_URL/"))
try:
latest_block_number = w3.eth.block_number
print(f"Latest Block Number: {latest_block_number}")
print(f"Block number (hex): {hex(latest_block_number)}")
except Exception as e:
print(f"Error: {e}")
プロジェクトの設定
eth.rb プロジェクト用の新しいディレクトリを作成します:
mkdir hyperliquid-ethrb-quickstart
cd hyperliquid-ethrb-quickstart
eth.rb をインストールします(まだインストールされていない場合)
`gem list eth` を実行して、eth.rb がインストールされているか確認してください。見つからない場合は、インストールしてください:
gem インストール eth
Rubyスクリプト(main.rb)を作成する
以下のコードを記載した main.rb ファイルを作成してください:
require 'eth'
client = Eth::Client.create "YOUR_QUICKNODE_ENDPOINT_URL/"
begin
block_number = client.eth_block_number
hex_result = block_number["result"]
decimal_result = hex_result.to_i(16)
puts "Block number (hex): #{hex_result}"
puts "Block number (decimal): #{decimal_result}"
rescue => e
puts "Error: #{e.message}"
end
スクリプトを実行する
Rubyスクリプトを実行して、最新のブロック番号を確認してください:
ruby main.rb
プロジェクトの設定
Ethgoプロジェクト用の新しいディレクトリを作成します:
mkdir hyperliquid-ethgo-quickstart
cd hyperliquid-ethgo-quickstart
Goモジュールを初期化し、ethgoをインストールする
依存関係を追跡するために go.mod ファイルを作成し、ethgoSDK をインストールします:
go mod init hyperliquid-ethgo-quickstart
go get github.com/umbracle/ethgo
go mod tidy
Goスクリプト(main.go)を作成する
次のコードを「main.go」ファイルに記述してください:
package main
import (
"fmt"
"log"
"github.com/umbracle/ethgo/jsonrpc"
)
func main() {
client, err := jsonrpc.NewClient("YOUR_QUICKNODE_ENDPOINT_URL/")
if err != nil {
log.Fatalf("Failed to connect to Ethereum: %v", err)
}
blockNumber, err := client.Eth().BlockNumber()
if err != nil {
log.Fatalf("Failed to get latest block number: %v", err)
}
fmt.Printf("Latest block number (decimal): %d\n", blockNumber)
fmt.Printf("Latest block number (hex): 0x%x\n", blockNumber)
}
スクリプトを実行する
Goスクリプトを実行して、最新のブロック番号を確認してください:
main.go を実行してください
APIリクエストの方法についてさらに学びたい場合は、当社のガイドやサンプルアプリをご覧ください。
皆様からのフィードバックを心よりお待ちしております!❤️
このドキュメントについてご意見やご質問がございましたら、ぜひお知らせください。皆様からのご連絡を心よりお待ちしております!