Zum Hauptinhalt springen
Die Enhanced Transactions API ist ein Legacy-Produkt im Wartungsmodus. Sie funktioniert weiterhin und diese Seiten bleiben verfügbar, erhält aber keine neuen Parser-Typen oder Funktionen mehr. Der Nachfolger ist Parsed Events. Parsed Events decodiert Anweisungen über den IDL-Katalog, ist in allen Tarifen verfügbar und kostet 10 Credits pro request. Der Migrationsleitfaden beschreibt den Umstieg Schritt für Schritt. Du kannst außerdem getTransactionsForAddress für den Transaktionsverlauf und backfill sowie die Wallet API für lesbare Wallet-Daten verwenden.

Übersicht

Der Transaction History endpoint gibt einen lesbaren Transaktionsverlauf für jede Solana-Adresse zurück. Statt rohe Anweisungsdaten und Kontolisten zu verarbeiten, erhältst du strukturierte Informationen zu folgenden Punkten:
  • Was in der Transaktion passiert ist (Übertragungen, Swaps, NFT-Aktivitäten).
  • Welche Konten beteiligt waren.
  • Wie viel SOL oder wie viele token übertragen wurden.
  • Zugehörige Metadaten (Mint-Adressen der token, Namen und Symbole der token und mehr).
Sende einen GET request an /v0/addresses/{address}/transactions. Intern basiert dieser endpoint auf der RPC-Methode getTransactionsForAddress.

Verwendung

  • Du zeigst Nutzern den Transaktionsverlauf einer Adresse an, etwa in Wallets, Portfolio-Trackern oder Explorern.
  • Du möchtest einen vorab geparsten, lesbaren Verlauf, ohne einen eigenen Decoder zu schreiben.
  • Du musst den Verlauf nach Transaktionstyp, Zeitraum oder slot-Bereich filtern.
  • Du benötigst den vollständigen token-Verlauf einer Wallet einschließlich zugehöriger token accounts (ATAs) – siehe unten.
Für neue Projekte ist getTransactionsForAddress der moderne, Helius-native Weg mit serverseitiger Filterung und Abfragen von token accounts.

Schnellstart

1

Get your API key

Registriere dich unter dashboard.helius.dev und kopiere deinen API key.
2

GET the address transactions endpoint

Rufe den Transaktionsverlauf für eine beliebige Solana-Adresse ab.
3

Filter and paginate

Grenze die Ergebnisse mit den folgenden type-, Zeit- und slot-Filtern ein. Durchlaufe anschließend Adressen mit hohem Volumen seitenweise mithilfe von Signatur-Cursorn.

Netzwerkunterstützung

Request-Parameter

Zeitbasierte Filterung

slot-basierte Filterung

Hinweise zur Filterung:
  • Zeitparameter verwenden Unix-Zeitstempel (Sekunden seit der Epoche). slot-Parameter verwenden Solana-slot-Nummern.
  • Du kannst zeitbasierte und slot-basierte Filter nicht im selben request kombinieren.
  • Verwende sort-order=asc für eine aufsteigende Reihenfolge (älteste zuerst) oder sort-order=desc für eine absteigende Reihenfolge (neueste zuerst).
  • Verwende Zeit- oder slot-Filter, um den Suchbereich einzugrenzen, wenn du den ungefähren Zeitraum kennst. Kombiniere sie mit limit, um die Seitengröße zu steuern.

Zugehörige token accounts

Auf Solana hält eine Wallet token nicht direkt. Stattdessen besitzt die Wallet token accounts, in denen sich die token befinden. Wenn dir jemand USDC sendet, landet es in deinem USDC-token account und nicht unter deiner primären Wallet-Adresse. Dieser endpoint ist einzigartig, weil er den vollständigen token-Verlauf einer Wallet einschließlich zugehöriger token accounts (ATAs) abfragen kann. Native RPC-Methoden wie getSignaturesForAddress schließen ATAs nicht ein. Der Filter token-accounts steuert dieses Verhalten:
  • none (Standardwert) – gibt nur Transaktionen zurück, die direkt auf die Wallet-Adresse verweisen. Verwende diese Option, wenn dich nur direkte Interaktionen mit der Wallet interessieren.
  • balanceChanged (empfohlen) – gibt Transaktionen zurück, die auf die Wallet-Adresse verweisen oder den Saldo eines token account ändern, das der Wallet gehört. Dadurch werden Spam und nicht zugehörige Vorgänge wie Gebührenerhebungen oder Delegierungen herausgefiltert. Du erhältst eine übersichtliche Ansicht relevanter Wallet-Aktivitäten.
  • all – gibt alle Transaktionen zurück, die auf die Wallet-Adresse oder ein token account der Wallet verweisen.
Der Filter token-accounts basiert auf dem Feld owner in den Metadaten der token-Salden. Dieses Feld war vor slot 111.491.819 (etwa Dezember 2022) nicht verfügbar. Transaktionen mit token accounts, die vor diesem slot aktiv waren, fehlen möglicherweise in den Ergebnissen von balanceChanged und all. Eine Umgehungslösung mit einem vollständigen Codebeispiel findest du im Tutorial zu getTransactionsForAddress.

Filter

Nach Transaktionstyp filtern

Rufe nur bestimmte Transaktionstypen ab, etwa NFT-Verkäufe, Übertragungen von token oder Swaps:
Die vollständige Liste der unterstützten Transaktionstypen findest du in der API-Referenz zum Transaktionsverlauf.

Typfilterung zur Laufzeit

Die Typfilterung erfolgt zur Laufzeit: Die API durchsucht Transaktionen nacheinander, bis sie mindestens 50 übereinstimmende Elemente findet. Wenn sie innerhalb des Suchfensters keine Treffer findet, gibt sie einen Fehler mit einer Signatur zurück, ab der du die Suche fortsetzen kannst. Das ist das erwartete Verhalten und kein Ausfall.
Wenn im aktuellen Suchfenster keine passenden Transaktionen gefunden werden, gibt die API eine error response wie diese zurück:
Verwende zum Fortfahren die Signatur aus der Fehlermeldung mit dem passenden Parameter in deinem nächsten request: before-signature für absteigende oder after-signature für aufsteigende Reihenfolge.
Wichtige Punkte:
  • Bei Typfiltern durchsucht die API jeweils bis zu 50 Transaktionen.
  • Wenn keine Treffer gefunden werden, setze die Suche mit der Signatur aus der Fehlermeldung fort.
  • Verwende before-signature für die Suche in absteigender Reihenfolge (Standardwert, neueste zuerst).
  • Verwende after-signature für die Suche in aufsteigender Reihenfolge (älteste zuerst). Dies ist für chronologische Suchen erforderlich.
  • Lege eine maximale Anzahl von Wiederholungsversuchen fest, um Endlosschleifen zu verhindern.

Beispiele

Die folgenden Szenarien decken Zeit- und slot-Bereiche, die Sortierreihenfolge, ATAs und kombinierte Filter ab.
Rufe Transaktionen innerhalb eines bestimmten Zeitfensters ab:
Rufe Transaktionen innerhalb eines bestimmten slot-Bereichs ab:
Rufe Transaktionen in aufsteigender Reihenfolge ab (älteste zuerst):
Kombiniere die Typfilterung mit einem Zeitraum und einer benutzerdefinierten Sortierreihenfolge:

Paginierung

Durchlaufe bei Adressen mit hohem Volumen die Ergebnisse seitenweise. Verwende dazu die letzte Signatur jedes Batches als Cursor:
Behalte für die Paginierung innerhalb eines Zeitraums die Zeitfilter bei jedem request bei und verschiebe den Cursor before-signature in jedem Schleifendurchlauf:

Nächste Schritte

getTransactionsForAddress

Der moderne, Helius-native Ersatz für Transaktionsverläufe und backfill.

Wallet API

REST endpoints für lesbare Wallet-Daten: Salden, Verläufe und Übertragungen.

Parse Transactions

Parse eine oder mehrere Transaktionssignaturen in lesbare Daten.

Getting Data overview

Vergleiche alle Helius-Optionen zum Abfragen von Solana-Daten.