GitHub Status History Scraper avatar

GitHub Status History Scraper

Pricing

from $11.00 / 1,000 result items

Go to Apify Store
GitHub Status History Scraper

GitHub Status History Scraper

Export GitHub status, incidents, scheduled maintenances, and components from the public status page. Track Git, Actions, Pages, API, Codespaces uptime and incident history. Filter by component or date.

Pricing

from $11.00 / 1,000 result items

Rating

0.0

(0)

Developer

ParseForge

ParseForge

Maintained by Community

Actor stats

0

Bookmarked

2

Total users

1

Monthly active users

2 days ago

Last modified

Share

ParseForge Banner

🐙 GitHub Status History Scraper

🚀 Export GitHub uptime and incident history in seconds. Pull live status, recent incidents, unresolved outages, scheduled maintenance, and component health across Git Operations, Actions, Pages, Packages, Webhooks, Issues, Codespaces, and more. No login, no manual page scrolling.

🕒 Last updated: 2026-05-22 · 📊 19 fields per record · 🐙 19 monitored components · 🚨 5 query modes · 🌐 statuspage.io feed

The GitHub Status History Scraper exports the live status page and returns 19 fields per record, including record type, incident name, severity impact, current status, monitoring and resolution timestamps, affected components, latest update text, update counts, and a permalink shortlink to the incident page. The underlying source is the official GitHub status feed powered by Statuspage.io and used by GitHub's own SRE team.

The dataset covers 19 monitored components (Git Operations, Actions, Packages, Pages, Webhooks, API Requests, Issues, Pull Requests, Codespaces, Copilot, GitHub Mobile, and more), the recent incident archive, unresolved incidents, and upcoming scheduled maintenance windows. This Actor turns that history into a downloadable dataset as CSV, Excel, JSON, or XML in under five minutes.

🎯 Target Audience💡 Primary Use Cases
DevOps teams, SRE engineers, monitoring vendors, on-call leads, CI/CD platform owners, status-dashboard buildersUptime dashboards, on-call paging, incident postmortems, vendor SLA tracking, multi-cloud status walls, deploy-window planning

📋 What the GitHub Status Scraper does

Five query workflows in a single run:

  • 🚦 Overall summary. Current top-level status plus any open incidents.
  • 🚨 All recent incidents. The full archive of recent outages and degradations.
  • 🔧 Unresolved incidents. Only the incidents that are still active.
  • 📅 Scheduled maintenances. Planned maintenance windows ahead of time.
  • 🧩 Components list. Every monitored component with its current health.

Each record bundles type (incident, maintenance, component, summary), severity impact, lifecycle timestamps (created, updated, monitoring, resolved), affected component names and IDs, the latest status update text, and a direct shortlink to the incident on the status page.

💡 Why it matters: GitHub outages cascade into every team's CI pipeline, code review queue, and production deploy. Knowing about a degradation 30 seconds before the support tickets land is the difference between a calm rollback and a fire drill.


🎬 Full Demo

🚧 Coming soon: a 3-minute walkthrough showing how to go from sign-up to a downloaded dataset.


⚙️ Input

InputTypeDefaultBehavior
maxItemsinteger10Records to return. Free plan caps at 10, paid plan at 1,000,000.
modeenum"incidents"Which slice to export: summary, incidents, unresolved, scheduled, or components.
sincestring""Optional ISO date floor. Only incidents created on or after this date.
componentFilterstring""Optional substring match against component names like Actions or API Requests.

Example: recent Actions incidents from January 2026 onward.

{
"maxItems": 50,
"mode": "incidents",
"since": "2026-01-01",
"componentFilter": "Actions"
}

Example: all currently monitored components and their state.

{
"maxItems": 20,
"mode": "components"
}

⚠️ Good to Know: the status feed is updated by GitHub's SRE team in near-real-time but may lag actual user-visible impact by 30 to 60 seconds. For mission-critical alerting, combine with a synthetic monitoring layer that exercises the workflows you actually care about.


📊 Output

Each record contains 19 fields. Download the dataset as CSV, Excel, JSON, or XML.

🧾 Schema

FieldTypeExample
🏷️ recordTypestring"incident"
🆔 idstring"a1b2c3d4e5f6"
📝 namestring"Incident with Actions"
🚦 statusstring"resolved"
⚠️ impactstring"minor"
🚨 incidentImpactstring"minor"
👀 monitoringAtISO 8601"2026-05-20T14:22:00.000Z"
resolvedAtISO 8601 | null"2026-05-20T14:48:00.000Z"
📅 scheduledForISO 8601 | nullnull
📅 scheduledUntilISO 8601 | nullnull
📅 scheduledStatusstring | nullnull
🕒 createdAtISO 8601"2026-05-20T14:10:00.000Z"
🕒 updatedAtISO 8601"2026-05-20T14:48:00.000Z"
🔗 shortlinkstring"https://stspg.io/abc123"
🧩 affectedComponentsarray["Actions", "Webhooks"]
🆔 componentIdsarray["br0l2tvcx85d", "4230lsnqdsld"]
💬 latestUpdatestring"This incident has been resolved."
🔢 updatesCountnumber4
🕒 scrapedAtISO 8601"2026-05-22T00:00:00.000Z"
⚠️ errorstring | nullnull

📦 Sample records


✨ Why choose this Actor

Capability
🚦Five query modes. Summary, incidents, unresolved, scheduled maintenance, and components, all from one Actor.
🧩Component-level granularity. Filter by Actions, Pages, API Requests, Codespaces, Copilot, or any of the 19 monitored components.
📅Lifecycle timestamps. Created, updated, monitoring, and resolved times let you compute mean-time-to-resolve.
🔁Always fresh. Every run reads the live status feed so unresolved incidents update in near real time.
🔗Permalink shortlinks. Direct deep links into the official incident page for embedded dashboards.
📊Multi-cloud ready. Combine with other status scrapers to power a unified status wall for your stack.
🚫No authentication. Public status feed. No login or token.

📊 GitHub powers most of the world's source control, CI pipelines, and developer collaboration. Knowing its health is the foundation of every modern engineering dashboard.


📈 How it compares to alternatives

ApproachCostCoverageRefreshFiltersSetup
⭐ GitHub Status Scraper (this Actor)$5 free credit, then pay-per-useAll components + incidentsLive per runmode, date, component⚡ 2 min
RSS subscriptionFreeRecent incidentsPull-drivenNone🐢 Minutes
Statuspage.io paid integration$79+/monthOne vendor at a timeWebhookFew⏳ Hours
Hand-built scraperFreeWhatever you parseWhatever you cronNone🕒 Days

Pick this Actor when you want clean structured records, component filtering, and a dataset you can hand straight to your monitoring stack.


🚀 How to use

  1. 📝 Sign up. Create a free account with $5 credit (takes 2 minutes).
  2. 🌐 Open the Actor. Go to the GitHub Status History Scraper page on the Apify Store.
  3. 🎯 Set input. Pick a mode (incidents, components, scheduled), and add optional date or component filters.
  4. 🚀 Run it. Click Start and let the Actor collect your dataset.
  5. 📥 Download. Grab results in the Dataset tab as CSV, Excel, JSON, or XML.

⏱️ Total time from signup to downloaded dataset: 3-5 minutes. No coding required.


💼 Business use cases

🚨 SRE & On-Call

  • Mirror live incident state into PagerDuty
  • Auto-page on-call when CI-critical components degrade
  • Compute MTTR and incident frequency by component
  • Build internal status walls for engineering floors

📊 Engineering Dashboards

  • Embed live GitHub health into team dashboards
  • Combine with AWS, Cloudflare, npm status for a unified view
  • Surface upcoming maintenance to plan deploy windows
  • Track open incidents next to your own service SLOs

📝 Postmortems & Reporting

  • Pull resolved-incident timelines into postmortem templates
  • Reconstruct outage windows for SLA reporting
  • Annotate your own incidents with upstream root causes
  • Generate monthly vendor-health reports

🔌 Monitoring Vendors

  • Ingest GitHub health into Datadog, Grafana, New Relic
  • Power a customer-facing status integration
  • Enrich uptime data with incident severity context
  • Sell vendor-status add-ons in your monitoring suite

🔌 Automating GitHub Status Scraper

Control the scraper programmatically for scheduled runs and pipeline integrations:

  • 🟢 Node.js. Install the apify-client NPM package.
  • 🐍 Python. Use the apify-client PyPI package.
  • 📚 See the Apify API documentation for full details.

The Apify Schedules feature lets you trigger this Actor on any cron interval. Run every 60 seconds to track unresolved incidents, or daily to feed monthly vendor-health reports.


🌟 Beyond business use cases

Status data powers more than commercial workflows. The same records support research, education, civic projects, and personal initiatives.

🎓 Research and academia

  • Reliability engineering case studies
  • Distributed-systems coursework with real outage data
  • Reproducible incident analyses with versioned dataset pulls
  • Open-data exercises on platform availability

🎨 Personal and creative

  • Hobby uptime dashboards on a Raspberry Pi
  • Side projects on incident-pattern visualization
  • Personal Slack bots that announce GitHub outages
  • Curated newsletters on major dev-platform incidents

🤝 Non-profit and civic

  • Open-source maintainer dashboards for OSS communities
  • Civic transparency around infrastructure availability
  • Investigative journalism on platform reliability
  • Public-good incident archives for ecosystem research

🧪 Experimentation

  • Train anomaly-detection or incident-clustering models
  • Validate alerting hypotheses with historical incidents
  • Prototype agent pipelines that triage status changes
  • Stress-test dashboard layouts with real data

🤖 Ask an AI assistant about this scraper

Open a ready-to-send prompt about this ParseForge actor in the AI of your choice:


❓ Frequently Asked Questions

🧩 How does it work?

Pick a query mode, add optional date or component filters, click Start, and the Actor reads the live GitHub status feed and emits structured records. No browser automation, no captchas, no setup.

📏 How fresh is the data?

The status feed is maintained by GitHub's SRE team in near-real-time and typically lags actual user-visible impact by 30 to 60 seconds. Every run of this Actor reads the current feed at fetch time.

🚨 What counts as an incident?

Anything GitHub publishes on the status page, from full outages to minor service degradations. The impact field tells you the severity tier: none, minor, major, critical, or maintenance.

🧩 How many components are tracked?

GitHub currently exposes 19 monitored components, including Git Operations, Actions, Packages, Pages, Webhooks, API Requests, Issues, Pull Requests, Codespaces, Copilot, and GitHub Mobile.

⏰ Can I run this every minute?

Yes. Use Apify Schedules with a one-minute cron expression to keep an unresolved-incidents stream flowing into your monitoring stack.

🔁 Can I scrape historical incidents?

Yes. The since filter lets you backfill from any ISO date. The recent-incidents archive holds several months of history at any given time.

📊 Does it include the per-update timeline of an incident?

Each record exposes the latest update text and the total update count. To pull every update body, run with mode incidents and follow the shortlink for the human-readable history.

💼 Can I use this data commercially?

Yes. The status feed is published openly. Review GitHub's terms of service for your specific use case before embedding the data in a paid product.

💳 Do I need a paid Apify plan to use this Actor?

No. The free Apify plan is enough for testing and small pulls (10 records per run). A paid plan lifts the limit and gives you access to scheduling, higher concurrency, and larger datasets.

🔁 What happens if a run fails or gets interrupted?

Apify automatically retries transient errors. If a run still fails, inspect the log in the Runs tab, fix the input, and re-run. Partial datasets from failed runs are preserved so you never lose progress.

🆘 What if I need help?

Our support team is here to help. Contact us through the Apify platform or use the Tally form linked below.


🔌 Integrate with any app

GitHub Status History Scraper connects to any cloud service via Apify integrations:

  • Make - Automate multi-step workflows
  • Zapier - Connect with 5,000+ apps
  • Slack - Get incident notifications in your channels
  • Airbyte - Pipe status records into your warehouse
  • GitHub - Trigger runs from commits and releases
  • Google Drive - Export datasets straight to Sheets

You can also use webhooks to trigger downstream actions when a run finishes. Page on-call when an unresolved incident appears, or update a status wall in Slack.


💡 Pro Tip: browse the complete ParseForge collection for more developer-tools scrapers.


🆘 Need Help? Open our contact form to request a new scraper, propose a custom data project, or report an issue.


⚠️ Disclaimer: this Actor is an independent tool and is not affiliated with, endorsed by, or sponsored by GitHub, Microsoft, or Statuspage.io. All trademarks mentioned are the property of their respective owners. Only publicly available status data is collected.