Skip to main content
Enhanced Transactions API adalah produk lama dalam mode pemeliharaan. Produk ini masih berfungsi dan halaman-halaman ini tetap tersedia, tetapi tidak lagi menerima jenis parser atau pengembangan fitur baru. Penerusnya adalah Parsed Events, yang mendekode instruksi melalui katalog IDL dan tersedia di semua paket dengan biaya 10 kredit per permintaan. Panduan migrasi membahas proses perpindahan langkah demi langkah. Anda juga dapat menggunakan getTransactionsForAddress untuk riwayat transaksi dan backfill, serta Wallet API untuk data dompet yang mudah dibaca.

Ringkasan

Endpoint Riwayat Transaksi mengembalikan riwayat transaksi yang mudah dibaca untuk alamat Solana apa pun. Alih-alih menangani data instruksi mentah dan daftar akun, Anda mendapatkan informasi terstruktur tentang:
  • Apa yang terjadi dalam transaksi (transfer, swap, aktivitas NFT).
  • Akun mana yang terlibat.
  • Berapa banyak SOL atau token yang ditransfer.
  • Metadata terkait (alamat mint token, nama token, simbol token, dan lainnya).
Kirim permintaan GET ke /v0/addresses/{address}/transactions. Di balik layar, endpoint ini didukung oleh metode RPC getTransactionsForAddress.

Kapan menggunakannya

  • Anda menampilkan riwayat transaksi suatu alamat kepada pengguna (dompet, pelacak portofolio, penjelajah).
  • Anda menginginkan riwayat yang telah diurai dan mudah dibaca tanpa perlu menulis dekoder sendiri.
  • Anda perlu memfilter riwayat berdasarkan jenis transaksi, rentang waktu, atau rentang slot.
  • Anda memerlukan riwayat token lengkap milik suatu dompet, termasuk akun token terkait (ATA) — lihat di bawah.
Untuk pengembangan baru, getTransactionsForAddress adalah jalur modern bawaan Helius dengan pemfilteran sisi server dan pencarian akun token.

Mulai cepat

1

Get your API key

Daftar di dashboard.helius.dev dan salin kunci API Anda.
2

GET the address transactions endpoint

Ambil riwayat transaksi untuk alamat Solana apa pun.
3

Filter and paginate

Persempit hasil dengan filter type, waktu, dan slot di bawah ini, lalu telusuri alamat dengan volume tinggi per halaman menggunakan kursor tanda tangan.

Dukungan jaringan

Parameter permintaan

Pemfilteran berbasis waktu

Pemfilteran berbasis slot

Catatan pemfilteran:
  • Parameter waktu menggunakan stempel waktu Unix (detik sejak epoch); parameter slot menggunakan nomor slot Solana.
  • Anda tidak dapat menggabungkan filter berbasis waktu dan berbasis slot dalam permintaan yang sama.
  • Gunakan sort-order=asc untuk urutan naik (terlama terlebih dahulu) atau sort-order=desc untuk urutan turun (terbaru terlebih dahulu).
  • Gunakan filter waktu atau slot untuk mempersempit ruang pencarian saat Anda mengetahui perkiraan periodenya, dan pasangkan dengan limit untuk mengontrol ukuran halaman.

Akun token terkait

Di Solana, dompet tidak menyimpan token secara langsung. Sebaliknya, dompet memiliki akun token, dan akun token tersebut menyimpan token. Ketika seseorang mengirimkan USDC kepada Anda, token tersebut masuk ke akun token USDC Anda, bukan ke alamat dompet utama Anda. Endpoint ini unik karena dapat melakukan kueri atas riwayat token lengkap suatu dompet, termasuk akun token terkait (ATA). Metode RPC native seperti getSignaturesForAddress tidak menyertakan ATA. Filter token-accounts mengontrol perilaku ini:
  • none (default) — hanya mengembalikan transaksi yang secara langsung merujuk alamat dompet. Gunakan ini jika Anda hanya memerlukan interaksi dompet langsung.
  • balanceChanged (disarankan) — mengembalikan transaksi yang merujuk alamat dompet atau mengubah saldo akun token milik dompet. Opsi ini menyaring spam dan operasi yang tidak terkait seperti pemungutan biaya atau delegasi, sehingga memberi Anda tampilan yang bersih atas aktivitas dompet yang relevan.
  • all — mengembalikan semua transaksi yang merujuk alamat dompet atau akun token apa pun milik dompet.
Filter token-accounts bergantung pada kolom owner dalam metadata saldo token, yang belum tersedia sebelum slot 111.491.819 (~Desember 2022). Transaksi yang melibatkan akun token yang aktif sebelum slot ini mungkin tidak ada dalam hasil balanceChanged dan all. Lihat tutorial getTransactionsForAddress untuk solusi alternatif beserta contoh kode lengkap.

Filter

Filter berdasarkan jenis transaksi

Dapatkan hanya jenis transaksi tertentu, seperti penjualan NFT, transfer token, atau swap:
Untuk daftar lengkap jenis transaksi yang didukung, lihat referensi Transaction History API.

Pemfilteran jenis saat runtime

Pemfilteran jenis dilakukan saat runtime: API mencari transaksi secara berurutan hingga menemukan setidaknya 50 item yang cocok. Jika tidak menemukan kecocokan dalam jendela pencarian, API mengembalikan kesalahan dengan tanda tangan untuk melanjutkan pencarian. Ini adalah perilaku yang diharapkan, bukan kegagalan.
Jika tidak ada transaksi yang cocok dalam jendela pencarian saat ini, API mengembalikan respons kesalahan seperti berikut:
Untuk melanjutkan, gunakan tanda tangan dari pesan kesalahan dengan parameter yang sesuai (before-signature untuk urutan turun, after-signature untuk urutan naik) pada permintaan berikutnya.
Poin penting:
  • API menelusuri hingga 50 transaksi sekaligus saat menggunakan filter jenis.
  • Jika tidak ditemukan kecocokan, gunakan tanda tangan dari pesan kesalahan untuk melanjutkan pencarian.
  • Gunakan before-signature saat mencari dalam urutan turun (default, terbaru terlebih dahulu).
  • Gunakan after-signature saat mencari dalam urutan naik (terlama terlebih dahulu) — wajib untuk pencarian kronologis.
  • Terapkan batas maksimum percobaan ulang untuk mencegah perulangan tanpa batas.

Contoh

Skenario berikut mencakup rentang waktu dan slot, urutan, ATA, serta filter gabungan.
Dapatkan transaksi dalam rentang waktu tertentu:
Dapatkan transaksi dalam rentang slot tertentu:
Dapatkan transaksi dalam urutan naik (terlama terlebih dahulu):
Gabungkan pemfilteran jenis dengan rentang waktu dan urutan khusus:

Paginasi

Untuk alamat dengan volume tinggi, telusuri hasil per halaman menggunakan tanda tangan terakhir di setiap batch sebagai kursor:
Untuk melakukan paginasi dalam rentang waktu, pertahankan filter waktu pada setiap permintaan dan majukan kursor before-signature pada setiap perulangan:

Langkah berikutnya

getTransactionsForAddress

Pengganti modern bawaan Helius untuk riwayat transaksi dan backfill.

Wallet API

Endpoint REST untuk data dompet yang mudah dibaca: saldo, riwayat, dan transfer.

Parse Transactions

Uraikan satu atau beberapa tanda tangan transaksi menjadi data yang mudah dibaca.

Getting Data overview

Bandingkan setiap opsi Helius untuk melakukan kueri data Solana.