Unified Utility Outage API

Track active outages, scheduled maintenance, and service disruptions across South African utility providers. Covers electricity, water, and gas with data sourced from Eskom, municipal utilities, and water providers.

Live

Base URL

https://api.crimate.net/v1/utility

Authentication

Include your Utility API key in the Authorization header.

curl -H "Authorization: Bearer db_utility_live_YOUR_KEY" \
     https://api.crimate.net/v1/utility/outages/active

Endpoints

GET/v1/utility/outages

List utility outages with optional filters by provider, type, and area

Parameters: provider, type (electricity/water/gas), area, status (active/resolved/scheduled), from (YYYY-MM-DD), to (YYYY-MM-DD), page, per_page

Example

GET /v1/utility/outages?provider=eskom&type=electricity&status=active
GET/v1/utility/outages/{outageCode}

Get detailed information for a specific outage by its code

Parameters: outageCode (required, path)

Example

GET /v1/utility/outages/ESK-GP-2026-03421
GET/v1/utility/outages/active

Get all currently active outages, optionally filtered by area or provider

Parameters: provider, type, area, lat, lon, radius_km

Example

GET /v1/utility/outages/active?area=cape_town
GET/v1/utility/schedules

Scheduled maintenance and planned outages for upcoming periods

Parameters: provider, area, from (YYYY-MM-DD), to (YYYY-MM-DD), page, per_page

Example

GET /v1/utility/schedules?provider=eskom&from=2026-03-08&to=2026-03-15
GET/v1/utility/providers

List all utility providers with service area and type information

Parameters: type (electricity/water/gas), province

Example

GET /v1/utility/providers?type=electricity&province=gauteng
GET/v1/utility/areas

List all service areas with active provider and outage counts

Parameters: province, provider

Example

GET /v1/utility/areas?province=western_cape
GET/v1/utility/stats

Dataset statistics (total outages, providers, areas, latest update)

Parameters: None

Example

GET /v1/utility/stats

Response Examples

Active outages response:

{
  "outages": [
    {
      "outage_code": "ESK-GP-2026-03421",
      "provider": "Eskom",
      "type": "electricity",
      "area": "Sandton, Johannesburg",
      "province": "gauteng",
      "status": "active",
      "start_time": "2026-03-08T06:30:00Z",
      "estimated_restore": "2026-03-08T14:00:00Z",
      "affected_customers": 12500,
      "cause": "Cable fault",
      "description": "Unplanned outage affecting Sandton CBD and surrounding areas due to underground cable fault."
    },
    {
      "outage_code": "CCT-WC-2026-00891",
      "provider": "City of Cape Town",
      "type": "water",
      "area": "Camps Bay, Cape Town",
      "province": "western_cape",
      "status": "active",
      "start_time": "2026-03-08T08:00:00Z",
      "estimated_restore": "2026-03-08T18:00:00Z",
      "affected_customers": 3200,
      "cause": "Pipe burst",
      "description": "Water supply disruption due to burst main pipe on Victoria Road."
    }
  ]
}

Try It

Enter your Utility API key to make a live request. Generate a key in the dashboard.

Try It

Make a live API call from your browser

GET
curl -H "Authorization: Bearer db_utility_live_YOUR_KEY" \
     "https://crimate.net/v1/utility/stats"

Data Sources

Eskom

South Africa's primary electricity utility. Provides real-time outage notifications, load shedding schedules, and planned maintenance windows covering the national grid.

Municipal Utilities

Metropolitan and district municipality electricity and water departments. Includes City of Cape Town, City of Johannesburg, eThekwini, and Tshwane with localised outage and maintenance data.

CoCT

City of Cape Town utility services including electricity distribution, water supply, and sanitation. Provides area-level outage tracking and scheduled maintenance notifications.

Joburg Water

Johannesburg Water SOC Ltd. Provides water supply disruption alerts, reservoir levels, and planned maintenance schedules for the greater Johannesburg area.

Rate Limits

TierPriceRate LimitDaily QuotaMonthly Quota
FreeR0/mo10 req/min1001,000
StarterR499/mo60 req/min5,00050,000
ProR1,999/mo300 req/minUnlimited500,000

Error Codes

All error responses follow a consistent JSON format:

{
  "error": "error_code",
  "message": "Human-readable description."
}
StatusError CodeDescription
400invalid_requestThe request body or query parameters are malformed.
401unauthorizedMissing or invalid API key.
403no_subscriptionNo active subscription for this API product.
403quota_exceededDaily or monthly quota exceeded.
404not_foundThe requested resource does not exist.
429rate_limit_exceededToo many requests. Check X-RateLimit-Remaining header.
500internal_errorAn unexpected server error occurred.