v1

latestOpenAPI 3.0.32026-07-226744340.8 KB
Facilities

Search Facilities

Search the unified facilities directory — one row per real-world facility, projected from three source silos and unified on a stable facility_id: Global Energy Monitor energy assets (plants, mines, terminals, pipelines — geography + spine owners), World Port Index ports (geography, no owner), and Epoch AI data centers (owner, no geography in v1). Every facility carries its owners as spine entity_ids, so a plant / terminal / field / data center joins to the cross-source entity graph. Filter by name, leaf type or coarse class, source silo, country/region/continent, owner (name or spine entity_id), status, capacity (MW), and geography (bbox / near). Directory-only in v1; the facility × event fusion is a separate stream. Plan-gated: requires the can_use_facilities entitlement (Analyst plan and up); non-entitled plans receive 403 PLAN_REQUIRED.

get/api/v2/facilities

Query parameters

qstring

Case-insensitive substring match on the facility name.

typestring[]

One or more leaf facility types (comma-separated). Invalid values return 400 INVALID_ENUM listing the accepted set.

class'power' | 'extraction' | 'transport_logistics' | 'ports' | 'heavy_industry' | 'digital_infrastructure'

Coarse class filter — grabs every leaf type in the class.

sourcestring[]

Restrict to one or more source silos: gem (energy assets), maritime_ports (WPI ports), epoch (AI data centers).

countrystring

One or more country names or ISO-2/ISO-3 codes (comma-separated). Matches the facility's primary or secondary country.

regionstring

One plain-English region (e.g. Middle East, South Asia). Expanded to its ISO-3 country list.

continentstring

One plain-English continent (Asia, Europe, Africa, North America, South America, Oceania).

entitystring

Canonical owner selector — the same entity value works across endpoints (facilities, energy, gov). Pass a spine entity id (e_..., from /api/v2/search) for an EXACT owner match, or any name for a case-insensitive fuzzy owner-name match. Preferred over the legacy owner_search / owner_entity_id params below.

owner_entity_idstring

Spine entity_id (e_...). Returns facilities this entity owns/operates. Also expressible as the canonical entity=<e_ id>. Resolve a name via /api/v2/search.

owner_searchstring

Legacy — prefer the canonical entity param (still fully supported). Case-insensitive substring match on the owner name (no id needed).

statusstring

One or more operating-status values (comma-separated, case-insensitive): operating, construction, proposed, retired, cancelled… Vocabulary varies by silo.

capacity_mw_minnumber

Minimum capacity in MW (power facilities + data centers carry MW; ports/pipelines/extraction do not and are excluded when set).

capacity_mw_maxnumber

Maximum capacity in MW.

has_geoboolean

true → only facilities with coordinates (excludes Epoch data centers, geo-null in v1); false → only those without.

has_ownerboolean

true → only facilities with a resolved spine owner (excludes maritime ports); false → only those without.

bboxstring

Geographic viewport 'lat_min,lon_min,lat_max,lon_max'. Geo-null facilities are excluded.

nearstring

Proximity query 'lat,lon,radius_km' — facilities within the radius of a point.

sort'name' | 'capacity_desc' | 'capacity_asc' | 'recent' | 'country'

Result ordering.

limitinteger

Facility cards per page (max 100). Page deeper with cursor.

cursorstring

Pagination cursor from pagination.next_cursor on the previous response.

Response

Success

successboolean
applied_filtersobject

Echo of the resolved filters.

Example response

{
  "data": [
    {
      "facility_id": "f_8b0dcc8be8d5aa98",
      "name": "AGP LNG Terminal",
      "facility_type": "lng_terminal",
      "facility_class": "transport_logistics",
      "source_silo": "gem",
      "gem_tracker": "lng_terminals",
      "country_iso3": "USA",
      "status": "proposed",
      "capacity_mw": 169,
      "owners": [
        {
          "entity_id": "e_a4db9cd53edee666",
          "name": "Alibaba"
        }
      ],
      "detail_url": "/api/v2/facilities/f_8b0dcc8be8d5aa98",
      "owner_portfolio_url": "/api/v2/facilities?owner_entity_id=e_a4db9cd53edee666"
    }
  ]
}