Skip to content
worldgovdata
Documentation / Endpoints

Endpoints

Topics

The taxonomy every indicator is classified into, with a live count of how many indicators sit in each theme.

GET/v1/topics
Auth
Optional — anonymous callers are IP rate-limited
Cost
free
Returns
One row per topic
Order
By topic slug, ascending
Parameters
None

Base https://api.worldgovdata.com/v1

Small, free, and the only correct source for the topic slugs that /v1/indicators?topic= and /v1/countries/{iso3}?topic= accept.

Example

Request

curl -sS "https://api.worldgovdata.com/v1/topics"

Response · 200

{
  "data": [
    { "topic": "agriculture", "n_indicators": 1284 },
    { "topic": "climate",     "n_indicators":  962 },
    { "topic": "demography",  "n_indicators": 1517 },
    // … 10 more, ordered by topic
    { "topic": "trade",       "n_indicators": 1103 }
  ],
  "meta": {
    "generated_at": "2026-07-28T09:14:02.481932+00:00",
    "count": 13
  }
}

Fields

  • topic — the slug. Lowercase, no spaces. This is the value the other endpoints filter on.
  • n_indicators — how many servable indicators carry that topic right now. Counted live, and it moves as the catalogue grows.

meta carries generated_at and count — the number of topics, not the number of indicators. There are thirteen: governance, economy, trade, health, education, demography, climate, energy, environment, agriculture, technology, society and risk.

Notes

  • Counts respect the licence gate. Indicators we may not redistribute are excluded, so n_indicators is the number you can actually use, not a catalogue total.
  • A topic with no indicators is absent. The response is a grouped count, so an empty theme simply does not appear. Do not assume every slug you have seen before is in every response.
  • Slugs are the API vocabulary. The portal shows display labels; the API takes and returns slugs. Map between them on your side.
  • Every indicator has exactly one topic. It is a classification, not a tag set, so the counts sum to the size of the servable catalogue.