Langsung ke konten
solscanner

Panduan developer · API

API explorer Solana: apa yang dipanggil saat Anda butuh datanya, bukan halamannya

Tidak ada satu API explorer Solana tunggal. Explorer membaca metode JSON-RPC yang sama dengan yang bisa Anda panggil sendiri (getSignaturesForAddress, getTransaction, getBalance), lalu menambahkan data terindeks seperti label, holder, dan harga USD. Mulailah dengan RPC tanpa key, dan bayar Solscan Pro atau Helius hanya saat Anda butuh riwayat, parsing, atau volume besar.

Exchange teregulasi · terdaftar di FinCEN & FCA · sejak 2013 Diperbarui · 8 menit baca

solscanner — rpc

$ curl solana-rpc … getTransaction

protokolJSON-RPC 2.0

metodegetTransaction

signature/halaman1–1.000

commitment defaultfinalized

batas publik100 req / 10 dtk

api keytidak wajib

✓ finalized

Setiap explorer Solana adalah tampilan depan yang dibangun di atas API. Saat Anda mencari signature di Solscan atau Solana Explorer, situs itu memanggil antarmuka JSON-RPC Solana, sering kali lewat indexer miliknya sendiri, lalu menampilkan hasilnya. Jadi saat orang mencari API explorer Solana, biasanya mereka menginginkan salah satu dari tiga hal: data on-chain mentah yang bisa diambil gratis, API terindeks yang lebih kaya dengan label dan riwayat, atau data pasar seperti harga dan pasangan trading. Panduan ini membandingkan ketiganya per September 2026, lengkap dengan kode yang berfungsi dan batas yang kami ukur sendiri.

Bagi developer di Indonesia, banyak yang memulai dari proyek kecil: bot Telegram untuk memantau wallet, dashboard portofolio pribadi, atau notifikasi pembayaran untuk toko online. Kabar baiknya, sebagian besar kebutuhan awal itu bisa dipenuhi RPC gratis. Anda baru perlu membayar dalam dolar ketika volume atau kebutuhan datanya benar-benar menuntut.

Sekilas opsi API explorer Solana

Jawaban singkatnya: pakai JSON-RPC untuk data mentah, indexer untuk riwayat dan parsing, dan API pasar untuk harga. Tabel berikut merangkum opsi yang kami uji untuk alat pencarian live milik Solscanner.

PenyediaPerlu keyCocok untukBatas
api.mainnet-beta.solana.comTidakUji coba, script ringan100 req / 10 dtk per IP
solana-rpc.publicnode.comTidakTx, signature, saldo, blokTanpa panggilan token terindeks
public.rpc.solanavibestation.comTidakAkun token, holder, suplaiAda rate limit
Solscan Pro APIYaLabel, transfer, data tokenLite: $49/bln, 20 jt CU
HeliusYaRiwayat ter-parsing, DAS, arsipGratis: 1 jt kredit, 10 req/dtk
Jupiter lite-apiTidakHarga dan metadata tokenAda rate limit
DexScreenerTidakPair DEX, likuiditas60–300 req/menit

Beberapa hasil uji lain, supaya Anda tidak membuang satu sore. Akses anonim Tatum hanya mengizinkan 5 request per menit dan banyak metodenya berbayar. Ankr butuh key. Paket gratis dRPC tidak mencakup Solana. BlockEden hanya berbayar. API publik SolanaFM dan Solana Beach mengembalikan HTTP 502 selama pengecekan kami.

Metode JSON-RPC inti yang dipakai setiap explorer

Empat metode sudah mencakup sebagian besar isi halaman explorer. Masing-masing menerima body JSON berisi jsonrpc, id, method, dan params, yang dikirim lewat POST ke endpoint RPC mana pun.

  • getSignaturesForAddress mengembalikan signature transaksi yang menyentuh sebuah alamat, dari yang terbaru. Setiap entri berisi signature, slot, err (null jika sukses), memo, blockTime, dan confirmationStatus. limit berkisar 1 sampai 1.000 dengan default 1.000. Inilah daftar “riwayat” di halaman wallet.
  • getTransaction mengembalikan transaksi lengkap untuk satu signature: instruksi, akun, biaya, compute unit yang terpakai, log, serta saldo sebelum dan sesudah. Sertakan "maxSupportedTransactionVersion": 0, atau transaksi versioned akan gagal.
  • getBalance mengembalikan saldo SOL sebuah akun dalam lamport (1 SOL = 1.000.000.000 lamport).
  • getTokenAccountsByOwner mengembalikan akun token SPL yang dimiliki wallet, difilter berdasarkan mint atau program token (SPL Token lama atau Token-2022). Pakai encoding jsonParsed agar saldonya mudah dibaca.

Inilah fondasi tampilan explorer wallet dan explorer transaksi. Daftar holder, suplai token, dan pemindaian akun milik program memakai metode yang lebih berat seperti getTokenLargestAccounts, getSupply, dan getProgramAccounts, yang oleh banyak node publik dianggap request “terindeks” dan diblokir.

Contoh getSignaturesForAddress: fetch dan curl

Berikut contoh minimal untuk browser atau Node 18+ yang menampilkan 25 signature terbaru untuk sebuah alamat. Contohnya memakai mint USDC sebagai alamat sampel, tetapi wallet atau program apa pun juga bisa.

const RPC = 'https://solana-rpc.publicnode.com';
const address = 'EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v';

const res = await fetch(RPC, {
  method: 'POST',
  headers: { 'Content-Type': 'application/json' },
  body: JSON.stringify({
    jsonrpc: '2.0',
    id: 1,
    method: 'getSignaturesForAddress',
    params: [address, { limit: 25, commitment: 'confirmed' }],
  }),
});
const { result, error } = await res.json();
if (error) throw new Error(`${error.code}: ${error.message}`);
for (const s of result) {
  console.log(s.signature, s.slot, s.err ? 'failed' : 'ok', s.blockTime);
}

Panggilan yang sama dari terminal:

curl -s https://solana-rpc.publicnode.com \
  -H 'Content-Type: application/json' \
  -d '{"jsonrpc":"2.0","id":1,"method":"getSignaturesForAddress",
       "params":["EPjFWdd5AufqSSqeM2qN1xzybapC8G4wEGGkZwyTDt1v",{"limit":5}]}'

Untuk mengambil salah satu transaksi itu, ganti metodenya menjadi getTransaction dan kirim [signature, { "encoding": "jsonParsed", "maxSupportedTransactionVersion": 0 }]. blockTime adalah timestamp Unix dalam detik dan bisa bernilai null untuk data yang sangat lama atau sudah dipangkas.

Paginasi dengan before dan until

getSignaturesForAddress berpaginasi mundur dalam waktu. Kirim before berisi signature terakhir dari halaman sebelumnya untuk mendapat halaman berikutnya yang lebih lama; kirim until untuk berhenti saat signature tertentu tercapai. Array kosong berarti Anda sudah sampai di ujung riwayat yang disimpan node.

async function allSignatures(address, max = 5000) {
  const out = [];
  let before;
  while (out.length < max) {
    const params = [address, { limit: 1000, ...(before && { before }) }];
    const page = await rpc('getSignaturesForAddress', params); // helper POST Anda
    if (!page.length) break;
    out.push(...page);
    before = page[page.length - 1].signature;
  }
  return out;
}

Untuk sinkronisasi bertahap, simpan signature terbaru yang sudah Anda lihat dan kirim sebagai until di panggilan berikutnya. Dengan begitu Anda hanya mengambil data baru, sehingga tetap jauh di bawah rate limit publik.

Kedalaman riwayat berbeda-beda: tidak semua node RPC menyimpan ledger lengkap. Node publik mungkin hanya mengembalikan riwayat pendek untuk wallet lama, sementara penyedia arsip mengembalikan data bertahun-tahun. Jika riwayat sebuah wallet tampak terlalu pendek, coba API terindeks sebelum menyimpulkan akunnya baru.

Level commitment: processed, confirmed, finalized

Commitment memberi tahu node seberapa final sebuah blok sebelum ia menjawab. Dokumentasi RPC resmi mendefinisikan tiga level, dan finalized adalah default yang umum.

  • processed: blok terbaru milik node. Paling cepat, tetapi masih bisa di-rollback.
  • confirmed: sudah divoting oleh supermayoritas, lebih dari dua pertiga stake aktif.
  • finalized: lockout maksimum; jaminan terkuat.

getSignaturesForAddress hanya menerima confirmed atau finalized. Untuk halaman bergaya explorer, confirmed adalah kompromi yang umum: signature baru muncul dalam beberapa slot (satu slot sekitar 250–300 ms sejak pengurangan pada Agustus–September 2026) dan rollback di level ini sangat jarang. Untuk apa pun yang memindahkan uang atau memperbarui database utama, tunggu sampai finalized.

Etika rate limit di endpoint publik

Endpoint publik dipakai bersama, jadi bersikaplah seperti tamu yang sopan. Endpoint resmi mainnet, devnet, dan testnet mengizinkan 100 request per 10 detik per IP, 40 per 10 detik untuk satu metode, dan 40 koneksi bersamaan, dan secara tegas tidak ditujukan untuk produksi.

Aturan praktis yang kami terapkan di klien Solscanner sendiri (rpc.ts):

  1. Bergiliran, jangan membombardir. Alat pencarian kami punya dua pool. Panggilan “ringan” (transaksi, signature, saldo, blok, epoch) dikirim ke publicnode dulu, lalu Solana Vibe Station, lalu endpoint resmi. Panggilan terindeks yang “berat” (getTokenAccountsByOwner, getTokenLargestAccounts, getSupply, getProgramAccounts, getTokenSupply) dikirim ke Solana Vibe Station lebih dulu. Devnet dan testnet memakai endpoint resmi.
  2. Anggap error rate limit sebagai “coba tempat lain”. Kode seperti -32005, 429, dan 403, atau pesan yang menyebut limit atau paket, memindahkan request ke endpoint berikutnya alih-alih langsung gagal.
  3. Ingat yang berhasil. Endpoint terakhir yang menjawab menjadi pilihan pertama di request berikutnya.
  4. Pasang timeout. Setiap request dibatalkan setelah 14 detik supaya node yang lambat tidak membekukan halaman.
  5. Cache dan batch. Jangan mengambil ulang transaksi yang sudah finalized; datanya tidak akan berubah.

Untuk data pasar, kami memanggil lite-api.jup.ag milik Jupiter tanpa key untuk harga dan metadata token (hingga 100 mint per request di klien kami), CoinGecko sebagai cadangan harga SOL, dan DexScreener untuk pasangan trading. DexScreener mendokumentasikan 60 request per menit untuk endpoint profil token dan 300 per menit untuk endpoint pair di referensi API-nya. Panduan explorer DeFi kami menjelaskan arti angka-angka pair tersebut.

Solscan Pro API, Helius, dan API explorer berbayar lainnya

API berbayar layak dipakai saat Anda butuh data terindeks yang tidak bisa didapat murah dari RPC biasa: transfer berlabel, peringkat holder token, aktivitas DeFi yang sudah didekode, atau riwayat bertahun-tahun dalam satu request.

Solscan Pro API. Solscan, yang dimiliki Etherscan sejak Januari 2024, membuka data terindeksnya (akun, transfer, token, NFT, pasar) lewat Pro API. Ada tier gratis; paket Lite seharga $49 per bulan dengan 20 juta compute unit dan 1.000 request per 60 detik, tanpa multi-endpoint, Market/price-ohlcv, Account/metadata, dan Account/funded_by. Tier yang lebih tinggi ada, tetapi kami tidak bisa memverifikasi harganya saat ini, jadi cek sendiri halaman harga Solscan. Paket API tidak bisa di-refund.

Helius. Helius, tim di balik explorer Orb, menawarkan paket gratis dengan API key: 1 juta kredit per bulan dan 10 request RPC per detik saat artikel ini ditulis. API enhanced-nya mengembalikan transaksi yang sudah di-parsing dan mudah dibaca manusia, dan Orb sendiri ditenagai data arsip Helius serta metode getTransactionsForAddress.

Solana Beach API. Solana Beach memublikasikan dokumentasi di solanabeach.io/docs dan repo GitHub, dengan fokus pada validator dan staking. API ini mengembalikan 502 dalam pengujian kami, jadi verifikasi statusnya dulu.

Error API Solana yang umum dan artinya

Sebagian besar kegagalan API mengikuti beberapa pola, dan body error biasanya memberi tahu polanya. Baca error.code dan error.message sebelum mencoba ulang.

HTTP 403 atau 429. Endpoint memblokir atau membatasi IP Anda. Mundur sebentar, pindah ke endpoint lain, atau beralih ke paket dengan key. Endpoint mainnet resmi mengembalikan 403 kepada kami dari IP data center, hal yang umum untuk alamat cloud bersama.

Error -32005 atau pesan tentang “plan”. Penyedia tidak melayani metode itu di tier Anda. Panggilan terindeks seperti getTokenAccountsByOwner paling sering jadi korban di node gratis.

Error CORS di console browser. Endpoint berfungsi dari curl tetapi menolak request dari halaman web. Semua endpoint tanpa key di tabel kami menerima request dari browser pada September 2026, itulah sebabnya situs statis seperti Solscanner bisa menjalankan alat pencarian tanpa back end. Jika Anda menambahkan penyedia yang butuh key, panggil dari server agar key tidak pernah ikut terkirim ke pengguna.

Hasil null. Untuk getTransaction, null biasanya berarti signature tidak dikenal node tersebut: cluster salah, belum mencapai level commitment Anda, atau di luar riwayat node. Klien kami bisa mengulang panggilan seperti ini di endpoint berikutnya sebelum melaporkan “not found”.

Kapan Anda butuh indexer, bukan RPC?

Anda butuh indexer saat pertanyaan Anda mencakup banyak akun atau rentang waktu panjang. RPC menjawab dengan baik “bagaimana kondisi akun ini sekarang?” dan “apa yang dilakukan transaksi ini?”. RPC menjawab dengan buruk “semua transfer USDC yang dilakukan wallet ini sejak 2023, beserta nilai USD-nya”, karena Anda harus mengulang ribuan signature dan mem-parsing satu per satu.

Tanda Anda sudah melampaui RPC mentah:

  • Anda memanggil getTransaction ratusan kali per tampilan halaman.
  • Anda butuh jumlah atau peringkat holder token (node publik sering memblokir getTokenLargestAccounts dan getProgramAccounts).
  • Anda butuh label yang mudah dibaca (exchange, program, wallet terkenal) atau harga USD historis.
  • Anda butuh riwayat yang lebih lama dari yang disimpan node Anda.

Pada titik itu, Helius, Solscan Pro, atau indexer Anda sendiri (plugin Geyser yang mengalirkan data ke database) akan sepadan dengan biayanya. Jika masih tahap prototipe, uji dulu di endpoint devnet, dan baca panduan explorer program untuk mendekode instruksi dengan IDL. Untuk perbandingan dari sisi pengguna atas explorer yang dibangun di atas API ini, lihat peringkat explorer Solana terbaik kami.

Oleh tim riset SolscannerDiperbarui · Metodologi ulasan

Pertanyaan yang sering diajukan

Apakah Solscan punya API gratis?

Solscan menawarkan tier gratis dan paket Pro API berbayar. Paket berbayar paling dasar, Lite, seharga $49 per bulan dengan 20 juta compute unit dan batas 1.000 request per 60 detik; paket ini tidak mencakup multi-endpoint, endpoint harga OHLCV, metadata akun, dan lookup funded-by. Solscan tidak mengembalikan dana paket API, jadi coba tier gratis dulu. Cek docs.solscan.io untuk ketentuan terbaru sebelum berlangganan.

Apa endpoint RPC Solana gratis terbaik tanpa API key?

Dalam pengujian kami pada September 2026, solana-rpc.publicnode.com melayani transaksi, signature, saldo, blok, dan data epoch tanpa key dan dengan CORS browser, tetapi menolak panggilan terindeks seperti getTokenAccountsByOwner. public.rpc.solanavibestation.com melayani panggilan itu juga, dengan rate limit lebih ketat. Endpoint resmi api.mainnet-beta.solana.com dibatasi 100 request per 10 detik per IP dan mengembalikan 403 dari IP uji kami.

Bagaimana cara mengambil seluruh riwayat transaksi wallet Solana?

Panggil getSignaturesForAddress dengan limit 1.000, lalu panggil lagi dengan before berisi signature terakhir yang Anda terima, dan ulangi sampai hasilnya array kosong. Ambil detail setiap signature dengan getTransaction. Untuk wallet yang sangat aktif, ini berarti ribuan request, jadi API terindeks seperti Helius atau Solscan Pro biasanya lebih cepat dan lebih murah daripada node RPC publik.

Apakah Solana Beach punya API explorer?

Solana Beach, yang dikelola Staking Facilities, memublikasikan dokumentasi API di solanabeach.io/docs dan repositori GitHub solana-beach/api, dengan fokus pada data validator, staking, dan jaringan. Dalam pengujian kami pada September 2026, API publik Solana Beach dan SolanaFM mengembalikan error HTTP 502, jadi jangan jadikan dependensi produksi tanpa mengecek statusnya lebih dulu.

Kenapa getTransaction mengembalikan error untuk sebagian signature?

Paling sering karena transaksinya memakai format versioned (v0) dan request Anda tidak menyertakan maxSupportedTransactionVersion: 0 di objek config. Tambahkan parameter itu dan node akan mengembalikan transaksinya. Penyebab lain: signature ada di cluster lain, belum mencapai level commitment yang diminta, atau node sudah memangkas riwayat lama sehingga Anda butuh penyedia arsip.

Tautan mitra

Cek signature tanpa menulis kode

Alat pencarian kami memakai endpoint tanpa key yang dijelaskan di sini. Tempel signature, wallet, atau mint dan lihat hasil yang sudah didekode.

Mulai sekarang

Hanya beberapa menit · wajib verifikasi identitas

Exchange mitra kami, CEX.IO, telah beroperasi sejak 2013. CEX.IO terdaftar di FinCEN sebagai Money Services Business, memegang lisensi money transmitter di 38 negara bagian AS ditambah DC, terdaftar di FCA Inggris (FRN 1007192), dan bersertifikat PCI DSS Level 1. Ketersediaan tergantung negara Anda. Kripto sangat fluktuatif: investasikan hanya dana yang siap Anda relakan.

Jelajahi lebih lanjut

Panduan dan ulasan terkait dari indeks