Every 5 minutes
Get Telegram alerts when a site in your sheet goes down
Every site in your sheet is checked every 5 minutes, its status is kept up to date, and you get a Telegram message when one goes down or recovers.
- Runs
- Every 5 minutes
- Apps
- Google Sheets, Telegram
- AI
- Not needed
- Access
- Sheets read+write; Telegram bot token
Send this to your assistant
Create a ClickRuntime automation: every 5 minutes, check each URL in my Sites sheet, update its status column, and send me a Telegram message when one goes down or recovers.
First time? Adding ClickRuntime to your assistant takes about two minutes.
Why use it
Why teams use this automation
An agency owner looks after the websites of a handful of clients while working mostly from a phone. Email alerts get buried and dashboards need a laptop. When a client's shop goes offline on a Saturday, the first sign is often an annoyed message on Monday.
This automation checks each URL in your sheet every 5 minutes, writes the current status next to it, and sends a Telegram message the moment a site goes down and again when it comes back. The sheet becomes a live status board that anyone on the team can open.
What you get out of it
Alerts where you already look
A Telegram message reaches your phone instantly, with sound if you want it. You do not need to be at a desk or check an inbox to know a site is down.
A status board in your sheet
The status column shows up or down for every site at a glance. Clients or colleagues with view access can check it without asking you.
One message per change, not per check
You hear once when a site fails and once when it recovers. A long outage does not flood your chat with the same alert every 5 minutes.
Adding a site takes one row
Type a new URL into the sheet and it is checked from the next run. There is nothing else to configure and no per-site charge.
How it works
What happens, step by step
Every 5 minutes, ClickRuntime reads the list of websites from your Sites sheet.
It visits each one and checks whether it responds normally.
It writes up or down next to each site, so the sheet always shows the current status.
When a site's status changes, you get a Telegram message saying it went down or is back up.
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
- 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 Google Sheets and Telegram steps into one automation
Under the hood
The code that runs this automation
from google.oauth2.credentials import Credentials
from googleapiclient.discovery import build
from clickruntime import on_trigger, credentials, http, state
SHEET_ID = "your-spreadsheet-id"
CHAT_ID = "your-telegram-chat-id"
@on_trigger
def run(event):
sheets = build("sheets", "v4", credentials=Credentials(credentials.connection("google", "work")), cache_discovery=False).spreadsheets()
urls = [r[0] for r in sheets.values().get(spreadsheetId=SHEET_ID, range="Sites!A2:A").execute().get("values", []) if r]
status, column, changes = state.get("status") or {}, [], 0
for url in urls:
try:
up = http.get(url, timeout=10).status_code < 500
except Exception:
up = False
if url in status and status[url] != up:
token = credentials.secret("TELEGRAM_BOT_TOKEN")
http.post(f"https://api.telegram.org/bot{token}/sendMessage",
json={"chat_id": CHAT_ID, "text": f"{'✅ Back up' if up else '🔴 DOWN'}: {url}"})
changes += 1
status[url] = up
column.append(["up" if up else "down"])
sheets.values().update(spreadsheetId=SHEET_ID, range=f"Sites!B2:B{len(urls) + 1}", valueInputOption="RAW", body={"values": column}).execute()
state.set("status", status)
return {"checked": len(urls), "changes": changes}FAQ
Common questions
Can alerts go to a group chat instead of just me?
What does it treat as down?
Will a short blip wake me up at night?
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 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 worksTrack competitor prices from a sheet
List competitor product pages in a sheet and get a Telegram message whenever one of their prices changes, with the latest price recorded in the sheet.
See how it worksGet Telegram warnings before SSL certificates expire
Each day the domains in your sheet are checked, the days left on each certificate are written next to them, and you get a Telegram message for any under 14 days.
See how it worksKeep exploring
Set up “Get Telegram alerts when a site in your sheet goes down” from your assistant
Copy the prompt above, or connect your assistant first. Free plan, no credit card.