Official Data Sources & Sync Architecture
Technical transparency on how public NPS feeds are gathered, processed, and refreshed.
Primary Authoritative Source
All park records, alert bulletins, campground operational statuses, and visitor center listings originate from the official National Park Service Developer API (developer.nps.gov/api/v1).
We query four primary public data endpoints:
/alerts: Active official emergency, danger, closure, caution, and informational bulletins./campgrounds: Designated frontcountry and backcountry campground listings, total sites, and reservation links./visitorcenters: Locations, descriptions, and directions for ranger stations and visitor centers./parks: Authoritative geographic coordinates, official names, and seasonal weather summaries.
Scheduled Synchronization Cadence
To maintain high freshness without putting unnecessary load on federal infrastructure:
- Alerts & Disruptions: Refreshed approximately every 2 hours via automated background edge workers.
- Campgrounds & Facilities: Refreshed daily (~24 hour cycle).
- Park Overviews: Refreshed periodically or upon upstream schema updates.
Content Hashing & Change Detection
Every fetched alert is cryptographically hashed using SHA-256 (combining title, text description, and official category). If the hash matches the record currently stored in our edge database, no new write occurs.
When an alert's content modifies or an existing alert is no longer returned in the official NPS feed, a change event is logged. We never claim an alert has ended unless it is verifiably withdrawn by park officials from the public API.
Deterministic Topic Detection
NPS assigns one of four official categories to alerts: Danger, Closure, Caution, or Information. We strictly preserve these official categories.
For user convenience on mobile screens, our system executes deterministic keyword matching to apply a secondary tag (such as Road, Trail, Fire / Smoke, or Weather). These are explicitly labeled as automated tags and are not official government categorizations.