Skip to main content
Die getInflationReward RPC-Methode ermöglicht es Ihnen, die Inflation Belohnungen (allgemein bekannt als Staking-Belohnungen) abzufragen, die einem oder mehreren Adressen für eine bestimmte Epoche gutgeschrieben wurden. Dies ist nützlich, um die von Stake-Konten oder einem Konto, das Inflationsbelohnungen erhalten haben könnte, erhaltenen Belohnungen zu überprüfen.
Vermeiden Sie Batch-Verarbeitung für bessere LeistungDas Batchen von Archivierungsmethoden erhöht die Latenzzeit erheblich. Batches über 10 Anfragen sind nicht erlaubt.

Übliche Anwendungsfälle

  • Staking-Belohnungen verifizieren: Überprüfen Sie, ob ein Stake-Konto die erwarteten Belohnungen für eine vergangene Epoche erhalten hat.
  • Belohnungshistorie verfolgen: Belohnungen für mehrere Epochen abfragen, um eine Historie für eine Adresse zu erstellen.
  • Validator-Auszahlungen prüfen: Validatoren können dies nutzen, um die Belohnungsverteilung zu überprüfen (obwohl Belohnungen an Stake-Konten gezahlt werden, nicht direkt an die Validator-Identitäten).

Anforderungsparameter

Die Methode nimmt zwei Hauptparameter entgegen:
  1. addresses (Array von Strings): Eine Liste von base-58 codierten öffentlichen Schlüsseln für die Konten, die Sie abfragen möchten. Die maximale Anzahl erlaubter Adressen kann je nach RPC-Anbieter variieren (z. B. erlaubt Helius bis zu 1005 für bezahlte Pläne).
  2. config (Objekt, optional): Ein Konfigurationsobjekt mit den folgenden optionalen Feldern:
    • commitment (String, optional): Gibt das Commitment Level an. Standardmäßig finalized, falls nicht angegeben.
    • epoch (Integer, optional): Die Epoche, für die die Belohnungen abgerufen werden sollen. Wird sie weggelassen, verwendet der RPC-Knoten in der Regel die zuletzt abgeschlossene Epoche, für die Belohnungen verteilt wurden.
    • minContextSlot (Integer, optional): Der minimale Slot, bei dem die Anfrage evaluiert werden kann. Dies stellt sicher, dass die Abfrage gegen einen Hauptbuchzustand durchgeführt wird, der mindestens bis zu diesem Slot verarbeitet wurde.

Antwortstruktur

Das FIELD_result des JSON-RPC-Antworts wird ein Array sein, das dem Eingabe-ARRAY_addresses entspricht. Jedes Element im Ergebnisarray wird entweder sein:
  • Ein Objekt, das die Details der Inflationsbelohnung enthält, wenn die Adresse für die spezifische Epoche eine Belohnung erhalten hat.
  • null, wenn die Adresse keine Inflationsbelohnung für diese Epoche erhalten hat oder das Konto nicht existierte.
Das Belohnungsobjekt hat die folgenden Felder:
  • epoch (u64): Die Epoche, für die diese Belohnung gutgeschrieben wurde.
  • effectiveSlot (u64): Der Slot, in dem die Belohnung angewendet und wirksam wurde.
  • amount (u64): Die Höhe der Belohnung, in Lamports.
  • postBalance (u64): Das Guthaben des Kontos, in Lamports, nach der Gutschrift der Belohnung.
  • commission (u8 | undefined): Für Abstimmungskonten ist dies der Prozentsatz der Kommission (0-100), den der Validator zum Zeitpunkt der Gutschrift der Belohnung genommen hat. Es wird undefined für Nicht-Abstimmungskonten sein.

Beispiele

1. Inflationsbelohnung für eine einzelne Adresse abrufen (Vorherige Epoche)

Dieses Beispiel ruft die Inflationsbelohnung für eine bestimmte Adresse für die zuletzt abgeschlossene Epoche ab.

2. Inflationsbelohnungen für mehrere Adressen für eine bestimmte Epoche abrufen

Entwicklertipps

  • Epochen-Spezifität: Belohnungen werden einmal pro Epoche gutgeschrieben. Stellen Sie sicher, dass Sie nach der richtigen Epochenzahl abfragen.
  • Zeitpunkt der Belohnungen: Inflationsbelohnungen werden am Ende einer Epoche berechnet und zu Beginn der nächsten angewendet. Der effectiveSlot zeigt an, wann dies geschieht.
  • Nullergebnisse: Ein null Ergebnis für eine Adresse bedeutet, dass keine Belohnung für diese Adresse in der angegebenen Epoche gefunden wurde. Dies könnte daran liegen, dass das Konto nicht berechtigt war (z. B. kein ausreichend gestaktes Stake-Konto), die Belohnung null war oder das Konto zu diesem Zeitpunkt nicht existierte.
  • Ratenbegrenzungen: Beachten Sie die Ratenbegrenzungen des RPC-Anbieters, insbesondere bei der Abfrage einer großen Anzahl von Adressen.
Dieser Leitfaden hilft Ihnen, die getInflationReward Methode zu verwenden, um Staking-Belohnungen im Solana-Netzwerk korrekt abzurufen und zu überprüfen.