Weekly
Get a weekly CSV of all your leads
Every Monday you get every Zoho CRM lead in a spreadsheet, with status and source.
- Runs
- Weekly
- Apps
- Zoho CRM
- AI
- Not needed
- Access
- ZohoCRM.modules.leads.READ
Send this to your assistant
Create a ClickRuntime automation: every Monday at 7am, email me all Zoho CRM leads as a CSV with name, company, email, status and lead source.
First time? Adding ClickRuntime to your assistant takes about two minutes.
Why use it
Why teams use this automation
Marketing wants to run a list through an email tool, finance wants to reconcile lead sources against ad spend, and an advisor asks for a copy of the database before a due diligence review. Each time, someone logs into Zoho CRM, builds a view, exports a file and mails it around, and the CRM's export is capped and sometimes asks for admin rights. Backups of lead data are rarely taken, so a bad import or a deleted view could lose years of contacts.
Each week, every lead in Zoho CRM is read page by page, because the API returns a limited number of records per request. The pages are combined into CSV text with the main fields, and an email delivers it to you. The same file serves as a safety copy and as a ready input for other tools.
Handy for small teams without a data warehouse and for anyone who has been asked for a lead list one too many times.
What you get out of it
A weekly backup of lead data
If a mass update goes wrong, last week's file shows what the records looked like. Rolling back by hand becomes possible, which is better than discovering that nobody has a copy.
Lists ready for other tools
The CSV opens in a spreadsheet or imports into an email platform. You skip the export dialogs each time someone asks for a list, and the answer to a request is a file already in your inbox.
No admin hand-holding
The export runs on a schedule and arrives by email, so people who lack export permissions still get what they need. Nobody has to wait for an admin to find time between other jobs.
Due diligence and audit readiness
When an investor, auditor or acquirer asks for lead records, you have recent files on hand. Requests are answered the same day and nobody scrambles through a CRM to build a list.
Trends from snapshots
Comparing two weekly files shows how many leads were added, changed or removed. That is a cheap way to see growth without building a report in the CRM. Spot-checks take minutes.
Protection from accidental deletion
A deleted view or a mistaken bulk delete can lose years of contacts. A copy stored in your mailbox means the worst case is a week of lost changes. The file is ready whenever you need it.
How it works
What happens, step by step
Every Monday ClickRuntime goes through every lead in your Zoho CRM, page by page.
For each lead it takes the name, company, email, lead status and lead source.
You get an email with all of them as CSV text, ready to paste into a spreadsheet, with the total in the subject line.
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
- Run it at a different time, more or less often, or only on weekdays
- 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 clickruntime import on_trigger, credentials, http, notify
FIELDS = ["Full_Name", "Company", "Email", "Lead_Status", "Lead_Source"]
@on_trigger
def run(event):
h = {"Authorization": f"Zoho-oauthtoken {credentials.connection('zoho', 'work')}"}
rows, token = [",".join(FIELDS)], None
while True:
params = {"fields": ",".join(FIELDS), "per_page": 200, **({"page_token": token} if token else {})}
r = http.get("https://www.zohoapis.com/crm/v8/Leads", params=params, headers=h)
if r.status_code == 204:
break
body = r.json()
rows += [",".join(str(l.get(f) or "").replace(",", " ") for f in FIELDS) for l in body["data"]]
token = body["info"].get("next_page_token")
if not body["info"]["more_records"]:
break
notify.email_me(f"Zoho CRM leads ({len(rows) - 1})", "\n".join(rows))
return {"leads": len(rows) - 1}FAQ
Common questions
Is there a limit on how many leads are exported?
Which lead fields are in the file?
Is the file secure?
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
Get yesterday's new leads by source
One morning email listing yesterday's leads, grouped by where they came from.
See how it worksSee overdue CRM tasks by owner
Each weekday morning you get open tasks past their due date, grouped by who owns them.
See how it worksFind leads with missing details or duplicates
A weekly email of leads missing an email, phone or source, plus likely duplicates.
See how it worksKeep exploring
Set up “Get a weekly CSV of all your leads” from your assistant
Copy the prompt above, or connect your assistant first. Free plan, no credit card.