---
name: noaa-incidentnews-oil-spills-ingestion
description: "How to get NOAA IncidentNews oil spill & marine incident database data into a pandas DataFrame and Parquet: access, the request, the format, limits, quirks and terms."
---

# Load NOAA IncidentNews incidents into pandas and Parquet

Source entry: https://signal-lab.qdt.ai/datasets/noaa-incidentnews-oil-spills
Provider: https://incidentnews.noaa.gov/
Checked against the provider's documentation: 2026-11-05

## Access
- No key for the public IncidentNews site, raw-data page and CSV export.

## Request
```bash
curl -s 'https://incidentnews.noaa.gov/raw/incidents.csv' -o incidents.csv
```

## Format
CSV (incidents.csv): id, open_date, name, location, lat, lon, threat, tags, commodity, measure_* fields, max_ptl_release_gallons, posts, description.

## Load into pandas and Parquet
Needs Python 3 with requests, pandas and pyarrow.
```python
"""NOAA IncidentNews incidents CSV -> pandas -> Parquet."""
import io
import pandas as pd
import requests

UA = {"User-Agent": "SignalLabCheck/1.0"}
URL = "https://incidentnews.noaa.gov/raw/incidents.csv"
r = requests.get(URL, headers=UA, timeout=120)
r.raise_for_status()
df = pd.read_csv(io.BytesIO(r.content), parse_dates=["open_date"])
df.to_parquet("noaa_incidentnews_incidents.parquet", index=False)
print(len(df), df["open_date"].min().date(), df["open_date"].max().date())
print(df[["open_date", "name", "commodity", "max_ptl_release_gallons"]].head())

```
Run by us on 2026-11-05 (python 3 | pandas | pyarrow | requests). Result: Fetched incidents.csv on 2026-11-05: 4,952 incident rows, open_date 1957-03-29 to 2026-10-31 (CSV about 3.2 MB).

## Limits
- Not stated numeric rate limit.
- One CSV of about 3.2 MB; the whole file is fetched in one request.

## Quirks
- Covers incidents where NOAA's Office of Response and Restoration provided scientific support, not every spill worldwide.
- Some older records (1957-1984) come from third-party databases.

## Terms and attribution
- Public domain per the IncidentNews raw-data page; no copyright restriction.
- Terms page: https://incidentnews.noaa.gov/raw/index

## Sources
- https://incidentnews.noaa.gov/raw/index: "The contents are in the public domain; there is no copyright restriction."
- https://incidentnews.noaa.gov/raw/index: "Some older records between 1957 and 1984 come from third-party databases."

## Help improve this skill
Missing a source, or see something to improve? Call the MCP tool suggest_source or feedback (or POST /api/suggest or /api/feedback). Reviewed ideas: https://signal-lab.qdt.ai/agent-suggestions

Information for educational purposes only. Free tiers, limits and licenses belong to the providers and may change; check the provider's own terms before using the data.
