fema_search_public_assistance
Search FEMA Public Assistance funded projects using filters like state, disaster number, amount, and date. Get exact totals and paginated results from the OpenFEMA dataset.
Instructions
Search FEMA Public Assistance funded projects — federal emergency-assistance spend to state/local/tribal applicants (keyless OpenFEMA, dataset PublicAssistanceFundedProjectsDetails v2, ~800k rows). Structured filters (module-built into an OData $filter; each LIVE-VERIFIED to narrow): state (→ stateAbbreviation), disasterNumber, applicantId, damageCategoryCode (e.g. 'B' = Emergency Protective Measures), incidentType, minProjectAmount/maxProjectAmount (projectAmount ge/le), declaredDateFrom/declaredDateTo (declarationDate ge/le). limit (≤1000, def 100 → $top), offset (→ $skip). HONESTY: the module ALWAYS sends $inlinecount=allpages so totalAvailable is the EXACT filtered total (metadata.count), never the page length; amount fields are number|null (a real 0 stays 0, absent → null); genuine-empty ⇒ complete:true/total:0; an outage/400/404 THROWS (never a fake empty).
Input Schema
| Name | Required | Description | Default |
|---|---|---|---|
| limit | No | Rows per page ($top), 1..1000, default 100. | |
| state | No | Filter by applicant state (→ stateAbbreviation eq 'XX'). 2-letter code. | |
| offset | No | 0-based row offset ($skip) for pagination, default 0. | |
| applicantId | No | Filter by applicant id (→ applicantId eq '...'). e.g. '015-UF5E0-00'. | |
| incidentType | No | Filter by incident type (→ incidentType eq '...'). e.g. 'Flood', 'Hurricane', 'Severe Storm'. | |
| declaredDateTo | No | Latest declaration date, inclusive (→ declarationDate le 'ISO'). | |
| disasterNumber | No | Filter by FEMA disaster number (→ disasterNumber eq N). | |
| declaredDateFrom | No | Earliest declaration date, inclusive (→ declarationDate ge 'ISO'). | |
| maxProjectAmount | No | Maximum project amount (→ projectAmount le N). | |
| minProjectAmount | No | Minimum project amount (→ projectAmount ge N). | |
| damageCategoryCode | No | Filter by PA damage category code (→ damageCategoryCode eq 'X'). e.g. 'B' = Emergency Protective Measures, 'C'–'G' = permanent work. |