API, feeds and embeds
Faultline's data is open to read: a JSON API with CORS, RSS feeds and an embeddable widget. No key needed.
JSON API
GET /api/events | Events, newest first. Filters: hours (max 720), category, country, situation, min_impact (1 to 5), limit (max 1000). |
GET /api/situations | Active situations with event counts, peak impact and the latest brief (headline, summary, trend). |
GET /api/briefs | The latest daily world brief and every situation brief. |
GET /api/layers | Tropical cyclone cones and tracks, fire hotspots and upcoming launches. |
GET /api/stream | Server-Sent Events: events with {added, updated} as sweeps land. |
curl 'https://faultline.duskengineering.services/api/events?situation=Russia%E2%80%93Ukraine&min_impact=3&limit=20'
Each event has id, title, summary, place, country, lat, lng, approx, theater, kind, category, severity, reports[], publishedAt; strikes may carry an origin. Requests are limited to 300 a minute per address.
RSS
/feed.xml for all events, /brief/feed.xml for the daily brief, and /situation/<name>/feed.xml or /country/<name>/feed.xml for one situation or country.
Embeds
Every situation and country page has an "Embed" box with an iframe snippet. The widget shows a live map, the latest brief and recent events, and links back here.
<iframe src="https://faultline.duskengineering.services/embed/situation/russia-ukraine" width="100%" height="560" style="border:0" loading="lazy"></iframe>
Using the data
Please credit Faultline with a link. Summaries and briefs are written by Claude from public news reports, and each event links its original sources: quote the outlets' own reporting according to their terms.