Data API
Everything the map shows is available as JSON: the conflict records, their developments and figures, the located attacks, a page per country, the corrections and a journal of what changed. It is the same data as the website, read from established news outlets by AI and checked against the articles; article text and titles are never included, only each record and the links it rests on.
Keys and limits
Requests without a key are limited to 60 an hour per address. A free key raises that to 1000 an hour. Get one by posting your email address (up to 3 keys a day):
curl -X POST https://globalnewsmap.org/api/v1/keys -H "Content-Type: application/json" \
-d '{"email": "you@example.org", "use": "what you are building"}'
Send it as Authorization: Bearer gnm_… (or X-API-Key). Every response carries
X-RateLimit-Limit, X-RateLimit-Remaining and X-RateLimit-Reset (seconds until the hour turns);
over the limit you get 429 with Retry-After. GET /api/v1/me shows your key's tier and use.
Responses are cached for one to five minutes, like the site; the records themselves change at most hourly.
Endpoints
GET /api/v1/conflicts: every conflict on the map, most severe first. Filters:?status=escalating|active|de-escalating|ceasefire|frozen,?region=,?country=ISO3(a party to it).GET /api/v1/conflicts/{id}: the full record: summary, "situation now" brief, parties and sides, consequences, every development with its date, sources and whether it was checked, the quoted figures and costs, and the outlets behind it.GET /api/v1/conflicts/{id}/developments: just the developments, newest first.GET /api/v1/attacks: located attacks read from the news.?days=7(up to 180) or?since=YYYY-MM-DD,?conflict=,?country=ISO3(where it landed),?format=geojsonfor a FeatureCollection of impact points.GET /api/v1/countries/{iso3}: a country's conflicts and sides, attacks on its soil, travel advice, disasters, cyber incidents and placed headlines.GET /api/v1/changes: the last 30 days' journal of new developments, status changes and attacks, oldest id first. Poll it with?since_id=(thelatest_idyou saw) to pick up only what is new.GET /api/v1/corrections: published corrections.
curl https://globalnewsmap.org/api/v1/conflicts/russia-ukraine -H "Authorization: Bearer gnm_…"
curl "https://globalnewsmap.org/api/v1/attacks?country=UKR&days=30&format=geojson"
Ids are the ones in the site's addresses (/conflict/russia-ukraine, /country/ukr). Dates are YYYY-MM-DD,
timestamps are Unix seconds, coordinates are WGS84. Every record links to the article it came from; verified is 1 when the claim was
re-read in the article's full text, 0 when the article could not be read, absent for records from before the checks. Fields may be added at any time;
existing ones will not change meaning without a note on this page.
Terms
The free tier is for personal, research, journalism and other non-commercial use. Show "Global News Map" with a link to globalnewsmap.org wherever the data appears, and keep each record's link to its source. The records summarise news reporting that belongs to its publishers; don't present them as verified facts, as safety advice or as an intelligence product, and read the terms of use and how the map works. Keys are personal: don't share them, and don't work around the limits. For commercial use, higher limits or bulk access write to hello@lumatechsolutions.co.uk. We keep the email address a key was issued to so we can tell you about changes to the API; see the privacy notice.
There are also Atom feeds of the developments and an embeddable map of each conflict.