Canada ER Closures API

Live emergency-room status as JSON — closures, reopenings, disruptions and per-province coverage across Canada. Every request needs a free API key. Free for non-commercial use with attribution; commercial use and history are available under a license.

1. Get your free key

API keys are free and tied to your ERstat account. Create and manage them there — it takes a minute.

Get a free API key →

2. Authenticate every request

Send your key on every request — as an X-API-Key header (preferred) or a ?key= query parameter. Requests without a valid key are rejected with 401.

curl -H "X-API-Key: YOUR_KEY" https://erstat.ca/api/v1/closures

Free tier covers non-commercial use with attribution (a visible link back to erstat.ca). The widget embed is separate and needs no key — see /embed.

3. Endpoints

EndpointReturnsKey
GET /api/v1/closuresCurrent ER closures & disruptions. ?province=ON to filter.Free key
GET /api/v1/coveragePer-province ER counts and how many publish a live wait.Free key
GET /api/v1/historyHistorical & bulk data.Commercial

Need history/bulk, an uptime SLA, higher limits or webhooks — or building a commercial product? See data licensing.

Sample response

GET /api/v1/closures?province=NS returns current closures and disruptions as JSON:

{
  "version": "v1",
  "generated_at": "2026-06-08T14:32:00Z",
  "attribution": "Data from ERstat (https://erstat.ca). Free for non-commercial use with attribution.",
  "count": 1,
  "closures": [
    {
      "id": 1042,
      "name": "Roseway Hospital",
      "city": "Shelburne",
      "province": "NS",
      "status": "closed",
      "message": "ER closed until 8:00 a.m. due to physician unavailability.",
      "updated_at": "2026-06-08T02:05:00Z",
      "expected_reopen": "2026-06-08T12:00:00Z"
    }
  ]
}

status is closed or disruption. expected_reopen may be null when an end time is unknown. Responses are cached at the edge for about 60 seconds; rate limits apply on the free tier.

Frequently asked questions

Is there a Canadian ER closures API?

Yes. The ERstat API returns live emergency-room closures, reopenings and service disruptions across Canada as JSON, plus per-province coverage. Every request needs a free API key tied to your ERstat account.

Is the ERstat API free?

Yes — the JSON API and RSS feed are free for personal, journalistic, academic and other non-commercial use, with attribution (a visible link back to erstat.ca). Commercial use, history and bulk export are available under a paid licence.

How do I authenticate?

Send your key on every request as an X-API-Key header (preferred) or a ?key= query parameter. Requests without a valid key are rejected with HTTP 401.

Is there a rate limit?

Yes, the free tier is rate-limited and provided as-is with no SLA. Higher limits, an uptime SLA and webhooks/push delivery are part of a commercial licence.

Can I use the data commercially?

Not on the free tier. A commercial licence grants commercial-use rights along with historical and bulk data, higher limits, an SLA and support. See the licensing page or get in touch.

Do you have historical or bulk data?

Yes — historical and bulk export are available via the /api/v1/history endpoint under a commercial licence.

Is there a no-code option?

Yes — a free embeddable widget shows live ER status for Canada or a single province with one line of HTML. It needs no key and includes attribution automatically.