OrbTop

NPS Park Conditions, Alerts & Data Scraper

TRAVELOPEN SOURCE

NPS Park Conditions, Alerts & Data Scraper

Scrapes the U.S. National Park Service (NPS) API across seven resource types: parks, alerts, campgrounds, events, news releases, things to do, and visitor centers. Returns unified, flat records you can use without reading NPS API documentation.

A free NPS API key is required. You can get one instantly at nps.gov/subjects/developer/get-started.htm — no waiting, no approval, just an email address.

What It Scrapes

The NPS API sits behind developer.nps.gov/api/v1. Seven endpoints, one actor. You pick which resource types to fetch.

Why alerts matter: park closures, wildfire road conditions, and danger advisories change constantly. Trip planners, travel apps, and AI agents that need to know whether a park is actually accessible have to poll this data somehow. The alerts endpoint is the recurring-monitoring use case — daily or hourly runs filtered by park code or state.

Input

Field Type Default Description
apiKey string Your free NPS API key
resourceTypes array ["parks", "alerts"] Endpoints to scrape. Options: parks, alerts, campgrounds, events, newsreleases, thingstodo, visitorcenters
parkCodes array (all parks) Filter by NPS park codes (e.g. ["yose", "grca", "zion"])
stateCode string (all states) Filter by two-letter US state code (e.g. CA, UT)
maxItems integer 10 Maximum records to return across all resource types

Leave resourceTypes empty to fetch all seven types in one run.

Example Input

{
  "apiKey": "YOUR_NPS_API_KEY",
  "resourceTypes": ["alerts", "parks"],
  "stateCode": "CA",
  "maxItems": 100
}

Output

Each record has a resource_type field identifying its endpoint. Fields that don't apply to a given type are returned as empty strings.

Field Type Description
resource_type string parks, alerts, campgrounds, events, newsreleases, thingstodo, or visitorcenters
park_code string NPS unit code (e.g. yose, grca)
park_full_name string Full official park name
state_codes string Comma-separated state codes
title string Name or title of the resource
description string Description, abstract, or body text
category string Alert severity (Danger/Closure/Caution/Information), event type, etc.
url string NPS page URL for this resource
latitude string Latitude coordinate
longitude string Longitude coordinate
activities string Comma-separated activities available
topics string Comma-separated topics and themes
entrance_fees string JSON-encoded entrance fee list (parks)
operating_hours string JSON-encoded operating hours (parks, campgrounds, visitor centers)
image_url string Primary image URL
last_indexed string ISO timestamp of last NPS index update
phone string Contact phone (visitor centers, campgrounds)
directions_url string Link to directions
reservation_url string Reservation link (campgrounds, events)
is_reservation_required string Whether reservation required
cost string Fee or cost description

Sample Record (Alert)

{
  "resource_type": "alerts",
  "park_code": "grba",
  "title": "Winter Road Closures",
  "description": "Wheeler Peak Scenic Drive is closed at the Wheeler Peak Summit Trailhead due to snow.",
  "category": "Park Closure",
  "url": "https://www.nps.gov/grba/planyourvisit/conditions.htm",
  "last_indexed": "2026-05-19 00:00:00.0"
}

Sample Record (Park)

{
  "resource_type": "parks",
  "park_code": "alca",
  "park_full_name": "Alcatraz Island",
  "state_codes": "CA",
  "title": "Alcatraz Island",
  "description": "Alcatraz reveals stories of American incarceration, justice, and our common humanity...",
  "url": "https://www.nps.gov/alca/index.htm",
  "latitude": "37.82676234",
  "longitude": "-122.4230206",
  "activities": "Food, Wildlife Watching, Birdwatching, Museum Exhibits, Shopping",
  "topics": "Colonization and Settlement, Forts, Incarceration, Maritime",
  "operating_hours": "[{\"name\":\"Alcatraz Island\",\"standardHours\":{\"monday\":\"9:00AM - 6:30PM\",...}}]",
  "phone": "415-561-4900",
  "directions_url": "http://home.nps.gov/alca/planyourvisit/directions.htm"
}

Use Cases

Trip planning tools — pull parks and campgrounds filtered by state. Include entrance fees and operating hours directly in destination cards.

Closure monitoring — run daily against the alerts endpoint filtered by state. Filter output for category: "Park Closure" or "Danger" and route to push notifications or a status dashboard.

AI agents and RAG pipelines — NPS data is public domain. Feed current park conditions into retrieval-augmented generation for travel queries.

Geospatial and research projects — 470+ NPS units with coordinates, activities, topics, and fees in a clean flat format.

Rate Limits

The NPS API enforces rate limits per key. The actor paginates at 50 records per request with a ~1 second delay between calls to stay within NPS's documented guidance.

The default maxItems: 10 is intentionally conservative. Raise it for production runs. Set to 0 for an unlimited full-catalog pull.

Getting Your API Key

  1. Go to nps.gov/subjects/developer/get-started.htm
  2. Enter your name, email, and a brief use description
  3. Key arrives by email within seconds

No approval process. No billing. Free tier is sufficient for most use cases.


Data source: U.S. National Park Service API (developer.nps.gov). NPS data is in the public domain.