EmergencyAPI is a unified REST API that aggregates real-time emergency incident data from 27 official Australian government feeds across all 8 states and territories. Bushfires, floods, storms, earthquakes, rescues, hazardous material incidents, and warnings. All normalised into a single GeoJSON schema with consistent fields, timestamps, and coordinates.
One API key. One endpoint. Every active emergency in Australia. Free tier included.
Australia has 8 states and territories, each running their own emergency services with their own data feeds. NSW uses GeoJSON. Victoria uses JSON. Western Australia uses ArcGIS FeatureServer. South Australia publishes pager messages. Queensland has a different schema again. Some feeds update every 30 seconds. Others every 15 minutes.
If you want to monitor emergencies across Australia, you need to integrate with each feed individually. Parse different formats. Handle different field names, coordinate systems, and update schedules. Deal with feeds going down, changing URLs, and returning bad data.
EmergencyAPI does all of this for you. One integration instead of 27.
27 Government Feeds ──► Raspberry Pi (Adaptive ETL Engine)
GeoJSON │
ArcGIS ├── Normalise to GeoJSON schema
RSS / XML ├── Geocode missing coordinates
CAP-AU ├── Classify event types
Custom JSON ├── Filter noise + duplicates
│
▼
Supabase (PostgreSQL + PostGIS)
│
▼
Vercel (Next.js API + Website)
│
▼
Your ApplicationA dedicated Raspberry Pi runs the Adaptive ETL (Extract, Transform, Load) Engine 24/7. It polls all 27 feeds on adaptive schedules (every 30 seconds for fast feeds, every 5 minutes for slower ones). Each feed has a YAML configuration that defines the source URL, parser, field mappings, and event type classifications.
Incoming data is normalised into a consistent GeoJSON schema, geocoded if coordinates are missing, deduplicated, and upserted into a PostgreSQL database with PostGIS spatial indexes. The API serves this data via Vercel.
When a feed changes its format or goes down, the engine adapts automatically. Circuit breakers prevent cascading failures. Quality checks flag anomalies. The whole pipeline is self-healing.
| Endpoint | What it returns |
|---|---|
| /v1/incidents | All active incidents. Filter by state, type, severity, warning level, bounding box. |
| /v1/incidents/nearby | Incidents within a radius of a coordinate. Proximity search. |
| /v1/events | Spatially clustered incidents with boundary polygons, affected suburbs, severity. |
| /v1/incidents/snapshot | Point-in-time audit trail. What was active at a given moment. |
| /v1/status | Per-feed health, staleness, and incident counts. No auth required. |
| /v1/attribution | Data source attribution for all 27 feeds. No auth required. |
Responses are GeoJSON FeatureCollections by default. CSV and CAP-AU (Common Alerting Protocol Australian Profile) formats are also available via the format parameter.
27 feeds across every Australian state and territory, plus national sources:
| State | Agencies |
|---|---|
| NSW | RFS, SES, Transport |
| VIC | CFA, EMV (OSOM) |
| QLD | QFES (ESCAD), BOM warnings |
| SA | CFS, MFS, SES, SAAS pager |
| WA | DFES incidents + CAP-AU warnings |
| TAS | TFS, SES (KML) |
| ACT | ESA |
| NT | PFES, BOM warnings |
| National | Geoscience Australia earthquakes, DEA satellite hotspots |
For the full list of feeds with URLs, formats, and update intervals, see the Australian Emergency Data Feeds guide.
500 API calls per day
All 27 feeds included
GeoJSON, CSV, and CAP-AU formats
Full filtering (state, type, severity, bbox, proximity)
No credit card required
No expiry
Need more? Paid plans start at A$49/month for higher call volumes and priority support.
Get started in 30 seconds. Sign up, get your API key, fetch your first incident.
EmergencyAPI provides aggregated emergency incident data for informational purposes only. This data is sourced from official government feeds and may be delayed, incomplete, or inaccurate. Do not use this API as a substitute for official emergency warnings. Always refer to your state emergency service for safety-critical decisions.
IncidentsDocsGuidesUse CasesPricingReportsStatusPrivacyTermsComplianceGitHubBuilt by SEY Solutions · 2026