Validator-Informations-API Dokumentation
Was ist die Validator-Information (getValidatorsInformation) API?
getValidatorsInformation ist eine erweiterte Solana-RPC-Methode, die alle Validatoren zurückgibt, die in der aktuellen Epoche mindestens einen Slot führen – mit Stake-Gewicht, Netzwerk-Endpunkt-Metadaten, geschätzter Leader-Position und Referenz-Latenzmessungen, zusammengefasst in einer Zeile pro Validator. Sie gibt weder eine Liste aller Knoten im Netzwerk noch RPC-Knoten zurück. Wenn Sie ERPC-Nutzungsrechte (API-Tokens) haben, können Sie die Methode im selben Format wie eine Standard-Solana-RPC-Methode aufrufen.Diese API bietet:
- Eine Zeile pro Validator, der in der aktuellen Epoche einen Slot führt, wobei
slotCountangibt, wie viele Slots er führt – anders alsgetLeaderSlots, das eine Zeile pro Slot zurückgibt stakeWeightfür jeden Leader-Validator- Geschätzte Leader-Region, Stadt, Land, Koordinaten, ASN-Organisation und Zeitzone
- Referenzmessungen aus ERPC-Beobachtungsregionen über
pingToLeaders
Endpunkt und Beispiel-Request-Body
text
https://edge.erpc.global?api-key=<YOUR_API_KEY>https://edge.erpc.global?api-key=<YOUR_API_KEY>Alle Parameter sind optional; wenn Sie
params weglassen oder params: [] senden, erhalten Sie jeden Validator, der in der aktuellen Epoche einen Slot führt.json
{
"jsonrpc": "2.0",
"id": 1,
"method": "getValidatorsInformation",
"params": []
}{
"jsonrpc": "2.0",
"id": 1,
"method": "getValidatorsInformation",
"params": []
}Um das Ergebnis einzugrenzen, übergeben Sie ein Objekt mit
limit, country und region. Dieses Beispiel fragt bis zu 5 Validatoren in Deutschland ab und kostet damit auch weniger als die ungefilterte Anfrage oben.json
{
"jsonrpc": "2.0",
"id": 1,
"method": "getValidatorsInformation",
"params": [{ "limit": 5, "country": "DE" }]
}{
"jsonrpc": "2.0",
"id": 1,
"method": "getValidatorsInformation",
"params": [{ "limit": 5, "country": "DE" }]
}Alle drei Parameter sind optional.
country wird ohne Beachtung der Groß-/Kleinschreibung anhand von ISO-3166-1-alpha-2-Codes mit leaderCountry abgeglichen. region wird exakt und unter Beachtung der Groß-/Kleinschreibung mit leaderRegion abgeglichen – lesen Sie leaderRegion aus einer ungefilterten Antwort, um die gültigen Werte für Ihre Ziel-Validatoren zu erfahren. limit akzeptiert 1 bis 2000 und wird auf die tatsächliche Anzahl der Validatoren in der Epoche begrenzt; ein limit über der realen Anzahl führt daher nie zu einem Fehler.Beispiel (HTTP)
bash
curl 'https://edge.erpc.global?api-key=<YOUR_API_KEY>' \
--header 'Content-Type: application/json' \
--data '{
"jsonrpc":"2.0",
"id":1,
"method":"getValidatorsInformation",
"params":[]
}'curl 'https://edge.erpc.global?api-key=<YOUR_API_KEY>' \
--header 'Content-Type: application/json' \
--data '{
"jsonrpc":"2.0",
"id":1,
"method":"getValidatorsInformation",
"params":[]
}'Beispielantwort (JSON)
result.total zeigt, wie viele Validatoren diese Anfrage zurückgegeben hat. Das data[]-Array unten ist auf drei von 670 Einträgen dieser Epoche gekürzt, und pingToLeaders jedes Eintrags ist zur besseren Lesbarkeit auf eine Beobachtungsregion reduziert.json
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"success": true,
"message": "Validator information retrieved successfully",
"epoch": 1010,
"total": 670,
"totalValidators": 670,
"data": [
{
"identity": "JupmVLmA8RoyTUbTMMuTtoPWHEiNQobxgTeGTrPNkzT",
"gossipNodeId": 2233,
"slotCount": 13232,
"stakeWeight": 12254651.761860535,
"ipAddress": "64.130.41.46",
"gossipPort": 8000,
"tpuPort": 9001,
"tpuQuicPort": 9007,
"rpcAddress": null,
"version": "3.1.13",
"featureSet": "534737035",
"leaderRegion": "frankfurt",
"leaderCity": "Frankfurt am Main",
"leaderCountry": "DE",
"leaderLat": 50.1924,
"leaderLon": 8.6753,
"leaderOrg": "AS20326 TeraSwitch Networks Inc.",
"leaderTimezone": "Europe/Berlin",
"pingToLeaders": [
{
"city": "Frankfurt am Main",
"region": "frankfurt",
"ms": 0.974,
"icmpReplied": true,
"fromIp": "185.191.118.11",
"country": "DE",
"lat": 50.139,
"lon": 8.6725,
"org": "AS213896 UAB Cherry Servers",
"postal": "60320",
"timezone": "Europe/Berlin",
"measuredAt": "2026-08-01T06:02:18.000Z"
}
]
},
{
"identity": "BSVckjdW2f8kcXPGcrPPtV9kUDBZ8w8PjrrGVnxgEdwq",
"gossipNodeId": 1487,
"slotCount": 2704,
"stakeWeight": 2502391.138720913,
"ipAddress": "5.199.172.175",
"gossipPort": 12000,
"tpuPort": 12003,
"tpuQuicPort": 12009,
"rpcAddress": null,
"version": "3.1.13",
"featureSet": "534737035",
"leaderRegion": "stockholm",
"leaderCity": "Šiauliai",
"leaderCountry": "LT",
"leaderLat": 55.93333,
"leaderLon": 23.31667,
"leaderOrg": "AS16125 UAB Cherry Servers",
"leaderTimezone": "Europe/Vilnius",
"pingToLeaders": [
{
"city": "Frankfurt am Main",
"region": "frankfurt",
"ms": 27.742,
"icmpReplied": true,
"fromIp": "185.191.118.11",
"country": "DE",
"lat": 50.139,
"lon": 8.6725,
"org": "AS213896 UAB Cherry Servers",
"postal": "60320",
"timezone": "Europe/Berlin",
"measuredAt": "2026-08-01T06:02:53.000Z"
}
]
},
{
"identity": "2oHUYyW2PU9VJh4XBs5TbGgzdernunvGqyKth3kxW4ns",
"gossipNodeId": 902,
"slotCount": 304,
"stakeWeight": 280745.689124988,
"ipAddress": "64.130.43.229",
"gossipPort": 8001,
"tpuPort": 5004,
"tpuQuicPort": 5010,
"rpcAddress": null,
"version": "3.1.13",
"featureSet": "534737035",
"leaderRegion": "amsterdam",
"leaderCity": "Amsterdam",
"leaderCountry": "NL",
"leaderLat": 52.37403,
"leaderLon": 4.88969,
"leaderOrg": "AS20326 TeraSwitch Networks Inc.",
"leaderTimezone": "Europe/Amsterdam",
"pingToLeaders": [
{
"city": "Frankfurt am Main",
"region": "frankfurt",
"ms": 16.835,
"icmpReplied": true,
"fromIp": "185.191.118.11",
"country": "DE",
"lat": 50.139,
"lon": 8.6725,
"org": "AS213896 UAB Cherry Servers",
"postal": "60320",
"timezone": "Europe/Berlin",
"measuredAt": "2026-08-01T06:03:07.000Z"
}
]
}
]
}
}{
"jsonrpc": "2.0",
"id": 1,
"result": {
"success": true,
"message": "Validator information retrieved successfully",
"epoch": 1010,
"total": 670,
"totalValidators": 670,
"data": [
{
"identity": "JupmVLmA8RoyTUbTMMuTtoPWHEiNQobxgTeGTrPNkzT",
"gossipNodeId": 2233,
"slotCount": 13232,
"stakeWeight": 12254651.761860535,
"ipAddress": "64.130.41.46",
"gossipPort": 8000,
"tpuPort": 9001,
"tpuQuicPort": 9007,
"rpcAddress": null,
"version": "3.1.13",
"featureSet": "534737035",
"leaderRegion": "frankfurt",
"leaderCity": "Frankfurt am Main",
"leaderCountry": "DE",
"leaderLat": 50.1924,
"leaderLon": 8.6753,
"leaderOrg": "AS20326 TeraSwitch Networks Inc.",
"leaderTimezone": "Europe/Berlin",
"pingToLeaders": [
{
"city": "Frankfurt am Main",
"region": "frankfurt",
"ms": 0.974,
"icmpReplied": true,
"fromIp": "185.191.118.11",
"country": "DE",
"lat": 50.139,
"lon": 8.6725,
"org": "AS213896 UAB Cherry Servers",
"postal": "60320",
"timezone": "Europe/Berlin",
"measuredAt": "2026-08-01T06:02:18.000Z"
}
]
},
{
"identity": "BSVckjdW2f8kcXPGcrPPtV9kUDBZ8w8PjrrGVnxgEdwq",
"gossipNodeId": 1487,
"slotCount": 2704,
"stakeWeight": 2502391.138720913,
"ipAddress": "5.199.172.175",
"gossipPort": 12000,
"tpuPort": 12003,
"tpuQuicPort": 12009,
"rpcAddress": null,
"version": "3.1.13",
"featureSet": "534737035",
"leaderRegion": "stockholm",
"leaderCity": "Šiauliai",
"leaderCountry": "LT",
"leaderLat": 55.93333,
"leaderLon": 23.31667,
"leaderOrg": "AS16125 UAB Cherry Servers",
"leaderTimezone": "Europe/Vilnius",
"pingToLeaders": [
{
"city": "Frankfurt am Main",
"region": "frankfurt",
"ms": 27.742,
"icmpReplied": true,
"fromIp": "185.191.118.11",
"country": "DE",
"lat": 50.139,
"lon": 8.6725,
"org": "AS213896 UAB Cherry Servers",
"postal": "60320",
"timezone": "Europe/Berlin",
"measuredAt": "2026-08-01T06:02:53.000Z"
}
]
},
{
"identity": "2oHUYyW2PU9VJh4XBs5TbGgzdernunvGqyKth3kxW4ns",
"gossipNodeId": 902,
"slotCount": 304,
"stakeWeight": 280745.689124988,
"ipAddress": "64.130.43.229",
"gossipPort": 8001,
"tpuPort": 5004,
"tpuQuicPort": 5010,
"rpcAddress": null,
"version": "3.1.13",
"featureSet": "534737035",
"leaderRegion": "amsterdam",
"leaderCity": "Amsterdam",
"leaderCountry": "NL",
"leaderLat": 52.37403,
"leaderLon": 4.88969,
"leaderOrg": "AS20326 TeraSwitch Networks Inc.",
"leaderTimezone": "Europe/Amsterdam",
"pingToLeaders": [
{
"city": "Frankfurt am Main",
"region": "frankfurt",
"ms": 16.835,
"icmpReplied": true,
"fromIp": "185.191.118.11",
"country": "DE",
"lat": 50.139,
"lon": 8.6725,
"org": "AS213896 UAB Cherry Servers",
"postal": "60320",
"timezone": "Europe/Berlin",
"measuredAt": "2026-08-01T06:03:07.000Z"
}
]
}
]
}
}Antwortfelder
| Feld | Bedeutung |
|---|---|
result.success | Ob die Anfrage erfolgreich war. |
result.message | Menschlich lesbare Statusmeldung. |
result.epoch | Epoche, zu der die zurückgegebene Leader-Menge gehört. Es ist die neueste Epoche im Leader-Fahrplan. |
result.total | Anzahl der Validatoren in data. Nach dieser Anzahl wird der Aufruf abgerechnet. |
result.totalValidators | Anzahl der Leader-Validatoren dieser Epoche, bevor country, region oder limit angewendet wurden. Der Vergleich mit result.total zeigt, wie stark ein Filter die Menge eingegrenzt hat. |
result.data[] | Ein Eintrag pro Validator, absteigend nach slotCount und dann nach identity sortiert, sodass ein limit die Validatoren mit den meisten Slots zurückgibt. |
identity | Öffentlicher Schlüssel der Validator-Identity. |
gossipNodeId | Kennung des mit diesem Validator verknüpften Gossip-Knoten-Datensatzes. Ist null, wenn kein Gossip-Knoten verknüpft ist; dann bleiben auch die Standort-, Port- und Ping-Felder leer. Validatoren ohne verknüpften Gossip-Knoten erscheinen in einer ungefilterten Anfrage, können aber keinen country- oder region-Filter erfüllen. |
slotCount | Anzahl der Slots, die dieser Validator in der gemeldeten Epoche führt. Jeder Eintrag steht für einen Validator, nicht für einen Slot. |
stakeWeight | Aktivierter Stake der Validator-Identity in SOL. Validatoren ohne verknüpften Gossip-Knoten melden 0. |
ipAddress, gossipPort, tpuPort, tpuQuicPort, rpcAddress | Metadaten des Gossip-Netzwerk-Endpunkts des Validators. |
version, featureSet | Vom Validator gemeldete Solana-Client-Version und Feature-Set. |
leaderRegion | Normalisiertes Betriebsregions-Label für Routing und Analyse. Es kann nahe gelegene Städte oder Anbieterstandorte zusammenfassen und ist der Wert, den der Anfrageparameter region abgleicht. |
leaderCity, leaderCountry, leaderLat, leaderLon, leaderOrg, leaderTimezone | Geschätzte Geolokation und Netzwerkorganisation des Validators. |
pingToLeaders[] | Referenzlatenz zu diesem Validator aus jeder ERPC-Beobachtungsregion, einschließlich Region, Stadt, ms, icmpReplied, fromIp, Land, Koordinaten, ASN-Organisation, Postleitzahl, Zeitzone und measuredAt. |
pingToLeaders[].icmpReplied | Ob der Validator auf die Messung geantwortet hat. Ist der Wert false, enthält ms einen gespeicherten Platzhalter statt einer Latenz und darf nicht als solche gelesen werden. |
pingToLeaders[].measuredAt | Zeitpunkt der letzten Latenzmessung, in ISO-8601 UTC. Damit beurteilen Sie, wie aktuell ein Messwert ist. |
Visualisierung der Validator-Abdeckung
Dieselbe Antwort lässt sich als Abdeckungskarte auf Epochenebene lesen statt als Nachschlagen Slot für Slot. Dieses Beispiel nutzt Frankfurt als Beobachtungspunkt.
| Validator-Region | Standort | Slots in der Epoche | Stake-Gewicht | Ping aus Frankfurt | Operative Lesart |
|---|---|---|---|---|---|
| frankfurt | Frankfurt am Main, DE | 13,232 | 12,254,651.76 | 0.974 ms | 13,232 der ungefähr 432,000 Slots einer Epoche, in derselben Metropolregion. Frankfurter Kapazität bedient diesen Validator über die gesamte Epoche, nicht nur in einem Slot-Fenster. |
| stockholm | Šiauliai, LT | 2,704 | 2,502,391.14 | 27.742 ms | Ein wiederkehrender Anteil der Epoche bei einer Latenz, die ein anderer europäischer Standort besser bedienen würde. |
| amsterdam | Amsterdam, NL | 304 | 280,745.69 | 16.835 ms | Wenige Slots pro Epoche. Der Pfad ist kurz, aber allein ist das kein Grund, Kapazität zu platzieren. |
getLeaderSlots beantwortet, welche Validatoren die nächsten Slots führen, und passt damit zum Routing einer Transaktion jetzt; diese Methode beantwortet, welche Validatoren die Epoche überhaupt führen und wie oft, und passt damit zur Entscheidung, wo Kapazität für die Epoche liegen sollte.
Solana Network Data Website
Nutzen Sie Validators Solutions für die öffentliche Sicht auf die Netzwerkverteilung und danach
getValidatorsInformation für Slot-Anzahl, Stake, Standort und gemessene Latenz pro Validator.Token-Nutzung
Diese Methode wird nach der Anzahl der zurückgegebenen Validatoren in Einheiten von 10 abgerechnet: Je 10 Validatoren kosten 100 Tokens, und eine angebrochene Einheit zählt als volle. Eine Antwort mit 95 Validatoren wird daher als 10 Einheiten berechnet, also mit 1.000 Tokens.
Da die Abrechnung dem folgt, was zurückgegeben wird, und nicht dem, was angefragt wurde, kostet ein mit
country oder region eingegrenztes Ergebnis proportional weniger, und eine Anfrage, die auf keinen Validator passt, kostet nichts. Ein limit über der Anzahl der Validatoren in der Epoche wird auf die reale Anzahl begrenzt; eine Anfrage bezahlt also nie für Validatoren, die es nicht gibt.Die Größe der Leader-Menge ändert sich von Epoche zu Epoche. In der oben gezeigten Epoche waren es 670 Validatoren, womit ein vollständiger Abruf bei ungefähr 6.700 Tokens liegt.
Warum Validator-Informationen wichtig sind
- Eine Zeile pro Validator beantwortet, wer in dieser Epoche führt und wie viel, ohne Hunderttausende Slot-Zeilen clientseitig zu aggregieren.
slotCountzeigt, wie oft ein Validator in dieser Epoche Leader ist; ein kurzer Pfad zu einem Validator mit hohemslotCountzahlt sich daher wiederholt aus.countryundregionzeigen, wo die Leader-Kapazität der Epoche tatsächlich liegt.- Ping zusammen mit
measuredAttrennt einen langsamen Pfad von einem veralteten Messwert.
Hintergrund
Eine Solana-Epoche besteht aus ungefähr 432.000 Slots. Sobald die Leader-Zuweisungen dieser Slots nach Validator-Identity gruppiert werden, fallen sie auf ungefähr 670 Validator-Zeilen zusammen. ERPC pflegt Leader-Fahrplan, Validator-Metadaten, Geolokation und Latenzerfassung und stellt das Ergebnis über die RPC-Schnittstelle bereit.
Strategische Anwendungsfälle
- Kapazitätsplanung auf Epochenebene: Dimensionieren Sie die Infrastruktur anhand der vollständigen Menge der Validatoren, die die aktuelle Epoche führen, nicht anhand eines gleitenden Slot-Fensters.
- Regionale Shortlists: Nutzen Sie
countryundregion, um die Validatoren abzurufen, die an einem Zielstandort Slots führen. - Priorisierung nach Slot-Anzahl und Stake: Kombinieren Sie
slotCountundstakeWeight, um Validatoren innerhalb einer Shortlist zu ordnen. - Epochenübergreifendes Monitoring: Vergleichen Sie die Verteilung von
leaderRegionzwischen Epochen, um zu sehen, wie sich die Leader-Geografie verschiebt.
Verfügbarkeit
getValidatorsInformation steht allen ERPC-Benutzern zur Verfügung. API-Token und Nutzungskredite können auf dem ERPC Web-Dashboard ausgegeben oder verifiziert werden.- ERPC Web-Dashboard: ERPC Web-Dashboard
Transaction Success Rate und SWQoS Endpunkt
Um die Transaktionserfolgsrate und die Ausführungsgeschwindigkeit weiter zu verbessern, empfehlen wir den SWQoS Endpunkt. SWQoS (Stake-weighted Quality of Service) priorisiert Validatoren mit Stake-Verbindungen. Leader weisen etwa 80% der Bandbreite dem Prioritätsverkehr und 20% dem Nicht-Prioritätsverkehr zu, wobei die Prioritätsspur etwa den 5-fachen Durchsatz bietet. Diese Priorisierung erfolgt vor der Priority-Fee-Bewertung; der Zugang zur SWQoS-Prioritätsspur ist damit die Voraussetzung für echte Performance mit niedriger Latenz.







