RPC Solana
getSignaturesForAddress
getSignaturesForAddress renvoie les signatures de transaction confirmées qui incluent une adresse Solana dans accountKeys, en remontant dans le temps à partir du bloc le plus récent.
POST
/
getSignaturesForAddress
curl --request POST \
--url 'https://mainnet.helius-rpc.com/?api-key=' \
--header 'Content-Type: application/json' \
--data '
{
"jsonrpc": "2.0",
"id": "1",
"method": "getSignaturesForAddress",
"params": [
"Vote111111111111111111111111111111111111111"
]
}
'import requests
url = "https://mainnet.helius-rpc.com/?api-key="
payload = {
"jsonrpc": "2.0",
"id": "1",
"method": "getSignaturesForAddress",
"params": ["Vote111111111111111111111111111111111111111"]
}
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: 'getSignaturesForAddress',
params: ['Vote111111111111111111111111111111111111111']
})
};
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' => 'getSignaturesForAddress',
'params' => [
'Vote111111111111111111111111111111111111111'
]
]),
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\": \"getSignaturesForAddress\",\n \"params\": [\n \"Vote111111111111111111111111111111111111111\"\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\": \"getSignaturesForAddress\",\n \"params\": [\n \"Vote111111111111111111111111111111111111111\"\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\": \"getSignaturesForAddress\",\n \"params\": [\n \"Vote111111111111111111111111111111111111111\"\n ]\n}"
response = http.request(request)
puts response.read_body{
"jsonrpc": "2.0",
"id": 1,
"result": [
{
"signature": "5h6xBEauJ3PK6SWCZ1PGjBvj8vDdWG3KpwATGy1ARAXFSDwt8GFXM7W5Ncn16wmqokgpiKRLuS83KUxyZyv2sUYv",
"slot": 114,
"err": null,
"memo": null,
"blockTime": null,
"confirmationStatus": "finalized"
}
]
}{
"jsonrpc": "2.0",
"error": {
"code": -32602,
"message": "Paramètres invalides"
},
"id": "1"
}{
"jsonrpc": "2.0",
"error": {
"code": -32001,
"message": "Non autorisé"
},
"id": "1"
}{
"jsonrpc": "2.0",
"error": {
"code": -32005,
"message": "Trop de requêtes"
},
"id": "1"
}{
"jsonrpc": "2.0",
"error": {
"code": -32603,
"message": "Erreur interne"
},
"id": "1"
}{
"jsonrpc": "2.0",
"error": {
"code": -32002,
"message": "Service indisponible"
},
"id": "1"
}{
"jsonrpc": "2.0",
"error": {
"code": -32003,
"message": "Délai d'attente de la passerelle"
},
"id": "1"
}Pour un filtrage avancé, un tri et un historique de compte token, utilisez
getTransactionsForAddress à la place. Notez que getSignaturesForAddress n’inclut pas les transactions impliquant des comptes de tokens associés.Paramètres de la requête
string
requis
Adresse de compte Solana pour récupérer l’historique des transactions (portefeuille, token, programme, NFT, etc.).
string
Le niveau d’engagement pour la requête. L’engagement
processed n’est pas pris en charge.confirmedfinalized
number
Le slot minimum auquel la requête peut être évaluée.
number
Nombre maximum de signatures de transaction à retourner dans une seule requête (1-1 000).
string
Paramètre de pagination pour obtenir des transactions avant cette signature (plus tôt dans le temps).
string
Obtenez des transactions jusqu’à ce que cette signature soit atteinte, utile pour des plages de temps spécifiques.
Autorisations
Votre clé API Helius. Vous pouvez en obtenir une gratuitement dans 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:
getSignaturesForAddress Exemple:
"getSignaturesForAddress"
Tableau contenant l'adresse de compte requise et un objet de configuration optionnel.
Adresse de compte Solana pour récupérer l'historique des transactions (portefeuille, jeton, programme, NFT, etc.).
Exemple:
"Vote111111111111111111111111111111111111111"
Réponse
Signatures récupérées avec succès pour l'adresse spécifiée.
Cette page vous a-t-elle été utile ?
⌘I
getSignaturesForAddress
curl --request POST \
--url 'https://mainnet.helius-rpc.com/?api-key=' \
--header 'Content-Type: application/json' \
--data '
{
"jsonrpc": "2.0",
"id": "1",
"method": "getSignaturesForAddress",
"params": [
"Vote111111111111111111111111111111111111111"
]
}
'import requests
url = "https://mainnet.helius-rpc.com/?api-key="
payload = {
"jsonrpc": "2.0",
"id": "1",
"method": "getSignaturesForAddress",
"params": ["Vote111111111111111111111111111111111111111"]
}
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: 'getSignaturesForAddress',
params: ['Vote111111111111111111111111111111111111111']
})
};
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' => 'getSignaturesForAddress',
'params' => [
'Vote111111111111111111111111111111111111111'
]
]),
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\": \"getSignaturesForAddress\",\n \"params\": [\n \"Vote111111111111111111111111111111111111111\"\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\": \"getSignaturesForAddress\",\n \"params\": [\n \"Vote111111111111111111111111111111111111111\"\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\": \"getSignaturesForAddress\",\n \"params\": [\n \"Vote111111111111111111111111111111111111111\"\n ]\n}"
response = http.request(request)
puts response.read_body{
"jsonrpc": "2.0",
"id": 1,
"result": [
{
"signature": "5h6xBEauJ3PK6SWCZ1PGjBvj8vDdWG3KpwATGy1ARAXFSDwt8GFXM7W5Ncn16wmqokgpiKRLuS83KUxyZyv2sUYv",
"slot": 114,
"err": null,
"memo": null,
"blockTime": null,
"confirmationStatus": "finalized"
}
]
}{
"jsonrpc": "2.0",
"error": {
"code": -32602,
"message": "Paramètres invalides"
},
"id": "1"
}{
"jsonrpc": "2.0",
"error": {
"code": -32001,
"message": "Non autorisé"
},
"id": "1"
}{
"jsonrpc": "2.0",
"error": {
"code": -32005,
"message": "Trop de requêtes"
},
"id": "1"
}{
"jsonrpc": "2.0",
"error": {
"code": -32603,
"message": "Erreur interne"
},
"id": "1"
}{
"jsonrpc": "2.0",
"error": {
"code": -32002,
"message": "Service indisponible"
},
"id": "1"
}{
"jsonrpc": "2.0",
"error": {
"code": -32003,
"message": "Délai d'attente de la passerelle"
},
"id": "1"
}