Skip to main content
Metode RPC getBalance adalah cara mudah untuk mengetahui saldo SOL native dari akun mana pun di blockchain Solana. Metode ini mengembalikan saldo dalam lamport (1 SOL = 1.000.000.000 lamport). Metode ini lebih ringan daripada getAccountInfo jika Anda hanya memerlukan saldo SOL tanpa detail akun lainnya.

Kasus Penggunaan Utama

  • Memeriksa Kepemilikan SOL Akun dengan Cepat: Penggunaan utamanya adalah untuk mengetahui jumlah SOL yang dimiliki sebuah akun (dompet, program, dan sebagainya).

Parameter

  1. publicKey (string, wajib): Kunci publik akun yang akan dikueri, yang dikodekan dalam base-58.
  2. config (objek, opsional): Objek konfigurasi dengan bidang berikut:
    • commitment (string, opsional): Menentukan tingkat komitmen yang akan digunakan untuk kueri. Nilai default-nya adalah finalized.
      • finalized: Node akan mengueri blok terbaru yang telah dikonfirmasi oleh supermayoritas klaster sebagai blok yang telah mencapai penguncian maksimum.
      • confirmed: Node akan mengueri blok terbaru yang telah mendapatkan suara dari supermayoritas klaster.
      • processed: Node akan mengueri blok terbarunya. Perhatikan bahwa blok tersebut mungkin belum lengkap.
    • minContextSlot (angka, opsional): Slot minimum tempat permintaan dapat dievaluasi.

Respons

Bidang result dari respons JSON-RPC akan berupa objek yang berisi:
  • context (objek):
    • slot (angka): Slot tempat saldo diambil.
    • apiVersion (string, opsional): Versi API RPC (mungkin tidak tersedia dari semua node).
  • value (angka): Saldo akun dalam lamport (bilangan bulat 64-bit tanpa tanda).
Jika akun tidak ada secara on-chain, getBalance biasanya akan mengembalikan nilai sebesar 0 lamport.

Contoh: Mengambil Saldo Akun

Mari periksa saldo SOL dari ID Serum Program V3 (9xQeWvG816bUx9EPjHmaT23yvVM2ZWbrrpZb9PusVFin) di mainnet. Akun program ini menyimpan SOL agar bebas dari biaya sewa. Catatan: Ganti YOUR_API_KEY dengan kunci API Helius Anda yang sebenarnya dalam contoh di bawah ini.

Tips untuk Developer

  • Kesederhanaan untuk Saldo SOL: Jika Anda hanya memerlukan saldo SOL akun tanpa data on-chain lainnya (seperti pemilik, data, atau status executable), getBalance lebih efisien daripada getAccountInfo karena mengambil lebih sedikit data.
  • Akun yang Tidak Ada: Jika akun tidak ada secara on-chain (belum pernah diinisialisasi atau belum pernah memiliki SOL), getBalance akan mengembalikan 0. Ini dapat menjadi cara cepat untuk memeriksa keberadaan akun jika Anda hanya memerlukan informasi tentang saldo SOL-nya.
  • Lamport vs. SOL: Ingat bahwa saldo dikembalikan dalam lamport. Anda perlu membaginya dengan LAMPORTS_PER_SOL (1.000.000.000) untuk mengonversinya menjadi SOL.
  • Tingkat Komitmen: Pilihan commitment dapat memengaruhi seberapa cepat Anda mendapatkan saldo dan seberapa kuat saldo tersebut telah dikonfirmasi. Untuk sebagian besar kebutuhan tampilan UI, confirmed memberikan keseimbangan yang baik. Untuk transaksi keuangan penting, finalized memberikan tingkat kepastian tertinggi. Lihat Tingkat Komitmen Solana untuk informasi mendetail.
  • Pemrosesan Batch dengan getMultipleAccounts: Meskipun getBalance ditujukan untuk satu akun, jika Anda memerlukan saldo banyak akun, menggunakan getMultipleAccounts lalu mengekstrak saldo lamport dari informasi setiap akun dapat memberikan performa yang lebih baik daripada banyak panggilan getBalance secara terpisah.

Metode Terkait

getAccountInfo

Dapatkan detail akun lengkap, termasuk data, pemilik, dan status executable

getMultipleAccounts

Ambil beberapa akun secara batch dalam satu permintaan