Daily
Get a daily Telegram news digest on your own topics
Each morning a short summary of the news on the topics in your sheet arrives in Telegram, and every digest is logged.
- Runs
- Daily
- Apps
- Google Sheets, Telegram
- AI
- Yes, uses the built-in AI allowance
- Access
- Sheets read+write; Telegram bot token
Send this to your assistant
Create a ClickRuntime automation: every day at 8am, fetch news for each topic in my Topics sheet, summarise the top stories and send me the digest on Telegram. Log what was sent in the sheet.
First time? Adding ClickRuntime to your assistant takes about two minutes.
Why use it
Why teams use this automation
A founder of a small logistics software company needs to keep up with freight rates, a couple of competitors' markets and new regulation. Checking several news sites each morning eats half an hour, and on busy days it does not happen at all, so important stories are found a week late.
A digest built from a list of topics in a sheet gives one short read in Telegram before the day starts. Founders, analysts, consultants and account managers who follow a client's industry use it to stay informed without opening a dozen tabs.
What you get out of it
One short read instead of many sites
The top stories for each topic are pulled together and summarised in a few lines. You get the gist in a couple of minutes and open the full article only when it matters.
Topics you control from a sheet
Adding a client, a product or a regulation to follow means adding a row. Removing a topic that no longer matters is just as quick, so the digest stays relevant.
Arrives where you already look
Telegram is on your phone, so the digest is read over breakfast or on the commute. It does not sit unopened in a crowded inbox.
A record of what you were told
Each digest is logged in the sheet with its date and topics. When you need to find a story from last month, you can search the log instead of trying to remember where you saw it.
How it works
What happens, step by step
Every day at 8am, ClickRuntime reads your list of topics from the Topics sheet.
It collects the latest headlines and links for each topic from public news feeds.
AI writes a short digest of the most important stories, grouped by topic.
The digest is sent to you on Telegram, and a row with the date and topics is added to the Log tab.
Before it runs live
- Connect your Google Sheets account and pick the spreadsheets it may use
- Connect Telegram
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
- Change what the AI looks for, or how it writes the result
- Add another app, for example also send it to Slack
- Combine it with other Google Sheets and Telegram steps into one automation
Under the hood
The code that runs this automation
from datetime import date
from urllib.parse import quote
import feedparser
from google.oauth2.credentials import Credentials
from googleapiclient.discovery import build
from clickruntime import on_trigger, credentials, http, ai, log
SHEET_ID, CHAT_ID = "your-spreadsheet-id", "your-chat-id"
@on_trigger
def run(event):
values = build("sheets", "v4", credentials=Credentials(credentials.connection("google", "work")),
cache_discovery=False).spreadsheets().values()
topics = [r[0] for r in values.get(spreadsheetId=SHEET_ID, range="Topics!A2:A").execute().get("values", []) if r]
lines = []
for t in topics:
feed = feedparser.parse(http.get(f"https://news.google.com/rss/search?q={quote(t)}").content)
lines += [f"[{t}] {e.title} {e.link}" for e in feed.entries[:4]]
try:
digest = ai.generate("Write a short news digest grouped by topic, one line per story, keep links:\n" + "\n".join(lines),
max_output_tokens=900).text
except ai.AIError as e:
log.warning("AI unavailable, sending headlines", {"code": e.code})
digest = "\n".join(lines)
http.post(f"https://api.telegram.org/bot{credentials.secret('TELEGRAM_BOT_TOKEN')}/sendMessage",
json={"chat_id": CHAT_ID, "text": digest[:4000]})
values.append(spreadsheetId=SHEET_ID, range="Log!A:C", valueInputOption="RAW",
body={"values": [[date.today().isoformat(), ", ".join(topics), len(lines)]]}).execute()
return {"topics": len(topics), "stories": len(lines)}
FAQ
Common questions
Where does the news come from?
How many stories are included per topic?
Does it link to the original articles?
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 a daily vocabulary quiz from your sheet on Telegram
Every evening your Telegram bot quizzes you on five words from your sheet, checks your answers and records your score next to each word.
See how it worksGet matching job posts on Telegram and log them in a sheet
Each morning, new job posts from your feeds are scored against your profile, good matches are added to your Jobs sheet and the best ones arrive on Telegram.
See how it worksSend a weekly Telegram message to every chat in a sheet
Write your announcement once in a sheet and every Telegram chat on your list gets it on Monday morning, with each one marked as sent.
See how it worksKeep exploring
Set up “Get a daily Telegram news digest on your own topics” from your assistant
Copy the prompt above, or connect your assistant first. Free plan, no credit card.