{
  "type": "Collection",
  "id": "calfire-2025-firep",
  "stac_version": "1.0.0",
  "stac_extensions": [
    "https://stac-extensions.github.io/table/v1.2.0/schema.json"
  ],
  "title": "CAL FIRE Wildfire Perimeters 2025",
  "description": "Historical wildfire perimeter boundaries maintained by the California Department of Forestry and Fire Protection (CAL FIRE) Forest and Range Assessment Program (FRAP), 2025 release (FRAP fire251gdb, layer firep25_1). Covers all recorded fire incidents in California through 2025. Each polygon represents the final perimeter of a distinct fire event with attributes including fire name, year, agency, cause, and area in acres. 23,334 features. POLYGON/MULTIPOLYGON geometries reprojected to WGS84 (OGC:CRS84). This is the 2025 refresh of the calfire-2024-firep collection.",
  "license": "CC-BY-4.0",
  "extent": {
    "spatial": {
      "bbox": [
        [
          -124.4,
          32.53,
          -114.14,
          42.63
        ]
      ]
    },
    "temporal": {
      "interval": [
        [
          "1878-01-01T00:00:00Z",
          "2025-12-31T23:59:59Z"
        ]
      ]
    }
  },
  "links": [
    {
      "rel": "self",
      "href": "https://data.source.coop/cboettig/fire/calfire-2025/firep/stac-collection.json",
      "type": "application/json"
    },
    {
      "rel": "root",
      "href": "https://s3-west.nrp-nautilus.io/public-data/stac/catalog.json",
      "type": "application/json"
    },
    {
      "rel": "parent",
      "href": "https://data.source.coop/cboettig/fire/stac-collection.json",
      "type": "application/json"
    },
    {
      "rel": "license",
      "href": "https://creativecommons.org/licenses/by/4.0/",
      "type": "text/html"
    }
  ],
  "providers": [
    {
      "name": "California Department of Forestry and Fire Protection (CAL FIRE) FRAP",
      "roles": [
        "producer",
        "licensor"
      ],
      "url": "https://frap.fire.ca.gov/mapping/gis-data/"
    },
    {
      "name": "Boettiger Lab, UC Berkeley",
      "roles": [
        "processor",
        "host"
      ],
      "url": "https://data.source.coop/cboettig/fire/"
    }
  ],
  "keywords": [
    "fire",
    "wildfire",
    "California",
    "CAL FIRE",
    "FRAP",
    "perimeters",
    "2025"
  ],
  "assets": {
    "firep-parquet": {
      "href": "https://data.source.coop/cboettig/fire/calfire-2025/firep.parquet",
      "type": "application/x-parquet",
      "title": "CAL FIRE Wildfire Perimeters 2025 GeoParquet",
      "roles": [
        "data"
      ],
      "description": "DuckDB-native GeoParquet, 23,334 features, POLYGON/MULTIPOLYGON in WGS84 (OGC:CRS84).",
      "table:columns": [
        {
          "name": "_cng_fid",
          "type": "int64",
          "description": "Cloud-native geometry feature ID. Unique per source feature — one value per source polygon."
        },
        {
          "name": "OBJECTID",
          "type": "int64",
          "description": "Source ESRI object ID from the FRAP GDB."
        },
        {
          "name": "YEAR_",
          "type": "int16",
          "description": "Calendar year the fire was recorded."
        },
        {
          "name": "STATE",
          "type": "string",
          "description": "State abbreviation (always 'CA')."
        },
        {
          "name": "AGENCY",
          "type": "string",
          "description": "Responding/protecting agency code (CAL FIRE FRAP domain). Values: USF=USDA Forest Service, CDF=California Department of Forestry and Fire Protection, CCO=Contract County, NPS=National Park Service, BLM=Bureau of Land Management, LRA=Local Response Area, DOD=Department of Defense, FWS=USDI Fish and Wildlife Service, BIA=USDI Bureau of Indian Affairs, OTH=Other, NOP=No Protection, PVT=Private.",
          "values": [
            "USF",
            "CDF",
            "CCO",
            "NPS",
            "BLM",
            "LRA",
            "DOD",
            "FWS",
            "BIA",
            "OTH",
            "NOP",
            "PVT"
          ]
        },
        {
          "name": "UNIT_ID",
          "type": "string",
          "description": "CAL FIRE unit identifier."
        },
        {
          "name": "FIRE_NAME",
          "type": "string",
          "description": "Name of the fire."
        },
        {
          "name": "INC_NUM",
          "type": "string",
          "description": "Local incident number."
        },
        {
          "name": "IRWINID",
          "type": "string",
          "description": "IRWIN system incident ID."
        },
        {
          "name": "ALARM_DATE",
          "type": "datetime",
          "description": "Date the fire was reported."
        },
        {
          "name": "CONT_DATE",
          "type": "datetime",
          "description": "Date the fire was contained."
        },
        {
          "name": "C_METHOD",
          "type": "int16",
          "description": "Perimeter collection-method code (CAL FIRE FRAP domain). Values: 1=GPS Ground, 2=GPS Air, 3=Infrared, 4=Other Imagery, 5=Photo Interpretation, 6=Hand Drawn, 7=Mixed Collection Methods, 8=Unknown.",
          "values": [
            1,
            2,
            3,
            4,
            5,
            6,
            7,
            8
          ]
        },
        {
          "name": "CAUSE",
          "type": "int16",
          "description": "Fire cause code (CAL FIRE FRAP domain). Values: 1=Lightning, 2=Equipment Use, 3=Smoking, 4=Campfire, 5=Debris, 6=Railroad, 7=Arson, 8=Playing with Fire, 9=Miscellaneous, 10=Vehicle, 11=Electrical Power, 12=Firefighter Training, 13=Non-Firefighter Training, 14=Unknown/Unidentified, 15=Structure, 16=Aircraft, 17=Volcanic, 18=Escaped Prescribed Burn, 19=Illegal Alien Campfire.",
          "values": [
            1,
            2,
            3,
            4,
            5,
            6,
            7,
            8,
            9,
            10,
            11,
            12,
            13,
            14,
            15,
            16,
            17,
            18,
            19
          ]
        },
        {
          "name": "OBJECTIVE",
          "type": "int16",
          "description": "Management objective code (CAL FIRE FRAP domain). Values: 1=Suppression (Wildfire), 2=Resource Benefit (WFU).",
          "values": [
            1,
            2
          ]
        },
        {
          "name": "GIS_ACRES",
          "type": "float32",
          "description": "GIS-calculated area in acres of the source perimeter polygon."
        },
        {
          "name": "COMPLEX_ID",
          "type": "string",
          "description": "Complex fire ID, if part of a complex."
        },
        {
          "name": "COMPLEX_NAME",
          "type": "string",
          "description": "Complex fire name, if part of a complex."
        },
        {
          "name": "COMMENTS",
          "type": "string",
          "description": "Additional comments."
        },
        {
          "name": "FIRE_NUM",
          "type": "string",
          "description": "Historical fire number."
        },
        {
          "name": "Shape_Length",
          "type": "float64",
          "description": "Perimeter length in meters (source projected CRS, EPSG:3310)."
        },
        {
          "name": "Shape_Area",
          "type": "float64",
          "description": "Area in square meters (source projected CRS, EPSG:3310)."
        },
        {
          "name": "GlobalID",
          "type": "string",
          "description": "Source ESRI GlobalID."
        },
        {
          "name": "Shape",
          "type": "geometry",
          "description": "Feature geometry, POLYGON/MULTIPOLYGON in WGS84 (OGC:CRS84) (GeoParquet)."
        }
      ]
    },
    "firep-pmtiles": {
      "href": "https://data.source.coop/cboettig/fire/calfire-2025/firep.pmtiles",
      "type": "application/vnd.pmtiles",
      "title": "CAL FIRE Wildfire Perimeters 2025 PMTiles",
      "roles": [
        "data"
      ],
      "description": "Vector tiles for web map visualization. MapLibre source-layer: firep.",
      "vector:layers": [
        "firep"
      ],
      "table:columns": [
        {
          "name": "_cng_fid",
          "type": "int64"
        },
        {
          "name": "OBJECTID",
          "type": "int64"
        },
        {
          "name": "YEAR_",
          "type": "int16"
        },
        {
          "name": "STATE",
          "type": "string"
        },
        {
          "name": "AGENCY",
          "type": "string",
          "values": [
            "USF",
            "CDF",
            "CCO",
            "NPS",
            "BLM",
            "LRA",
            "DOD",
            "FWS",
            "BIA",
            "OTH",
            "NOP",
            "PVT"
          ]
        },
        {
          "name": "UNIT_ID",
          "type": "string"
        },
        {
          "name": "FIRE_NAME",
          "type": "string"
        },
        {
          "name": "INC_NUM",
          "type": "string"
        },
        {
          "name": "IRWINID",
          "type": "string"
        },
        {
          "name": "ALARM_DATE",
          "type": "datetime"
        },
        {
          "name": "CONT_DATE",
          "type": "datetime"
        },
        {
          "name": "C_METHOD",
          "type": "int16",
          "values": [
            1,
            2,
            3,
            4,
            5,
            6,
            7,
            8
          ]
        },
        {
          "name": "CAUSE",
          "type": "int16",
          "values": [
            1,
            2,
            3,
            4,
            5,
            6,
            7,
            8,
            9,
            10,
            11,
            12,
            13,
            14,
            15,
            16,
            17,
            18,
            19
          ]
        },
        {
          "name": "OBJECTIVE",
          "type": "int16",
          "values": [
            1,
            2
          ]
        },
        {
          "name": "GIS_ACRES",
          "type": "float32"
        },
        {
          "name": "COMPLEX_ID",
          "type": "string"
        },
        {
          "name": "COMPLEX_NAME",
          "type": "string"
        },
        {
          "name": "COMMENTS",
          "type": "string"
        },
        {
          "name": "FIRE_NUM",
          "type": "string"
        },
        {
          "name": "Shape_Length",
          "type": "float64"
        },
        {
          "name": "Shape_Area",
          "type": "float64"
        },
        {
          "name": "GlobalID",
          "type": "string"
        }
      ]
    },
    "firep-hex": {
      "href": "https://data.source.coop/cboettig/fire/calfire-2025/firep/hex/h0=*/data_0.parquet",
      "type": "application/x-parquet",
      "title": "CAL FIRE Wildfire Perimeters 2025 H3 Hex Parquet (resolution 10)",
      "roles": [
        "data",
        "h3-parquet"
      ],
      "description": "H3 resolution-10 hex parquet for spatial joins/aggregation. Hive-partitioned by h0. One row per (feature, H3 cell) pair — source attribute columns are repeated on every cell a feature covers.",
      "h3:native_resolution": 10,
      "h3:parent_resolutions": [
        9,
        8,
        0
      ],
      "table:columns": [
        {
          "name": "_cng_fid",
          "type": "int64",
          "description": "Cloud-native geometry feature ID. Unique per source feature, repeated on every hex cell covering that polygon. Use for feature-level deduplication: COUNT(DISTINCT _cng_fid), GROUP BY _cng_fid, or joins to the GeoParquet asset."
        },
        {
          "name": "YEAR_",
          "type": "int16",
          "description": "Calendar year the fire was recorded (repeated per hex row of the feature)."
        },
        {
          "name": "STATE",
          "type": "string",
          "description": "State abbreviation (always 'CA')."
        },
        {
          "name": "AGENCY",
          "type": "string",
          "description": "Responding/protecting agency code (CAL FIRE FRAP domain). Values: USF=USDA Forest Service, CDF=California Department of Forestry and Fire Protection, CCO=Contract County, NPS=National Park Service, BLM=Bureau of Land Management, LRA=Local Response Area, DOD=Department of Defense, FWS=USDI Fish and Wildlife Service, BIA=USDI Bureau of Indian Affairs, OTH=Other, NOP=No Protection, PVT=Private.",
          "values": [
            "USF",
            "CDF",
            "CCO",
            "NPS",
            "BLM",
            "LRA",
            "DOD",
            "FWS",
            "BIA",
            "OTH",
            "NOP",
            "PVT"
          ]
        },
        {
          "name": "UNIT_ID",
          "type": "string",
          "description": "CAL FIRE unit identifier."
        },
        {
          "name": "FIRE_NAME",
          "type": "string",
          "description": "Name of the fire (repeated per hex row of the feature)."
        },
        {
          "name": "INC_NUM",
          "type": "string",
          "description": "Local incident number."
        },
        {
          "name": "IRWINID",
          "type": "string",
          "description": "IRWIN system incident ID."
        },
        {
          "name": "ALARM_DATE",
          "type": "datetime",
          "description": "Date the fire was reported."
        },
        {
          "name": "CONT_DATE",
          "type": "datetime",
          "description": "Date the fire was contained."
        },
        {
          "name": "C_METHOD",
          "type": "int16",
          "description": "Perimeter collection-method code (CAL FIRE FRAP domain). Values: 1=GPS Ground, 2=GPS Air, 3=Infrared, 4=Other Imagery, 5=Photo Interpretation, 6=Hand Drawn, 7=Mixed Collection Methods, 8=Unknown.",
          "values": [
            1,
            2,
            3,
            4,
            5,
            6,
            7,
            8
          ]
        },
        {
          "name": "CAUSE",
          "type": "int16",
          "description": "Fire cause code (CAL FIRE FRAP domain). Values: 1=Lightning, 2=Equipment Use, 3=Smoking, 4=Campfire, 5=Debris, 6=Railroad, 7=Arson, 8=Playing with Fire, 9=Miscellaneous, 10=Vehicle, 11=Electrical Power, 12=Firefighter Training, 13=Non-Firefighter Training, 14=Unknown/Unidentified, 15=Structure, 16=Aircraft, 17=Volcanic, 18=Escaped Prescribed Burn, 19=Illegal Alien Campfire.",
          "values": [
            1,
            2,
            3,
            4,
            5,
            6,
            7,
            8,
            9,
            10,
            11,
            12,
            13,
            14,
            15,
            16,
            17,
            18,
            19
          ]
        },
        {
          "name": "OBJECTIVE",
          "type": "int16",
          "description": "Management objective code (CAL FIRE FRAP domain). Values: 1=Suppression (Wildfire), 2=Resource Benefit (WFU).",
          "values": [
            1,
            2
          ]
        },
        {
          "name": "GIS_ACRES",
          "type": "float32",
          "description": "GIS-calculated area in acres of the source perimeter polygon. **Per-feature value, repeated on every hex cell the fire covers — NEVER SUM(GIS_ACRES) on hex data (it multiplies by the cell count). To sum burned acreage, deduplicate first: SELECT SUM(GIS_ACRES) FROM (SELECT DISTINCT _cng_fid, GIS_ACRES FROM ...). To compute hex-derived area instead, use COUNT(DISTINCT h10) × cell_area_at_resolution_10 (see h3-guide for per-resolution cell areas).**"
        },
        {
          "name": "COMPLEX_NAME",
          "type": "string",
          "description": "Complex fire name, if part of a complex."
        },
        {
          "name": "COMPLEX_ID",
          "type": "string",
          "description": "Complex fire ID, if part of a complex."
        },
        {
          "name": "COMMENTS",
          "type": "string",
          "description": "Additional comments."
        },
        {
          "name": "FIRE_NUM",
          "type": "string",
          "description": "Historical fire number."
        },
        {
          "name": "Shape_Length",
          "type": "float64",
          "description": "Perimeter length in meters of the source polygon. **Per-feature value, repeated on every hex cell — never SUM on hex; deduplicate by _cng_fid first.**"
        },
        {
          "name": "Shape_Area",
          "type": "float64",
          "description": "Area in square meters of the source polygon. **Per-feature value, repeated on every hex cell — never SUM on hex; deduplicate by _cng_fid first.**"
        },
        {
          "name": "h10",
          "type": "uint64",
          "description": "H3 cell ID at resolution 10 (native resolution; one row per (feature, h10) pair). ~15,047 m² ≈ 1.5 ha ≈ 3.7 acres."
        },
        {
          "name": "h9",
          "type": "uint64",
          "description": "H3 cell ID at resolution 9 (~105,332 m² ≈ 10.5 ha ≈ 26 acres)."
        },
        {
          "name": "h8",
          "type": "uint64",
          "description": "H3 cell ID at resolution 8 (~737,327 m² ≈ 0.74 km² ≈ 182 acres)."
        },
        {
          "name": "h0",
          "type": "int64",
          "description": "H3 cell ID at resolution 0, used as the partition key for hive-partitioned reads."
        }
      ]
    }
  }
}
