EmergencyAPI's historical archive contains 3.98 million records dating back to 1903. The schema includes 8 fields aligned with EM-DAT, the world's most cited global disaster database (CRED, UCLouvain). This guide documents the field-level mapping, discloses what is populated and what is sparse, and explains how to cross-reference EmergencyAPI data with EM-DAT, DesInventar, GDACS, and the Sendai Framework Monitor.
EM-DAT is the Emergency Events Database maintained by the Centre for Research on the Epidemiology of Disasters (CRED) at the Universite catholique de Louvain in Brussels. It has tracked global disasters since 1988, with records going back to 1900. The database contains over 26,000 mass disaster events and is cited by the WHO, UNDRR (United Nations Office for Disaster Risk Reduction), World Bank, IPCC, and thousands of academic papers.
An event enters EM-DAT if it meets at least one threshold: 10 or more people killed, 100 or more people affected, a declaration of a state of emergency, or a call for international assistance.
Key difference: EM-DAT operates at the disasterlevel. One EM-DAT record represents an entire event like "2020 Black Summer Bushfires, Australia." EmergencyAPI operates at the incident level. That same event corresponds to thousands of individual incidents reported by state fire services over several months.
EM-DAT has no public API. Data is available via batch download at emdat.be after registration.
The archive_records table has a three-tier structure. The first 18 columns are the standard EmergencyAPI incident schema (shared with the live API). Seven provenance columns track data lineage. Eight EM-DAT columns align with international disaster data standards.
Tier 1: EmergencyAPI Core (18 columns)
| Column | Type | Description |
|---|---|---|
| id | TEXT | Unique incident ID (e.g., "qld-qfd-12345") |
| geometry | JSONB | GeoJSON geometry (Point, Polygon, or MultiPolygon) |
| source_state | TEXT | Australian state code (nsw, vic, qld, sa, wa, tas, act, nt, national) |
| source_agency | TEXT | Agency code (rfs, cfs, bom, ga, dea, etc.) |
| source_feed_id | TEXT | Original ID from the upstream government feed |
| title | TEXT | Incident name or title |
| event_type | TEXT | Normalised type (bushfire, flood, earthquake, storm, rescue, hazmat, etc.) |
| status | TEXT | Normalised status (active, contained, controlled, safe, completed) |
| warning_level | TEXT | Australian Warning System tier (advice, watch_and_act, emergency_warning, none) |
| severity | TEXT | CAP-AU severity (Extreme, Severe, Moderate, Minor, Unknown) |
| urgency | TEXT | CAP-AU urgency (Immediate, Expected, Future, Past, Unknown) |
| certainty | TEXT | CAP-AU certainty (Observed, Likely, Possible, Unlikely, Unknown) |
| location | JSONB | Structured location (address, suburb, LGA, state, confidence) |
| details | JSONB | Source-specific details (size, resources, aircraft, decoded units) |
| reported_at | TIMESTAMPTZ | When the incident was first reported |
| updated_at | TIMESTAMPTZ | Last update timestamp |
| fetched_at | TIMESTAMPTZ | When the data was fetched from the source feed |
| created_at | TIMESTAMPTZ | Record creation timestamp |
Tier 2: Provenance Fields (7 columns)
| Column | Type | Description |
|---|---|---|
| archived_at | TIMESTAMPTZ | When this record was archived (composite PK with id) |
| is_historical | BOOLEAN | TRUE if imported from historical dataset, FALSE if collected live |
| source_provenance | JSONB | Import metadata (source, agency, feed, import date) |
| record_quality_confidence | NUMERIC(3,2) | Quality score 0.00 to 1.00 |
| original_category | TEXT | Original category from source before normalisation |
| event_fingerprint | TEXT | Deduplication hash (state + date + address) |
| ingestion_batch_id | UUID | Reference to which import batch this row came from |
Tier 3: EM-DAT International Fields (8 columns)
These fields are documented in detail in the next section.
Each EM-DAT field below shows its EmergencyAPI column name, data type, the corresponding EM-DAT field, and how much of the archive is actually populated. Population percentages are approximate and vary by data source.
| Column | Type | EM-DAT Field | Populated | Notes |
|---|---|---|---|---|
| impact_deaths | INTEGER | Total Deaths | ~10-20% | From historical CSV imports where casualty data was recorded. NULL for routine incidents. |
| impact_affected | INTEGER | Total Affected | ~5-10% | Declared disasters (DRFA activations) where population impact was assessed. |
| impact_economic | NUMERIC(15,2) | Total Damage ('000 US$) | <5% | Major insured events only. Sources: Insurance Council Australia, government assessments. |
| magnitude | NUMERIC(5,2) | Magnitude | ~70% | Fire = hectares burned (from GA/state spatial data). Earthquakes = Richter/Mw. NULL for non-quantifiable events. |
| magnitude_scale | TEXT | Magnitude Scale | ~60% | Values: 'hectares', 'Richter', 'Mw', 'km/h'. Always check before performing calculations. |
| event_start_date | TIMESTAMPTZ | Start Year/Month/Day | ~95% historical, 0% live | Well populated for CSV imports. NULL for live poller data (use reported_at instead). |
| event_end_date | TIMESTAMPTZ | End Year/Month/Day | ~60% | Fire boundary datasets have end dates or season endpoints. Some CSV sources lack end dates. |
| glide_number | TEXT | Glide | 0% | Field exists but is not yet populated. Reserved for future enhancement. See GLIDE section below. |
Not all fields are fully populated. Impact fields (deaths, affected, economic) are sparse because most incidents are routine operational events that do not meet EM-DAT's inclusion threshold (10 dead, 100 affected, state of emergency, or international appeal). This is by design: EmergencyAPI captures every incident reported by Australian emergency services, not just major disasters.
EmergencyAPI uses operational event types from Australian emergency services. EM-DAT uses a hierarchical classification (Group, Subgroup, Type, Subtype). This table maps between the two systems and includes the GLIDE type code used by the UN for cross-database linkage.
| EmergencyAPI event_type | EM-DAT Disaster Type | EM-DAT Subtype | GLIDE Code |
|---|---|---|---|
| bushfire | Wildfire | Forest fire | WF |
| grass_fire | Wildfire | Land fire | WF |
| flood | Flood | Riverine / Flash | FL / FF |
| storm | Storm | Convective storm | ST |
| cyclone | Storm | Tropical cyclone | TC |
| earthquake | Earthquake | Ground shaking | EQ |
| extreme_heat | Extreme temperature | Heat wave | HT |
| hazmat | Industrial accident | Chemical spill | AC |
| vehicle_accident | Transport accident | Road | AC |
| structure_fire | Below EM-DAT threshold (not a mass disaster unless mass-casualty) | ||
| rescue | No EM-DAT equivalent (operational, not a disaster type) | ||
| medical | No EM-DAT equivalent (operational, not a disaster type) | ||
| burn_off | Not a disaster (planned hazard reduction) | ||
Many EmergencyAPI event types (rescue, medical, structure fire, burn-off) fall below EM-DAT's inclusion threshold and have no direct equivalent. This is a feature: EmergencyAPI captures operational-level events that EM-DAT deliberately excludes, giving researchers access to the full spectrum of emergency service activity.
GLIDE (GLobal unique disaster IDEntifier) is managed by the Asian Disaster Reduction Center (ADRC) in collaboration with CRED, UNDP, IFRC, and OCHA. It is the primary mechanism for linking the same disaster across different international databases.
Format: TYPE-YEAR-SERIAL-ISO
Example: WF-2020-000012-AUS (a 2020 wildfire in Australia)
Type codes include WF (wildfire), FL (flood), EQ (earthquake), TC (tropical cyclone), ST (storm), TS (tsunami), DR (drought), VO (volcano), HT (heat wave), and LS (landslide). ADRC typically issues GLIDE numbers within 24 to 48 hours of a significant event.
Status in EmergencyAPI: The glide_number column exists in archive_records but is currently unpopulated (0%). This field is reserved for future enhancement. Plans include retroactive population for major historical events and potential automated assignment via event fingerprinting against the GLIDE database.
If your research requires GLIDE cross-referencing today, use the temporal + geographic + event type join approach described in the next section.
The granularity difference between EM-DAT and EmergencyAPI is the key to understanding how they complement each other. One EM-DAT record for "2020 Black Summer Bushfires, Australia" corresponds to thousands of individual EmergencyAPI incidents across multiple states and months.
Recommended join approach:
EM-DAT tells you what happened and how bad it was. EmergencyAPI tells you what it looked like operationally, in real time, at incident level. The combination is more valuable than either dataset alone.
EM-DAT is not the only international disaster database. These related systems use overlapping schemas and can be cross-referenced with EmergencyAPI data.
| Database | Operator | Linkage to EmergencyAPI |
|---|---|---|
| DesInventar Sendai | UNDRR | Sub-national disaster loss data for 100+ countries. EmergencyAPI's state-level granularity maps directly to DesInventar's sub-national requirements. |
| GDACS | EU JRC + OCHA | Real-time global disaster alerts. Uses GLIDE numbers. Green/Orange/Red severity system. Public RSS feeds and API. |
| ReliefWeb | OCHA | Humanitarian situation reports. Uses GLIDE numbers. Public API at reliefweb.int/api. |
| Sendai Framework Monitor | UNDRR | Countries report disaster losses against 7 global targets. EmergencyAPI's schema covers Targets A (mortality), B (affected), and C (economic loss) at incident level. |
| NatCatSERVICE | Munich Re | Gold standard for insured loss data. Commercial and proprietary. Not publicly accessible. |
| AIDR Disaster Mapper | AIDR | Australian historical events since 1869. Feeds into EM-DAT for Australian events. Managed by AFAC. |
The GLIDE number is the primary linkage mechanism between these databases. EM-DAT, GDACS, ReliefWeb, DesInventar, and IFRC GO all reference GLIDE numbers, though coverage is inconsistent across systems.
The Sendai Framework for Disaster Risk Reduction 2015-2030 defines seven global targets that countries report on through the Sendai Framework Monitor. EmergencyAPI's schema covers the raw data requirements for three of those targets at incident level.
| Sendai Target | Indicator | EmergencyAPI Field |
|---|---|---|
| A: Reduce mortality | Deaths and missing persons attributed to disasters | impact_deaths |
| B: Reduce affected people | Directly affected people (injured, displaced, homeless) | impact_affected |
| C: Reduce economic loss | Direct economic loss attributed to disasters | impact_economic |
This alignment matters for government customers who need to report on Sendai indicators, and for researchers studying disaster risk reduction outcomes. EmergencyAPI provides the incident-level data that gets aggregated into national Sendai reports. Combined with source_state and event_type, this data supports sub-national analysis that the Sendai Framework requires but country-level databases like EM-DAT cannot provide.
Researchers should understand what is reliable, what is sparse, and what is absent before building analyses on this data.
| Field Group | Completeness | Best Used For |
|---|---|---|
| Core incident fields | 100% | All queries. Every record has id, geometry, event_type, state, agency. |
| magnitude + magnitude_scale | ~70% | Fire extent analysis (hectares), earthquake magnitude (Richter/Mw). |
| event_start_date | ~95% historical, 0% live | Historical trend analysis. For live data, use reported_at instead. |
| event_end_date | ~60% | Incident duration. Fire season analysis. Best for spatial fire data. |
| impact_deaths | ~10-20% | Major disaster impact analysis only. NULL for routine incidents. |
| impact_affected | ~5-10% | Major declared disaster analysis only. |
| impact_economic | <5% | Unreliable for most events. Use only for major insured events (fires, cyclones). |
| glide_number | 0% | Not yet available. Reserved for future use. |
Important: Live poller data (collected since April 2026) has NULL for all EM-DAT fields. Historical imports have varying coverage depending on the source dataset. Always check field nullability before analysis. Use WHERE is_historical = TRUE to limit queries to historical imports with populated EM-DAT fields.
Data completeness will improve over time as additional historical datasets are imported and as major events are retroactively enriched with impact data.
Query 3.98 million historical emergency records.
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