Concepts
A single glossary page. Read it once to internalise the OGC data model; everything else in the Developers section builds on the terms defined here.
The OGC API model
ADAM exposes data as collections of items — the canonical OGC API — Features model. Three terms carry all the weight:
-
Collection
A named, queryable dataset (e.g. earthquakes, cyclone tracks).
Discoverable via
GET /collections; metadata atGET /collections/{id}. -
Item / Feature
One record inside a collection, rendered as a GeoJSON
Feature.Has a
geometry, apropertiesobject, and a stableid. -
Queryable
A property of a collection on which you can filter.
Authoritative list at
GET /collections/{id}/queryables(JSON Schema).
The endpoints are entirely regular. Once you know those three terms you can predict every URL:
/collections → list collections
/collections/{id} → one collection's metadata
/collections/{id}/queryables → what you can filter on
/collections/{id}/items → features, filterable
/collections/{id}/items/{itemId} → one feature
Features vs Tiles
The same collection is exposed in two forms:
- Features (GeoJSON) — authoritative, individually addressable, filterable. Use when you want the data: analysis, downloads, joins, per-record logic.
- Tiles (MVT) — pre-pyramided vector tiles. Use when you want the picture: interactive maps, zoom/pan performance, dense rendering.
Tiles are organised into a TileMatrixSet (a named pyramid scheme). ADAM ships 13 matrix sets — the one you almost always want is WebMercatorQuad, the web standard used by MapLibre, Mapbox, Leaflet, Google Maps, OSM.
Rule of thumb:
- Rendering a web map → Tiles (use
style.jsonfor a one-line integration) - Querying, filtering, scripting → Features (GeoJSON)
ADAM collections and hazard modules
The 13 ADAM collections map to the three hazard modules:
- Earthquakes — one collection of events
- Floods — four collections (events, active alerts, seasonal forecasts, GLOFAS gauge forecasts)
- Tropical Storms — eight collections covering events, tracks, buffers, nodes, plus "disturbance" variants for developing systems
Full catalogue with descriptions: Collections Reference.
A single event (e.g. one earthquake) is a feature in an events collection. Related geometries (the track of a cyclone, a flood polygon) live in sibling collections that share an event identifier.
Dynamic fields
Some features — typically earthquake and cyclone events — carry dynamic fields: extra URLs in properties that point to derived products produced by the hazard module:
- Population impact tables (JSON)
- Shapefile bundles
- Hazard rasters (ShakeMaps, rainfall, flood extent)
The URLs are absolute; you just follow them. See Fetch Event Outputs for the pattern.
Coordinate reference systems
- Features — WGS84 (
EPSG:4326), longitude/latitude order, per GeoJSON RFC 7946 - Tiles — whatever the
tileMatrixSetIddeclares;WebMercatorQuadis Web Mercator (EPSG:3857)
Filtering — CQL2
/collections/{id}/items supports three orthogonal filters:
bbox=minLon,minLat,maxLon,maxLat— spatialdatetime=<iso>|<iso>/<iso>— temporal (instant or interval)filter=<cql2-expr>— attribute, with the OGC CQL2 grammar
Example:
?bbox=26,36,45,42
&datetime=2026-01-01T00:00:00Z/..
&filter=mag >= 6.0
You can combine all three. The list of attribute names you can use in filter is whatever /queryables returns for that collection.
Conformance
GET /conformance declares which OGC conformance classes ADAM implements. Generic OGC clients read this to decide which features to enable. You probably don't need it for hand-written code, but it is what makes tools like QGIS and third-party OGC clients just work.
Formats and content negotiation
Most endpoints support multiple formats via the f query parameter:
?f=json— machine-readable JSON (the default for most item endpoints)?f=geojson— explicit GeoJSON?f=html— human-readable HTML page (the "live browser" — see Overview)
Tiles have their own dedicated content types (application/vnd.mapbox-vector-tile for MVT).