notify
Send a templated message to a configured notification channel.
- id: report
notify:
channel: ops
message: "mirrored ${{ format_units(trigger.args.value, 6) }} USDC — ${{ steps.mirror.tx.hash }}"Fields
| Field | Required | Description |
|---|---|---|
channel | ✅ | A channel declared under notifications.channels |
message | ✅ | Full template — any expression works |
Behavior
- The message renders against the full run context — trigger, prior steps, constants, relayer addresses.
- Values from
secrets:are log-redacted. - Delivery goes through rflow's own senders (telegram / slack / discord) — no third-party relay.
- The step output is
{ "channel": "...", "status": <http status> }. - Delivery failures follow normal step failure handling: 5xx/timeouts are retryable
under a
retry:block; a bad token or webhook is terminal.
Pattern: alert-only workflows
Monitoring needs no signer and no relayer — an event trigger plus notify is a
complete project:
workflows:
large-transfers:
trigger:
event:
contract: USDC
name: Transfer
network: ethereum
where: "${{ trigger.args.value > wei('1000000', 6) }}"
steps:
- id: alert
notify:
channel: ops
message: "🚨 ${{ format_units(trigger.args.value, 6) }} USDC from ${{ trigger.args.from }}"