Zum Hauptinhalt springen
Die Solana Privacy Rings API fragt den Datenschutz-Indexer ab. Sie gibt den verschlüsselten Zustand und öffentliche Transaktionsmetadaten zurück. Dein Wallet entschlüsselt die payloads, um private Guthaben und den Verlauf zu lesen. Konzepte findest du in der Datenschutzübersicht. Informationen zu Einzahlungen, Übertragungen und Auszahlungen findest du im SDK.

Öffentliche und private Guthaben

Ein privates Guthaben wird in UTXOs (nicht ausgegebenen Transaktionsausgaben) gespeichert. Ein UTXO ist kein Solana-Konto. Unter Privater Zustand und UTXOs erfährst du, wie private Guthaben gespeichert und ausgegeben werden.

Endpoint und Authentifizierung

Sende einen JSON-RPC 2.0-request mit deinem Helius API key an den Pfad der Methode:
method muss mit dem letzten Pfadsegment der URL übereinstimmen. Methodenpfade akzeptieren einen einzelnen request. Batches, doppelte method-Felder und Abweichungen zwischen Pfad und Body geben vor der Ausführung HTTP 400 zurück. Verwende für die lokale Entwicklung http://127.0.0.1:8784/{method}, nachdem du den lokalen Stack gestartet hast.

Methoden

getEncryptedUtxosByTags

Ermittle verschlüsselte Ausgaben anhand von Sicht-Tags oder einem Ring.

getShieldedTransactionsByTags

Frage den Verlauf abgeschirmter Transaktionen anhand von Sicht-Tags oder einem Ring ab.

getShieldedTransactionsBySignature

Rufe abgeschirmte Ereignisse für eine Solana-Transaktion ab.

getShieldedTransactionsByNullifiers

Finde die Transaktionen, die die angegebenen Nullifier ausgegeben haben.

getMerkleProofs

Rufe Inklusionsbeweise für commitments im Zustandsbaum ab.

getNonInclusionProofs

Rufe Nichtinklusionsbeweise für Nullifier-Werte ab.

getNullifierQueueElements

Lies Nullifier in der Warteschlange nach Sequenz geordnet.

getUserRecords

Suche nach öffentlichen Registrierungen abgeschirmter Adressen.

Paginierung

getEncryptedUtxosByTags, getShieldedTransactionsByTags und getShieldedTransactionsByNullifiers geben eine Seite in result zurück:
  • data gruppiert Ergebnisse nach Solana-Transaktion und sortiert sie nach aufsteigendem slot und aufsteigender Signatur. Die Methode für verschlüsselte UTXOs verwendet in jeder Gruppe ein outputs-Array. Die Methoden für den Transaktionsverlauf verwenden ein events-Array.
  • limit zählt Solana-Transaktionen von 1 bis 1.000 und ist standardmäßig auf 1.000 gesetzt. Übereinstimmende Ausgaben oder Ereignisse einer Transaktion bleiben auf derselben Seite.
  • Übergib einen nicht leeren paginationToken unverändert und mit denselben Tags oder Nullifiern sowie denselben Ring- und slot-Filtern zurück. Fahre fort, bis der response-token null ist.
  • filters.slot akzeptiert die Grenzen gt, gte, lt und lte. Angegebene Grenzen werden mit AND kombiniert. Wenn ein unbegrenzter Lesevorgang einen leeren token erreicht, speichere den context.slot dieser Seite. Setze den Vorgang später fort, indem du filters.slot.gt auf diesen Wert setzt. Ein durch lt oder lte begrenzter Lesevorgang deckt nur slot bis zu dieser Grenze ab. Setze ihn ab der Grenze fort, nicht ab context.slot.
  • Setze minContextSlot, um einen mindestens persistierten Indexer-slot vorauszusetzen. Der Indexer setzt außerdem den slot deines paginationToken und aller Filter für gt oder gte voraus. Wenn er hinter einem dieser Werte liegt, gibt er den Fehler -32016 mit error.data.contextSlot zurück. Versuche es erneut, sobald er aufgeholt hat.
Responses zum Verlauf können außerdem outputTreeId enthalten, die ID des neuesten nicht pausierten Zustandsbaums. Sie wird weggelassen, wenn sie nicht verfügbar ist. Einzelne Ausgaben geben ihren eigenen Baum mit outputContext.treeId an. getNullifierQueueElements verwendet sequenzbasierte Paginierung. Weitere Informationen findest du auf der Methodenseite.

Datenkodierung

Fehler

Prüfe das JSON-RPC-Feld error, bevor du result liest. Das gilt auch, wenn der HTTP-Status 200 ist. HTTP 429 weist auf ein rate limit hin. Weitere Informationen findest du unter rate limits. Unter Authentifizierung erfährst du, wie du deinen API key einrichtest.