> ## Documentation Index
> Fetch the complete documentation index at: https://www.helius.dev/docs/llms.txt
> Use this file to discover all available pages before exploring further.

# logsSubscribe

> logsSubscribe streamt Solana-Transaktionsprotokolle in Echtzeit über WebSocket — abonnieren Sie alle Transaktionen oder filtern Sie nach einem Programm oder Konto mit Erwähnungen.

## Endpunkte

Websockets sind auf dem Mainnet und Devnet mit den folgenden URLs verfügbar:

* **Mainnet** `wss://mainnet.helius-rpc.com/?api-key=<api-key>`
* **Devnet** `wss://devnet.helius-rpc.com/?api-key=<api-key>`

<Note>Websockets haben einen 10-minütigen Inaktivitäts-Timer; es wird dringend empfohlen, Gesundheitsprüfungen zu implementieren und jede Minute Pings zu senden, um die Websocket-Verbindung aktiv zu halten.</Note>

## Autorisierungen

<ParamField query="api-key" type="string" required>
  Ihr Helius API-Schlüssel. Sie können einen kostenlos im [Dashboard](https://dashboard.helius.dev/api-keys) erhalten.
</ParamField>

## Anfrageinhalt

<ParamField body="params" type="array" required>
  <Expandable title="Eigenschaften" defaultOpen>
    <ParamField body="filter" type="string | object" required>
      Filterkriterien für die Protokolle, um Ergebnisse nach Kontotyp zu erhalten. Die folgenden Filtertypen werden derzeit unterstützt:

      * `all` - alle Transaktionen abonnieren, außer einfachen Abstimmungstransaktionen
      * `allWithVotes` - alle Transaktionen abonnieren, einschließlich einfacher Abstimmungstransaktionen
      * Ein JSON-Objekt mit dem folgenden Feld:
        * `mentions: [ <string> ]` - Array mit einem einzigen Pubkey (als Base-58-codierter String); wenn vorhanden, abonnieren Sie nur Transaktionen, die diese Adresse erwähnen

      Hinweis: Das Feld `mentions` unterstützt derzeit nur einen Pubkey-String pro Methodenaufruf. Die Auflistung zusätzlicher Adressen führt zu einem Fehler.
    </ParamField>

    <ParamField body="config" type="object">
      Konfigurationsobjekt mit den folgenden Feldern:

      <ParamField body="commitment" type="string">
        Das Commitment-Level für das Abonnement. Kann `finalized`, `confirmed` oder `processed` sein.
      </ParamField>
    </ParamField>
  </Expandable>
</ParamField>

## Antwort

<ResponseField name="result" type="integer">
  Abonnement-ID (erforderlich zum Abbestellen)
</ResponseField>

## Benachrichtigungsformat

Die Benachrichtigung wird ein RpcResponse JSON-Objekt sein, dessen Wert gleich ist:

* `signature: <string>` - Die Transaktionssignatur base58-kodiert.
* `err: <object|null>` - Fehler, wenn die Transaktion fehlgeschlagen ist, null, wenn die Transaktion erfolgreich war. Siehe Definitionen von TransactionError.
* `logs: <array[string]>` - Array von Protokollnachrichten, die die Transaktionsanweisungen während der Ausführung ausgegeben haben.

<RequestExample>
  ```json Request theme={"system"}
  {
    "jsonrpc": "2.0",
    "id": 1,
    "method": "logsSubscribe",
    "params": [
      {
        "mentions": ["11111111111111111111111111111111"]
      },
      {
        "commitment": "finalized"
      }
    ]
  }
  ```
</RequestExample>

<ResponseExample>
  ```json Response theme={"system"}
  {
    "jsonrpc": "2.0",
    "result": 24040,
    "id": 1
  }
  ```

  ```json Notification theme={"system"}
  {
    "jsonrpc": "2.0",
    "method": "logsNotification",
    "params": {
      "result": {
        "context": {
          "slot": 5208469
        },
        "value": {
          "signature": "5h6xBEauJ3PK6SWCZ1PGjBvj8vDdWG3KpwATGy1ARAXFSDwt8GFXM7W5Ncn16wmqokgpiKRLuS83KUxyZyv2sUYv",
          "err": null,
          "logs": [
            "SBF program 83astBRguLMdt2h5U1Tpdq5tjFoJ6noeGwaY3mDLVcri success"
          ]
        }
      },
      "subscription": 24040
    }
  }
  ```
</ResponseExample>
