Skip to main content
GET
Search Facilities

Authorizations

Authorization
string
header
required

GDELT Cloud API key. Send as Authorization: Bearer gdelt_sk_....

Query Parameters

limit
integer
default:25

Number of records to return on this page; use the returned continuation to request the next page. Note: validation is owned by the endpoint service because it depends on composed or cross-parameter state; the published error semantics above still apply.

Required range: 1 <= x <= 100
cursor
string

Continuation from pagination.next_cursor in the previous response. Keep the other filters unchanged; null means no next page. Also accepts: offset. Note: validation is owned by the endpoint service because it depends on composed or cross-parameter state; the published error semantics above still apply.

granularity
string
default:site

site (default) returns one canonical physical site; unit exposes source registry units. Note: validation is owned by the endpoint service because it depends on composed or cross-parameter state; the published error semantics above still apply.

q
string

Facility name. Default lexical mode keeps case-insensitive substring matching. Opt-in search_mode=fuzzy suggests names with matching prefixes or small spelling errors; every query token must match a name token. These are selectable candidates, not resolved site identity. No embedding or inference runs. Also accepts: search. Note: validation is owned by the endpoint service because it depends on composed or cross-parameter state; the published error semantics above still apply.

search_mode
enum<string>
default:lexical

lexical (default) preserves substring search. fuzzy requires 2–200 characters and 1–12 name tokens; small typos and token prefixes are supported. Use sort=relevance to put literal matches before fuzzy suggestions. Other category/geography filters stay exact. Full value list: https://docs.gdeltcloud.com/reference/enums#facility_name_search_mode

Available options:
lexical,
fuzzy
type
enum<string>[]

Facility type. Comma-separate for OR. Note: validation is owned by the endpoint service because it depends on composed or cross-parameter state; the published error semantics above still apply. Full value list: https://docs.gdeltcloud.com/reference/enums#facility_type

Available options:
coal_plant,
oil_gas_plant,
nuclear_plant,
geothermal_plant,
bioenergy_plant,
hydropower_plant,
solar_farm,
wind_farm,
coal_mine,
oil_gas_field,
iron_ore_mine,
coal_terminal,
lng_terminal,
gas_pipeline,
oil_pipeline,
lng_carrier,
port,
steel_plant,
cement_plant,
chemical_plant,
data_center,
mineral_mine,
concentrator,
smelter,
mineral_refinery,
smelter_refinery,
mineral_processing_plant,
recycling_plant,
manufacturing_factory
class
enum<string>[]

Broad facility class; expanded to its member types. Note: validation is owned by the endpoint service because it depends on composed or cross-parameter state; the published error semantics above still apply. Full value list: https://docs.gdeltcloud.com/reference/enums#facility_class

Available options:
power,
extraction,
transport_logistics,
ports,
heavy_industry,
digital_infrastructure,
mineral_processing,
manufacturing
source
enum<string>[]

Contributing source membership; keeps all observations for each matching canonical site. Note: validation is owned by the endpoint service because it depends on composed or cross-parameter state; the published error semantics above still apply. Full value list: https://docs.gdeltcloud.com/reference/enums#facility_source_silo

Available options:
gem,
maritime_ports,
epoch,
usgs_domestic,
usgs_myb,
climate_trace,
compute_atlas,
eea_industrial
commodity
string

Observed current-directory commodity values are suggestions, not a closed vocabulary; comma-separate for OR. New values are accepted. A mine and a refinery remain separate assets. Note: validation is owned by the endpoint service because it depends on composed or cross-parameter state; the published error semantics above still apply. Observed vocabulary, measured 2026-10-02 (116 distinct values). Values outside it are accepted, not rejected. Discover current values: GET /api/v2/meta/enums (facility_commodity) or inspect facility card commodities. Values seen in the corpus: https://docs.gdeltcloud.com/reference/enums#facility_commodity

participant_entity
string

Match a resolved entity named in a source participant record. This is separate from entity and owner filters; a role assertion does not establish ownership. Note: validation is owned by the endpoint service because it depends on composed or cross-parameter state; the published error semantics above still apply. Full value list: https://docs.gdeltcloud.com/reference/enums#entity_handle

participant_role
string

Exact source-reported participant role. Open vocabulary (for example operator or tenant); this does not establish ownership.

status
string[]

Lifecycle status. Matched case-insensitively — the corpus carries both operating and Operating — and GEM's "- inferred N y" variants fold into their base state. This is an OBSERVED vocabulary measured from the directory, not a closed list. Note: validation is owned by the endpoint service because it depends on composed or cross-parameter state; the published error semantics above still apply. Observed vocabulary, measured 2026-08-10 (32 distinct values). Values outside it are accepted, not rejected. Discover current values: GET /api/v2/facilities?limit=1 (see applied_filters) or /api/v2/meta/enums. Values seen in the corpus: https://docs.gdeltcloud.com/reference/enums#facility_status

country
string

Country filter (ISO-3). region and continent expand to their member countries. A facility matches on either its primary or secondary country. Matched case-insensitively. Note: validation is owned by the endpoint service because it depends on composed or cross-parameter state; the published error semantics above still apply.

region
enum<string>

Region; expanded to member countries. Note: validation is owned by the endpoint service because it depends on composed or cross-parameter state; the published error semantics above still apply. Full value list: https://docs.gdeltcloud.com/reference/enums#region

Available options:
Middle East,
Northern Africa,
Western Africa,
Eastern Africa,
Middle Africa,
Southern Africa,
Eastern Europe,
South Asia,
Southeast Asia,
East Asia,
Central Asia,
Northern America,
Central America,
Caribbean
continent
enum<string>

Continent; expanded to member countries. Note: validation is owned by the endpoint service because it depends on composed or cross-parameter state; the published error semantics above still apply. Full value list: https://docs.gdeltcloud.com/reference/enums#continent

Available options:
Africa,
Asia,
Europe,
North America,
South America,
Oceania
entity
string

Resolved owner filter using the shared entity resolver for names and supported identifiers. owner and owner_entity_id preserve this identity meaning. Use owner_search explicitly for fuzzy matching of owner names, including unresolved names. Also accepts: owner_entity_id, owner_search, owner. Note: validation is owned by the endpoint service because it depends on composed or cross-parameter state; the published error semantics above still apply. Full value list: https://docs.gdeltcloud.com/reference/enums#entity_handle

capacity_mw_min
number

Minimum capacity in MW. Capacity units differ per tracker — see the tracker reference. Note: validation is owned by the endpoint service because it depends on composed or cross-parameter state; the published error semantics above still apply.

Required range: x >= 0
capacity_mw_max
number

Maximum capacity in MW. Note: validation is owned by the endpoint service because it depends on composed or cross-parameter state; the published error semantics above still apply.

Required range: x >= 0
has_geo
boolean

Restrict to facilities that do (or do not) carry coordinates. 99.15% of the directory does; the residual are GEM linear/areal assets — pipelines and fields — which are geometry, not a point. Note: validation is owned by the endpoint service because it depends on composed or cross-parameter state; the published error semantics above still apply.

has_owner
boolean

true restricts to facilities with a SPINE-RESOLVED owner (owners[].entity_id non-null). A facility can carry an unresolved owner NAME and still be excluded — that is the documented meaning of "owner" here, and it is the resolved id that makes owner-bridge fusion and entity= chaining possible. Owner coverage is 47.1% overall: heavy industry 99.9%, AI data centers 85%, GEM power 43%, ports 0% (WPI publishes no ownership layer). Note: validation is owned by the endpoint service because it depends on composed or cross-parameter state; the published error semantics above still apply.

sort
enum<string>

Ordering: name · capacity_desc · capacity_asc · recent (directory updates) · country · relevance (requires q; exact name, literal substring, then token distance) · news_activity. News activity ranks the entire filtered directory by direct-owner Event count first, then the distinct owner/nearby Event union over seven recent days, matched to explicit owner identities on Event cards or within 25 km; overlaps count once. Parent rollups are excluded. Counts and exact served dates are disclosed; nearby reporting does not establish a site incident. Note: validation is owned by the endpoint service because it depends on composed or cross-parameter state; the published error semantics above still apply. Full value list: https://docs.gdeltcloud.com/reference/enums#facility_sort

Available options:
name,
capacity_desc,
capacity_asc,
recent,
country,
news_activity,
relevance
bbox
string

Bounding box lat_min,lon_min,lat_max,lon_max. Note: validation is owned by the endpoint service because it depends on composed or cross-parameter state; the published error semantics above still apply.

near
string

Point proximity lat,lon,radius_km, refined by true great-circle distance. Note this is the three-part grammar — /api/v2/events takes near=lat,lon with a separate radius_km. Note: validation is owned by the endpoint service because it depends on composed or cross-parameter state; the published error semantics above still apply.

Response

Success

success
boolean
data
object[]
pagination
object
applied_filters
object

Echo of the resolved filters.