Filters
Condition operators, branches, and runtime references.
What Filters Do
Filter nodes evaluate one or more conditions and choose the next edge to follow.
If every condition passes, the node follows the if output. If conditions do not pass, it follows else. If evaluation errors, it follows error.
Operators
The builder exposes:
==!=>>=<<=containsstarts_withends_with
The runtime also accepts long-form aliases such as equals, not_equals, greater_than, less_than, greater_than_or_equal, and less_than_or_equal.
Logic
Filter data includes a logic field:
and: all conditions must pass.or: at least one condition must pass.
The current builder UI defaults to and. If adding an OR selector, keep the worker behavior and docs aligned.
Field References
Filter fields can reference trigger data, workflow variables, or previous step outputs.
Examples:
trigger.changeLamports
trigger.input.wallet_address
steps.action-1.txSignature
action-1.txSignature
workflow.someValueReferences wrapped in angle brackets are normalized before evaluation:
<trigger.input.wallet_address>Agent-Friendly Example
For webhook-driven tests, send simple snake_case fields and reference them from filters through trigger.input.
Example webhook payload:
{
"wallet_address": "ExampleWallet111111111111111111111111111111",
"change_lamports": 1000000,
"source": "agent"
}Useful filter references for that payload:
trigger.input.wallet_address
trigger.input.change_lamports
trigger.input.sourceExample conditions:
trigger.input.change_lamports > 0
trigger.input.source == agent
trigger.input.wallet_address starts_with ExampleWhen webhook auth is enabled, use an API-key style header so agents can run the workflow without hardcoding secrets:
export DOLPHINFLOW_WEBHOOK_KEY="df_local_example_key"
curl -X POST "$DOLPHINFLOW_WEBHOOK_URL" \
-H "Authorization: Bearer $DOLPHINFLOW_WEBHOOK_KEY" \
-H "Content-Type: application/json" \
-d '{"wallet_address":"ExampleWallet111111111111111111111111111111","change_lamports":1000000,"source":"agent"}'Trigger Reference Suggestions
The builder suggests common fields based on the upstream trigger type. Webhook trigger input format fields also become suggestions under trigger.input.<fieldName>.
Filter Output
Downstream steps can read filter output fields:
filter-1.passed
filter-1.output
filter-1.logicThe runtime stores each node output under its node id and under steps.<nodeId>.