RPC Solana
getMultipleAccounts
Retourne les informations de compte pour une liste de clés publiques.
POST
/
getMultipleAccounts
curl --request POST \
--url 'https://mainnet.helius-rpc.com/?api-key=' \
--header 'Content-Type: application/json' \
--data '
{
"jsonrpc": "2.0",
"id": "1",
"method": "getMultipleAccounts",
"params": [
[
"vines1vzrYbzLMRdu58ou5XTby4qAqVRLmqo36NKPTg",
"4fYNw3dojWmQ4dXtSGE9epjRGy9pFSx62YypT7avPYvA"
]
]
}
'import requests
url = "https://mainnet.helius-rpc.com/?api-key="
payload = {
"jsonrpc": "2.0",
"id": "1",
"method": "getMultipleAccounts",
"params": [["vines1vzrYbzLMRdu58ou5XTby4qAqVRLmqo36NKPTg", "4fYNw3dojWmQ4dXtSGE9epjRGy9pFSx62YypT7avPYvA"]]
}
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: 'getMultipleAccounts',
params: [
[
'vines1vzrYbzLMRdu58ou5XTby4qAqVRLmqo36NKPTg',
'4fYNw3dojWmQ4dXtSGE9epjRGy9pFSx62YypT7avPYvA'
]
]
})
};
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' => 'getMultipleAccounts',
'params' => [
[
'vines1vzrYbzLMRdu58ou5XTby4qAqVRLmqo36NKPTg',
'4fYNw3dojWmQ4dXtSGE9epjRGy9pFSx62YypT7avPYvA'
]
]
]),
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\": \"getMultipleAccounts\",\n \"params\": [\n [\n \"vines1vzrYbzLMRdu58ou5XTby4qAqVRLmqo36NKPTg\",\n \"4fYNw3dojWmQ4dXtSGE9epjRGy9pFSx62YypT7avPYvA\"\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\": \"getMultipleAccounts\",\n \"params\": [\n [\n \"vines1vzrYbzLMRdu58ou5XTby4qAqVRLmqo36NKPTg\",\n \"4fYNw3dojWmQ4dXtSGE9epjRGy9pFSx62YypT7avPYvA\"\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\": \"getMultipleAccounts\",\n \"params\": [\n [\n \"vines1vzrYbzLMRdu58ou5XTby4qAqVRLmqo36NKPTg\",\n \"4fYNw3dojWmQ4dXtSGE9epjRGy9pFSx62YypT7avPYvA\"\n ]\n ]\n}"
response = http.request(request)
puts response.read_body{
"jsonrpc": "2.0",
"id": "1",
"result": {
"context": {
"apiVersion": "2.0.15",
"slot": 341197247
},
"value": [
{
"lamports": 88849814690250,
"owner": "11111111111111111111111111111111",
"data": [
"",
"base58"
],
"executable": false,
"rentEpoch": 18446744073709552000,
"space": 0
}
]
}
}{
"jsonrpc": "2.0",
"error": {
"code": -32602,
"message": "Paramètres non valides",
"data": {
"additionalInfo": "Veuillez vérifier les paramètres de la requête et vous assurer qu'ils sont valides."
}
},
"id": "1"
}{
"jsonrpc": "2.0",
"error": {
"code": -32001,
"message": "Non autorisé",
"data": {
"additionalInfo": "Veuillez vérifier votre clé API et réessayer."
}
},
"id": "1"
}{
"jsonrpc": "2.0",
"error": {
"code": -32005,
"message": "Trop de requêtes",
"data": {
"additionalInfo": "Vous avez dépassé le nombre permis de requêtes. Veuillez attendre et réessayer plus tard."
}
},
"id": "1"
}{
"jsonrpc": "2.0",
"error": {
"code": -32603,
"message": "Erreur interne",
"data": {
"additionalInfo": "Une erreur inattendue s'est produite sur le serveur. Veuillez réessayer plus tard ou contacter le support."
}
},
"id": "1"
}{
"jsonrpc": "2.0",
"error": {
"code": -32002,
"message": "Service indisponible",
"data": {
"additionalInfo": "Le service est actuellement indisponible. Veuillez réessayer plus tard ou contacter le support."
}
},
"id": "1"
}{
"jsonrpc": "2.0",
"error": {
"code": -32003,
"message": "Délai d'attente de la passerelle dépassé",
"data": {
"additionalInfo": "La requête a expiré. Veuillez réessayer plus tard ou contacter le support."
}
},
"id": "1"
}Nouvelle Fonctionnalité:
getMultipleAccounts prend désormais en charge le paramètre changedSinceSlot pour des mises à jour incrémentielles. Lorsqu’il est spécifié, la méthode retourne uniquement les comptes qui ont été modifiés au moment ou après le numéro de slot donné. Pour les comptes qui existent mais n’ont pas changé depuis le slot spécifié, la réponse contiendra status: "unchanged".Paramètres de la requête
array
requis
Tableau d’adresses de compte Solana (jusqu’à 100) à récupérer dans une seule requête optimisée par lot.
string
Le niveau d’engagement pour la requête.
confirmedfinalizedprocessed
number
Le slot minimum auquel la requête peut être évaluée.
object
Demander une tranche des données du compte.
number
Nombre d’octets à retourner.
number
Décalage en octets à partir duquel commencer la lecture.
string
Format d’encodage pour les données de compte retournées.
jsonParsedbase58base64base64+zstd
number
Ne retourner que les comptes qui ont été modifiés au moment ou après ce numéro de slot. Pour les comptes qui existent mais n’ont pas changé depuis le slot spécifié, la réponse contiendra le statut “unchanged”.
Autorisations
Votre clé API Helius. Vous pouvez en obtenir une gratuitement sur le tableau de bord.
Corps
application/json
La version du protocole JSON-RPC.
Options disponibles:
2.0 Exemple:
"2.0"
Un identifiant unique pour la requête.
Exemple:
"1"
Le nom de la méthode RPC à invoquer.
Options disponibles:
getMultipleAccounts Exemple:
"getMultipleAccounts"
Paramètres pour la méthode.
Tableau d'adresses de comptes Solana (jusqu'à 100) à récupérer en une seule requête par lots optimisée.
Exemple:
[ "vines1vzrYbzLMRdu58ou5XTby4qAqVRLmqo36NKPTg", "4fYNw3dojWmQ4dXtSGE9epjRGy9pFSx62YypT7avPYvA" ]
Cette page vous a-t-elle été utile ?
⌘I
getMultipleAccounts
curl --request POST \
--url 'https://mainnet.helius-rpc.com/?api-key=' \
--header 'Content-Type: application/json' \
--data '
{
"jsonrpc": "2.0",
"id": "1",
"method": "getMultipleAccounts",
"params": [
[
"vines1vzrYbzLMRdu58ou5XTby4qAqVRLmqo36NKPTg",
"4fYNw3dojWmQ4dXtSGE9epjRGy9pFSx62YypT7avPYvA"
]
]
}
'import requests
url = "https://mainnet.helius-rpc.com/?api-key="
payload = {
"jsonrpc": "2.0",
"id": "1",
"method": "getMultipleAccounts",
"params": [["vines1vzrYbzLMRdu58ou5XTby4qAqVRLmqo36NKPTg", "4fYNw3dojWmQ4dXtSGE9epjRGy9pFSx62YypT7avPYvA"]]
}
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: 'getMultipleAccounts',
params: [
[
'vines1vzrYbzLMRdu58ou5XTby4qAqVRLmqo36NKPTg',
'4fYNw3dojWmQ4dXtSGE9epjRGy9pFSx62YypT7avPYvA'
]
]
})
};
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' => 'getMultipleAccounts',
'params' => [
[
'vines1vzrYbzLMRdu58ou5XTby4qAqVRLmqo36NKPTg',
'4fYNw3dojWmQ4dXtSGE9epjRGy9pFSx62YypT7avPYvA'
]
]
]),
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\": \"getMultipleAccounts\",\n \"params\": [\n [\n \"vines1vzrYbzLMRdu58ou5XTby4qAqVRLmqo36NKPTg\",\n \"4fYNw3dojWmQ4dXtSGE9epjRGy9pFSx62YypT7avPYvA\"\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\": \"getMultipleAccounts\",\n \"params\": [\n [\n \"vines1vzrYbzLMRdu58ou5XTby4qAqVRLmqo36NKPTg\",\n \"4fYNw3dojWmQ4dXtSGE9epjRGy9pFSx62YypT7avPYvA\"\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\": \"getMultipleAccounts\",\n \"params\": [\n [\n \"vines1vzrYbzLMRdu58ou5XTby4qAqVRLmqo36NKPTg\",\n \"4fYNw3dojWmQ4dXtSGE9epjRGy9pFSx62YypT7avPYvA\"\n ]\n ]\n}"
response = http.request(request)
puts response.read_body{
"jsonrpc": "2.0",
"id": "1",
"result": {
"context": {
"apiVersion": "2.0.15",
"slot": 341197247
},
"value": [
{
"lamports": 88849814690250,
"owner": "11111111111111111111111111111111",
"data": [
"",
"base58"
],
"executable": false,
"rentEpoch": 18446744073709552000,
"space": 0
}
]
}
}{
"jsonrpc": "2.0",
"error": {
"code": -32602,
"message": "Paramètres non valides",
"data": {
"additionalInfo": "Veuillez vérifier les paramètres de la requête et vous assurer qu'ils sont valides."
}
},
"id": "1"
}{
"jsonrpc": "2.0",
"error": {
"code": -32001,
"message": "Non autorisé",
"data": {
"additionalInfo": "Veuillez vérifier votre clé API et réessayer."
}
},
"id": "1"
}{
"jsonrpc": "2.0",
"error": {
"code": -32005,
"message": "Trop de requêtes",
"data": {
"additionalInfo": "Vous avez dépassé le nombre permis de requêtes. Veuillez attendre et réessayer plus tard."
}
},
"id": "1"
}{
"jsonrpc": "2.0",
"error": {
"code": -32603,
"message": "Erreur interne",
"data": {
"additionalInfo": "Une erreur inattendue s'est produite sur le serveur. Veuillez réessayer plus tard ou contacter le support."
}
},
"id": "1"
}{
"jsonrpc": "2.0",
"error": {
"code": -32002,
"message": "Service indisponible",
"data": {
"additionalInfo": "Le service est actuellement indisponible. Veuillez réessayer plus tard ou contacter le support."
}
},
"id": "1"
}{
"jsonrpc": "2.0",
"error": {
"code": -32003,
"message": "Délai d'attente de la passerelle dépassé",
"data": {
"additionalInfo": "La requête a expiré. Veuillez réessayer plus tard ou contacter le support."
}
},
"id": "1"
}