Langsung ke konten utama
Metode RPC getTokenAccountBalance mengembalikan saldo token dari akun SPL Token tertentu. Metode ini penting bagi aplikasi yang perlu menampilkan atau memverifikasi jumlah token tertentu yang disimpan oleh sebuah akun token.

Kasus Penggunaan Umum

  • Menampilkan Saldo Token Pengguna: Menunjukkan kepada pengguna jumlah token tertentu yang mereka miliki dalam dompet mereka (akun token terkait).
  • Memverifikasi Ketersediaan Token: Memeriksa apakah akun token memiliki saldo yang cukup sebelum mencoba transfer atau operasi lainnya.
  • Melacak Portofolio: Menggabungkan saldo token pengguna dari berbagai akun token.
  • Interaksi Kontrak Pintar: Kontrak pintar mungkin meminta saldo token sebagai bagian dari logikanya (meskipun program on-chain biasanya mengakses data ini langsung dari informasi akun).

Parameter Permintaan

  1. Kunci Publik Akun Token (string, wajib): Kunci publik akun SPL Token yang dienkode dengan base-58 dan ingin Anda kueri.
  2. Objek Konfigurasi (object, opsional): Objek opsional yang dapat memuat bidang berikut:
    • commitment (string, opsional): Menentukan tingkat komitmen untuk kueri. Jika dihilangkan, komitmen default dari node RPC akan digunakan (biasanya finalized).

Struktur Respons

Bidang result dalam respons JSON-RPC berisi objek dengan bidang context dan value. Objek value menyimpan informasi saldo:
  • amount (string): Saldo mentah akun token sebagai string. Ini adalah bilangan bulat yang merepresentasikan unit terkecil token (misalnya, jika token memiliki 6 tempat desimal, jumlah “1000000” berarti 1 token).
  • decimals (u8): Jumlah tempat desimal yang ditentukan untuk jenis token ini (oleh mint-nya).
  • uiAmount (number | null): Saldo yang diformat sebagai angka titik mengambang dengan memperhitungkan decimals. Dalam beberapa konteks, bidang ini mungkin bernilai null atau sudah tidak digunakan dan digantikan oleh uiAmountString.
  • uiAmountString (string): Saldo yang diformat sebagai string dengan memperhitungkan decimals. Format ini sering lebih disarankan untuk ditampilkan guna menghindari potensi ketidakakuratan titik mengambang.
Contoh Respons:

Contoh Kode

Tips untuk Developer

  • Akun Token vs. Akun Mint vs. Akun Pemilik: Pastikan Anda memberikan kunci publik Akun SPL Token, bukan alamat mint token atau alamat dompet pemilik. Anda biasanya mendapatkan akun token milik seorang pemilik menggunakan getTokenAccountsByOwner.
  • Desimal: Selalu gunakan bidang decimals untuk menafsirkan amount dengan benar. uiAmountString umumnya lebih aman untuk ditampilkan daripada uiAmount guna menghindari masalah presisi titik mengambang.
  • Akun yang Tidak Ada: Jika kunci publik yang diberikan tidak sesuai dengan akun token yang ada, perilakunya mungkin sedikit berbeda menurut penyedia atau pustaka RPC. Namun, value dalam respons sering kali akan bernilai null atau sebuah galat akan dilemparkan. Contoh JavaScript mencakup pemeriksaan dasar untuk balance.value.
  • Tingkat Komitmen: processed dapat menampilkan perubahan saldo yang kemudian dibatalkan. Di bawah Alpenglow, confirmed dan finalized memiliki latensi dan jaminan finalitas permanen yang sama; pilih finalized untuk kode baru.
Panduan ini akan membantu Anda mengambil dan menafsirkan saldo SPL Token secara akurat menggunakan metode getTokenAccountBalance.

Metode Terkait

getTokenAccountsByOwner

Dapatkan semua akun token milik seorang pemilik

getTokenSupply

Dapatkan total suplai dari mint token