API · v1
Open API
Every fire in this atlas as JSON, CSV and GeoJSON. No key, no sign-up and no hard rate limit: perimeters, hotspots, affected municipalities, weather, fire danger and smoke.
How it works
- No key and no sign-up. If you are pulling a lot, go slowly and cache.
- CORS is open: you can call it straight from a browser.
- Responses are cacheable for five minutes to an hour, depending on the resource.
- Data under CC BY 4.0: use it citing WorldFires and the original source.
- Version v1 will not change in a breaking way; new fields are appended.
Examples
/api/v1/fires?country=ES&year=2026&min_ha=1000
Fires in Spain in 2026 above 1,000 ha
/api/v1/fires?bbox=40.0,-5.2,40.6,-4.2&format=geojson
What lies inside a rectangle, as GeoJSON
/api/v1/fires/navaluenga-2026-07
One fire in full
/api/v1/fires/navaluenga-2026-07/geometry
The burnt perimeter
/api/v1/fires/navaluenga-2026-07/detections?format=csv
Its VIIRS detections as CSV
/api/v1/fires/navaluenga-2026-07/weather
Day-by-day weather and FWI
/api/v1/active?hours=72
What is burning now, last 72 hours
/api/v1/hotspots?lat=38.99&lon=-1.86&radius_km=50&hours=48
Single hotspots within 50 km of a point, last 48 hours
/api/v1/hotspots?bbox=36,-9.5,44,3.5&format=geojson
Hotspots of the last 24 hours over mainland Spain, as GeoJSON
/api/v1/countries
Countries covered and their official series
/api/v1/stats?country=PT
Portugal totals by year and month
/api/v1/places?country=ES&q=nava
Search municipalities
Filters for /fires
| country | Country code, two or three letters (ES, ESP). |
| year | Year the fire started. |
| from / to | Date range, yyyy-mm-dd. |
| min_ha / max_ha | Minimum and maximum area, in hectares. |
| bbox | Rectangle lat_min,lon_min,lat_max,lon_max. |
| region / place | Slug of the region or the municipality. |
| active | active=true for fires still burning. |
| lat / lon / radius_km | Circle around a point, radius in km. Only /hotspots and /active. |
| hours | Hours back for /hotspots (1-168) and /active (24, 72, 168). |
| static | static=true keeps flares, industry and volcanoes, marked static. |
| q | Searches the name and the slug. |
| sort / order | Sort by start, end or area; order=asc or desc. |
| limit / offset | limit up to 1,000 and offset to page. |
| format | json (default), csv or geojson. |
| pretty | pretty=1 to read it by eye. |
Shape of the response
Everything returns an object with «meta» and «data». Meta carries the count, the licence and the sources; csv and geojson return the standard format instead.
{
"meta": {
"count": 2, "total": 1232, "limit": 2, "offset": 0,
"generated": "2026-10-23T16:27:14+00:00",
"license": "CC BY 4.0 — cite WorldFires and the original sources",
"sources": { "perimeters": "EFFIS / Copernicus EMS (CC BY 4.0); GWIS / Copernicus (reconstructed from VIIRS) (CC BY 4.0); MTBS (USGS / USDA Forest Service) (Public domain); …", "hotspots": "NASA FIRMS (VIIRS)" }
},
"data": [
{
"slug": "navaluenga-2026-07", "country": "ES", "name": "Navaluenga",
"start": "2026-07-22", "end": "2026-08-09", "days": 19, "active": false,
"hectares": 63974, "area_source": "effis_perimeter",
"hotspots": 2841, "frp_max_mw": 1216.5,
"lat": 40.41, "lon": -4.69, "bbox": [-4.99, 40.26, -4.31, 40.51],
"municipality": "navaluenga", "region": "avila",
"url": "https://worldfires.org/en/fire/navaluenga-2026-07"
}
]
}Where the data comes from
Perimeters from EFFIS and GWIS (Copernicus), VIIRS hotspots from NASA FIRMS, administrative boundaries from geoBoundaries / OCHA COD-AB, ERA5 weather from Open-Meteo with the fire weather index computed here, and smoke from the Copernicus CAMS model.
Suggested citation: WorldFires (worldfires.org), based on EFFIS and GWIS (Copernicus) and NASA FIRMS.