---
title: "Returns federal disaster declarations from OpenFEMA — every DR (major disaster), EM (emergency), and FM (fire management) declaration since 1953, one record per (declaration, designated county)"
method: GET
path: "/v1/fema-disasters"
---

# Returns federal disaster declarations from OpenFEMA — every DR (major disaster), EM (emergency), and FM (fire management) declaration since 1953, one record per (declaration, designated county)

`GET /v1/fema-disasters`

## Request

- Base URL: `https://api.keyvex.com`
- URL: `https://api.keyvex.com/v1/fema-disasters`
- Auth: API key in header `x-api-key`

Returns federal disaster declarations from OpenFEMA — every DR (major disaster), EM (emergency), and FM (fire management) declaration since 1953, one record per (declaration, designated county). ~70K records. Use this when the user asks about: hurricanes / floods / wildfires / severe storms hitting a state or county, which counties were designated for FEMA assistance, active vs closed-out disasters, or to anchor an insurance / construction / utility / muni-credit question to the official federal declaration.  Record shape: fema_declaration_string ('DR-4728-CA'), declaration type + date, incident_type ('Hurricane', 'Flood', 'Fire', 'Severe Storm'...), declaration_title ('HURRICANE IAN'), designated_area (county) + FIPS codes, and the four assistance-program flags (individual_assistance, individuals_households_program, public_assistance, hazard_mitigation) — public_assistance=true is the infrastructure-rebuild-money flag.  A single disaster spans MANY records (one per designated county): filter fema_declaration_string or disaster_number for all areas of one event; filter state + since for a state's recent disasters.  Cross-source: follow a declaration with get_federal_contracts / get_federal_grants (recipient_name or date-windowed) for the rebuild spend, and get_material_events for insurer 8-Ks after major events.  Pure-publisher posture: FEMA's declarations as published — no derived damage estimates or exposure scores.

## Query parameters

- `id` string
- `fema_declaration_string` string
- `disaster_number` integer
- `state` string
- `declaration_type` 'DR' | 'EM' | 'FM'
- `incident_type` string
- `title` string
- `since` string
- `until` string
- `sort_order` 'asc' | 'desc'
- `limit` integer

## Response `200`

JSON envelope: { results: [...], count, has_more }.

## Other responses

- `400`: Invalid parameter.
- `401`: Missing or invalid API key.
- `402`: This tool requires a higher plan (upgrade_required). Retrying will not help.
- `429`: Tier rate/quota limit reached (rate_limited). Retry-After points at the reset.

---

[API](https://skmtc.dev/keyvex/apis/keyvex-api.md) · [All operations](https://skmtc.dev/keyvex/apis/keyvex-api/llms.txt) · [OpenAPI document](https://skmtc.dev/keyvex/apis/keyvex-api/revisions/01c0210c19cd?raw)
