When this happens,
do that.
A reply lands, a meeting books, a mailbox slips. Wire each moment to your playbook on a canvas: branch on intent, post to Slack, open the deal, update the CRM, fire a signed webhook. Then dry-run it before it ever touches production.
Watch a run, end to end.
This is the builder as it ships. A positive reply comes in, the IF chip routes it, and the yes path posts to Slack, opens the deal and updates HubSpot while the test panel checks off every node. The no path waits its turn. Press Test in the window to fire it again.
Nine moments it can fire.
Every automation starts from one event. Replies arrive already classified, meetings arrive matched to the contact, and a campaign step can launch an automation for each contact that reaches it.
The classifier labels intent and confidence before the trigger fires, so you can branch on both.
Calendly and Cal.com invitees, matched back to the contact that booked.
Same payload, new time, so downstream reminders stay honest.
Catch the cancellation and put the contact back to work.
Hard or soft, with the provider and reason attached to the event.
Suppression already happened. This is your cue to sync it everywhere else.
A mailbox moves bands: healthy, watch, quarantined. React before placement slips.
The signal worth reacting to fastest. Page the channel, pause the risk.
A sequence action node can fire any automation, per contact, mid-flow.
Do it in Warmbly. Do it everywhere else.
Seven actions ship built in and need no connection at all. The rest reach your stack through the integrations you have already connected, with message templates rendered per event.
- Built-in actions run inside Warmbly: tags, tasks, deals, suppression.
- Stack actions reuse the connection: pick it from a dropdown, done.
warmbly.add_tag warmbly.remove_tag warmbly.create_task warmbly.create_deal warmbly.move_deal_stage warmbly.unsubscribe warmbly.run_automation One chip, two paths, full graph.
A condition reads one field off the event and routes it: yes out the right dot, no out the bottom. Chain conditions for AND logic, point both paths anywhere, and converge them back when the playbooks rejoin.
- Fields follow the trigger: intent and confidence on replies, source on meetings, provider and reason on bounces.
- A random split routes a weighted share of events down a different path.
Messages written from the event.
Slack messages, Discord messages and webhook payloads are Go templates, the same syntax as the rest of Warmbly. Pull any field the trigger carries and the message reads like a teammate wrote it.
{{.contact_email}}{{.intent}}{{.confidence}}{{.subject}}{{.snippet}}{{.campaign_id}}
🔥 [email protected] replied to Re: Quick question
intent positive at 92% · “Thursday works for me”
Rendered with the event that fired the run. A blank field never breaks the message, it just renders empty.
Know what it did, every time.
Test fires a dry run against a sample event: every node reports what it would do, every condition reports yes or no, and nothing leaves Warmbly. Once live, every real run lands in history with per-node results, so a broken step is a read, not an investigation.
- Per-node verdicts, with the provider response kept on failures.
- Branch decisions are recorded too: you can see which path a contact took.
Built to not wake you up.
Every webhook a run sends carries an HMAC SHA-256 signature header. Verify it in four lines and drop anything that does not match.
Dispatch is rate-limited per organization and event with generous plan-based limits. If the limiter itself has a bad day, events still flow.
Automations can run automations, and campaign steps can launch them per contact. Anything referenced by a live campaign step cannot be deleted out from under it.
Automation tools connect in one click. OAuth where the provider has a per-user identity, a minted webhook URL for the rest.
Five questions about how runs behave.
Nine triggers: a classified reply, a booked, rescheduled or canceled meeting, a bounce, an unsubscribe, a warmup health change, a spam complaint, and a campaign step that launches the automation per contact mid-sequence.
For the common paths, no: Slack, Discord, HubSpot, Salesforce, Pipedrive, Close and the built-in CRM actions are direct. Zapier, Make and n8n still connect with a scoped key when you want them, and the signed webhook action reaches anything else.
Each run records a per-node result. A failed step keeps the response it got, the run shows up in history with exactly which node broke and why, and the verdicts of the other nodes stay readable. Test runs exist so most failures never reach production.
Yes. The run-another-automation action composes playbooks, and a campaign sequence step can launch an automation for each contact that reaches it. Self-reference is blocked in the picker, and an automation referenced by a campaign step cannot be deleted.
No. Test is a dry run against a sample event for your trigger. Every node reports what it would do, conditions report yes or no, and nothing leaves Warmbly until the automation is switched on.
Wire your first trigger in two minutes.
Pick the reply trigger, point it at Slack, press Test. Then flip it on.