Lead alerts for Slack, Teams, email and any API
The 11 alerts sales teams set up most, ready to copy. Send each one to Slack with the drafted reply and Accept or Edit buttons, to a Microsoft Teams channel, to any inbox by email, or to your own tools and database with an API call. Add more actions to the same workflow and one positive reply updates the CRM, pushes the dialer and starts the next workflow too.
Positive reply, with the AI draft to approve
The default for most sales teams. Every positive reply lands in Slack with the prospect's message and the drafted answer, and the rep approves or edits it without leaving Slack.
When: Incoming Message
Only if:
- Label sentiment equals positive
Message fields:
namejob_titlecompany_namelabel_namestextcampaign_namethread_urlShow draft is on, so the card carries the drafted reply with Accept and Edit buttons.
Send it to: Slack, Microsoft Teams, email, or any tool and database by webhook. Add several actions to send it everywhere at once.
Slack: API request
{
"name": "Positive reply, with the AI draft to approve",
"trigger_type": "incoming_message",
"trigger_config": {
"channel_ids": [
"-1"
],
"conditions": {
"c1": {
"field": "label_sentiment",
"operator": "AND",
"condition": "equals",
"values": [
"positive"
]
}
}
},
"action_configs": [
{
"action_type": "slack_notify",
"payload_variables": [
"name",
"job_title",
"company_name",
"label_names",
"text",
"campaign_name",
"thread_url"
],
"show_draft": true
}
]
}Email: API request
{
"name": "Positive reply, with the AI draft to approve (email)",
"trigger_type": "incoming_message",
"trigger_config": {
"channel_ids": [
"-1"
],
"conditions": {
"c1": {
"field": "label_sentiment",
"operator": "AND",
"condition": "equals",
"values": [
"positive"
]
}
}
},
"action_configs": [
{
"action_type": "email_notify",
"email_to": [
"[email protected]"
],
"email_subject": "New positive reply",
"email_body": "<p>{{name ?? A lead}} from {{company ?? their company}} replied:</p><p>{{message}}</p><p>Labels: {{labels ?? none}}</p><p><a href=\"{{thread_url}}\">Open the conversation</a></p>"
}
]
}Any API or database: API request
{
"name": "Positive reply, with the AI draft to approve (webhook)",
"trigger_type": "incoming_message",
"trigger_config": {
"channel_ids": [
"-1"
],
"conditions": {
"c1": {
"field": "label_sentiment",
"operator": "AND",
"condition": "equals",
"values": [
"positive"
]
}
}
},
"action_configs": [
{
"action_type": "webhook",
"webhook_url": "https://your-project.supabase.co/functions/v1/new-lead",
"webhook_payload_variables": [
"name",
"job_title",
"company_name",
"label_names",
"text",
"campaign_name",
"thread_url"
]
}
]
}New positive reply
Prospect: Priya N., Head of Sales at Brightline Freight
Label: Interested
Campaign: Q4 Fintech outbound
Could we find 20 minutes next week to see how it works?
Hot lead, with one-click reply buttons
Up to five buttons that each send one of your saved templates, such as your calendar link or pricing, straight from Slack.
When: Incoming Message
Only if:
- Labels equals Interested or Meeting Request
Message fields:
namecompany_namelabel_namestextthread_urlEach button sends one of your saved templates. Buttons work on the Incoming Message trigger, up to five, through the Master Inbox Slack app.
Send it to: Slack, Microsoft Teams, email, or any tool and database by webhook. Add several actions to send it everywhere at once.
Slack: API request
{
"name": "Hot lead, with one-click reply buttons",
"trigger_type": "incoming_message",
"trigger_config": {
"channel_ids": [
"-1"
],
"conditions": {
"c1": {
"field": "labels",
"operator": "AND",
"condition": "equals",
"values": [
"176479",
"176478"
]
}
}
},
"action_configs": [
{
"action_type": "slack_notify",
"payload_variables": [
"name",
"company_name",
"label_names",
"text",
"thread_url"
],
"show_draft": false,
"action_buttons": [
{
"id": "b1",
"label": "Send my calendar",
"template_id": 7158,
"style": "primary"
},
{
"id": "b2",
"label": "Send pricing",
"template_id": 7159
},
{
"id": "b3",
"label": "Ask for best number",
"template_id": 7160
},
{
"id": "b4",
"label": "Not now",
"template_id": 7161,
"style": "danger"
}
]
}
]
}Email: API request
{
"name": "Hot lead, with one-click reply buttons (email)",
"trigger_type": "incoming_message",
"trigger_config": {
"channel_ids": [
"-1"
],
"conditions": {
"c1": {
"field": "labels",
"operator": "AND",
"condition": "equals",
"values": [
"176479",
"176478"
]
}
}
},
"action_configs": [
{
"action_type": "email_notify",
"email_to": [
"[email protected]"
],
"email_subject": "Hot lead replied",
"email_body": "<p>{{name ?? A lead}} from {{company ?? their company}} replied:</p><p>{{message}}</p><p>Labels: {{labels ?? none}}</p><p><a href=\"{{thread_url}}\">Open the conversation</a></p>"
}
]
}Any API or database: API request
{
"name": "Hot lead, with one-click reply buttons (webhook)",
"trigger_type": "incoming_message",
"trigger_config": {
"channel_ids": [
"-1"
],
"conditions": {
"c1": {
"field": "labels",
"operator": "AND",
"condition": "equals",
"values": [
"176479",
"176478"
]
}
}
},
"action_configs": [
{
"action_type": "webhook",
"webhook_url": "https://your-project.supabase.co/functions/v1/new-lead",
"webhook_payload_variables": [
"name",
"company_name",
"label_names",
"text",
"thread_url"
]
}
]
}Hot lead replied
Prospect: Marcus T., Brightpath
Label: Meeting Request
What does pricing look like for a team of 12 reps?
Call requested, with the phone number
When a prospect asks for a call, post their number so whoever is free can dial in minutes.
When: Add Label
Only if:
- Labels equals Call/Reply
Message fields:
namecompany_namephonetextthread_urlSend it to: Slack, Microsoft Teams, email, or any tool and database by webhook. Add several actions to send it everywhere at once.
Slack: API request
{
"name": "Call requested, with the phone number",
"trigger_type": "add_label",
"trigger_config": {
"label_ids": [
176479
],
"conditions": {
"c1": {
"field": "labels",
"operator": "AND",
"condition": "equals",
"values": [
"176479",
"176478"
]
}
}
},
"action_configs": [
{
"action_type": "slack_notify",
"payload_variables": [
"name",
"company_name",
"phone",
"text",
"thread_url"
]
}
]
}Email: API request
{
"name": "Call requested, with the phone number (email)",
"trigger_type": "add_label",
"trigger_config": {
"label_ids": [
176479
],
"conditions": {
"c1": {
"field": "labels",
"operator": "AND",
"condition": "equals",
"values": [
"176479",
"176478"
]
}
}
},
"action_configs": [
{
"action_type": "email_notify",
"email_to": [
"[email protected]"
],
"email_subject": "Call requested",
"email_body": "<p>{{name ?? A lead}} from {{company ?? their company}} replied:</p><p>{{message}}</p><p>Labels: {{labels ?? none}}</p><p><a href=\"{{thread_url}}\">Open the conversation</a></p>"
}
]
}Any API or database: API request
{
"name": "Call requested, with the phone number (webhook)",
"trigger_type": "add_label",
"trigger_config": {
"label_ids": [
176479
],
"conditions": {
"c1": {
"field": "labels",
"operator": "AND",
"condition": "equals",
"values": [
"176479",
"176478"
]
}
}
},
"action_configs": [
{
"action_type": "webhook",
"webhook_url": "https://your-project.supabase.co/functions/v1/new-lead",
"webhook_payload_variables": [
"name",
"company_name",
"phone",
"text",
"thread_url"
]
}
]
}Call requested
Prospect: Omar S., Fieldstack
Phone: +1 415 555 0182
Easier to talk. Call my cell after 3 today.
Meeting booked
Celebrate and prep: post every booking with the time, the meeting link and the campaign that produced it.
When: Meeting Booked
Only if:
- None
Message fields:
namecompany_namemeeting_timemeeting_urlcampaign_namethread_urlSend it to: Slack, Microsoft Teams, email, or any tool and database by webhook. Add several actions to send it everywhere at once.
Slack: API request
{
"name": "Meeting booked",
"trigger_type": "meeting_booked",
"trigger_config": {},
"action_configs": [
{
"action_type": "slack_notify",
"payload_variables": [
"name",
"company_name",
"meeting_time",
"meeting_url",
"campaign_name",
"thread_url"
]
}
]
}Email: API request
{
"name": "Meeting booked (email)",
"trigger_type": "meeting_booked",
"trigger_config": {},
"action_configs": [
{
"action_type": "email_notify",
"email_to": [
"[email protected]"
],
"email_subject": "Meeting booked",
"email_body": "<p>{{name ?? A lead}} from {{company ?? their company}} replied:</p><p>{{message}}</p><p>Labels: {{labels ?? none}}</p><p><a href=\"{{thread_url}}\">Open the conversation</a></p>"
}
]
}Any API or database: API request
{
"name": "Meeting booked (webhook)",
"trigger_type": "meeting_booked",
"trigger_config": {},
"action_configs": [
{
"action_type": "webhook",
"webhook_url": "https://your-project.supabase.co/functions/v1/new-lead",
"webhook_payload_variables": [
"name",
"company_name",
"meeting_time",
"meeting_url",
"campaign_name",
"thread_url"
]
}
]
}Meeting booked
Prospect: Dana O., Northwind Labs
When: Tue, Nov 11, 2:00 pm
Campaign: Q4 Fintech outbound
Meeting no-show
Tell the rep the moment a prospect misses the call, so the rebook goes out the same hour.
When: Meeting No-show
Only if:
- None
Message fields:
namecompany_namemeeting_timethread_urlSend it to: Slack, Microsoft Teams, email, or any tool and database by webhook. Add several actions to send it everywhere at once.
Slack: API request
{
"name": "Meeting no-show",
"trigger_type": "meeting_no_show",
"trigger_config": {},
"action_configs": [
{
"action_type": "slack_notify",
"payload_variables": [
"name",
"company_name",
"meeting_time",
"thread_url"
]
}
]
}Email: API request
{
"name": "Meeting no-show (email)",
"trigger_type": "meeting_no_show",
"trigger_config": {},
"action_configs": [
{
"action_type": "email_notify",
"email_to": [
"[email protected]"
],
"email_subject": "No-show",
"email_body": "<p>{{name ?? A lead}} from {{company ?? their company}} replied:</p><p>{{message}}</p><p>Labels: {{labels ?? none}}</p><p><a href=\"{{thread_url}}\">Open the conversation</a></p>"
}
]
}Any API or database: API request
{
"name": "Meeting no-show (webhook)",
"trigger_type": "meeting_no_show",
"trigger_config": {},
"action_configs": [
{
"action_type": "webhook",
"webhook_url": "https://your-project.supabase.co/functions/v1/new-lead",
"webhook_payload_variables": [
"name",
"company_name",
"meeting_time",
"thread_url"
]
}
]
}No-show
Prospect: Jack W., Quillworks
Missed: Mon, Nov 10, 11:00 am
Positive reply still waiting on you
An SLA alert: the prospect replied with interest and nobody has answered after a few hours.
When: Due Reminder
Only if:
- Label sentiment equals positive
- Last message from equals prospect
Message fields:
namecompany_namelabel_namestextthread_urlSend it to: Slack, Microsoft Teams, email, or any tool and database by webhook. Add several actions to send it everywhere at once.
Slack: API request
{
"name": "Positive reply still waiting on you",
"trigger_type": "due_reminder",
"trigger_config": {
"conditions": {
"c1": {
"field": "label_sentiment",
"operator": "AND",
"condition": "equals",
"values": [
"positive"
]
},
"c2": {
"field": "last_msg_from",
"operator": "AND",
"condition": "equals",
"values": [
"prospect"
]
}
}
},
"action_configs": [
{
"action_type": "slack_notify",
"payload_variables": [
"name",
"company_name",
"label_names",
"text",
"thread_url"
]
}
]
}Email: API request
{
"name": "Positive reply still waiting on you (email)",
"trigger_type": "due_reminder",
"trigger_config": {
"conditions": {
"c1": {
"field": "label_sentiment",
"operator": "AND",
"condition": "equals",
"values": [
"positive"
]
},
"c2": {
"field": "last_msg_from",
"operator": "AND",
"condition": "equals",
"values": [
"prospect"
]
}
}
},
"action_configs": [
{
"action_type": "email_notify",
"email_to": [
"[email protected]"
],
"email_subject": "Still waiting on a reply",
"email_body": "<p>{{name ?? A lead}} from {{company ?? their company}} replied:</p><p>{{message}}</p><p>Labels: {{labels ?? none}}</p><p><a href=\"{{thread_url}}\">Open the conversation</a></p>"
}
]
}Any API or database: API request
{
"name": "Positive reply still waiting on you (webhook)",
"trigger_type": "due_reminder",
"trigger_config": {
"conditions": {
"c1": {
"field": "label_sentiment",
"operator": "AND",
"condition": "equals",
"values": [
"positive"
]
},
"c2": {
"field": "last_msg_from",
"operator": "AND",
"condition": "equals",
"values": [
"prospect"
]
}
}
},
"action_configs": [
{
"action_type": "webhook",
"webhook_url": "https://your-project.supabase.co/functions/v1/new-lead",
"webhook_payload_variables": [
"name",
"company_name",
"label_names",
"text",
"thread_url"
]
}
]
}Still waiting on a reply
Prospect: Lena W., Orbitly
Waiting: 4 hours
Label: Interested
This is timely. We are rethinking how our SDRs handle replies.
Target account replied
Watch a list of named accounts and alert the account executive when anyone from those companies replies, positive or not.
When: Incoming Message
Only if:
- Company domain equals your target account domains
Message fields:
namejob_titlecompany_namelabel_namestextthread_urlShow draft is on, so the card carries the drafted reply with Accept and Edit buttons.
Send it to: Slack, Microsoft Teams, email, or any tool and database by webhook. Add several actions to send it everywhere at once.
Slack: API request
{
"name": "Target account replied",
"trigger_type": "incoming_message",
"trigger_config": {
"channel_ids": [
"-1"
],
"conditions": {
"c1": {
"field": "domain",
"operator": "AND",
"condition": "equals",
"values": [
"northwind.com",
"tallbridge.com"
]
}
}
},
"action_configs": [
{
"action_type": "slack_notify",
"payload_variables": [
"name",
"job_title",
"company_name",
"label_names",
"text",
"thread_url"
],
"show_draft": true
}
]
}Email: API request
{
"name": "Target account replied (email)",
"trigger_type": "incoming_message",
"trigger_config": {
"channel_ids": [
"-1"
],
"conditions": {
"c1": {
"field": "domain",
"operator": "AND",
"condition": "equals",
"values": [
"northwind.com",
"tallbridge.com"
]
}
}
},
"action_configs": [
{
"action_type": "email_notify",
"email_to": [
"[email protected]"
],
"email_subject": "Target account replied",
"email_body": "<p>{{name ?? A lead}} from {{company ?? their company}} replied:</p><p>{{message}}</p><p>Labels: {{labels ?? none}}</p><p><a href=\"{{thread_url}}\">Open the conversation</a></p>"
}
]
}Any API or database: API request
{
"name": "Target account replied (webhook)",
"trigger_type": "incoming_message",
"trigger_config": {
"channel_ids": [
"-1"
],
"conditions": {
"c1": {
"field": "domain",
"operator": "AND",
"condition": "equals",
"values": [
"northwind.com",
"tallbridge.com"
]
}
}
},
"action_configs": [
{
"action_type": "webhook",
"webhook_url": "https://your-project.supabase.co/functions/v1/new-lead",
"webhook_payload_variables": [
"name",
"job_title",
"company_name",
"label_names",
"text",
"thread_url"
]
}
]
}Target account replied
Prospect: Grace H., VP Revenue, Tallbridge
Label: Information Request
Does this work with HubSpot? We run everything there.
Positive replies routed to each team's channel
One workflow per team: Enterprise campaigns to #enterprise-sales, EMEA campaigns to #emea-sales, each with its own Slack channel link.
When: Incoming Message
Only if:
- Label sentiment equals positive
- Campaign name contains Enterprise
Message fields:
namecompany_namelabel_namescampaign_nametextthread_urlShow draft is on, so the card carries the drafted reply with Accept and Edit buttons.
Add that team's Slack channel link in the action to post somewhere other than your connected channel.
Send it to: Slack, Microsoft Teams, email, or any tool and database by webhook. Add several actions to send it everywhere at once.
Slack: API request
{
"name": "Positive replies routed to each team's channel",
"trigger_type": "incoming_message",
"trigger_config": {
"channel_ids": [
"-1"
],
"conditions": {
"c1": {
"field": "label_sentiment",
"operator": "AND",
"condition": "equals",
"values": [
"positive"
]
},
"c2": {
"field": "campaign_name",
"operator": "AND",
"condition": "contains",
"values": [
"Enterprise"
]
}
}
},
"action_configs": [
{
"action_type": "slack_notify",
"payload_variables": [
"name",
"company_name",
"label_names",
"campaign_name",
"text",
"thread_url"
],
"show_draft": true,
"slack_webhook_url": "https://hooks.slack.com/services/YOUR/TEAM/CHANNEL"
}
]
}Email: API request
{
"name": "Positive replies routed to each team's channel (email)",
"trigger_type": "incoming_message",
"trigger_config": {
"channel_ids": [
"-1"
],
"conditions": {
"c1": {
"field": "label_sentiment",
"operator": "AND",
"condition": "equals",
"values": [
"positive"
]
},
"c2": {
"field": "campaign_name",
"operator": "AND",
"condition": "contains",
"values": [
"Enterprise"
]
}
}
},
"action_configs": [
{
"action_type": "email_notify",
"email_to": [
"[email protected]"
],
"email_subject": "#enterprise-sales: new positive reply",
"email_body": "<p>{{name ?? A lead}} from {{company ?? their company}} replied:</p><p>{{message}}</p><p>Labels: {{labels ?? none}}</p><p><a href=\"{{thread_url}}\">Open the conversation</a></p>"
}
]
}Any API or database: API request
{
"name": "Positive replies routed to each team's channel (webhook)",
"trigger_type": "incoming_message",
"trigger_config": {
"channel_ids": [
"-1"
],
"conditions": {
"c1": {
"field": "label_sentiment",
"operator": "AND",
"condition": "equals",
"values": [
"positive"
]
},
"c2": {
"field": "campaign_name",
"operator": "AND",
"condition": "contains",
"values": [
"Enterprise"
]
}
}
},
"action_configs": [
{
"action_type": "webhook",
"webhook_url": "https://your-project.supabase.co/functions/v1/new-lead",
"webhook_payload_variables": [
"name",
"company_name",
"label_names",
"campaign_name",
"text",
"thread_url"
]
}
]
}#enterprise-sales: new positive reply
Prospect: Theo R., Quillworks
Campaign: Enterprise Q4
Budget is approved for Q1. What do you need from us?
LinkedIn positive reply
Separate alert for LinkedIn replies from HeyReach or connected LinkedIn accounts, with the profile link.
When: Incoming Message
Only if:
- Label sentiment equals positive
- Source tool equals HeyReach or LinkedIn
Message fields:
namejob_titlecompany_namelinkedintextthread_urlShow draft is on, so the card carries the drafted reply with Accept and Edit buttons.
Send it to: Slack, Microsoft Teams, email, or any tool and database by webhook. Add several actions to send it everywhere at once.
Slack: API request
{
"name": "LinkedIn positive reply",
"trigger_type": "incoming_message",
"trigger_config": {
"channel_ids": [
"-1"
],
"conditions": {
"c1": {
"field": "label_sentiment",
"operator": "AND",
"condition": "equals",
"values": [
"positive"
]
},
"c2": {
"field": "source",
"operator": "AND",
"condition": "equals",
"values": [
"heyreach"
]
}
}
},
"action_configs": [
{
"action_type": "slack_notify",
"payload_variables": [
"name",
"job_title",
"company_name",
"linkedin",
"text",
"thread_url"
],
"show_draft": true
}
]
}Email: API request
{
"name": "LinkedIn positive reply (email)",
"trigger_type": "incoming_message",
"trigger_config": {
"channel_ids": [
"-1"
],
"conditions": {
"c1": {
"field": "label_sentiment",
"operator": "AND",
"condition": "equals",
"values": [
"positive"
]
},
"c2": {
"field": "source",
"operator": "AND",
"condition": "equals",
"values": [
"heyreach"
]
}
}
},
"action_configs": [
{
"action_type": "email_notify",
"email_to": [
"[email protected]"
],
"email_subject": "LinkedIn reply",
"email_body": "<p>{{name ?? A lead}} from {{company ?? their company}} replied:</p><p>{{message}}</p><p>Labels: {{labels ?? none}}</p><p><a href=\"{{thread_url}}\">Open the conversation</a></p>"
}
]
}Any API or database: API request
{
"name": "LinkedIn positive reply (webhook)",
"trigger_type": "incoming_message",
"trigger_config": {
"channel_ids": [
"-1"
],
"conditions": {
"c1": {
"field": "label_sentiment",
"operator": "AND",
"condition": "equals",
"values": [
"positive"
]
},
"c2": {
"field": "source",
"operator": "AND",
"condition": "equals",
"values": [
"heyreach"
]
}
}
},
"action_configs": [
{
"action_type": "webhook",
"webhook_url": "https://your-project.supabase.co/functions/v1/new-lead",
"webhook_payload_variables": [
"name",
"job_title",
"company_name",
"linkedin",
"text",
"thread_url"
]
}
]
}LinkedIn reply
Prospect: Hana K., Lumen Freight
Profile: linkedin.com/in/hana-k
Sounds good. Send over a few times that work for you.
Weekday alerts only
Keep the team channel quiet on weekends: alert Monday to Friday, and let weekend replies wait for a Monday reminder.
When: Incoming Message
Only if:
- Label sentiment equals positive
- Day of week is Monday to Friday (set in the app)
Message fields:
namecompany_namelabel_namestextthread_urlShow draft is on, so the card carries the drafted reply with Accept and Edit buttons.
Send it to: Slack, Microsoft Teams, email, or any tool and database by webhook. Add several actions to send it everywhere at once.
Slack: API request
{
"name": "Weekday alerts only",
"trigger_type": "incoming_message",
"trigger_config": {
"channel_ids": [
"-1"
],
"conditions": {
"c1": {
"field": "label_sentiment",
"operator": "AND",
"condition": "equals",
"values": [
"positive"
]
}
}
},
"action_configs": [
{
"action_type": "slack_notify",
"payload_variables": [
"name",
"company_name",
"label_names",
"text",
"thread_url"
],
"show_draft": true
}
]
}Email: API request
{
"name": "Weekday alerts only (email)",
"trigger_type": "incoming_message",
"trigger_config": {
"channel_ids": [
"-1"
],
"conditions": {
"c1": {
"field": "label_sentiment",
"operator": "AND",
"condition": "equals",
"values": [
"positive"
]
}
}
},
"action_configs": [
{
"action_type": "email_notify",
"email_to": [
"[email protected]"
],
"email_subject": "New positive reply",
"email_body": "<p>{{name ?? A lead}} from {{company ?? their company}} replied:</p><p>{{message}}</p><p>Labels: {{labels ?? none}}</p><p><a href=\"{{thread_url}}\">Open the conversation</a></p>"
}
]
}Any API or database: API request
{
"name": "Weekday alerts only (webhook)",
"trigger_type": "incoming_message",
"trigger_config": {
"channel_ids": [
"-1"
],
"conditions": {
"c1": {
"field": "label_sentiment",
"operator": "AND",
"condition": "equals",
"values": [
"positive"
]
}
}
},
"action_configs": [
{
"action_type": "webhook",
"webhook_url": "https://your-project.supabase.co/functions/v1/new-lead",
"webhook_payload_variables": [
"name",
"company_name",
"label_names",
"text",
"thread_url"
]
}
]
}New positive reply
Prospect: Sam R., Copperline
Label: Interested
Who else on my team can join the call?
AI draft held for review
When a reply agent holds a draft instead of sending it, tell the team why, so a human picks it up.
When: Draft Held
Only if:
- None
Message fields:
namecompany_namehold_reasonagent_namethread_urlSend it to: Slack, Microsoft Teams, email, or any tool and database by webhook. Add several actions to send it everywhere at once.
Slack: API request
{
"name": "AI draft held for review",
"trigger_type": "draft_held",
"trigger_config": {},
"action_configs": [
{
"action_type": "slack_notify",
"payload_variables": [
"name",
"company_name",
"hold_reason",
"agent_name",
"thread_url"
]
}
]
}Email: API request
{
"name": "AI draft held for review (email)",
"trigger_type": "draft_held",
"trigger_config": {},
"action_configs": [
{
"action_type": "email_notify",
"email_to": [
"[email protected]"
],
"email_subject": "Draft held",
"email_body": "<p>{{name ?? A lead}} from {{company ?? their company}} replied:</p><p>{{message}}</p><p>Labels: {{labels ?? none}}</p><p><a href=\"{{thread_url}}\">Open the conversation</a></p>"
}
]
}Any API or database: API request
{
"name": "AI draft held for review (webhook)",
"trigger_type": "draft_held",
"trigger_config": {},
"action_configs": [
{
"action_type": "webhook",
"webhook_url": "https://your-project.supabase.co/functions/v1/new-lead",
"webhook_payload_variables": [
"name",
"company_name",
"hold_reason",
"agent_name",
"thread_url"
]
}
]
}Draft held
Prospect: Felix D., Copperline
Agent: SDR Reply Agent
Reason: Not sure a reply is needed
Message fields you can include
Pick any of these for the Slack message: name, first_name, job_title, company_name, email, phone, linkedin, label_names, text, subject, campaign_name, campaign_step, channel, list_name, deal_value, reply_from, location, thread_url, plus meeting_time and meeting_url on meeting triggers.
Slack, email and webhook notifications skip threads whose last message is older than 72 hours, so relabeling an old conversation never wakes the team.
Get these alerts on your own inboxes
Free 7-day POC. Unlimited users on every plan.
