Overview
Streams provides several advanced configuration options that allow you to fine-tune which on-chain data is included in your webhook payloads. These options control:- Which transaction types are included
- Whether contract logs and internal transactions are captured
- How specific events are filtered at a granular level
Global Stream Options
These options apply at the stream level and affect the overall webhook payload.Include Contract Logs
- All contract logs are included in webhook payloads
- Required when monitoring specific contracts
- Useful when monitoring wallets that interact with contracts
Include Internal Transactions
- Includes internal transactions (contract-to-contract calls)
- Useful for tracing value movement inside smart contracts
- Particularly relevant for DeFi protocols and complex contract interactions
Include Native Transactions
- Includes native currency transfers (e.g. ETH, MATIC)
- Useful for tracking wallet balance changes or native payments
Include All Transaction Logs
- Includes all logs related to a transaction if any log or transaction matches your stream configuration
- Expands the webhook payload to include full transaction context
- Must be used together with either:
includeNativeTxs, orincludeContractLogs
Available on Pro plans and higher.
Advanced Options (Per-Event Configuration)
TheadvancedOptions field allows you to define event-specific rules that override or refine the global stream configuration.
Each entry targets a specific event signature and optionally applies filters.
Advanced Option Structure
Fields Explained
topic0
The event signature to listen for (e.g. Transfer(address,address,uint256)).
- Required
- Determines which decoded event the option applies to
filter
A filter expression applied only to this event.
- Uses the same filter syntax described in Filters
- Allows precise inclusion logic per event
includeNativeTxs
Controls whether native transactions should be included alongside this specific event.
Example: Filtered ERC-20 Transfers
- Listens only to ERC-20
Transferevents - Filters transfers from a specific address
- Requires the transferred amount to exceed a threshold
- Excludes native transactions
Amounts must be expressed in the token’s base units (e.g. wei).
When to Use Advanced Options
Advanced options are useful when you want to:- Apply different rules per event type
- Reduce webhook payload size
- Filter high-value or high-signal events
- Track contract activity with precision
Best Practices
- Start with global options, then refine with
advancedOptions - Avoid overlapping filters that can be hard to reason about
- Keep filters simple where possible
- Test changes in a non-production stream first
Summary
- Global options control overall stream behaviour
advancedOptionsenable per-event customization- Filters and advanced options work together
- Proper configuration reduces noise and improves reliability

