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

# Cara Menggunakan getStakeMinimumDelegation

> Pelajari kasus penggunaan getStakeMinimumDelegation, contoh kode, parameter permintaan, struktur respons, dan tips.

Metode RPC [`getStakeMinimumDelegation`](https://www.helius.dev/docs/api-reference/rpc/http/getstakeminimumdelegation) mengembalikan jumlah minimum lamport saat ini yang diperlukan untuk membuat delegasi [stake](https://www.helius.dev/blog/how-to-stake-solana) baru di jaringan Solana. Nilai ini dapat berubah seiring waktu karena tata kelola atau pembaruan jaringan.

## Kasus Penggunaan Umum

* **Memvalidasi Jumlah Stake:** Sebelum membuat akun stake baru atau mendelegasikan stake, periksa nilai ini untuk memastikan delegasi yang direncanakan memenuhi persyaratan minimum.
* **UI/UX Staking:** Tampilkan jumlah delegasi minimum kepada pengguna di antarmuka staking untuk membantu mereka memasukkan nilai yang sesuai.
* **Skrip Staking Otomatis:** Pastikan proses staking otomatis menggunakan jumlah delegasi yang valid.

## Parameter Permintaan

Metode ini memiliki satu parameter opsional:

1. **`config`** (objek, opsional): Objek konfigurasi yang berisi bidang berikut:
   * **`commitment`** (string, opsional): Menentukan [tingkat commitment](https://www.helius.dev/blog/solana-commitment-levels) yang akan digunakan saat mengkueri nilai. Jika dihilangkan, commitment default dari node RPC akan digunakan (biasanya `finalized`).

## Struktur Respons

Bidang `result` dalam respons JSON-RPC adalah objek `RpcResponse` yang berisi:

* **`context`** (objek): Objek `RpcResponseContext` dengan bidang berikut:
  * **`slot`** (`u64`): Slot tempat data diambil.
* **`value`** (`u64`): Jumlah minimum delegasi stake dalam lamport.

**Contoh Respons:**

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

## Contoh

### 1. Mendapatkan Delegasi Minimum Stake Saat Ini

Contoh ini mengambil jumlah minimum delegasi stake saat ini menggunakan commitment default.

<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. Mendapatkan Delegasi Minimum Stake dengan Commitment Tertentu

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

## Tips untuk Developer

* **Lamport vs. SOL:** Nilai yang dikembalikan dinyatakan dalam lamport. Ingat bahwa 1 SOL = 1.000.000.000 lamport.
* **Nilai Dinamis:** Jumlah delegasi minimum dapat berubah sesuai parameter jaringan. Sebaiknya kueri nilai ini secara berkala atau sebelum operasi penting, alih-alih menuliskannya secara permanen dalam kode. Pelajari lebih lanjut tentang [staking](https://www.helius.dev/blog/how-to-stake-solana) dalam panduan terperinci kami.
* **Tingkat Commitment:** Penggunaan tingkat commitment yang berbeda dapat memengaruhi seberapa mutakhir nilai yang dikembalikan. `finalized` memberikan kepastian tertinggi, sedangkan `processed` mungkin memberikan nilai yang lebih baru tetapi belum dikonfirmasi sepenuhnya oleh cluster.

Panduan ini akan membantu Anda menggunakan metode RPC `getStakeMinimumDelegation` secara efektif untuk mengambil delegasi stake minimum yang diperlukan di Solana.
