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

# Cómo usar getStakeMinimumDelegation

> Conoce los casos de uso de getStakeMinimumDelegation, ejemplos de código, parámetros de solicitud, estructura de respuesta y consejos.

El método RPC [`getStakeMinimumDelegation`](https://www.helius.dev/docs/api-reference/rpc/http/getstakeminimumdelegation) devuelve la cantidad mínima actual de lamports necesaria para crear una nueva delegación de [stake](https://www.helius.dev/blog/how-to-stake-solana) en la red de Solana. Este valor puede cambiar con el tiempo debido a la gobernanza o las actualizaciones de la red.

## Casos de uso comunes

* **Validación de cantidades de stake:** Antes de crear una nueva cuenta de stake o delegar stake, consulta este valor para asegurarte de que la delegación prevista cumpla con el requisito mínimo.
* **UI/UX de staking:** Muestra la cantidad mínima de delegación a los usuarios en las interfaces de staking para orientarlos al ingresar datos.
* **Scripts de staking automatizados:** Asegúrate de que los procesos de staking automatizados usen una cantidad de delegación válida.

## Parámetros de solicitud

Este método tiene un parámetro opcional:

1. **`config`** (objeto, opcional): Objeto de configuración que contiene el siguiente campo:
   * **`commitment`** (cadena, opcional): Especifica el [nivel de compromiso](https://www.helius.dev/blog/solana-commitment-levels) que se usará al consultar el valor. Si se omite, se usa el compromiso predeterminado del nodo RPC (normalmente `finalized`).

## Estructura de la respuesta

El campo `result` de la respuesta JSON-RPC es un objeto `RpcResponse` que contiene:

* **`context`** (objeto): Un objeto `RpcResponseContext` con el siguiente campo:
  * **`slot`** (`u64`): El slot en el que se recuperaron los datos.
* **`value`** (`u64`): La cantidad mínima de delegación de stake en lamports.

**Ejemplo de respuesta:**

```json theme={"system"}
{
  "jsonrpc": "2.0",
  "result": {
    "context": { "slot": 123456789 },
    "value": 1000000000 // Represents 1 SOL, for example
  },
  "id": 1
}
```

## Ejemplos

### 1. Obtén la delegación mínima de stake actual

Este ejemplo obtiene la cantidad mínima actual de delegación de stake usando el compromiso predeterminado.

<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": "getStakeMinimumDelegation"
    }'
  ```

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

  async function getMinimumDelegation() {
    const connection = new Connection('https://mainnet.helius-rpc.com/?api-key=<api-key>');
    try {
      const minDelegation = await connection.getStakeMinimumDelegation();
      console.log(`Current minimum stake delegation: ${minDelegation} lamports`);
      // The raw response includes context:
      // const fullResponse = await connection.getStakeMinimumDelegation('confirmed'); // Example with commitment
      // console.log(JSON.stringify(fullResponse, null, 2));
    } catch (error) {
      console.error('Error fetching stake minimum delegation:', error);
    }
  }

  getMinimumDelegation();
  ```
</CodeGroup>

### 2. Obtén la delegación mínima de stake con un compromiso específico

<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": "getStakeMinimumDelegation",
      "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 getMinimumDelegationConfirmed() {
    const connection = new Connection('https://mainnet.helius-rpc.com/?api-key=<api-key>');
    try {
      const minDelegationResponse = await connection.getStakeMinimumDelegation('confirmed');
      console.log(`Confirmed minimum stake delegation: ${minDelegationResponse.value} lamports at slot ${minDelegationResponse.context.slot}`);
    } catch (error) {
      console.error('Error fetching confirmed stake minimum delegation:', error);
    }
  }

  getMinimumDelegationConfirmed();
  ```
</CodeGroup>

## Consejos para desarrolladores

* **Lamports frente a SOL:** El valor devuelto está expresado en lamports. Recuerda que 1 SOL = 1,000,000,000 lamports.
* **Valor dinámico:** La cantidad mínima de delegación está sujeta a cambios según los parámetros de la red. Es recomendable consultar este valor periódicamente o antes de realizar operaciones críticas, en lugar de codificarlo de forma fija. Obtén más información sobre el [staking](https://www.helius.dev/blog/how-to-stake-solana) en nuestra guía detallada.
* **Niveles de compromiso:** Usar distintos niveles de compromiso puede afectar qué tan actualizado está el valor devuelto. `finalized` ofrece la mayor certeza, mientras que `processed` podría proporcionar un valor más reciente que aún no haya sido confirmado por completo por el clúster.

Esta guía te ayudará a usar eficazmente el método RPC `getStakeMinimumDelegation` para recuperar la delegación mínima de stake requerida en Solana.
