Skip to main content
Contract-based flows respond to what wallets actually do on-chain: minting, swapping, borrowing, approving, getting liquidated. For EVM contracts, the platform watches the chain for you, publish an automation with an on-chain trigger and it starts firing on real activity, with no indexer to run and no contract details to paste.

Scenarios worth building

How it fires

Give the trigger a chain and a contract address, then publish. That’s it. Matching on-chain activity starts creating automation entries after a short delay for finality, so a reversed or re-orged transaction never messages anyone (seconds on an L2, a couple of minutes on Ethereum mainnet).
Automatic watching is EVM-only. For Solana contracts, or if you run your own indexer, send events in through the Automation Trigger API instead, a developer task.
If the contract isn’t verified publicly, a developer may need to supply the event’s signature when the trigger is built. Until a trigger has an event it can resolve, publishing reports it as skipped rather than failing silently.

Configuring the trigger

In the builder, a preset needs one input: your token or contract. The event and filters that define the moment are filled in for you, so you pick the contract and publish. See pick your token, done. Adding a contract address scopes the trigger to your protocol; leaving it empty matches the moment on any contract on the chain, which is almost never what you want.

Where it works

Automatic watching covers the major EVM chains, Ethereum, Base, Arbitrum, Optimism, and Polygon, plus Solana through the trigger API. Chain and contract are often filled in from your project settings.

What it can watch for

The platform recognizes the common events across token standards (ERC-20, ERC-721, ERC-1155, ERC-4626), governance, and DeFi (swaps, deposits, withdrawals, borrows, repayments, liquidations, and more), with Solana equivalents. You browse and pick them in the trigger picker, no need to know their technical names.

Feeding in your own events

For EVM contracts you rarely need this. Send events in yourself only for Solana contracts (not auto-watched) or when you run your own indexer. That’s a developer task, through the Automation Trigger API. For product activity rather than on-chain moments, use Custom Events.

Testing a flow

1

Preview the trigger

Preview returns how many wallets match, plus sample profiles. Zero matches means the trigger is wrong, usually the contract address or the chain.
2

Do the thing on-chain

Perform the activity with a wallet you control, wait out the finality delay (seconds on an L2, about two minutes on Ethereum mainnet), and confirm the automation registered an entry.
3

Confirm each step fired

Check the automation’s entries. A skipped step means it was reachable but declined to run, usually suppressed recipients or paused sending.
4

Widen the audience

Only after a single wallet completes the flow correctly.
Don’t expect an instant notification when testing. The finality delay means an on-chain trigger fires a short while after the transaction confirms. That’s deliberate, so a dropped or re-orged transaction never messages your users.

Best practices

  • Scope to a contract address. A chain-wide trigger will match far more than you expect.
  • Start from a preset rather than the generic on-chain event trigger, its event and filters are already correct.
  • Verify the mapping with one real transaction before publishing.
  • Pair every trigger with a clear outcome; if you can’t state what should change, the automation isn’t ready.