Skip to main content
Die getSignaturesForAddress RPC-Methode ermöglicht es Ihnen, eine Liste bestätigter Transaktionssignaturen abzurufen, die ein spezielles Konto betreffen. Dies ist nützlich, um den Transaktionsverlauf eines Kontos abzurufen. Signaturen werden in umgekehrt chronologischer Reihenfolge (die neuesten zuerst) zurückgegeben.
Für erweiterte Filterung, Sortierung und Token-Kontoverlauf verwenden Sie stattdessen getTransactionsForAddress. Beachten Sie, dass getSignaturesForAddress keine Transaktionen beinhaltet, die mit zugehörigen Token-Konten verbunden sind.

Häufige Anwendungsfälle

  • Transaktionsverlauf des Kontos: Anzeige der vergangenen Transaktionen für die Brieftasche eines Benutzers. Für eine fortgeschrittene Analyse der Transaktionsgeschichte sollten Sie Helius’s Enhanced Transactions API in Betracht ziehen.
  • Aktivitätsprüfung: Überprüfung aller Transaktionen, die mit einem bestimmten Smart Contract oder Konto verbunden sind.
  • Spezifische Transaktionssuche: Finden einer bestimmten Transaktion durch Durchsuchen des Kontoverlaufs, wenn nur die beteiligte Adresse bekannt ist.
  • Datenindexierung: Aufbau eines lokalisierten Index von Transaktionen für schnellere Abfragen und Analysen.

Anforderungsparameter

  1. address (string): (Erforderlich) Der base-58 kodierte öffentliche Schlüssel des Kontos, für das Transaktionssignaturen abgerufen werden sollen.
  2. options (object, optional): Ein optionales Konfigurationsobjekt mit den folgenden Feldern:
    • limit (number, optional): Die maximale Anzahl der zurückzugebenden Signaturen. Der Standardwert ist 1000, und das Maximum ist 1000.
    • before (string, optional): Eine base-58 kodierte Transaktionssignatur. Wenn angegeben, beginnt die Anfrage mit der Suche nach Transaktionen vor dieser Signatur.
    • until (string, optional): Eine base-58 kodierte Transaktionssignatur. Wenn angegeben, sucht die Anfrage nach Transaktionen, bis diese Signatur erreicht ist (exklusiv).
    • commitment (string, optional): Gibt die Verbindlichkeitsebene an, die für die Anfrage verwendet werden soll. Unterstützte Werte sind finalized oder confirmed. Der processed Zustand wird nicht unterstützt. Wenn nicht angegeben, wird die Standardverbindlichkeit des RPC-Knotens verwendet (normalerweise finalized).
    • minContextSlot (number, optional): Der minimale Slot, auf dem die Anfrage ausgewertet werden kann. Dies ist kein Filter für historische Transaktionen, sondern legt den minimalen Slot für den Kontext des Knotens fest.
Batchverarbeitung nicht unterstütztDiese Archivierungsmethode unterstützt keine Batchverarbeitung. Stellen Sie nur einzelne Anfragen.

Antwortstruktur

Das result Feld der JSON-RPC-Antwort ist ein Array von Signaturinformationsobjekten. Jedes Objekt hat die folgende Struktur:
  • signature (string): Die base-58 kodierte Transaktionssignatur.
  • slot (u64): Der Slot, in dem die Transaktion verarbeitet wurde.
  • err (object | null): Ein Fehlerobjekt, wenn die Transaktion fehlgeschlagen ist, oder null, wenn sie erfolgreich war.
  • memo (string | null): Das Memo, das mit der Transaktion verbunden ist, falls vorhanden.
  • blockTime (i64 | null): Die geschätzte Produktionszeit des Blocks, der die Transaktion enthält, als Unix-Zeitstempel (Sekunden seit der Epoche). null, wenn nicht verfügbar.
  • confirmationStatus (string | null): Der Bestätigungsstatus der Transaktion (z. B. processed, confirmed, finalized). null, wenn nicht verfügbar (z. B. bei älteren Helius-Antworten).

Beispiele

1. Abrufen der neuesten Signaturen für eine Adresse

Dieses Beispiel ruft die neuesten (bis zu 1000) Transaktionssignaturen für eine bestimmte Adresse ab.

2. Abrufen von Signaturen mit Limitierung

Dieses Beispiel ruft eine festgelegte Anzahl von jüngsten Transaktionssignaturen für eine Adresse ab.

3. Paginierung durch Transaktionshistorie

Dieses Beispiel zeigt, wie man den Transaktionsverlauf in Chargen abruft, indem der before Parameter verwendet wird.

Entwicklertipps

  • Paginierung: Um einen vollständigen Transaktionsverlauf für ein aktives Konto zu erhalten, müssen Sie wahrscheinlich mehrere Anfragen stellen, wobei Sie den before Parameter mit der letzten Signatur der vorherigen Charge und einem limit verwenden.
  • Ratenbegrenzung: Beachten Sie die Ratenbegrenzungen des RPC-Knotens, wenn Sie umfangreiche Transaktionsverläufe abrufen.
  • Reihenfolge: Signaturen werden immer von neu nach alt zurückgegeben.
  • limit Parameter: Der limit Parameter kann zwischen 1 und 1000 liegen. Wenn nicht angegeben, beträgt der Standardwert 1000.
  • until Parameter: Dieser Parameter kann verwendet werden, um die Abrufung von Signaturen zu stoppen, wenn eine bekannte ältere Signatur erreicht wurde, was nützlich sein kann, wenn man nur Transaktionen bis zu einem bestimmten Punkt benötigt.
  • minContextSlot: Dieser Parameter filtert keine historischen Transaktionen. Er gibt den minimalen Slot an, den der RPC-Knoten für seinen Kontext bei der Auswertung der Anfrage verwenden soll. Wenn der Zustand des Knotens älter ist als dieser Slot, kann er einen Fehler zurückgeben.
  • Transaktionsdetails: Diese Methode gibt nur Signaturen und grundlegende Informationen zurück. Um vollständige Transaktionsdetails zu erhalten, würden Sie die getTransaction Methode mit jeder Signatur verwenden.
  • Einschränkung für Token-Konten: Diese Methode gibt nur Transaktionen zurück, die direkt auf die angegebene Adresse verweisen. Sie enthält keine Transaktionen, die Token-Konten betreffen, die von der Adresse verwaltet werden. Für einen vollständigen Token-Verlauf, einschließlich zugehöriger Token-Konten, verwenden Sie getTransactionsForAddress mit dem tokenAccounts Filter.
Durch die Verwendung von getSignaturesForAddress mit seinen Paginierungsoptionen können Sie effektiv Transaktionsverläufe für jede Solana-Adresse abrufen und verwalten.

Verwandte Methoden

getTransactionsForAddress

Erweiterte Filterung, Sortierung und Token-Kontoverlauf

getTransaction

Vollständige Transaktionsdetails aus einer Signatur abrufen