What is preconfSubscribe?
preconfSubscribe is a Helius WebSocket method that streams Preconfirmations — transactions delivered at the scheduled-transaction stage, before they are shredded. It is the lowest-latency transaction signal Helius offers. Access requires a Professional plan or higher — see Pricing.
The stream is not continuous. Coverage scales with the share of stake
forwarding to Helius, so expect slots with no messages — handle these gaps
gracefully. See Coverage.
preconfSubscribe is served from wss://beta.helius-rpc.com — the Helius Gatekeeper endpoint — rather than mainnet.helius-rpc.com. Authenticate with your API key as a query parameter.
The
beta hostname refers to the Gatekeeper rollout,
not the maturity of Preconfirmations. Preconfirmations launch on the
Gatekeeper endpoint first; it will become the standard endpoint as Helius
migrates traffic to Gatekeeper.Subscribe
Send a JSON-RPC request with thepreconfSubscribe method. The server responds with a subscription ID, then streams a notification for each scheduled transaction. Pass an optional filter as the first params element to receive only matching transactions; omit params to receive the full stream.
Subscribe Response
result — it is the subscription ID you use to unsubscribe. After this acknowledgement, notifications stream as binary frames (see below).
Filtering
By defaultpreconfSubscribe streams every scheduled transaction. To narrow the stream, pass a filter object as the first element of params. Filtering happens server-side, so you only pay for and receive the transactions you care about.
params) matches every transaction.
Filter rules:
- All predicates are ANDed together, evaluated in the order
regionInclude→accountExclude→accountRequired→accountInclude. - Accounts are base58-encoded pubkeys. An invalid value returns JSON-RPC error
-32602(invalid params). - Each account list is capped at 500 entries.
Address lookup table (ALT) resolution
Account filters match more than the transaction’s static account keys — Helius resolves v0 address lookup tables server-side, soaccountInclude, accountExclude, and accountRequired also match accounts a transaction loads through an ALT.
This means you can filter on any account a transaction touches, even when it only appears behind a lookup table — no need to maintain ALT mappings or resolve tables yourself. Just pass the account’s pubkey and Helius handles the resolution before the filter is applied.
Location filtering
UseregionInclude to receive only transactions that originate from specific Helius regions. Pass one or more region codes; a transaction passes when its origin region matches any of them.
When
regionInclude is set, transactions that don’t carry region information are dropped. An unrecognized region code returns JSON-RPC error -32602 (invalid params).Notification payload
Notifications are delivered as binary WebSocket frames (not JSON). Each frame is a packed byte layout carrying a single scheduled transaction:
Read the fields in order, then
bincode-deserialize the remaining bytes into a VersionedTransaction to read instructions, accounts, and the signature.
A preconfirmation is an early signal, not a guarantee. The transaction has not
yet landed onchain and could still fail or be dropped. Confirm landing through
standard commitment checks before treating it as final.
Example
Unsubscribing
To stop receiving notifications, callpreconfUnsubscribe with the subscription ID returned from preconfSubscribe.
Pricing
Preconfirmations require a Professional plan or higher and cost 10 credits per message — one message per streamed transaction — billed from your plan. See Credits for details.Preconfirmations is a new product and pricing is subject to change.
Related
Preconfirmations Overview
What Preconfirmations are and where they sit in the validator pipeline.
transactionSubscribe
Stream confirmed-commitment transactions with rich filtering.