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

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

Metode RPC [`getInflationGovernor`](https://www.helius.dev/docs/api-reference/rpc/http/getinflationgovernor) mengembalikan parameter [inflasi](https://www.helius.dev/blog/solana-issuance-inflation-schedule) saat ini untuk klaster Solana. Parameter ini menentukan cara penerbitan SOL baru (inflasi) dikelola dari waktu ke waktu, termasuk tingkat awal, cara tingkat tersebut menurun, tingkat terminal jangka panjang, dan alokasi untuk yayasan.

Memahami parameter ini penting untuk analisis terkait tokenomik, imbalan staking, dan model ekonomi Solana secara keseluruhan.

## Kasus Penggunaan Umum

* **Analisis Ekonomi:** Ambil parameter saat ini yang mengatur inflasi SOL untuk penelitian atau pemodelan.
* **Perhitungan Imbalan Staking:** Meskipun `getInflationRate` memberikan tingkat tahunan saat ini, `getInflationGovernor` menyediakan parameter dasar yang menentukan tingkat tersebut dan trajektori masa depannya.
* **Memahami Tokenomik:** Dapatkan wawasan tentang perubahan pasokan token yang direncanakan dari waktu ke waktu.

## Parameter Permintaan

Metode ini dapat menerima objek konfigurasi opsional dengan parameter berikut:

* **`commitment`** (string, opsional): Menentukan [tingkat komitmen](https://www.helius.dev/blog/solana-commitment-levels) yang akan digunakan saat mengkueri ledger. Jika tidak diberikan, komitmen default node akan digunakan (biasanya `finalized`).

## Struktur Respons

Kolom `result` dalam respons JSON-RPC akan berupa objek yang berisi parameter inflasi berikut (semuanya adalah bilangan titik-mengambang `f64` yang mewakili persentase atau periode):

* **`initial`**: Tingkat inflasi awal (misalnya, 0.15 untuk 15%).
* **`terminal`**: Tingkat inflasi terminal jangka panjang (misalnya, 0.015 untuk 1.5%).
* **`taper`**: Tingkat penurunan inflasi dari tingkat `initial` ke tingkat `terminal`. Ini adalah persentase penurunan tahunan pada tingkat inflasi itu sendiri (misalnya, nilai penurunan sebesar 0.15 berarti tingkat inflasi berkurang 15% setiap tahun hingga mencapai tingkat terminal).
* **`foundation`**: Proporsi SOL yang baru diterbitkan melalui inflasi dan dialokasikan kepada Solana Foundation (misalnya, 0.05 untuk 5%).
* **`foundationTerm`**: Periode, dalam tahun, ketika alokasi `foundation` didistribusikan.

## Contoh

### 1. Dapatkan Parameter Pengelola Inflasi Saat Ini

Contoh ini mengambil pengaturan pengelola inflasi saat ini menggunakan komitmen default.

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

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

  async function logInflationGovernor() {
    const connection = new Connection('https://mainnet.helius-rpc.com/?api-key=<api-key>');
    try {
      const inflationGovernor = await connection.getInflationGovernor();
      console.log('Current Inflation Governor Parameters:');
      console.log(`  Initial Rate: ${(inflationGovernor.initial * 100).toFixed(2)}%`);
      console.log(`  Terminal Rate: ${(inflationGovernor.terminal * 100).toFixed(2)}%`);
      console.log(`  Taper Rate: ${(inflationGovernor.taper * 100).toFixed(2)}% per year`);
      console.log(`  Foundation Allocation: ${(inflationGovernor.foundation * 100).toFixed(2)}%`);
      console.log(`  Foundation Term: ${inflationGovernor.foundationTerm} years`);
      // For full raw details:
      // console.log(JSON.stringify(inflationGovernor, null, 2));
    } catch (error) {
      console.error('Error fetching inflation governor:', error);
    }
  }

  logInflationGovernor();
  ```
</CodeGroup>

### 2. Dapatkan Parameter Pengelola Inflasi dengan Komitmen 'confirmed'

<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": "getInflationGovernor",
      "params":[{"commitment":"confirmed"}]
    }'
  ```

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

  async function logConfirmedInflationGovernor() {
    const connection = new Connection('https://mainnet.helius-rpc.com/?api-key=<api-key>');
    try {
      const inflationGovernor = await connection.getInflationGovernor('confirmed');
      console.log('Confirmed Inflation Governor Parameters:');
      console.log(`  Initial Rate: ${(inflationGovernor.initial * 100).toFixed(2)}%`);
      console.log(`  Terminal Rate: ${(inflationGovernor.terminal * 100).toFixed(2)}%`);
      // console.log(JSON.stringify(inflationGovernor, null, 2));
    } catch (error) {
      console.error('Error fetching confirmed inflation governor:', error);
    }
  }

  logConfirmedInflationGovernor();
  ```
</CodeGroup>

## Tips untuk Pengembang

* **Parameter Statis:** Parameter inflasi ini ditetapkan saat genesis klaster atau melalui peningkatan jaringan dan umumnya tidak akan sering berubah tanpa proses tata kelola formal dan pembaruan jaringan.
* **Dampak pada Imbalan Staking:** Secara kolektif, parameter ini menentukan jadwal inflasi keseluruhan, yang kemudian memengaruhi Tingkat Persentase Tahunan (APR) untuk staking SOL.
* **Alokasi Yayasan:** Parameter `foundation` dan `foundationTerm` menjelaskan bagian tertentu dari inflasi yang dialokasikan kepada Solana Foundation selama periode yang ditentukan untuk mendukung pengembangan dan operasi ekosistem.

Panduan ini memberikan gambaran umum tentang cara menggunakan metode RPC `getInflationGovernor` untuk mengambil dan memahami parameter inti yang mengatur inflasi di jaringan Solana.

## Metode Terkait

<CardGroup cols={2}>
  <Card title="getInflationRate" href="/docs/id/api-reference/rpc/http/getinflationrate">
    Dapatkan tingkat inflasi epoch saat ini
  </Card>

  <Card title="getInflationReward" href="/docs/id/api-reference/rpc/http/getinflationreward">
    Dapatkan imbalan inflasi untuk alamat tertentu
  </Card>
</CardGroup>
