Skip to main content

Partner API

v1 — read-only JSON for syndication partners

The same editor-curated records that power every page on this site, exposed as JSON for chamber, BMS, regional tourism brands, AI crawlers, and anyone building on top of Sullivan County heritage data. Free. CORS-open. No key. No registration.

Endpoints

Conventions

  • Method. GET only. OPTIONS supported for CORS preflight.
  • Format. JSON. Every collection endpoint returns { count, <collection>: [...] }.
  • Caching. Cache-Control: public, max-age=300, stale-while-revalidate=86400. Every /api/v1/* response also carries an ETag + Last-Modified; If-None-Match / If-Modified-Since short-circuit to 304 Not Modified when nothing has changed since the last build.
  • Observability. Every response carries an X-Request-Id header for log correlation.
  • Rate limits. /api/companion is 60 req/min/IP; /api/push/subscribe and /api/digest/subscribe are 10 req/min/IP. Allowed responses include RateLimit-Limit / -Remaining / -Reset headers; 429s add Retry-After.
  • Versioning. Every response carries X-Api-Version: v1 (v0 on /api/companion). Breaking changes ship as /api/v2, never as mutations to v1.
  • Honesty. All records are editor-curated. Nothing is "live" beyond build time. Hours and prices reflect last verification.

Attribution

If you build a derivative product (map, app, AI tool, citation), please link back to the canonical detail page on wheretennesseebegan.com and email partners@wheretennesseebegan.com so we can keep your endpoint registered.