Token & NFT (DAS)
getAssetProofBatch
Truy xuất bằng chứng Merkle cho nhiều NFT Solana nén trong một yêu cầu hàng loạt để xác minh và thực hiện các hoạt động trên chuỗi hiệu quả
POST
/
getAssetProofBatch
curl --request POST \
--url 'https://mainnet.helius-rpc.com/?api-key=' \
--header 'Content-Type: application/json' \
--data '
{
"jsonrpc": "2.0",
"id": "1",
"method": "getAssetProofBatch",
"params": {
"ids": [
"Bu1DEKeawy7txbnCEJE4BU3BKLXaNAKCYcHR4XhndGss"
]
}
}
'import requests
url = "https://mainnet.helius-rpc.com/?api-key="
payload = {
"jsonrpc": "2.0",
"id": "1",
"method": "getAssetProofBatch",
"params": { "ids": ["Bu1DEKeawy7txbnCEJE4BU3BKLXaNAKCYcHR4XhndGss"] }
}
headers = {"Content-Type": "application/json"}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({
jsonrpc: '2.0',
id: '1',
method: 'getAssetProofBatch',
params: {ids: ['Bu1DEKeawy7txbnCEJE4BU3BKLXaNAKCYcHR4XhndGss']}
})
};
fetch('https://mainnet.helius-rpc.com/?api-key=', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://mainnet.helius-rpc.com/?api-key=",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'jsonrpc' => '2.0',
'id' => '1',
'method' => 'getAssetProofBatch',
'params' => [
'ids' => [
'Bu1DEKeawy7txbnCEJE4BU3BKLXaNAKCYcHR4XhndGss'
]
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://mainnet.helius-rpc.com/?api-key="
payload := strings.NewReader("{\n \"jsonrpc\": \"2.0\",\n \"id\": \"1\",\n \"method\": \"getAssetProofBatch\",\n \"params\": {\n \"ids\": [\n \"Bu1DEKeawy7txbnCEJE4BU3BKLXaNAKCYcHR4XhndGss\"\n ]\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://mainnet.helius-rpc.com/?api-key=")
.header("Content-Type", "application/json")
.body("{\n \"jsonrpc\": \"2.0\",\n \"id\": \"1\",\n \"method\": \"getAssetProofBatch\",\n \"params\": {\n \"ids\": [\n \"Bu1DEKeawy7txbnCEJE4BU3BKLXaNAKCYcHR4XhndGss\"\n ]\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://mainnet.helius-rpc.com/?api-key=")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"jsonrpc\": \"2.0\",\n \"id\": \"1\",\n \"method\": \"getAssetProofBatch\",\n \"params\": {\n \"ids\": [\n \"Bu1DEKeawy7txbnCEJE4BU3BKLXaNAKCYcHR4XhndGss\"\n ]\n }\n}"
response = http.request(request)
puts response.read_body{
"jsonrpc": "2.0",
"result": {
"Bu1DEKeawy7txbnCEJE4BU3BKLXaNAKCYcHR4XhndGss": {
"last_indexed_slot": 365750752,
"root": "2o6Y6EiY3WXhoaEpei2pHmHLYnHDcEQVhgD89GrGHDBH",
"proof": [
"EmJXiXEAhEN3FfNQtBa5hwR8LC5kHvdLsaGCoERosZjK",
"7NEfhcNPAwbw3L87fjsPqTz2fQdd1CjoLE138SD58FDQ"
],
"node_index": 16384,
"leaf": "6YdZXw49M97mfFTwgQb6kxM2c6eqZkHSaW9XhhoZXtzv",
"tree_id": "2kuTFCcjbV22wvUmtmgsFR7cas7eZUzAu96jzJUvUcb7",
"burnt": "<unknown>"
}
},
"id": "my-id"
}{
"jsonrpc": "2.0",
"error": {
"code": -32602,
"message": "Tham số yêu cầu không hợp lệ."
},
"id": "1"
}{
"jsonrpc": "2.0",
"error": {
"code": -32001,
"message": "Xác thực không thành công. Khóa API bị thiếu hoặc không hợp lệ."
},
"id": "1"
}{
"jsonrpc": "2.0",
"error": {
"code": -32003,
"message": "Bạn không có quyền truy cập tài nguyên này."
},
"id": "1"
}{
"jsonrpc": "2.0",
"error": {
"code": -32004,
"message": "Không tìm thấy một hoặc nhiều tài sản trong lô."
},
"id": "1"
}{
"jsonrpc": "2.0",
"error": {
"code": -32029,
"message": "Đã vượt quá giới hạn tốc độ. Vui lòng thử lại sau."
},
"id": "1"
}{
"jsonrpc": "2.0",
"error": {
"code": -32000,
"message": "Đã xảy ra lỗi không mong muốn trên máy chủ."
},
"id": "1"
}Tham số yêu cầu
array
bắt buộc
Ủy quyền
Khóa API Helius của bạn. Bạn có thể nhận khóa miễn phí trong bảng điều khiển.
Nội dung
application/json
Phiên bản của giao thức JSON-RPC.
Tùy chọn có sẵn:
2.0 ID dùng để nhận diện yêu cầu.
Tên của phương thức DAS cần gọi.
Tùy chọn có sẵn:
getAssetProofBatch Show child attributes
Show child attributes
Trang này có hữu ích không?
⌘I
getAssetProofBatch
curl --request POST \
--url 'https://mainnet.helius-rpc.com/?api-key=' \
--header 'Content-Type: application/json' \
--data '
{
"jsonrpc": "2.0",
"id": "1",
"method": "getAssetProofBatch",
"params": {
"ids": [
"Bu1DEKeawy7txbnCEJE4BU3BKLXaNAKCYcHR4XhndGss"
]
}
}
'import requests
url = "https://mainnet.helius-rpc.com/?api-key="
payload = {
"jsonrpc": "2.0",
"id": "1",
"method": "getAssetProofBatch",
"params": { "ids": ["Bu1DEKeawy7txbnCEJE4BU3BKLXaNAKCYcHR4XhndGss"] }
}
headers = {"Content-Type": "application/json"}
response = requests.post(url, json=payload, headers=headers)
print(response.text)const options = {
method: 'POST',
headers: {'Content-Type': 'application/json'},
body: JSON.stringify({
jsonrpc: '2.0',
id: '1',
method: 'getAssetProofBatch',
params: {ids: ['Bu1DEKeawy7txbnCEJE4BU3BKLXaNAKCYcHR4XhndGss']}
})
};
fetch('https://mainnet.helius-rpc.com/?api-key=', options)
.then(res => res.json())
.then(res => console.log(res))
.catch(err => console.error(err));<?php
$curl = curl_init();
curl_setopt_array($curl, [
CURLOPT_URL => "https://mainnet.helius-rpc.com/?api-key=",
CURLOPT_RETURNTRANSFER => true,
CURLOPT_ENCODING => "",
CURLOPT_MAXREDIRS => 10,
CURLOPT_TIMEOUT => 30,
CURLOPT_HTTP_VERSION => CURL_HTTP_VERSION_1_1,
CURLOPT_CUSTOMREQUEST => "POST",
CURLOPT_POSTFIELDS => json_encode([
'jsonrpc' => '2.0',
'id' => '1',
'method' => 'getAssetProofBatch',
'params' => [
'ids' => [
'Bu1DEKeawy7txbnCEJE4BU3BKLXaNAKCYcHR4XhndGss'
]
]
]),
CURLOPT_HTTPHEADER => [
"Content-Type: application/json"
],
]);
$response = curl_exec($curl);
$err = curl_error($curl);
curl_close($curl);
if ($err) {
echo "cURL Error #:" . $err;
} else {
echo $response;
}package main
import (
"fmt"
"strings"
"net/http"
"io"
)
func main() {
url := "https://mainnet.helius-rpc.com/?api-key="
payload := strings.NewReader("{\n \"jsonrpc\": \"2.0\",\n \"id\": \"1\",\n \"method\": \"getAssetProofBatch\",\n \"params\": {\n \"ids\": [\n \"Bu1DEKeawy7txbnCEJE4BU3BKLXaNAKCYcHR4XhndGss\"\n ]\n }\n}")
req, _ := http.NewRequest("POST", url, payload)
req.Header.Add("Content-Type", "application/json")
res, _ := http.DefaultClient.Do(req)
defer res.Body.Close()
body, _ := io.ReadAll(res.Body)
fmt.Println(string(body))
}HttpResponse<String> response = Unirest.post("https://mainnet.helius-rpc.com/?api-key=")
.header("Content-Type", "application/json")
.body("{\n \"jsonrpc\": \"2.0\",\n \"id\": \"1\",\n \"method\": \"getAssetProofBatch\",\n \"params\": {\n \"ids\": [\n \"Bu1DEKeawy7txbnCEJE4BU3BKLXaNAKCYcHR4XhndGss\"\n ]\n }\n}")
.asString();require 'uri'
require 'net/http'
url = URI("https://mainnet.helius-rpc.com/?api-key=")
http = Net::HTTP.new(url.host, url.port)
http.use_ssl = true
request = Net::HTTP::Post.new(url)
request["Content-Type"] = 'application/json'
request.body = "{\n \"jsonrpc\": \"2.0\",\n \"id\": \"1\",\n \"method\": \"getAssetProofBatch\",\n \"params\": {\n \"ids\": [\n \"Bu1DEKeawy7txbnCEJE4BU3BKLXaNAKCYcHR4XhndGss\"\n ]\n }\n}"
response = http.request(request)
puts response.read_body{
"jsonrpc": "2.0",
"result": {
"Bu1DEKeawy7txbnCEJE4BU3BKLXaNAKCYcHR4XhndGss": {
"last_indexed_slot": 365750752,
"root": "2o6Y6EiY3WXhoaEpei2pHmHLYnHDcEQVhgD89GrGHDBH",
"proof": [
"EmJXiXEAhEN3FfNQtBa5hwR8LC5kHvdLsaGCoERosZjK",
"7NEfhcNPAwbw3L87fjsPqTz2fQdd1CjoLE138SD58FDQ"
],
"node_index": 16384,
"leaf": "6YdZXw49M97mfFTwgQb6kxM2c6eqZkHSaW9XhhoZXtzv",
"tree_id": "2kuTFCcjbV22wvUmtmgsFR7cas7eZUzAu96jzJUvUcb7",
"burnt": "<unknown>"
}
},
"id": "my-id"
}{
"jsonrpc": "2.0",
"error": {
"code": -32602,
"message": "Tham số yêu cầu không hợp lệ."
},
"id": "1"
}{
"jsonrpc": "2.0",
"error": {
"code": -32001,
"message": "Xác thực không thành công. Khóa API bị thiếu hoặc không hợp lệ."
},
"id": "1"
}{
"jsonrpc": "2.0",
"error": {
"code": -32003,
"message": "Bạn không có quyền truy cập tài nguyên này."
},
"id": "1"
}{
"jsonrpc": "2.0",
"error": {
"code": -32004,
"message": "Không tìm thấy một hoặc nhiều tài sản trong lô."
},
"id": "1"
}{
"jsonrpc": "2.0",
"error": {
"code": -32029,
"message": "Đã vượt quá giới hạn tốc độ. Vui lòng thử lại sau."
},
"id": "1"
}{
"jsonrpc": "2.0",
"error": {
"code": -32000,
"message": "Đã xảy ra lỗi không mong muốn trên máy chủ."
},
"id": "1"
}