Every 5 minutes
Post new Zoho CRM leads to Slack
Sales sees each new lead's name, company and source within minutes.
- Runs
- Every 5 minutes
- Apps
- Zoho CRM
- AI
- Not needed
- Access
- ZohoCRM.modules.leads.READ
Send this to your assistant
Create a ClickRuntime automation: whenever a lead is added in Zoho CRM, post its name, company and lead source to #new-leads in Slack.
First time? Adding ClickRuntime to your assistant takes about two minutes.
Why use it
Why teams use this automation
A lead fills in a contact form at 10:02 and expects a call. The assigned rep is on another call, nobody is watching Zoho CRM, and the lead is first noticed at 11:30 when the rep checks the lead list. By then the prospect has contacted two competitors. Studies on lead response vary, but the basic reality in sales is that the first company to respond often wins the conversation.
Every five minutes, Zoho CRM is asked for leads modified since the last check, and only those created after it are kept. Each new lead is posted to Slack with name, company, source and a link to the record. Because it uses a modified-since header, the check is light even in a CRM with many leads.
Works best for small sales teams who handle inbound leads from forms.
What you get out of it
Faster first contact
A message within five minutes puts a rep on the phone while the prospect is still looking at your website. Speed is the cheapest conversion tool a small sales team has.
Whole team sees the lead
Posting to a shared channel means anyone free can claim the lead. A lead is not stuck waiting for one person who happens to be in a meeting, and the first free rep picks it up.
Source is visible right away
The alert shows the lead source, so a rep opens the call knowing the lead came from the pricing page or a trade show. The conversation starts with relevance, which prospects can hear.
No dependence on notification settings
Zoho CRM's own notifications depend on each user's settings and are easy to miss. A channel message is seen where the team already works, which makes it much harder to overlook.
After-hours leads are not forgotten
Leads arriving overnight are waiting in the channel at the start of the day. The first person in picks them up in order, and nothing is left unnoticed until someone refreshes a list.
A shared sense of pipeline pace
A steady stream of lead posts shows the team how much inbound is arriving. Quiet days and busy days are visible to everyone, not only to the manager. Managers can see response speed in the timestamps.
How it works
What happens, step by step
Every 5 minutes ClickRuntime checks Zoho CRM for leads created since its last check, so each lead is posted only once.
For each new lead it picks out the name, company and lead source.
Each one is posted to your #new-leads Slack channel.
Before it runs live
- Connect Zoho CRM
What you get
Build your own
Need it to work differently?
Your own rules
Conditions, thresholds, filters and exceptions, written the way you'd explain them to a colleague.
Any number of apps
One automation can read from one app and update several others. Over 248 apps are ready, and anything with an API works too.
AI where it helps
Summaries, classification, extraction and drafts use ClickRuntime's built-in AI, with no extra key.
On a schedule or on each event
Runs as often as every 5 minutes, or the moment an app sends an event, and keeps track of what it already handled.
Changes you can ask for
- Act only on the items that match your own rules, and skip the rest
- Add an AI step, for example to summarize, sort or draft a reply
- Add another app, for example also send it to Slack
- Combine it with other Zoho CRM steps into one automation
Under the hood
The code that runs this automation
from datetime import datetime, timezone
from clickruntime import on_trigger, credentials, http, state, notify, report_fetched
@on_trigger
def run(event):
since = state.get("since") or datetime.now(timezone.utc).isoformat(timespec="seconds")
r = http.get("https://www.zohoapis.com/crm/v8/Leads",
params={"fields": "Full_Name,Company,Lead_Source,Created_Time"},
headers={"Authorization": f"Zoho-oauthtoken {credentials.connection('zoho', 'work')}",
"If-Modified-Since": since})
leads = [l for l in (r.json()["data"] if r.status_code == 200 else []) if l["Created_Time"] > since]
report_fetched(len(leads))
if not leads:
return {"summary": "Nothing new"}
for l in leads:
notify.slack(f"New lead: {l['Full_Name']} ({l.get('Company') or '-'}) · {l.get('Lead_Source') or 'no source'}",
channel="#new-leads")
state.set("since", max(l["Created_Time"] for l in leads))
return {"posted": len(leads)}FAQ
Common questions
Will old leads that are edited be posted again?
Can I send leads from certain sources to other channels?
Is a five-minute delay too slow?
What permissions does it need?
Does it need AI?
How many runs does it use?
Can I change how it works?
Related
You might also like
Flag big sales orders as VIP
Sales orders over $5,000 get a VIP tag and you hear about them in Slack.
See how it worksShare won deals in Slack
When a deal moves to Closed Won, the team sees the name, amount and owner.
See how it worksDraft a follow-up email for each new lead
Every new lead gets a personalised follow-up draft saved as a note, ready to send.
See how it worksKeep exploring
Set up “Post new Zoho CRM leads to Slack” from your assistant
Copy the prompt above, or connect your assistant first. Free plan, no credit card.