Grid hosting capacity · Europe
European grid capacity.
One API.
What transmission and distribution operators publish about available, reserved and contracted capacity — per substation, direction, technology and horizon — in one schema, with the methodology, freshness, provenance and rights status of every value.
250 requests a month on the Free plan, no card. See what is covered →
Request
GET /v1/capacity/nearby
curl "https://api.gridcapacityapi.com/v1/capacity/nearby?lat=51.5074&lng=-0.1278&radius_km=25&include_withheld=false&limit=1" \ -H "Authorization: Bearer gc_live_..."Response
Live answer from the API · req_01a0dc9cf90576cfba990e96ddd76e60
{
"data": [
{
"id": "cap_06gdq75tehr5db5fphs82j9awr",
"series_id": "cs_06gdq75tehr5db5fphrvdegedr",
"asset": {
"id": "sub_06gdq75qqntah1g4c8djerdpj4",
"type": "substation",
"name": "Leicester Sq 11kV",
"slug": "leicester-sq-11kv-11-kv",
"country": "GB",
"operator": {
"id": "op_p6edvgpjrs8dd9ajcbmy9cksh0",
"slug": "ukpn",
"name": "UK Power Networks",
"type": "DSO"
},
"network_level": "primary",
"voltage_kv": 11,
"location": {
"type": "Point",
"coordinates": [
-0.1299737742045787,
51.51012721325993
],
"precision": "exact"
},
"distance_km": 0.339
},
"direction": "offtake",
"technology": "generic_load",
"capacity": {
"type": "available",
"value": 50.4,
"unit": "MVA",
"value_mw": null,
"qualifier": null,
"status": null,
"status_label": null
},
"firmness": "firm",
"curtailment": null,
"horizon": {
"type": "snapshot",
"year": null,
"label": null
},
"scenario": null,
"season": null,
"variant": null,
"details": {
"limiting_factor": "Thermal",
"rag": "GREEN",
"rag_colour": "green",
"source_field": "demandAvailableCapacity"
},
"methodology": {
"id": "gb_ukpn_ltds_heatmap_2026",
"title": "UKPN LTDS Capacity Heatmap: headroom from the Network Scenario Headroom Report",
"capacity_basis": "operator_calculated",
"network_state": "n_minus_1",
"binding": false,
"non_additive": true,
"includes_reserved": null,
"includes_allocated": null,
"includes_pre_reserved": null,
"includes_pending_requests": null,
"comparability_class": "gb_ukpn_ltds_heatmap"
},
"freshness": {
"source_effective_at": "2025-03-01T00:00:00Z",
"retrieved_at": "2026-09-26T02:47:40.838120Z",
"last_confirmed_at": "2026-09-26T02:47:56.090133Z",
"source_health": "healthy"
},
"provenance": {
"source_id": "gb_ukpn_ltds_heatmap",
"source_record_id": "0d001646-cac4-5fc3-b8e8-0613ad9201b8",
"source_url": "https://ukpowernetworks.opendatasoft.com/explore/dataset/ukpn-capacity-heatmap/",
"payload_sha256": "befc45cdd6bd85b5f31e3e31b04397e6706084b57ffc5f910f51b6b68396f516",
"license": "CC BY 4.0",
"rights_mode": "commercial_use_with_attribution"
},
"access": {
"status": "granted",
"attribution": "UK Power Networks, Long Term Development Statement (LTDS) Capacity Heatmap, https://ukpowernetworks.opendatasoft.com/explore/dataset/ukpn-capacity-heatmap/ (last updated 2025-03-01)"
},
"decision_context": {
"binding": false,
"formal_connection_study_required": true,
"source_indicative": true,
"statement": "The operator's latest published dataset reports 50.4 MVA under methodology gb_ukpn_ltds_heatmap_2026."
}
}
],
"pagination": {
"has_more": true,
"next_cursor": "eyJzIjoiZGlzdGFuY2UiLCJrIjoiMzM4Ljg4NDczNDIzIiwiaSI6IjAxYTBkYjljLWJhNzQtNzA1Ni1hY2FmLWI0NzI4MTQ5MmFlNiJ9",
"limit": 1
},
"meta": {
"request_id": "req_01a0dc9cf90576cfba990e96ddd76e60",
"comparability": "best_effort",
"warnings": []
}
}Read it as the record says: the operator's latest published dataset reports this figure under the named methodology. It is not a connection offer.
The semantics are the product
No number leaves without its meaning
There is no bare available_mw. Every value travels with the eight things you need to know before you rely on it.
direction
Which way
Injection is power into the grid, offtake is power drawn from it. A battery site needs both, and operators publish them separately.
injectionofftakecapacity.type
What the number counts
Available, reserved, allocated, contracted, waitlisted, total. Kept apart exactly as the operator keeps them: one operator's “reserved” is never folded into another's “allocated”.
availablereservedtotalfirmness · curtailment
On what terms
Firm, flexible with a stated maximum curtailment, or conditional. A flexible figure with up to 5 % curtailment a year is a different offer from a firm one.
firmflexible ≤ 5 %horizon
For when
The situation as last published, or a target year such as Y+2. Forecast scenarios and seasons are dimensions of their own, never averaged away.
snapshot2028 (Y+2)capacity.unit · value_mw
In what unit
As published. MVA stays MVA: converting it needs a power factor the operator did not give, so value_mw is null and an MW filter never matches it.
MWMVAstatusmethodology
Computed how
Which network state, what is already subtracted, whether figures add up across assets, and the comparability class that decides what may be compared side by side.
includes_reservednon_additivefreshness · provenance
Seen when, and where
The operator's own effective date and the moment we retrieved it: two clocks, both shown. The source URL, record id and payload hash trace every value to its file.
source_effective_atretrieved_ataccess · decision_context
Allowed for what
Values are served only where the operator's licence allows it; anything else is listed with the value withheld and a link. Nothing here is binding or a connection offer.
grantedwithheldEvery field and every enum, with what it means: the capacity model.
Coverage
What the API serves today
Counted by the API itself, from the sources it has imported. A country is listed once an operator's publication is imported, never ahead of the data.
Countries served
10
Operators
154
Sources
86
Grid assets
30,960
Capacity series
325,095
| Country | Status | Operators | Sources served / withheld | Assets | Newest operator date |
|---|---|---|---|---|---|
| United Kingdom | Partial | 8 | 14 / 4 | 4,920 | 14 Aug 2026 |
| Netherlands | Partial | 8 | 3 / 5 | 1,245 | 13 Sep 2026 |
| Belgium | Live | 8 | 3 / 7 | 1,139 | 24 Sep 2026 |
| France | Live | 3 | 3 / 4 | 5,237 | 25 Aug 2026 |
| Spain | Partial | 63 | 0 / 11 | 16,467 | 9 Sep 2026 |
| Portugal | Partial | 3 | 0 / 4 | 461 | 11 Jul 2026 |
| Austria | Partial | 22 | 0 / 8 | 443 | 29 Jul 2026 |
| Denmark | Live | 1 | 1 / 0 | 160 | 1 Feb 2026 |
| Italy | Partial | 5 | 0 / 7 | 110 | 1 Sep 2026 |
| Switzerland | Live | 23 | 1 / 1 | 778 | — |
As reported by /v1/coverage on 2026-09-26 07:27 UTC.
Who it is for
For the people who have to know before they apply
BESS developers
Screen substations for injection and offtake headroom together, per horizon and firmness, before paying for a connection study.
Data-centre developers
Find where operators publish offtake capacity at transmission and sub-transmission voltage, and follow it as each dataset is republished.
Grid consultants
Cite a figure with its methodology, its operator's date and the file it came from, and reproduce what the dataset said on the day you advised.
GIS and energy software
One schema across operators, cursor pagination, a change feed and webhooks, so a product integrates once instead of once per operator.
Pricing
Start free, pay when it matters
Every plan reads the same data. The plan decides how much, how fast, and whether you get history, the change feed, exports and webhooks.
Free
€0/month
250 requests a month
Developer
€99/month
10,000 requests a month
Pro
History€399/month
100,000 requests a month
Business
History€999/month
500,000 requests a month
Enterprise, with redistribution rights: from €2,500 a month.
Compare every planQuestions
Is this an operator's official data service?
Does a figure mean capacity is available for my project?
Why are some values withheld?
Why is there no MW figure for some records?
How fresh is the data?
Can I try it without paying?
Build on the data, not on a scraper
A key in under a minute, on the Free plan.