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

# Verwendung von getSlotLeader

> Erfahren Sie mehr über die Anwendungsfälle, Codebeispiele, Anfrageparameter, Antwortstruktur und Tipps zur Verwendung von getSlotLeader.

Die [`getSlotLeader`](https://www.helius.dev/docs/api-reference/rpc/http/getslotleader) RPC-Methode gibt den öffentlichen Schlüssel des Validators zurück, der gemäß der Ansicht des Knotens auf einem bestimmten Commitment-Level der aktuelle Leiter für die Blockproduktion ist. Der Leiter ist verantwortlich für die Erstellung von Blöcken für den aktuellen Slot.

## Häufige Anwendungsfälle

* **Identifizierung des aktuellen Blockproduzenten:** Finden Sie heraus, welcher Validator derzeit für die Blockerstellung eingeplant ist.
* **Netzwerküberwachung:** Beobachten Sie die Rotation der Slot-Leiter.
* **Fehlerbehebung bei Transaktionen:** In einigen fortgeschrittenen Szenarien kann es relevant sein, den aktuellen Slot-Leiter zu kennen, wenn Transaktionen direkt an Leiter übermittelt werden (obwohl dies keine übliche Praxis auf Client-Seite ist).

## Anfrageparameter

Diese Methode nimmt ein optionales Konfigurationsobjekt als ersten Parameter an:

1. **`options`** (`object`, optional): Ein optionales Konfigurationsobjekt mit den folgenden Feldern:
   * **`commitment`** (`string`, optional): Spezifiziert das [Commitment-Level](https://www.helius.dev/blog/solana-commitment-levels) für die Abfrage. Unterstützte Werte sind `finalized`, `confirmed` oder `processed`. Wenn nicht angegeben, wird das Standard-Commitment des RPC-Knotens verwendet (normalerweise `finalized`). Der Slot-Leiter wird basierend auf dem Slot bestimmt, der diesem Commitment-Level entspricht.
   * **`minContextSlot`** (`number`, optional): Der minimale Slot, den die Anfrage bewerten kann. Dies legt den minimalen Slot für den Kontext des Knotens fest.

## Antwortstruktur

Das `result`-Feld der JSON-RPC-Antwort ist eine einzelne Base-58 kodierte Zeichenfolge, die den öffentlichen Schlüssel (Identität) des aktuellen Slot-Leiters darstellt.

**Beispielantwort:**

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

## Beispiele

### 1. Aktuellen Slot-Leiter abrufen (Standard-Commitment)

Dieses Beispiel ruft den aktuellen Slot-Leiter unter Verwendung des Standard-Commitment-Levels 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": "getSlotLeader"
    }'
  ```

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

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

  getCurrentSlotLeader();
  ```
</CodeGroup>

### 2. Aktuellen Slot-Leiter mit `confirmed` Commitment abrufen

Dieses Beispiel ruft den Slot-Leiter für den neuesten Slot ab, der das `confirmed` Commitment 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": "getSlotLeader",
      "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 getConfirmedSlotLeader() {
    const connection = new Connection('https://mainnet.helius-rpc.com/?api-key=<api-key>');
    try {
      const slotLeader = await connection.getSlotLeader('confirmed');
      console.log('Current slot leader (confirmed commitment):', slotLeader);
      // 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 slotLeader = await connection.getSlotLeader({ commitment: 'confirmed' });
    } catch (error) {
      console.error('Error fetching confirmed slot leader:', error);
    }
  }

  getConfirmedSlotLeader();
  ```
</CodeGroup>

## Entwickler-Tipps

* **Dynamische Natur:** Slot-Leiter ändern sich häufig (alle paar Slots, typischerweise 4). Das Ergebnis dieses Aufrufs ist eine Momentaufnahme basierend auf der aktuellen Ansicht des Knotens und dem gewählten Commitment.
* **Commitment-Level:** Das Commitment-Level bestimmt, welcher Slot als "aktuell" betrachtet wird, um den Leiter zu bestimmen. Die Verwendung von `processed` gibt Ihnen den Leiter des allerneuesten Slots, den der Knoten kennt, was sich schnell ändern kann und möglicherweise noch nicht vom breiteren Netzwerk bestätigt wurde.
* **Leiterplan:** Die Reihenfolge der Slot-Leiter wird durch einen Leiterplan bestimmt, der zu Beginn jedes Epochenzyklus berechnet wird. Unser Leitfaden zu [Slots, Blocks und Epochs](https://www.helius.dev/blog/solana-slots-blocks-and-epochs) bietet weitere Informationen zu diesem Prozess. Für einen umfassenderen Überblick über kommende Leiter verwenden Sie `getLeaderSchedule`.
* **Perspektive des Knotens:** Der zurückgegebene Slot-Leiter basiert auf den Informationen, die dem spezifischen RPC-Knoten zur Verfügung stehen, den Sie abfragen. Unterschiedliche Knoten können aufgrund von Netzwerkverzögerungen leicht unterschiedliche Ansichten haben.

`getSlotLeader` bietet eine schnelle Möglichkeit, den Validator zu identifizieren, der derzeit für die Blockproduktion verantwortlich ist. Für einen umfassenderen Überblick über die Leiterrotation sollten Sie `getLeaderSchedule` in Betracht ziehen.

## Verwandte Methoden

<CardGroup cols={2}>
  <Card title="getLeaderSchedule" href="/docs/de/api-reference/rpc/http/getleaderschedule">
    Holen Sie sich den gesamten Leiterplan für eine Epoche
  </Card>

  <Card title="getSlotLeaders" href="/docs/de/api-reference/rpc/http/getslotleaders">
    Holen Sie sich Leiter für eine Reihe von bevorstehenden Slots
  </Card>
</CardGroup>
