Leader Slot Informatie API-documentatie
Wat is de Leader Slot Informatie (getLeaderSlots) API?
getLeaderSlots is een uitgebreide Solana RPC-methode die komende leader slot-records retourneert met validator identity, stake weight, netwerkmetadata, geschatte leader-locatie en referentiemetingen voor latency. Als u ERPC-gebruikstegoed (API-tokens) heeft, kunt u deze methode aanroepen in hetzelfde formaat als een standaard Solana RPC-methode.Deze API biedt:
- Leader validator-schema vanaf het opgegeven slot
stakeWeightvoor elke leader validator- Geschatte leader-regio, stad, land, coördinaten, ASN-organisatie en timezone
- Referentie-pingmetingen vanuit ERPC-observatieregio's via
pingToLeaders
Endpoint en voorbeeld request body
text
https://edge.erpc.global?api-key=<YOUR_API_KEY>https://edge.erpc.global?api-key=<YOUR_API_KEY>Geef het startslot op in
params.json
{
"jsonrpc": "2.0",
"id": 1,
"method": "getLeaderSlots",
"params": [416462031]
}{
"jsonrpc": "2.0",
"id": 1,
"method": "getLeaderSlots",
"params": [416462031]
}Voorbeeld (HTTP)
bash
curl 'https://edge.erpc.global?api-key=<YOUR_API_KEY>' \
--header 'Content-Type: application/json' \
--data '{
"jsonrpc":"2.0",
"id":1,
"method":"getLeaderSlots",
"params":[416462031]
}'curl 'https://edge.erpc.global?api-key=<YOUR_API_KEY>' \
--header 'Content-Type: application/json' \
--data '{
"jsonrpc":"2.0",
"id":1,
"method":"getLeaderSlots",
"params":[416462031]
}'Voorbeeldresponse (JSON)
De huidige response plaatst records in
result.data[]. result.total toont hoeveel records zijn teruggegeven.json
{
"jsonrpc": "2.0",
"id": 1,
"result": {
"success": true,
"message": "Leader schedule records retrieved successfully",
"total": 100,
"data": [
{
"identity": "BSVckjdW2f8kcXPGcrPPtV9kUDBZ8w8PjrrGVnxgEdwq",
"epoch": 964,
"slot": "416462031",
"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,
"fromIp": "185.191.118.11",
"country": "DE",
"lat": 50.139,
"lon": 8.6725,
"org": "AS213896 UAB Cherry Servers",
"postal": "60320",
"timezone": "Europe/Berlin"
}
]
},
{
"identity": "2oHUYyW2PU9VJh4XBs5TbGgzdernunvGqyKth3kxW4ns",
"epoch": 964,
"slot": "416462032",
"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,
"fromIp": "185.191.118.11",
"country": "DE",
"lat": 50.139,
"lon": 8.6725,
"org": "AS213896 UAB Cherry Servers",
"postal": "60320",
"timezone": "Europe/Berlin"
}
]
},
{
"identity": "JupmVLmA8RoyTUbTMMuTtoPWHEiNQobxgTeGTrPNkzT",
"epoch": 964,
"slot": "416462036",
"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,
"fromIp": "185.191.118.11",
"country": "DE",
"lat": 50.139,
"lon": 8.6725,
"org": "AS213896 UAB Cherry Servers",
"postal": "60320",
"timezone": "Europe/Berlin"
}
]
}
]
}
}{
"jsonrpc": "2.0",
"id": 1,
"result": {
"success": true,
"message": "Leader schedule records retrieved successfully",
"total": 100,
"data": [
{
"identity": "BSVckjdW2f8kcXPGcrPPtV9kUDBZ8w8PjrrGVnxgEdwq",
"epoch": 964,
"slot": "416462031",
"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,
"fromIp": "185.191.118.11",
"country": "DE",
"lat": 50.139,
"lon": 8.6725,
"org": "AS213896 UAB Cherry Servers",
"postal": "60320",
"timezone": "Europe/Berlin"
}
]
},
{
"identity": "2oHUYyW2PU9VJh4XBs5TbGgzdernunvGqyKth3kxW4ns",
"epoch": 964,
"slot": "416462032",
"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,
"fromIp": "185.191.118.11",
"country": "DE",
"lat": 50.139,
"lon": 8.6725,
"org": "AS213896 UAB Cherry Servers",
"postal": "60320",
"timezone": "Europe/Berlin"
}
]
},
{
"identity": "JupmVLmA8RoyTUbTMMuTtoPWHEiNQobxgTeGTrPNkzT",
"epoch": 964,
"slot": "416462036",
"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,
"fromIp": "185.191.118.11",
"country": "DE",
"lat": 50.139,
"lon": 8.6725,
"org": "AS213896 UAB Cherry Servers",
"postal": "60320",
"timezone": "Europe/Berlin"
}
]
}
]
}
}Responsevelden
| Veld | Betekenis |
|---|---|
result.success | Whether the request succeeded. |
result.message | Human-readable status message. |
result.total | Number of returned leader slot records. The API currently returns 100 records per request. |
result.data[] | Ordered leader slot records starting from the requested slot. |
identity | Leader validator identity public key. |
epoch | Solana epoch containing the slot. |
slot | Slot number. It is returned as a string, so clients should not assume a JSON number. |
stakeWeight | Stake delegated to the leader validator. Higher stake generally means the validator appears in leader schedules more often over time. |
leaderRegion | Normalized operational region label used for routing and analysis. It may group nearby cities or provider locations. |
leaderCity, leaderCountry, leaderLat, leaderLon, leaderOrg, leaderTimezone | Estimated geolocation and network organization for the leader validator. |
pingToLeaders[] | Reference latency from ERPC observation regions to the leader, including region, city, ms, fromIp, country, coordinates, ASN organization, postal code, and timezone. |
Leader Slots visualiseren
Dezelfde response kan worden gelezen als een operationele tijdlijn per slot. Dit voorbeeld gebruikt Frankfurt als observatiepunt.
| Slotvenster | Leader-regio | Leader-locatie | Stake weight | Ping vanuit Frankfurt | Operationele lezing |
|---|---|---|---|---|---|
| 416462031 | stockholm | Šiauliai, LT | 2,502,391.14 | 27.742 ms | Redelijke Europese latency, maar niet dezelfde metro. |
| 416462032-416462035 | amsterdam | Amsterdam, NL | 280,745.69 | 16.835 ms | Laag-latency Europees venster. Amsterdam-resources kunnen nuttig zijn. |
| 416462036 | frankfurt | Frankfurt am Main, DE | 12,254,651.76 | 0.974 ms | Leader in dezelfde regio. Frankfurt-resources zijn sterk in het voordeel. |
Dit is belangrijk omdat Solana globaal is. Anders dan traditionele HFT, waar men vaak dicht bij één matching engine wil staan, roteren Solana leaders over validators wereldwijd. De snelste regio verandert met het leader schedule.
Solana-netwerkdatawebsite
Gebruik Validators Solutions voor een publieke weergave van validator- en netwerkdistributie. Gebruik dit om het bredere Solana-netwerk te begrijpen en gebruik daarna
getLeaderSlots voor slotniveau-schema's, stake weight, validatorlocatie en gemeten latency voor operationele routing.Tokengebruik
De API haalt 100 leader slot-records op vanaf het opgegeven slot. Elke request verbruikt 420 tokens.
Waarom Leader Slot-informatie belangrijk is
- Als de leader geografisch of via het netwerkpad ver weg is, wordt directe transaction delivery inefficiënt.
- Stake weight helpt inschatten welke validators over langere vensters vaker als leader verschijnen.
- Bij globale leadertransities is regionale switching belangrijker dan één gemiddeld globaal latencygetal.
- De combinatie van slot schedule, stake weight, leaderlocatie en gemeten ping maakt optimale routing en plaatsing mogelijk.
Achtergrond
Een Solana epoch bestaat uit ongeveer 432.000 slots. Het continu verzamelen van leader schedules, validator metadata, geolocatie en latency vereist een dedicated datapipeline. ERPC onderhoudt deze gegevens en biedt ze via RPC aan als direct bruikbare leader slot map.
Strategische use cases
- Detectieoptimalisatie: geef prioriteit aan nabije leader windows met lage latency.
- Multi-regio deployment: gebruik FRA, AMS, NY, TY, SGP en andere strategische regio's om overgangsgaten te verkleinen.
- Stake-aware planning: gebruik
stakeWeightom leaders te herkennen die over langere vensters vaker belangrijk zijn. - Visualisatie en analytics: monitor leader ratio's, stake distribution en latency distribution per regio.
Beschikbaarheid
getLeaderSlots is beschikbaar voor alle ERPC-gebruikers. API tokens en gebruikstegoed kunnen worden uitgegeven of gecontroleerd via het ERPC Web Dashboard.- ERPC Web Dashboard: ERPC Web Dashboard
Transactiesucces en SWQoS Endpoint
Voor een hogere transactiesucceskans en snellere uitvoering raden we het SWQoS Endpoint aan. SWQoS (Stake-weighted Quality of Service) geeft prioriteit aan validators met stake connections. Leaders reserveren ongeveer 80% van de bandbreedte voor priority traffic en 20% voor non-priority traffic; de priority lane biedt ongeveer 5x throughput. Deze scheduling gebeurt vóór Priority-fee-evaluatie, waardoor toegang tot de SWQoS priority lane de basis is voor echte low-latency prestaties.
