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

# Comment utiliser getFirstAvailableBlock

> Découvrez les cas d'utilisation de getFirstAvailableBlock, des exemples de code, les paramètres de requête, la structure de réponse, et des conseils.

La méthode [`getFirstAvailableBlock`](https://www.helius.dev/docs/api-reference/rpc/http/getfirstavailableblock) RPC renvoie le numéro de slot du bloc confirmé le plus ancien qui n'a pas encore été purgé du registre par le nœud interrogé. Ceci est utile pour comprendre la plage de données historiques qu'un nœud particulier stocke actuellement.

## Cas d'utilisation courants

* **Requêtes de données historiques :** Déterminez le point de départ à partir duquel vous pouvez commencer à interroger les données historiques de blocs ou de transactions sur un nœud spécifique.
* **Vérifications de synchronisation des nœuds :** Bien que ce ne soit pas une mesure directe de la synchronisation, cela peut donner une idée de la quantité de données historiques qu'un nœud conserve par rapport à d'autres.
* **Analyse du registre :** Comprenez la profondeur du registre disponible sur un endpoint RPC donné.

## Paramètres de requête

Cette méthode ne prend aucun paramètre.

## Structure de réponse

Le champ `result` de la réponse JSON-RPC sera un `u64` (entier non signé de 64 bits) représentant le numéro de slot du premier bloc disponible.

## Exemples

### 1. Obtenez le slot du premier bloc disponible

Cet exemple récupère le slot du bloc le plus ancien disponible sur le nœud interrogé.

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

  ```javascript JavaScript (using @solana/web3.js) theme={"system"}
  const { Connection } = require('@solana/web3.js');

  async function logFirstAvailableBlock() {
    const connection = new Connection('https://mainnet.helius-rpc.com/?api-key=<api-key>');
    try {
      const firstAvailableBlock = await connection.getFirstAvailableBlock();
      console.log(`First Available Block Slot: ${firstAvailableBlock}`);
    } catch (error) {
      console.error('Error fetching first available block:', error);
    }
  }

  logFirstAvailableBlock();
  ```
</CodeGroup>

## Conseils pour les développeurs

* **Spécifique au nœud :** Le premier bloc disponible peut varier considérablement entre différents nœuds RPC. Les nœuds peuvent être configurés pour purger les données du registre à des rythmes différents, donc un nœud pourrait avoir un historique beaucoup plus profond qu'un autre.
* **Non fixe :** La valeur retournée par `getFirstAvailableBlock` augmentera avec le temps à mesure que les slots plus anciens sont finalement purgés du registre pour économiser de l'espace.
* **Blocs confirmés :** Cette méthode se réfère aux blocs confirmés. Les blocs qui sont traités mais pas encore confirmés ou finalisés ne sont pas pris en compte.

Ce guide explique comment utiliser la méthode `getFirstAvailableBlock` RPC pour identifier le slot du bloc le plus ancien disponible sur un nœud Solana.
