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

# Wie man getSlot verwendet

> Lerne Anwendungsfälle, Codebeispiele, Anforderungsparameter, Antwortstruktur und Tipps zur Verwendung von getSlot.

Die [`getSlot`](https://www.helius.dev/docs/api-reference/rpc/http/getslot) RPC-Methode gibt den aktuellen Slot zurück, den der RPC-Knoten als einen bestimmten Verpflichtungsgrad erreicht betrachtet. Dies ist eine grundlegende Methode, um den aktuellen Stand der Blockchain zu verstehen, so wie er vom Knoten wahrgenommen wird.

## Allgemeine Anwendungsfälle

* **Aktuellen Netzwerkfortschritt abrufen:** Bestimmen Sie den zuletzt verarbeiteten oder vom Knoten bestätigten Slot.
* **Synchronisationsprüfung des Knotens:** Der Vergleich des Slots von verschiedenen Knoten kann einen Hinweis auf ihren Synchronisationsstatus geben.
* **Zeitstempelung von Operationen:** Verwenden Sie den aktuellen Slot als Referenzpunkt für Operationen oder um das Alter bestimmter Daten zu verstehen.
* **Eingabe für andere RPC-Anfragen:** Einige RPC-Methoden könnten eine Slot-Nummer als Referenzpunkt verwenden.

## Anforderungsparameter

Diese Methode nimmt ein optionales Konfigurationsobjekt als ersten Parameter entgegen:

1. **`options`** (`object`, optional): Ein optionales Konfigurationsobjekt mit den folgenden Feldern:
   * **`commitment`** (`string`, optional): Gibt das [Verpflichtungsniveau](https://www.helius.dev/blog/solana-commitment-levels) für die Anfrage an. Unterstützte Werte sind `finalized`, `confirmed` oder `processed`. Wenn weggelassen, wird das Standardverpflichtungsniveau des RPC-Knotens verwendet (normalerweise `finalized`).
     * `processed`: Der Knoten wird seinen neuesten Slot abfragen. Beachten Sie, dass dieser Slot möglicherweise noch nicht vom Cluster bestätigt wurde und potenziell übersprungen werden könnte.
     * `confirmed`: Der Knoten wird den neuesten Slot abfragen, auf den von einer Supermehrheit des Clusters abgestimmt wurde.
     * `finalized`: Der Knoten wird den neuesten Slot abfragen, der von der Supermehrheit des Clusters als maximal gesperrt bestätigt wurde (kann nicht zurückgesetzt werden).
   * **`minContextSlot`** (`number`, optional): Der minimale Slot, bei dem die Anfrage ausgewertet werden kann. Dies setzt den Mindestslot für den Kontext des Knotens fest. Wenn der Zustand des Knotens älter als dieser Slot ist, könnte er einen Fehler oder eine Slot-Nummer zurückgeben, die seinen aktuellen (älteren) Zustand relativ zu diesem Minimum widerspiegelt.

## Antwortstruktur

Das `result` Feld der JSON-RPC-Antwort ist ein einzelner `u64` (ungesichertes 64-Bit-Integer), der die aktuelle Slot-Nummer entsprechend dem angegebenen Verpflichtungsniveau darstellt.

**Beispielantwort:**

```json theme={"system"}
{
  "jsonrpc": "2.0",
  "result": 123456789,
  "id": 1
}
```

## Beispiele

### 1. Aktuellen Slot abrufen (Standardverpflichtung)

Dieses Beispiel ruft den aktuellen Slot mit dem Standardverpflichtungsniveau des Knotens ab (normalerweise `finalized`).

<CodeGroup>
  ```bash cURL theme={"system"}
  # Replace <api-key> with your Helius API key
  curl https://mainnet.helius-rpc.com/?api-key=<api-key> -X POST -H "Content-Type: application/json" -d \
    '{
      "jsonrpc": "2.0",
      "id": 1,
      "method": "getSlot"
    }'
  ```

  ```javascript JavaScript (using @solana/web3.js) theme={"system"}
  // Replace <api-key> with your Helius API key
  const { Connection } = require('@solana/web3.js');

  async function getCurrentSlot() {
    const connection = new Connection('https://mainnet.helius-rpc.com/?api-key=<api-key>');
    try {
      const slot = await connection.getSlot();
      console.log('Current slot (default commitment):', slot);
    } catch (error) {
      console.error('Error fetching current slot:', error);
    }
  }

  getCurrentSlot();
  ```
</CodeGroup>

### 2. Aktuellen Slot mit spezifischer Verpflichtung abrufen

Dieses Beispiel ruft den aktuellen Slot ab, der das `confirmed` Verpflichtungsniveau erreicht hat.

<CodeGroup>
  ```bash cURL theme={"system"}
  # Replace <api-key> with your Helius API key
  curl https://mainnet.helius-rpc.com/?api-key=<api-key> -X POST -H "Content-Type: application/json" -d \
    '{
      "jsonrpc": "2.0",
      "id": 1,
      "method": "getSlot",
      "params": [
        {
          "commitment": "confirmed"
        }
      ]
    }'
  ```

  ```javascript JavaScript (using @solana/web3.js) theme={"system"}
  // Replace <api-key> with your Helius API key
  const { Connection } = require('@solana/web3.js');

  async function getConfirmedSlot() {
    const connection = new Connection('https://mainnet.helius-rpc.com/?api-key=<api-key>');
    try {
      const slot = await connection.getSlot('confirmed');
      console.log('Current slot (confirmed commitment):', slot);
      // Note: For @solana/web3.js v1.30.0 and later, you can pass commitment directly.
      // For older versions or more complex options, use an object:
      // const slot = await connection.getSlot({ commitment: 'confirmed' });
    } catch (error) {
      console.error('Error fetching confirmed slot:', error);
    }
  }

  getConfirmedSlot();
  ```
</CodeGroup>

## Entwickler-Tipps

* **Verpflichtung ist wichtig:** Die zurückgegebene Slot-Nummer hängt stark vom angegebenen `commitment` Niveau ab. Siehe [Solana Commitment Levels](https://www.helius.dev/blog/solana-commitment-levels) für detaillierte Informationen. `processed` wird der höchste (neueste) Slot sein, den der Knoten kennt, während `finalized` ein älterer Slot sein wird, der vom gesamten Netzwerk bestätigt wurde. Wählen Sie das Verpflichtungsniveau, das den Anforderungen Ihres Anwendungsfalls an Datenfinalität entspricht.
* **Knotenvariabilität:** Verschiedene RPC-Knoten könnten leicht unterschiedliche Slot-Nummern für dasselbe Verpflichtungsniveau aufgrund von Netzwerkverzögerungen oder ihrem eigenen Verarbeitungszustand zurückgeben. Dies ist besonders für `processed` und `confirmed` Levels zutreffend.
* **`minContextSlot`:** Dieser Parameter stellt sicher, dass der Knoten, der Ihre Anfrage verarbeitet, mindestens den `minContextSlot` erreicht hat. Wenn der Knoten hinter diesem Slot liegt, kann das Verhalten variieren (z. B. ein Fehler oder der aktuelle höchste Slot des Knotens, der kleiner ist als `minContextSlot`). Er wird allgemein in fortgeschrittenen Szenarien verwendet, in denen Sie sicherstellen müssen, dass eine Abfrage gegen einen ausreichend aktuellen Zustand ausgeführt wird.

`getSlot` ist eine einfache, aber wesentliche Methode zur Interaktion mit der Solana Blockchain und zum Verständnis ihres aktuellen Fortschritts.
