⚙️ Automated website uptime monitor with email alerts & GitHub status page update

635 views · ⚙️ DevOps & CI/CD

💡 Pro Tip — If you need GitHub data beyond what the REST API gives you, ScraperNode has a repository scraper that extracts metadata at scale without token rate limits.

View All Scrapers

Description

🖥️ Automated Website Uptime Monitor with Email Alerts & GitHub Status Page Update

This n8n workflow continuously monitors your website’s availability, sends email alerts when the server goes down, and automatically updates a status page (index.html) in your GitHub repository to reflect the live status.


📌 Good to Know

ℹ️ What is GitHub Pages?

⚡ How to Set Up GitHub Pages for Your Status Page

  1. Create a new repository on GitHub (recommended name: status).
  2. Add a blank index.html file (n8n workflow will later update this file).
  3. Go to your repository → SettingsPages.
  4. Under Source, select the branch (main or master) and folder (/root).
  5. Save changes.
  6. Your status page will now be live at: https://<USERNAME>.github.io/status

✅ Prerequisites


⚙️ How it Works

  1. Schedule Trigger → Runs every 2 minutes.
  2. HTTP Request → Pings your website URL.
  3. Switch Node → Evaluates the response status (200 OK vs error/503).
  4. Code Node → Generates a dynamic HTML status page (Up/Down).
  5. GitHub Repo & File → Github Repo Name Should be https://github.com/<OWNER_NAME>/status (recommended) & Must have(required) a blank file named as index.html before triggering this flow.
  6. GitHub Node → Updates/commits the index.html file in your repository.
  7. Gmail Node → Sends an email alert if the site is down.

🚀 How to Use

  1. Import the workflow JSON into your n8n instance.
  2. Configure credentials for:
    • GitHub (Personal Access Token with repo permissions).
    • Gmail (or your preferred email service).
  3. Replace the following:
    • https://app.yourdomain.com/health → with your own website URL.
    • example@gmail.com → with your email address (or distribution list).
    • GitHub repo details → with your repository where index.html will live.
  4. Deploy the workflow.
  5. (Optional) Enable GitHub Pages on your repo to serve index.html as a live status page.

🛠 Requirements


🎨 Customising this Workflow


👤 Who Can Use It?


🌟 Key Features


🔗 Tools Integration


📈 Example Use Cases

🔗 Nodes Used

GitHub, HTTP Request, Gmail, Schedule Trigger, Extract from File

📥 Import

Download workflow.json and import into n8n: Workflow menu → Import from File

📖 Importing guide · 🔑 Credential setup