> ## 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.

# Parsed Events Schnellstart

> Parse deine erste Transaktion, rufe die geparste Adresshistorie ab und blättere durch die Ergebnisse. Plus die REST-Referenz für beide Endpunkte.

<Tip>
  Neu bei Parsed Events? Lies zuerst das Parsed Streams [mentale Modell](/docs/de/parsed-streams#das-mentale-modell) — Parsed Events liefert die gleichen dekodierten Anweisungen über REST und GraphQL.
</Tip>

## Schnellstart

<Steps>
  <Step title="Zugang erhalten">
    Parsed Events befindet sich in der offenen Betaphase und ist in kostenpflichtigen Plänen verfügbar. Hole dir deinen API-Schlüssel vom [Helius Dashboard](https://dashboard.helius.dev) und sende Anfragen an `https://mainnet.helius-rpc.com`.

    Authentifiziere mit dem API-Schlüssel deines Projekts, der als `api-key`-Abfrageparameter übergeben wird.
  </Step>

  <Step title="Transaktion parsen">
    Übergebe Signaturen im `transactions`-Body-Feld von `POST /v1/parsed-events/transactions`:

    <Tabs>
      <Tab title="JavaScript">
        ```javascript theme={"system"}
        const parseTransactions = async () => {
          const url = "https://mainnet.helius-rpc.com/v1/parsed-events/transactions?api-key=YOUR_API_KEY";

          const response = await fetch(url, {
            method: "POST",
            headers: {
              "Content-Type": "application/json",
            },
            body: JSON.stringify({
              transactions: [
                "5xSKzM8bvpudE521jikHqASzMr23Ms4X4ieY3K8oFPFrJWCSSgYocJmHznrR8b12voDxKDH8ykdCLXSRrx6duVLH",
              ],
              includeRawTransaction: false,
            }),
          });

          const data = await response.json();
          console.log(data);
        };

        parseTransactions();
        ```
      </Tab>

      <Tab title="cURL">
        ```bash theme={"system"}
        curl -X POST "https://mainnet.helius-rpc.com/v1/parsed-events/transactions?api-key=YOUR_API_KEY" \
          -H "content-type: application/json" \
          -d '{
            "transactions": [
              "5xSKzM8bvpudE521jikHqASzMr23Ms4X4ieY3K8oFPFrJWCSSgYocJmHznrR8b12voDxKDH8ykdCLXSRrx6duVLH"
            ],
            "includeRawTransaction": false
          }'
        ```
      </Tab>
    </Tabs>
  </Step>

  <Step title="Ergebnis lesen">
    Die Antwort enthält ein Ergebnis pro angeforderter Signatur, in Eingabereihenfolge. Jedes Ergebnis umfasst `signature`, `parserStatus` und entweder `parsed` oder `parserError`:

    ```json [expandable] theme={"system"}
    [
      {
        "signature": "5xSKzM8bvpudE521jikHqASzMr23Ms4X4ieY3K8oFPFrJWCSSgYocJmHznrR8b12voDxKDH8ykdCLXSRrx6duVLH",
        "parserStatus": "OK",
        "parsed": {
          "slot": 433950192,
          "blockTime": 1784487060,
          "fee": 2005000,
          "feePayer": "GV6UUmNxz2RpKxmNAPadYKb7uQpszwqQAu3qLJxVdC52",
          "transactionStatus": "OK",
          "nativeTransfers": [
            {
              "fromUserAccount": "GV6UUmNxz2RpKxmNAPadYKb7uQpszwqQAu3qLJxVdC52",
              "toUserAccount": "teBPkZtsnaKDpGHTy1KUZeh1PbVtbrKXhzruYpRiUUs",
              "amount": 1500000000000
            }
          ],
          "tokenTransfers": [
            {
              "fromUserAccount": "GV6UUmNxz2RpKxmNAPadYKb7uQpszwqQAu3qLJxVdC52",
              "toUserAccount": "7iWnBRRhBCiNXXPhqiGzvvBkKrvFSWqqmxRyu9VyYBxE",
              "fromTokenAccount": "teBPkZtsnaKDpGHTy1KUZeh1PbVtbrKXhzruYpRiUUs",
              "toTokenAccount": "2oL6my4QDDCfpgJZX1bZV1NgbmuNptKdgcE8wJm6efgk",
              "rawTokenAmount": 1498500000000,
              "decimals": 9,
              "tokenStandard": "Fungible",
              "mint": "So11111111111111111111111111111111111111112"
            }
          ],
          "summary": {
            "type": "swap",
            "description": "GV6UUmNxz2RpKxmNAPadYKb7uQpszwqQAu3qLJxVdC52 swapped 1500 SOL for 64672839.26195 pumpCmXqMfrsAkQ5r49WcJnRayYRqmXz6ae8H7H9Dfn via Jupiter",
            "parsedData": {
              "type": "swap",
              "protocol": "jupiter",
              "kind": "swap",
              "in_amount": "1500000000000",
              "actual_out_amount": "64672839261950",
              "input_mint": "So11111111111111111111111111111111111111112",
              "output_mint": "pumpCmXqMfrsAkQ5r49WcJnRayYRqmXz6ae8H7H9Dfn",
              "inner_swaps": [
                {
                  "amm_program_id": "",
                  "amm_program_name": null,
                  "input_amount": "470229300000",
                  "output_amount": "35579021038",
                  "input_mint": "So11111111111111111111111111111111111111112",
                  "output_mint": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v"
                },
                {
                  "amm_program_id": "",
                  "amm_program_name": null,
                  "input_amount": "1028270700000",
                  "output_amount": "77798063361",
                  "input_mint": "So11111111111111111111111111111111111111112",
                  "output_mint": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v"
                },
                {
                  "amm_program_id": "",
                  "amm_program_name": null,
                  "input_amount": "14625643887",
                  "output_amount": "8348494812168",
                  "input_mint": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
                  "output_mint": "pumpCmXqMfrsAkQ5r49WcJnRayYRqmXz6ae8H7H9Dfn"
                },
                {
                  "amm_program_id": "",
                  "amm_program_name": null,
                  "input_amount": "35566391375",
                  "output_amount": "20283004384731",
                  "input_mint": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
                  "output_mint": "pumpCmXqMfrsAkQ5r49WcJnRayYRqmXz6ae8H7H9Dfn"
                },
                {
                  "amm_program_id": "",
                  "amm_program_name": null,
                  "input_amount": "63185049137",
                  "output_amount": "36041340065051",
                  "input_mint": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
                  "output_mint": "pumpCmXqMfrsAkQ5r49WcJnRayYRqmXz6ae8H7H9Dfn"
                }
              ]
            }
          },
          "instructions": [
            {
              "instructionIndex": 5,
              "innerInstructionIndex": 2,
              "stackHeight": 3,
              "programId": "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA",
              "rawAccounts": [
                "2oL6my4QDDCfpgJZX1bZV1NgbmuNptKdgcE8wJm6efgk",
                "ATRsNGv2nDw7hSMfkUTBoVUDsFDwN7po7KbecyiGWNB4",
                "7iWnBRRhBCiNXXPhqiGzvvBkKrvFSWqqmxRyu9VyYBxE"
              ],
              "rawData": "3JvpRSxKFyKV",
              "summary": {
                "type": "transfer",
                "description": "7iWnBRRhBCiNXXPhqiGzvvBkKrvFSWqqmxRyu9VyYBxE transferred 470.2293 SOL from 7iWnBRRhBCiNXXPhqiGzvvBkKrvFSWqqmxRyu9VyYBxE to 8FnX3xo2yYw3EUE6w3nQA4GfXGS9wpK6oj3veJpbFzLo",
                "parsedData": null
              },
              "programName": "token",
              "instructionName": "transfer",
              "decoded": {
                "args": {
                  "amount": "470229300000"
                },
                "accounts": [
                  {
                    "name": "source_account",
                    "pubkey": "2oL6my4QDDCfpgJZX1bZV1NgbmuNptKdgcE8wJm6efgk",
                    "isSigner": false,
                    "isWritable": true
                  },
                  {
                    "name": "destination_account",
                    "pubkey": "ATRsNGv2nDw7hSMfkUTBoVUDsFDwN7po7KbecyiGWNB4",
                    "isSigner": false,
                    "isWritable": true
                  },
                  {
                    "name": "owner_or_delegate",
                    "pubkey": "7iWnBRRhBCiNXXPhqiGzvvBkKrvFSWqqmxRyu9VyYBxE",
                    "isSigner": true,
                    "isWritable": false
                  }
                ]
              }
            },
            {
              "instructionIndex": 5,
              "innerInstructionIndex": 1,
              "stackHeight": 2,
              "programId": "BiSoNHVpsVZW2F7rx2eQ59yQwKxzU5NvBcmKshCSUypi",
              "rawAccounts": [
                "7iWnBRRhBCiNXXPhqiGzvvBkKrvFSWqqmxRyu9VyYBxE",
                "8FnX3xo2yYw3EUE6w3nQA4GfXGS9wpK6oj3veJpbFzLo",
                "ATRsNGv2nDw7hSMfkUTBoVUDsFDwN7po7KbecyiGWNB4",
                "2Y7HATmn9aJBcxCskE5V2U2epmjvkZmB51zTJBbhj4cU",
                "2oL6my4QDDCfpgJZX1bZV1NgbmuNptKdgcE8wJm6efgk",
                "EpdaePzdqRkMtdZJquVPUWgyoJ5YEEpYALki6dv9VBrt",
                "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA",
                "TokenkegQfeZyiNwAJbNbGKPFXCWuBvf9Ss623VQ5DA",
                "Sysvar1nstructions1111111111111111111111111",
                "J1to1yufRnoWn81KYg1XkTWzmKjnYSnmE2VY8DGUJ9Qv"
              ],
              "rawData": "67t827t7UwAMHa6U18HnBBLj",
              "summary": null,
              "programName": "bison_fi",
              "instructionName": null,
              "decoded": null
            }
          ]
        }
      }
    ]
    ```

    Das Beispiel ist auf zwei Anweisungen verkürzt: eine dekodierte Token-Übertragung innerhalb der Route und eine AMM-Anweisung, deren Programm der Katalog kennt, aber nicht dekodieren kann, weshalb `instructionName` als `null` bleibt, während `rawData` und `rawAccounts` verfügbar bleiben. Siehe [Parsed Response](/docs/de/parsed-events/parsed-response) für jedes Feld und eine vollständige Beispielantwort.
  </Step>

  <Step title="Adresshistorie abrufen">
    `POST /v1/parsed-events/transaction-history` liefert die gleichen geparsten Ergebnisse wie oben für jede Transaktion, die eine Adresse berührt hat, standardmäßig die neuesten zuerst:

    <Tabs>
      <Tab title="JavaScript">
        ```javascript theme={"system"}
        const fetchTransactionHistory = async () => {
          const url = "https://mainnet.helius-rpc.com/v1/parsed-events/transaction-history?api-key=YOUR_API_KEY";

          const response = await fetch(url, {
            method: "POST",
            headers: {
              "Content-Type": "application/json",
            },
            body: JSON.stringify({
              address: "GV6UUmNxz2RpKxmNAPadYKb7uQpszwqQAu3qLJxVdC52",
              limit: 100,
              sortOrder: "desc",
              commitment: "confirmed",
            }),
          });

          const page = await response.json();
          console.log(page.data);
          console.log(page.paginationToken);
        };

        fetchTransactionHistory();
        ```
      </Tab>

      <Tab title="cURL">
        ```bash theme={"system"}
        curl -X POST "https://mainnet.helius-rpc.com/v1/parsed-events/transaction-history?api-key=YOUR_API_KEY" \
          -H "content-type: application/json" \
          -d '{
              "address": "GV6UUmNxz2RpKxmNAPadYKb7uQpszwqQAu3qLJxVdC52",
              "limit": 100,
              "sortOrder": "desc",
              "commitment": "confirmed"
            }'
        ```
      </Tab>
    </Tabs>
  </Step>

  <Step title="Paginieren">
    Historienantworten umschließen Ergebnisse in einem Seitenobjekt. Übergebe `paginationToken` in der nächsten Anfrage zurück, um fortzufahren. Wenn `paginationToken` fehlt, hat der Dienst das Ende des verfügbaren Seitenbereichs erreicht.
  </Step>
</Steps>

## Anleitungen

<CardGroup cols={2}>
  <Card title="Pump.fun-Mints abrufen" icon="rocket" href="/docs/de/parsed-events/guides/fetch-pumpfun-mints">
    Blättere durch jeden Token, den ein Wallet auf Pump.fun bereitgestellt hat.
  </Card>

  <Card title="Abfrage mit GraphQL" icon="diagram-project" href="/docs/de/parsed-events/guides/query-with-graphql">
    Wähle genau die geparsten Felder aus, die deine App benötigt.
  </Card>

  <Card title="Migration von Enhanced Transactions" icon="arrow-right" href="/docs/de/parsed-events/guides/migrate-from-enhanced-transactions">
    Endpunkt-, Parameter- und Antwortzuordnung der Legacy-API.
  </Card>
</CardGroup>

## REST-Referenz

Beide REST-Methoden akzeptieren einen JSON-Body über `POST` unter `/v1/parsed-events/` bei `https://mainnet.helius-rpc.com`, authentifiziert mit dem `api-key` Abfrageparameter. Anforderungs-Bodys lehnen unbekannte Felder ab, sodass Tippfehler laut und nicht stillschweigend ignoriert werden. GraphQL-Anfragen gehen an `POST /v1/parsed-events/graphql`.

### Transaktionen parsen

`POST /v1/parsed-events/transactions` ruft vollständige Solana-Transaktionen nach Signatur ab, dekodiert sie mit dem gleichen IDL-basierten Anweisungsdekoder, der [Parsed Streams](/docs/de/parsed-streams) antreibt, und liefert einen `TransactionResult` pro angeforderter Signatur. Die gleiche Methode ist in GraphQL als `transactions` verfügbar.

Die Antwortreihenfolge entspricht der Eingabereihenfolge, einschließlich doppelter Signaturen. Fehlende Transaktionen und Parser-Fehler auf Elementebene werden als `parserStatus: "ERROR"`-Ergebnisse auf Elementebene zurückgegeben:

```json theme={"system"}
[
  {
    "signature": "5xSKzM8bvpudE521jikHqASzMr23Ms4X4ieY3K8oFPFrJWCSSgYocJmHznrR8b12voDxKDH8ykdCLXSRrx6duVLH",
    "parserStatus": "ERROR",
    "parserError": {
      "code": "transaction_not_found",
      "message": "transaction was not found"
    }
  }
]
```

#### Anforderungs-Body

<ParamField body="transactions" type="string[]" required>
  Zu parsende Transaktionssignaturen. Die maximale Batch-Größe beträgt 100.
</ParamField>

<ParamField body="commitment" type="string" default="confirmed">
  Commitment-Level, das beim Abrufen von Transaktionen verwendet wird.

  * `confirmed`
  * `finalized`
</ParamField>

<ParamField body="includeRawTransaction" type="boolean" default="false">
  Wenn `true`, schließe das rohe Solana-Transaktionspayload als `rawTransaction` bei jedem Ergebnis ein.
</ParamField>

#### Hinweise

* `processed`-Commitment wird nicht unterstützt.
* `rawTransaction` wird ausgelassen, es sei denn, `includeRawTransaction` ist `true`.
* Auch Transaktionsausführungsfehler können geparst werden. In diesem Fall ist `parsed.transactionStatus` `ERROR`, und der Transaktionsfehler wird auf `parsed.error` angezeigt, wenn verfügbar.
* Validierungsfehler auf Anfrageebene liefern eine Fehlermeldung anstelle von Ergebnissen auf Elementebene.

### Geparste Transaktionshistorie

`POST /v1/parsed-events/transaction-history` liefert die geparste Transaktionshistorie für eine Adresse. Es unterstützt Paginierung, Signaturgrenzen, Slot-Grenzen, Blockzeit-Grenzen, Sortierreihenfolge und optionale rohe Transaktionen. Die gleiche Methode ist in GraphQL als `transactionsByAddress` verfügbar.

Im Gegensatz zum Legacy [Enhanced Transactions](/docs/de/enhanced-transactions/transaction-history) Adresse-Endpunkt werden Anforderungsparameter in einem JSON-Body und nicht als Abfragezeichenfolge-Parameter gesendet.

#### Anforderungs-Body

<ParamField body="address" type="string" required>
  Adresse, deren Transaktionshistorie abgerufen werden soll.
</ParamField>

<ParamField body="limit" type="number" default="100">
  Anzahl der zurückzugebenden Transaktionen. Muss zwischen `1` und `100` liegen.
</ParamField>

<ParamField body="beforeSignature" type="string">
  Rückgabe der Transaktionen vor dieser Signatur.
</ParamField>

<ParamField body="afterSignature" type="string">
  Rückgabe der Transaktionen nach dieser Signatur.
</ParamField>

<ParamField body="paginationToken" type="string">
  Cursor, der von der vorherigen Antwort zurückgegeben wurde.
</ParamField>

<ParamField body="sortOrder" type="string" default="desc">
  Sortierreihenfolge für zurückgegebene Transaktionen.

  * `asc`
  * `desc`
</ParamField>

<ParamField body="commitment" type="string" default="confirmed">
  Commitment-Level, das für den Historienabruf verwendet wird.

  * `confirmed`
  * `finalized`
</ParamField>

<ParamField body="includeRawTransaction" type="boolean" default="false">
  Wenn `true`, schließe das rohe Solana-Transaktionspayload als `rawTransaction` bei jedem Ergebnis ein.
</ParamField>

<ParamField body="slot" type="object">
  Slot-Vergleichsgrenzen. Jede Grenze ist optional: `gt`, `gte`, `lt`, `lte`.
</ParamField>

<ParamField body="time" type="object">
  Blockzeitvergleichsgrenzen in Unix-Sekunden. Jede Grenze ist optional: `gt`, `gte`, `lt`, `lte`.
</ParamField>

#### Paginierung

Antworten haben diese Form. Jedes `data`-Element verwendet das gleiche `TransactionResult`-Format, das von Parse Transactions zurückgegeben wird:

```json [expandable] theme={"system"}
{
  "data": [
    {
      "signature": "5xSKzM8bvpudE521jikHqASzMr23Ms4X4ieY3K8oFPFrJWCSSgYocJmHznrR8b12voDxKDH8ykdCLXSRrx6duVLH",
      "parserStatus": "OK",
      "parsed": {
        "slot": 433950192,
        "blockTime": 1784487060,
        "fee": 2005000,
        "feePayer": "GV6UUmNxz2RpKxmNAPadYKb7uQpszwqQAu3qLJxVdC52",
        "transactionStatus": "OK",
        "nativeTransfers": [],
        "tokenTransfers": [],
        "summary": {
          "type": "swap",
          "description": "GV6UUmNxz2RpKxmNAPadYKb7uQpszwqQAu3qLJxVdC52 swapped 1500 SOL for 64672839.26195 pumpCmXqMfrsAkQ5r49WcJnRayYRqmXz6ae8H7H9Dfn via Jupiter",
          "parsedData": {
            "type": "swap",
            "protocol": "jupiter",
            "kind": "swap",
            "in_amount": "1500000000000",
            "actual_out_amount": "64672839261950",
            "input_mint": "So11111111111111111111111111111111111111112",
            "output_mint": "pumpCmXqMfrsAkQ5r49WcJnRayYRqmXz6ae8H7H9Dfn",
            "inner_swaps": [
              {
                "amm_program_id": "",
                "amm_program_name": null,
                "input_amount": "470229300000",
                "output_amount": "35579021038",
                "input_mint": "So11111111111111111111111111111111111111112",
                "output_mint": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v"
              },
              {
                "amm_program_id": "",
                "amm_program_name": null,
                "input_amount": "1028270700000",
                "output_amount": "77798063361",
                "input_mint": "So11111111111111111111111111111111111111112",
                "output_mint": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v"
              },
              {
                "amm_program_id": "",
                "amm_program_name": null,
                "input_amount": "14625643887",
                "output_amount": "8348494812168",
                "input_mint": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
                "output_mint": "pumpCmXqMfrsAkQ5r49WcJnRayYRqmXz6ae8H7H9Dfn"
              },
              {
                "amm_program_id": "",
                "amm_program_name": null,
                "input_amount": "35566391375",
                "output_amount": "20283004384731",
                "input_mint": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
                "output_mint": "pumpCmXqMfrsAkQ5r49WcJnRayYRqmXz6ae8H7H9Dfn"
              },
              {
                "amm_program_id": "",
                "amm_program_name": null,
                "input_amount": "63185049137",
                "output_amount": "36041340065051",
                "input_mint": "EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",
                "output_mint": "pumpCmXqMfrsAkQ5r49WcJnRayYRqmXz6ae8H7H9Dfn"
              }
            ]
          }
        },
        "instructions": []
      }
    }
  ],
  "paginationToken": "433950192:0"
}
```

Übergebe `paginationToken` in der nächsten Anfrage zurück, um fortzufahren. Wenn `paginationToken` fehlt, hat der Dienst das Ende des verfügbaren Seitenbereichs erreicht.
