Supported DestinationsWebhook endpoints, PubSub topics, Kafka topics
Why use Stream Transformations?
Selective Delivery
Receive only the events you care about—specific wallets, token transfers, or contract calls
Automated Pipelines
Data flows through filters into your systems without manual intervention
Dynamic Filters
Update filtering rules on the fly with immediate effect on running workflows
How It Works
With Allium Stream Transformations, operational complexity is removed—you define what data matters and where to send it.
Check out the Datastream APIs for all the endpoints to manage your stream transformations programmatically.
Key Components
Filter Data Sources
Reusable value lists that act as dynamic “contains” filters
Filters
Rules that determine which messages pass through
Workflows
Complete pipelines connecting source → filter → destination
Example: Monitor Ethereum Wallet Activities
This example demonstrates how to monitor activities on 10 Ethereum wallet addresses.1
2
Add Values to Filter Data Source
Add the Ethereum addresses you want to track. Changes take effect immediately on running workflows.
- Add Values
- Delete Values
3
Create a Filter
Create a filter that applies your data source to the Ethereum transactions stream.Filters support comparison operators (The response shows the filter has been created with the values from your data source expanded into the
=, !=, >, >=, <, <=), the in operator for matching against arrays or data sources, the exists operator for field presence checks, and compound AND/OR logic for complex conditions.See the Filter Syntax documentation for complete details on all operators, nested conditions, and examples.
Request
Response
value array.4
5
Verify Workflow Status
Poll the workflow until
external_workflow_id is non-null, indicating your webhook is receiving filtered transactions.Request
Next Steps
Filter Syntax
Learn how to filter streams with complex conditions