Skip to content
GridCapacityAPI.com

Hosting capacity API

Hosting capacity, with the method behind every figure

Hosting capacity is how much new generation or demand an operator says a part of its network can take. Every operator computes it differently. This API serves each figure with the methodology that produced it, so a number is never read under the wrong one.

Free plan, 250 requests a month, no card.

The same word, computed a dozen ways

One operator subtracts reserved and pre-reserved capacity before it publishes; another publishes the total and lists the queue separately. One studies the network with an outage (N-1), another without. One publishes firm capacity, another offers more with a curtailment band. A table that puts their numbers side by side without saying so is wrong in a way that looks right.

Here each value points at a versioned methodology: its network state, what it already subtracts, whether its figures may be summed across assets, and a comparability class. Values from different classes can be fetched together, but never silently compared.

How hosting capacity is represented

  • available is what remains by the operator's own method; total is the capacity before anything is subtracted. They are different measures and never merged.
  • The methodology's includes_reserved, includes_allocated, includes_pre_reserved and includes_pending_requests say what the operator already took off.
  • non_additive marks figures that must not be summed across assets, because they share upstream constraints.
  • Flexible capacity carries its curtailment band; conditional capacity is kept apart from firm.
  • Forward-looking values carry a horizon (a target year such as Y+2), and forecast pathways a scenario.

Endpoints

MethodPathReturns
GET/v1/capacity/searchFilter by availability_type, firmness, curtailment_max_pct, horizon.
GET/v1/methodologies/{id}One methodology: basis, network state, inclusions.
GET/v1/sources/{id}A source's manifest, methodologies and rights evidence.
GET/v1/substations/{id}/capacity/historyHow a series changed over time (Pro).

Example

Request

curl "https://api.gridcapacityapi.com/v1/capacity/search?direction=injection&firmness=flexible&curtailment_max_pct=10&horizon=Y%2B2&comparability=strict" \  -H "Authorization: Bearer gc_live_..."

Strict mode asked for one comparability class and the filters matched two, so the API answers 422 and names the classes instead of mixing them. Add a country or source filter, or use best_effort and read the warnings.

Response shapeplaceholder values — not a capacity claim

{
  "error": {
    "code": "capacity_semantics_not_comparable",
    "message": "The requested sources cannot be compared under strict comparability mode.",
    "request_id": "req_…",
    "details": {
      "classes": [
        "…",
        "…"
      ]
    }
  }
}

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.

Countries the API serves
CountryStatusSources servedAssetsNewest operator date
United KingdomPartial144,92014 Aug 2026
NetherlandsPartial31,24513 Sep 2026
BelgiumLive31,13924 Sep 2026
FranceLive35,23725 Aug 2026
SpainPartial016,4679 Sep 2026
PortugalPartial046111 Jul 2026
AustriaPartial044329 Jul 2026
DenmarkLive11601 Feb 2026
ItalyPartial01101 Sep 2026
SwitzerlandLive1778—

What people build with it

Firm versus flexible

Compare the capacity an operator offers firm with what it offers under a curtailment band, per technology and horizon.

Tracking headroom

Follow each series as operators republish, and see when headroom at a node opened up or disappeared.

Methodology-aware analysis

Aggregate only what may be aggregated, and compare only what shares a comparability class.

Questions

Why is there no single “available MW” field?
Because it would be a different quantity at every operator. A bare number invites exactly the comparison the methodologies forbid.
Do you compute hosting capacity yourselves?
No. Version 1 serves operator-published values only: no modelling, no scores, no “suitable for your project”.
What if an operator publishes a traffic light instead of a number?
The record's unit is status: capacity.status is normalised (available, limited, unavailable…) and status_label carries the operator's own words.

Start building on grid-capacity data

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

Get API access