Skip to content
GridCapacityAPI.com

UK grid capacity API

The GB capacity heatmaps, in one schema

Ofgem's Long Term Development Statement requires every GB distribution network operator to publish a capacity heatmap in one standard JSON format. The API reads each operator's file where it is openly available and serves it with the operator's own licence terms.

Free plan, 250 requests a month, no card.

One standard, six operators, fourteen licence areas

The Form of LTDS asks for capacity heatmaps refreshed on or before 31 May and 30 November each year, in a JSON information model. In practice each operator ships it differently: as portal attachments, alternative exports, keyed datasets, or behind a bot challenge. Field spellings drift, and headroom arrives in MVA, alongside a red-amber-green status and a limiting factor.

The API keeps the MVA as MVA. Converting it to MW would need a power factor the operators do not publish, so value_mw is null and an MW filter will not match these records; filter with unit=MVA instead. The RAG status and the limiting factor travel with the value.

What the heatmaps publish

  • Per substation: demand headroom, generation headroom and reverse-power-flow capacity, in MVA.
  • A red-amber-green status and the constraint that limits headroom, carried verbatim in the record's details.
  • A twice-yearly refresh cycle, with each file's own date as the operator's effective date.
  • Licences that are mostly open (CC BY 4.0, or the operator's own open-data licence permitting commercial use), shown per source with the attribution each asks for.

Endpoints

MethodPathReturns
GET/v1/capacity/search?country=GB&unit=MVAEvery heatmap record in MVA, filterable by direction.
GET/v1/operators?country=GBThe GB operators and their sources.
GET/v1/sources/{id}One operator's heatmap: licence, cadence, health.
GET/v1/capacity/nearbyHeadroom around a site, nearest first.

Example

Request

curl "https://api.gridcapacityapi.com/v1/capacity/search?country=GB&direction=injection&unit=MVA&min_capacity=10" \  -H "Authorization: Bearer gc_live_..."

min_capacity filters in the requested unit. min_capacity_mw would return nothing here, by design: none of these values is in MW.

Response shapeplaceholder values — not a capacity claim

{
  "data": [
    {
      "id": "cap_…",
      "series_id": "cs_…",
      "asset": {
        "id": "sub_…",
        "type": "substation",
        "name": "…",
        "slug": "…",
        "country": "GB",
        "operator": {
          "id": "op_…",
          "slug": "…",
          "name": "…",
          "type": "DSO"
        },
        "network_level": "…",
        "voltage_kv": 33,
        "location": {
          "type": "Point",
          "coordinates": [
            0,
            0
          ],
          "precision": "exact"
        }
      },
      "direction": "injection",
      "technology": "generic_generation",
      "capacity": {
        "type": "available",
        "value": 0,
        "unit": "MVA",
        "value_mw": null,
        "qualifier": null,
        "status": null,
        "status_label": null
      },
      "firmness": "firm",
      "curtailment": null,
      "horizon": {
        "type": "snapshot",
        "year": null,
        "label": null
      },
      "methodology": {
        "id": "…",
        "comparability_class": "…",
        "non_additive": true,
        "binding": false
      },
      "freshness": {
        "source_effective_at": "…",
        "retrieved_at": "…",
        "last_confirmed_at": "…",
        "source_health": "healthy"
      },
      "provenance": {
        "source_id": "…",
        "source_url": "https://…",
        "license": "…",
        "rights_mode": "…"
      },
      "access": {
        "status": "granted",
        "attribution": "…"
      },
      "decision_context": {
        "binding": false,
        "formal_connection_study_required": true,
        "source_indicative": true,
        "statement": "The operator's latest published dataset reports … under methodology …."
      },
      "details": {
        "limiting_factor": "…"
      }
    }
  ],
  "pagination": {
    "has_more": true,
    "next_cursor": "…",
    "limit": 20
  },
  "meta": {
    "request_id": "req_…"
  }
}

Run it against the live API →

What the API holds today

Read from the API as this page renders. A source is listed with its rights status, because a listed source is not always a served one.

Sources the API holds for GB
SourceOperatorRightsHealthCadenceLast success
ENWL Heatmap ToolSP Electricity North WestArchived, pending reviewHealthyWhen the operator updates it5 h ago
ENWL capacity heatmapsSP Electricity North WestArchived, pending reviewDisabledMonthlynever
NESO connection registers (TEC, Embedded, Interconnector)National Energy System OperatorGrantedDisabledUnknownnever
NGED LTDS Capacity HeatmapNational Grid Electricity DistributionGrantedDisabledTwice a yearnever
NGED Network Capacity Map dataNational Grid Electricity DistributionArchived, pending reviewDisabledUnknownnever
NIE Networks Capacity MapNIE NetworksRegistry onlyDisabledWhen the operator updates itnever
NPg GSP connection informationNorthern PowergridGrantedHealthyWhen the operator updates it5 h ago
Northern Powergrid Heat Map DataNorthern PowergridGrantedHealthyMonthly5 h ago
Northern Powergrid LTDS Capacity HeatmapNorthern PowergridGrantedDisabledTwice a yearnever
NPg Network Development Plan headroomNorthern PowergridGrantedHealthyYearly5 h ago
SP Energy Networks Capacity Heatmap — SPDSP Energy NetworksGrantedHealthyTwice a year5 h ago
SP Energy Networks Capacity Heatmap — SPMSP Energy NetworksGrantedHealthyTwice a year5 h ago
SPEN Network Scenario Headroom ReportSP Energy NetworksGrantedDisabledYearlynever
SSEN GSP Technical LimitsSSEN DistributionGrantedHealthyWhen the operator updates it5 h ago
SSEN Headroom DashboardSSEN DistributionGrantedHealthyWhen the operator updates it5 h ago
SSEN Distribution LTDS Capacity HeatmapSSEN DistributionGrantedHealthyTwice a year5 h ago
UKPN DFES Network Scenario Headroom ReportUK Power NetworksGrantedDisabledYearlynever
UK Power Networks LTDS Capacity HeatmapUK Power NetworksGrantedHealthyTwice a year5 h ago

What people build with it

GB site finding

Screen every GB licence area for generation or demand headroom with one query and one schema.

Twice-yearly diffs

See which substations gained or lost headroom when a new heatmap lands, from the change feed.

Portfolio monitoring

Watch the substations behind a project pipeline and get a webhook when their figures move.

Questions

Why MVA and not MW?
Because the heatmap standard publishes apparent power. Turning it into active power needs a power factor for each site, which the operators do not publish, and inventing one would be a figure nobody published.
Are all six operators included?
The table on this page is read from the API and lists exactly what it holds, with each source's rights status and health. Some operators serve the standard file only to registered users or behind a bot challenge, and those are used only with the operator's own access arrangements.
Is the heatmap a connection offer?
No. The operators describe the heatmaps as indicative; a connection needs an application and a study.

Start building on grid-capacity data

A key in under a minute, on the Free plan.

Get API access