Validator Bilgileri API Dokümantasyonu

Validator Bilgileri (getValidatorsInformation) API Nedir?

getValidatorsInformation, geçerli epoch'ta en az bir slotun liderliğini yapan validator'ları; stake ağırlığı, ağ endpoint metadata'sı, tahmini lider konumu ve referans gecikme ölçümleri validator başına tek bir satırda toplanmış olarak döndüren genişletilmiş bir Solana RPC metodudur. Ağdaki her düğümün listesini döndürmez ve RPC düğümlerini döndürmez. ERPC kullanım kredilerine (API token'larına) sahipseniz, bunu standart bir Solana RPC metoduyla aynı formatta çağırabilirsiniz.
Bu API şunları sağlar:
  • Geçerli epoch'ta slot liderliği yapan her validator için bir satır; slotCount kaç slotun liderliğini yaptığını gösterir — slot başına bir satır döndüren getLeaderSlots metodunun aksine
  • Her lider validator için stakeWeight
  • Tahmini lider bölgesi, şehir, ülke, koordinatlar, ASN organizasyonu ve saat dilimi
  • pingToLeaders aracılığıyla ERPC gözlem bölgelerinden referans ping ölçümleri

Endpoint ve İstek Gövdesi Örneği

text
https://edge.erpc.global?api-key=<YOUR_API_KEY>
Tüm parametreler isteğe bağlıdır; params alanını atlamak veya params: [] göndermek, geçerli epoch'ta slot liderliği yapan her validator'ı döndürür.
json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "getValidatorsInformation",
  "params": []
}
Sonucu daraltmak için limit, country ve region içeren bir nesne gönderin. Bu örnek, Almanya'daki en fazla 5 validator'ı ister ve yukarıdaki filtresiz istekten daha az maliyetlidir.
json
{
  "jsonrpc": "2.0",
  "id": 1,
  "method": "getValidatorsInformation",
  "params": [{ "limit": 5, "country": "DE" }]
}
Üç parametrenin tümü isteğe bağlıdır. country, ISO 3166-1 alpha-2 kodları kullanılarak leaderCountry ile büyük/küçük harf duyarsız biçimde eşleştirilir. region, leaderRegion ile tam olarak ve büyük/küçük harfe duyarlı biçimde eşleştirilir — hedeflediğiniz validator'lar için geçerli değerleri öğrenmek üzere leaderRegion alanını filtresiz bir yanıttan okuyun. limit 1 ile 2000 arasında değer kabul eder ve epoch'taki gerçek validator sayısına indirilir; bu nedenle gerçek sayının üzerindeki bir limit asla hata vermez.

Örnek (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":[]
  }'

Örnek Yanıt (JSON)

result.total, bu isteğin kaç validator döndürdüğünü gösterir. Aşağıdaki data[] dizisi, bu epoch'a ait 670 kaydın üçüne kısaltılmıştır ve okunabilirlik için her kaydın pingToLeaders alanı tek bir gözlem bölgesine indirilmiştir.
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"
          }
        ]
      }
    ]
  }
}

Yanıt Alanları

AlanAnlamı
result.successİsteğin başarılı olup olmadığı.
result.messageİnsan tarafından okunabilir durum mesajı.
result.epochDöndürülen lider kümesinin ait olduğu epoch. Bu, lider programında bulunan en güncel epoch'tur.
result.totaldata içindeki validator sayısı. Çağrı bu miktar üzerinden ücretlendirilir.
result.totalValidatorscountry, region veya limit uygulanmadan önce o epoch'taki lider validator sayısı. Bir filtrenin kümeyi ne kadar daralttığını görmek için result.total ile karşılaştırın.
result.data[]Validator başına bir kayıt; önce slotCount değerine göre azalan, sonra identity değerine göre sıralanır; böylece bir limit, en çok slotun liderliğini yapan validator'ları döndürür.
identityValidator kimlik açık anahtarı.
gossipNodeIdBu validator'a bağlı gossip düğüm kaydının tanımlayıcısı. Bağlı bir gossip düğümü yoksa null olur; bu durumda konum, port ve ping alanları da boştur. Bağlı gossip düğümü olmayan validator'lar filtresiz bir istekte döndürülür, ancak country veya region filtresiyle eşleşemez.
slotCountBu validator'ın raporlanan epoch'ta liderliğini yaptığı slot sayısı. Her kayıt bir slotu değil, bir validator'ı kapsar.
stakeWeightValidator kimliğinin aktif stake miktarı, SOL cinsinden. Bağlı gossip düğümü olmayan validator'lar 0 bildirir.
ipAddress, gossipPort, tpuPort, tpuQuicPort, rpcAddressValidator için gossip ağı endpoint metadata'sı.
version, featureSetValidator tarafından bildirilen Solana istemci sürümü ve feature set.
leaderRegionYönlendirme ve analiz için kullanılan normalleştirilmiş operasyonel bölge etiketi. Yakındaki şehirleri veya sağlayıcı konumlarını gruplayabilir ve region istek parametresinin eşleştirdiği değer budur.
leaderCity, leaderCountry, leaderLat, leaderLon, leaderOrg, leaderTimezoneValidator için tahmini coğrafi konum ve ağ organizasyonu.
pingToLeaders[]Her ERPC gözlem bölgesinden bu validator'a referans gecikme; bölge, şehir, ms, icmpReplied, fromIp, ülke, koordinatlar, ASN organizasyonu, posta kodu, saat dilimi ve measuredAt dahil.
pingToLeaders[].icmpRepliedValidator'ın ölçümü yanıtlayıp yanıtlamadığı. false olduğunda ms, bir gecikme değil saklanan bir yer tutucu değer taşır ve gecikme olarak okunmamalıdır.
pingToLeaders[].measuredAtGecikmenin en son ne zaman ölçüldüğü, ISO-8601 UTC olarak. Bir okumanın ne kadar güncel olduğunu değerlendirmek için kullanın.

Validator Kapsamını Görselleştirme

Aynı yanıt, slot slot bir arama yerine epoch düzeyinde bir kapsama haritası olarak okunabilir. Bu örnek, gözlem noktası olarak Frankfurt'u kullanır.
Validator bölgesiKonumEpoch'taki slotlarStake ağırlığıFrankfurt'tan pingOperasyonel yorum
frankfurtFrankfurt am Main, DE13,23212,254,651.760.974 msEpoch'un yaklaşık 432,000 slotundan 13,232'si, aynı metropolde. Frankfurt kapasitesi bu validator'a yalnızca tek bir slot penceresinde değil, epoch boyunca hizmet eder.
stockholmŠiauliai, LT2,7042,502,391.1427.742 msEpoch'un yinelenen bir bölümü; başka bir Avrupa konumunun daha iyi hizmet edeceği bir gecikmede.
amsterdamAmsterdam, NL304280,745.6916.835 msEpoch başına az sayıda slot. Yol kısa, ancak tek başına bu, kapasite konumlandırmak için bir gerekçe değildir.
getLeaderSlots, sonraki slotların liderliğini hangi validator'ların yaptığını yanıtlar; bu nedenle bir işlemi şimdi yönlendirmeye uygundur. Bu metot ise epoch boyunca hangi validator'ların ve ne sıklıkta liderlik yaptığını yanıtlar; bu nedenle kapasitenin epoch için nerede konumlanması gerektiğine karar vermeye uygundur.

Solana Network Data Website

Validators Solutions - Solana ağ verileri
Ağ dağılımının kamuya açık görünümü için Validators Solutions kullanın, ardından validator başına slot sayıları, stake, konum ve ölçülen gecikme için getValidatorsInformation kullanın.

Token Kullanımı

Bu metot, döndürdüğü validator sayısı üzerinden 10'luk birimler hâlinde ücretlendirilir: her 10 validator 100 token tutar ve eksik bir birim tam birim sayılır. Bu nedenle 95 validator içeren bir yanıt 10 birim, yani 1,000 token olarak ücretlendirilir.
Ücret, istenen değil döndürülen üzerinden hesaplandığı için kümeyi country veya region ile daraltmak orantılı olarak daha az maliyetlidir ve hiçbir validator ile eşleşmeyen bir istek hiçbir ücret doğurmaz. Epoch'taki validator sayısının üzerindeki bir limit gerçek sayıya indirilir; böylece bir istek var olmayan validator'lar için asla ödeme yapmaz.
Lider kümesinin büyüklüğü epoch'tan epoch'a değişir. Yukarıda gösterilen epoch'ta 670 validator idi; bu da tam bir okumayı kabaca 6,700 token yapar.

Validator Bilgileri Neden Önemlidir?

  • Validator başına tek bir satır, istemci tarafında yüz binlerce slot satırını toplamaya gerek kalmadan bu epoch'ta kimin ve ne kadar liderlik yaptığını yanıtlar.
  • slotCount, bir validator'ın bu epoch'ta ne sıklıkta lider olduğunu gösterir; bu nedenle yüksek slotCount değerine sahip bir validator'a giden kısa bir yol defalarca kazanç sağlar.
  • country ve region, epoch'un lider kapasitesinin gerçekte nerede bulunduğunu gösterir.
  • measuredAt ile birlikte değerlendirilen ping, yavaş bir yolu eskimiş bir okumadan ayırır.

Arka Plan

Tek bir Solana epoch'u yaklaşık 432,000 slottan oluşur. Bu slotlara ait lider atamaları validator kimliğine göre gruplandığında, kabaca 670 validator satırına iner. ERPC lider programını, validator metadata'sını, coğrafi konumu ve gecikme toplamayı sürdürür ve sonucu RPC arayüzü üzerinden sunar.

Stratejik Kullanım Senaryoları

  • Epoch düzeyinde kapasite planlaması: altyapıyı kayan bir slot penceresine göre değil, geçerli epoch'ta liderlik yapan validator kümesinin tamamına göre boyutlandırın.
  • Bölgesel kısa listeler: hedef bir konumda slot liderliği yapan validator'ları çekmek için country ve region kullanın.
  • Slot sayısına ve stake'e duyarlı önceliklendirme: kısa liste içindeki validator'ları sıralamak için slotCount ve stakeWeight değerlerini birlikte kullanın.
  • Epoch'lar arası izleme: lider coğrafyasının nasıl kaydığını görmek için epoch'lar arasında leaderRegion dağılımını karşılaştırın.

Kullanılabilirlik

getValidatorsInformation tüm ERPC kullanıcıları için kullanılabilir. API token'ları ve kullanım kredileri, ERPC Web Dashboard üzerinde verilebilir veya doğrulanabilir.

İşlem Başarı Oranı ve SWQoS Endpoint

İşlem başarı oranını ve yürütme hızını daha da artırmak için SWQoS Endpoint kullanmanızı öneririz. SWQoS (Stake-weighted Quality of Service), stake bağlantıları olan validator'lara öncelik verir. Liderler, bant genişliğinin yaklaşık %80'ini öncelikli trafiğe ve %20'sini öncelikli olmayan trafiğe ayırır; öncelikli şerit yaklaşık 5 kat verim sunar. Bu zamanlama, Priority-fee değerlendirmesinden önce gerçekleşir; bu da SWQoS öncelikli şeridine girmenin, gerçek düşük gecikmeli performansın ön koşulu olduğu anlamına gelir.