EM-DAT Schema Mapping

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.

What is EM-DAT?

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 Schema

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)

ColumnTypeDescription
idTEXTUnique incident ID (e.g., "qld-qfd-12345")
geometryJSONBGeoJSON geometry (Point, Polygon, or MultiPolygon)
source_stateTEXTAustralian state code (nsw, vic, qld, sa, wa, tas, act, nt, national)
source_agencyTEXTAgency code (rfs, cfs, bom, ga, dea, etc.)
source_feed_idTEXTOriginal ID from the upstream government feed
titleTEXTIncident name or title
event_typeTEXTNormalised type (bushfire, flood, earthquake, storm, rescue, hazmat, etc.)
statusTEXTNormalised status (active, contained, controlled, safe, completed)
warning_levelTEXTAustralian Warning System tier (advice, watch_and_act, emergency_warning, none)
severityTEXTCAP-AU severity (Extreme, Severe, Moderate, Minor, Unknown)
urgencyTEXTCAP-AU urgency (Immediate, Expected, Future, Past, Unknown)
certaintyTEXTCAP-AU certainty (Observed, Likely, Possible, Unlikely, Unknown)
locationJSONBStructured location (address, suburb, LGA, state, confidence)
detailsJSONBSource-specific details (size, resources, aircraft, decoded units)
reported_atTIMESTAMPTZWhen the incident was first reported
updated_atTIMESTAMPTZLast update timestamp
fetched_atTIMESTAMPTZWhen the data was fetched from the source feed
created_atTIMESTAMPTZRecord creation timestamp

Tier 2: Provenance Fields (7 columns)

ColumnTypeDescription
archived_atTIMESTAMPTZWhen this record was archived (composite PK with id)
is_historicalBOOLEANTRUE if imported from historical dataset, FALSE if collected live
source_provenanceJSONBImport metadata (source, agency, feed, import date)
record_quality_confidenceNUMERIC(3,2)Quality score 0.00 to 1.00
original_categoryTEXTOriginal category from source before normalisation
event_fingerprintTEXTDeduplication hash (state + date + address)
ingestion_batch_idUUIDReference 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.

EM-DAT Field Mapping

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.

ColumnTypeEM-DAT FieldPopulatedNotes
impact_deathsINTEGERTotal Deaths~10-20%From historical CSV imports where casualty data was recorded. NULL for routine incidents.
impact_affectedINTEGERTotal Affected~5-10%Declared disasters (DRFA activations) where population impact was assessed.
impact_economicNUMERIC(15,2)Total Damage ('000 US$)<5%Major insured events only. Sources: Insurance Council Australia, government assessments.
magnitudeNUMERIC(5,2)Magnitude~70%Fire = hectares burned (from GA/state spatial data). Earthquakes = Richter/Mw. NULL for non-quantifiable events.
magnitude_scaleTEXTMagnitude Scale~60%Values: 'hectares', 'Richter', 'Mw', 'km/h'. Always check before performing calculations.
event_start_dateTIMESTAMPTZStart Year/Month/Day~95% historical, 0% liveWell populated for CSV imports. NULL for live poller data (use reported_at instead).
event_end_dateTIMESTAMPTZEnd Year/Month/Day~60%Fire boundary datasets have end dates or season endpoints. Some CSV sources lack end dates.
glide_numberTEXTGlide0%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.

Event Type Crosswalk

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_typeEM-DAT Disaster TypeEM-DAT SubtypeGLIDE Code
bushfireWildfireForest fireWF
grass_fireWildfireLand fireWF
floodFloodRiverine / FlashFL / FF
stormStormConvective stormST
cycloneStormTropical cycloneTC
earthquakeEarthquakeGround shakingEQ
extreme_heatExtreme temperatureHeat waveHT
hazmatIndustrial accidentChemical spillAC
vehicle_accidentTransport accidentRoadAC
structure_fireBelow EM-DAT threshold (not a mass disaster unless mass-casualty)
rescueNo EM-DAT equivalent (operational, not a disaster type)
medicalNo EM-DAT equivalent (operational, not a disaster type)
burn_offNot 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 Numbers

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.

Cross-Referencing with EM-DAT

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:

  1. Match by temporal window + state + event type. Map EmergencyAPI source_state to ISO 3166-2 codes (nsw = AU-NSW, vic = AU-VIC, etc.). Match event_type to EM-DAT Disaster Type using the crosswalk table above. Filter by event_start_date or reported_at falling within the EM-DAT event window.
  2. Aggregate EmergencyAPI incidents to disaster level. Group matched incidents and calculate: total incident count, geographic spread (unique LGAs, bounding box), temporal profile (first report to last), and peak activity date.
  3. Enrich the EM-DAT record. The result: EM-DAT provides the impact summary (deaths, affected, economic loss). EmergencyAPI provides the operational detail (how many incidents, which agencies responded, where the activity was concentrated, how the event evolved over time).

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.

Other International Databases

EM-DAT is not the only international disaster database. These related systems use overlapping schemas and can be cross-referenced with EmergencyAPI data.

DatabaseOperatorLinkage to EmergencyAPI
DesInventar SendaiUNDRRSub-national disaster loss data for 100+ countries. EmergencyAPI's state-level granularity maps directly to DesInventar's sub-national requirements.
GDACSEU JRC + OCHAReal-time global disaster alerts. Uses GLIDE numbers. Green/Orange/Red severity system. Public RSS feeds and API.
ReliefWebOCHAHumanitarian situation reports. Uses GLIDE numbers. Public API at reliefweb.int/api.
Sendai Framework MonitorUNDRRCountries report disaster losses against 7 global targets. EmergencyAPI's schema covers Targets A (mortality), B (affected), and C (economic loss) at incident level.
NatCatSERVICEMunich ReGold standard for insured loss data. Commercial and proprietary. Not publicly accessible.
AIDR Disaster MapperAIDRAustralian 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.

Sendai Framework Alignment

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 TargetIndicatorEmergencyAPI Field
A: Reduce mortalityDeaths and missing persons attributed to disastersimpact_deaths
B: Reduce affected peopleDirectly affected people (injured, displaced, homeless)impact_affected
C: Reduce economic lossDirect economic loss attributed to disastersimpact_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.

Data Completeness and Limitations

Researchers should understand what is reliable, what is sparse, and what is absent before building analyses on this data.

Field GroupCompletenessBest Used For
Core incident fields100%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% liveHistorical 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_number0%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.

Try the API FreeView Live MapAPI Documentation
About

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