Problem Statement
- Most SaaS vendors publish their outages on a Statuspage site (githubstatus.com and so on).
- cognee has no connector for these. I searched cognee and cognee-community for "statuspage" and "status page" and found nothing.
- Today you can only read this history one page at a time in the browser.
Proposed Solution
I want to add a statuspage connector at packages/connector/statuspage/ in cognee-community, laid out like the Notion connector.
- Auth: none. Public status pages expose
/api/v2/*.json without a key. The user gives a list of page URLs.
- What gets ingested:
- incidents from
incidents.json: name, impact, status, start and resolve time, affected components
- each incident's update timeline as the document text
- scheduled maintenances from
scheduled-maintenances.json, off by default
- Incremental sync: use the incident
updated_at as the cursor, saved in dlt state. Rows merge on incident id.
- Deletes: if an incident is gone from the page, mark it
_deleted so it leaves the graph.
Things to watch out for
- The public feed only returns recent incidents (I got 50 from one page), so the first sync is not full history. I'll say this in the README.
- Paging is by
page. I'll keep request rate low when many pages are configured.
- Impact and status values differ per page, so I'll keep the raw strings.
Use Case
- Someone on call asks "has this provider had a database connectivity problem before, and how long did it last?"
- They get an answer built from past incidents, their update timelines and the affected components across several vendors.
Acceptance Criteria
Additional Context
- Easy to test, no account or cost:
https://www.githubstatus.com/api/v2/incidents.json works as is.
- Opened for Mergetober. I'd like to build it.
Problem Statement
Proposed Solution
I want to add a
statuspageconnector atpackages/connector/statuspage/in cognee-community, laid out like the Notion connector./api/v2/*.jsonwithout a key. The user gives a list of page URLs.incidents.json: name, impact, status, start and resolve time, affected componentsscheduled-maintenances.json, off by defaultupdated_atas the cursor, saved in dlt state. Rows merge on incident id._deletedso it leaves the graph.Things to watch out for
page. I'll keep request rate low when many pages are configured.Use Case
Acceptance Criteria
examples/Additional Context
https://www.githubstatus.com/api/v2/incidents.jsonworks as is.