includeBam: false agar hanya menerima Preconfirmations Helius.
Endpoint
preconfSubscribe disediakan dari endpoint Gatekeeper Helius:
wss://beta.helius-rpc.com/?api-key=<API_KEY>
beta merujuk pada peluncuran Gatekeeper, bukan tingkat kematangan Preconfirmations — ini akan menjadi endpoint standar seiring migrasi lalu lintas ke Gatekeeper.
Streaming tidak berlangsung terus-menerus. Cakupan meningkat sesuai proporsi stake jaringan
yang meneruskan data ke Helius atau menjalankan BAM, jadi mungkin ada slot tanpa pesan — tangani
celah ini dengan baik. Lihat Cakupan.
Otorisasi
string
wajib
Kunci API Helius Anda, yang diteruskan sebagai parameter kueri
api-key. Memerlukan paket Professional atau yang lebih tinggi.Isi
array
Opsional. Hilangkan
params untuk menerima setiap transaksi dari Helius dan BAM. Untuk mempersempit streaming, teruskan objek filter sebagai elemen pertama — pemfilteran dilakukan di sisi server, sehingga Anda hanya membayar dan menerima transaksi yang Anda perlukan.-32602 (parameter tidak valid).
Filter akun mencocokkan lebih dari sekadar kunci akun statis transaksi — Helius menyelesaikan tabel pencarian alamat v0 di sisi server, sehingga accountInclude, accountExclude, dan accountRequired juga mencocokkan akun yang dimuat transaksi melalui ALT.
Kode wilayah
Untuk Preconfirmations Helius, wilayah menunjukkan lokasi tempat Helius menyerap transaksi. Untuk Preconfirmations BAM, wilayah menunjukkan endpoint BAM regional yang memancarkan preconfirmation, bukan tempat Helius menyerapnya. Endpoint BAM di Singapura dan Dallas dipetakan ke
sgp dan dal.
Respons
integer
ID langganan (diperlukan untuk membatalkan langganan)
Notifikasi
Setelah konfirmasi JSON, notifikasi dikirim sebagai frame WebSocket biner (bukan JSON). Preconfirmations Helius dan BAM menggunakan tata letak yang sama. Setiap frame merupakan tata letak byte padat yang membawa satu transaksi:
Payload tidak memiliki bidang sumber. Jangan menyimpulkan bahwa transaksi berasal dari BAM berdasarkan
tx_index = 0, karena Preconfirmations Helius dapat membawa nilai yang sama.
Preconfirmation adalah sinyal awal, bukan jaminan. Transaksi belum masuk ke on-chain dan masih dapat gagal atau dihapus. Konfirmasikan bahwa transaksi telah masuk melalui pemeriksaan commitment standar sebelum menganggapnya final.
Mendekode transaksi
Byte transaksi diteruskan persis seperti yang diserialisasi oleh validator, menggunakan enkode wire standar untuk versi transaksi tersebut. Transaksi legacy dan v0 menggunakan tata letak yang mendahulukan tanda tangan seperti yang dihasilkan olehbincode. Transaksi v1 (SIMD-0385) menggunakan tata letak yang mendahulukan pesan dengan tanda tangan di bagian akhir, sehingga bincode gagal pada payload v1.
Gunakan dekoder yang menangani setiap versi. Di Rust, agave-transaction-view mengurai transaksi legacy, v0, dan v1 secara langsung dan merupakan opsi yang direkomendasikan; wincode dengan VersionedTransaction dari SDK Solana terbaru juga dapat digunakan. Di JavaScript, pastikan versi pustaka Anda mendukung transaksi v1. Lihat panduan untuk contoh Rust.
Notifikasi duplikat
Preconfirmations Helius dan BAM dideduplikasi per sumber, bukan lintas sumber. Sebagian kecil transaksi mencapai Helius melalui keduanya, sehingga Anda dapat menerima tanda tangan yang sama dua kali, dan kedua salinan tersebut mungkin melaporkan slot yang berbeda. Lakukan deduplikasi berdasarkan tanda tangan di klien dan buat tindakan yang dipicu transaksi bersifat idempoten. Lihat panduan.Harga
Preconfirmations memerlukan paket Professional atau yang lebih tinggi dan dikenai biaya 10 kredit per pesan — satu pesan untuk setiap transaksi yang di-streaming. Lihat Kredit untuk detailnya. Penagihan dihitung per pesan, bukan per tanda tangan unik. Transaksi yang dikirim oleh Helius dan BAM dihitung dua kali. TetapkanincludeBam: false jika Anda hanya menginginkan Preconfirmations Helius.
Terkait
Preconfirmations Overview
Penjelasan tentang Preconfirmations dan posisinya dalam pipeline validator.
preconfUnsubscribe
Hentikan langganan berdasarkan ID-nya.