API reference
Incidents
Live and historical emergency incidents from every state and territory, in one GeoJSON schema. Base URL https://emergencyapi.com/api/v1.
/incidentsList all current incidents
Returns a GeoJSON FeatureCollection of all current emergency incidents, with support for filtering, pagination, and bounding box queries.
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
state | query | No | string | Comma-separated state codes (e.g. nsw,vic,qld) |
eventType | query | No | string | Comma-separated event types (bushfire, burn_off, fire_ban, structure_fire, vehicle_fire, grass_fire, hazmat, rescue, flood, storm, tree_down, cyclone, earthquake, extreme_heat, vehicle_accident, medical, alarm, other) |
category | query | No | string | Comma-separated event categories. Groups related event types (e.g. fire includes bushfire, structure_fire, grass_fire, vehicle_fire). burn_off is its own category (planned). See /api/v1/schema for the full mapping. |
featureType | query | No | string | Comma-separated feature types. Defaults to 'incident' (point incidents only), so boundary polygons never appear unless requested. Request them explicitly: incident_area, warning_area, fire_ban_area. See /api/v1/schema. |
severity | query | No | string | CAP-AU severity levels (Extreme, Severe, Moderate, Minor, Unknown) |
urgency | query | No | string | CAP-AU urgency levels (Immediate, Expected, Future, Past, Unknown) |
certainty | query | No | string | CAP-AU certainty levels (Observed, Likely, Possible, Unlikely, Unknown) |
warningLevel | query | No | string | Australian Warning System levels |
status | query | No | string | Incident status filter |
agency | query | No | string | Source agency filter |
bbox | query | No | string | Bounding box: minLon,minLat,maxLon,maxLat |
limit | query | No | integer | Results per page (default 100, max 500) |
cursor | query | No | string | Opaque pagination cursor, taken from meta.next_cursor of the previous response. Absent next_cursor means there are no further pages. |
after | query | No | string | Alias for cursor. This is the parameter name emitted in links.next, and is accepted for backward compatibility. If both are supplied, after wins. |
format | query | No | string | Response format. CSV includes columns: id, state, agency, feed_id, title, event_type, status, warning_level, severity, urgency, certainty, lng, lat, address, suburb, lga, location_state, reported_at, updated_at, fetched_at, is_retracted, retracted_at, retraction_reason. cap-atom returns a standards-validated CAP Atom feed (each entry inlines a CAP-AU alert in <content>; incidents retracted in the last 7 days appear as Cancel messages). cap-au is the deprecated legacy <alerts> wrapper, kept for backward compatibility; new consumers should use cap-atom. |
include_retracted | query | No | boolean | Include retracted incidents (default false). Retracted incidents are marked when upstream feeds stop publishing them. |
Responses
| Status | Description |
|---|---|
200 | A GeoJSON FeatureCollection of incidents |
429 | Rate limit exceeded |
curl "https://emergencyapi.com/api/v1/incidents?state=nsw%2Cvic&eventType=bushfire%2Cflood" \ -H "Authorization: Bearer YOUR_API_KEY"
{
"type": "FeatureCollection",
"features": [
{
"type": "Feature",
"id": "nsw-rfs-1234567",
"geometry": {
"type": "Point",
"coordinates": [
150.604,
-33.883
]
},
"properties": {
"source": {
"state": "nsw",
"agency": "RFS",
"feedId": "1234567"
},
"title": "Bush Fire - Warragamba",
"eventType": "bushfire",
"status": "active",
"warningLevel": "watch_and_act",
"severity": "Severe",
"urgency": "Expected",
"certainty": "Observed",
"location": {
"address": "Warragamba Dam Rd, Warragamba NSW",
"suburb": "Warragamba",
"state": "NSW",
"latitude": -33.883,
"longitude": 150.604
},
"details": {
"description": "Bush fire burning in a south-easterly direction"
},
"timestamps": {
"reported": "2026-04-07T14:30:00+10:00",
"updated": "2026-04-07T16:45:00+10:00",
"fetched": "2026-04-07T16:46:12+10:00"
},
"retraction": {
"retracted": true,
"retractedAt": "2026-04-07T18:00:00+10:00",
"reason": "upstream_removed"
}
}
}
],
"meta": {
"total_count": 245,
"has_more": true,
"next_cursor": "cursor_xyz789",
"generatedAt": "2026-04-07T16:46:12+10:00"
},
"links": {
"self": "/v1/incidents?limit=100",
"next": "/v1/incidents?limit=100&after=cursor_xyz789"
},
"attribution": "https://emergencyapi.com/api/v1/attribution"
}/incidents/{id}Get a single incident
Returns a single incident as a GeoJSON Feature.
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
id | path | Yes | string | Incident ID (e.g. nsw-rfs-1234567) |
format | query | No | string | Response format. Default geojson returns a GeoJSON Feature. cap-au returns the incident as a single standards-valid CAP-AU <alert> document (Content-Type application/cap+xml), validated against the OASIS CAP 1.2 schema and the CAP-AU Profile v3.0. |
Responses
| Status | Description |
|---|---|
200 | A GeoJSON Feature, or a CAP-AU alert document when format=cap-au |
404 | Incident not found |
curl "https://emergencyapi.com/api/v1/incidents/{id}" \
-H "Authorization: Bearer YOUR_API_KEY"/incidents/nearbyFind incidents near a location
Returns incidents within a radius (km) of a given lat/lng coordinate, sorted by distance.
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
lat | query | Yes | number | Latitude |
lng | query | Yes | number | Longitude |
radius | query | Yes | number | Radius in kilometres (max 500) |
limit | query | No | integer | |
state | query | No | string | |
eventType | query | No | string | |
severity | query | No | string | |
eventCategory | query | No | string | |
urgency | query | No | string | |
certainty | query | No | string | |
warningLevel | query | No | string | |
agency | query | No | string | |
status | query | No | string | Comma-separated incident statuses (active, contained, controlled, safe, completed). Defaults to all. |
include_retracted | query | No | boolean | Set true to include retracted incidents. Default false; retracted incidents are hidden, matching /incidents. |
Responses
| Status | Description |
|---|---|
200 | Nearby incidents as GeoJSON FeatureCollection |
400 | Missing or invalid parameters |
curl "https://emergencyapi.com/api/v1/incidents/nearby?lat=-33.87&lng=151.21" \ -H "Authorization: Bearer YOUR_API_KEY"
/incidents/snapshotAudit trail snapshot
Returns the incidents that were active at a specific point in time. Recent datetimes are reconstructed from live and lifecycle data. Datetimes before 2026-04-08 are reconstructed from the historical archive (4.8M+ records) and are gated by the same tier lookback as /incidents/history (free has no archive access; Starter 1 year, Developer and Business 5 years, Pro and Enterprise unlimited). Archive (pre-2026-04-08) snapshots require a state filter, and meta.source indicates whether the result came from "live" or "archive".
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
datetime | query | Yes | string | ISO 8601 datetime to query (cannot be in the future) |
state | query | No | string | Filter by state code. Required for archive (pre-2026-04-08) snapshots. |
event_type | query | No | string | Filter by event type |
limit | query | No | integer | Max results (default 500) |
Responses
| Status | Description |
|---|---|
200 | Incidents active at the requested datetime |
400 | Missing or invalid datetime, or an archive (pre-2026-04-08) snapshot requested without the required state filter |
403 | Archive access requires a paid plan, or the datetime predates your tier's lookback window |
curl "https://emergencyapi.com/api/v1/incidents/snapshot?datetime=2026-04-20T14%3A30%3A00%2B09%3A30&state=sa" \ -H "Authorization: Bearer YOUR_API_KEY"
/incidents/historyHistorical incident data (paid tier)
Returns historical emergency incidents from the 4.8M+ record archive (1840-2026). Free tier is blocked. Starter tier limited to 1 year lookback, Developer and Business to 5 years, Pro and Enterprise unlimited.
Parameters
| Name | In | Required | Type | Description |
|---|---|---|---|---|
state | query | No | string | Comma-separated state codes |
eventType | query | No | string | Comma-separated event types |
after | query | No | string | Start of date range (ISO 8601, inclusive). Tier-limited. |
before | query | No | string | End of date range (ISO 8601, exclusive). Defaults to now. |
limit | query | No | integer | Max results per page (1-500, default 100) |
Responses
| Status | Description |
|---|---|
200 | Historical incidents matching filters |
403 | Free tier blocked or depth limit exceeded |
curl "https://emergencyapi.com/api/v1/incidents/history?state=wa%2Csa&eventType=bushfire%2Cflood" \ -H "Authorization: Bearer YOUR_API_KEY"