Every 10 minutes
Tell people on WhatsApp or Telegram when a Notion item changes status
When an item in your Notion database changes status, the person responsible is messaged on their preferred app.
- Runs
- Every 10 minutes
- Apps
- Telegram, WhatsApp Business
- AI
- Not needed
- Access
- bot token; whatsapp_business_messaging
Send this to your assistant
Create a ClickRuntime automation: every 10 minutes, check my Notion Projects database for items whose status changed, and message the owner on WhatsApp or Telegram depending on their preference.
First time? Adding ClickRuntime to your assistant takes about two minutes.
Why use it
Why teams use this automation
Teams that track work in Notion often include freelancers, field staff or clients who never open Notion. When a task moves to Ready for review or Blocked, they only find out when someone remembers to tell them.
Messaging the responsible person on the app they actually use, as soon as the status changes, keeps everyone moving without asking outsiders to watch a Notion page.
What you get out of it
Status changes reach people
Owners hear about changes on their phone, not when they next check Notion.
Everyone on their own app
Some prefer WhatsApp, others Telegram. Each person is messaged where they read.
No manual chasing
Nobody has to send 'this is ready for you' messages.
Only real changes
People are messaged when the status actually changes, not on every edit.
How it works
What happens, step by step
Every 10 minutes it checks your Notion database for items edited since the last check.
Each item's status is compared with the one it saw before.
If the status changed, the owner is messaged on WhatsApp or Telegram, whichever they prefer.
The new status is remembered so the same change isn't sent twice.
Before it runs live
- Connect Telegram
- Connect WhatsApp Business
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 Telegram and WhatsApp Business steps into one automation
Under the hood
The code that runs this automation
from clickruntime import on_trigger, credentials, http, state, report_fetched
DB = "your-database-id"
PEOPLE = {"Sam": ("wa", "447700900111"), "Jo": ("tg", 123456789)}
WA = "https://graph.facebook.com/v20.0/your-phone-number-id/messages"
def wa_template(to, name, params):
body = {"messaging_product": "whatsapp", "to": to, "type": "template", "template": {"name": name, "language": {"code": "en"},
"components": [{"type": "body", "parameters": [{"type": "text", "text": str(p)} for p in params]}]}}
return http.post(WA, headers={"Authorization": f"Bearer {credentials.secret('WHATSAPP_TOKEN')}"}, json=body).json()
TG = "https://api.telegram.org"
def tg(chat_id, text):
http.post(f"{TG}/bot{credentials.secret('TELEGRAM_BOT_TOKEN')}/sendMessage", json={"chat_id": chat_id, "text": text})
@on_trigger
def run(event):
h = {"Authorization": f"Bearer {credentials.secret('NOTION_TOKEN')}", "Notion-Version": "2022-06-28"}
since = state.get("since") or "2026-01-01T00:00:00Z"
pages = http.post(f"https://api.notion.com/v1/databases/{DB}/query", headers=h, json={"filter": {"timestamp": "last_edited_time",
"last_edited_time": {"after": since}}}).json()["results"]
known = state.get("status") or {}
changed = [p for p in pages if (p["properties"]["Status"]["status"] or {}).get("name") != known.get(p["id"])]
report_fetched(len(changed))
if not changed:
return {"summary": "No status changes"}
for p in changed:
props = p["properties"]
status, title = props["Status"]["status"]["name"], "".join(t["plain_text"] for t in props["Name"]["title"]) or "Untitled"
app, to = PEOPLE.get((props["Owner"]["select"] or {}).get("name"), (None, None))
if app == "wa": wa_template(to, "status_update", [title, status])
elif app == "tg": tg(to, f"📌 {title} is now {status}")
known[p["id"]] = status
state.set("status", known); state.set("since", max(p["last_edited_time"] for p in pages))
return {"changed": len(changed)}FAQ
Common questions
How does it know who to message?
Which statuses trigger a message?
Does it change anything in Notion?
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
Send error alerts to WhatsApp and Telegram
When a job fails, you get an alert on both WhatsApp and Telegram, with repeats held back.
See how it worksGet new sales on Telegram and WhatsApp
Every new sale or order pings you on both Telegram and WhatsApp with the amount and what was bought.
See how it worksSend birthday wishes and payment links on each person's preferred app
Each day, contacts due a message get a personal note on WhatsApp or Telegram, whichever they prefer, and every send is logged.
See how it worksKeep exploring
Set up “Tell people on WhatsApp or Telegram when a Notion item changes status” from your assistant
Copy the prompt above, or connect your assistant first. Free plan, no credit card.