Developers
Access (nearly) all of the data used to build Long Strange Click with our free, rate-limited REST API.
Endpoints
| Method | Path | Summary | MCP |
|---|---|---|---|
| Shows | |||
GET | /api/v1/shows | List shows as a schema.org ItemList of MusicEvent nodes (paginated, optional year / venue filter). | yes |
GET | /api/v1/shows/:slug | The public schema.org MusicEvent JSON-LD projection for a show. | yes |
GET | /api/v1/shows/date/:date | Every show on a calendar day as a schema.org ItemList of MusicEvent nodes (usually one; two or more for an early/late double-header). Forgiving date input. | yes |
| Songs | |||
GET | /api/v1/songs | List songs as a schema.org ItemList of MusicComposition nodes (paginated). | yes |
GET | /api/v1/songs/:slug | A song as a schema.org MusicComposition JSON-LD node (performances, segues). | yes |
| Releases | |||
GET | /api/v1/releases | List releases as a schema.org ItemList of MusicAlbum or MusicRelease nodes (paginated). | yes |
GET | /api/v1/releases/:slug | A release as a schema.org MusicAlbum or MusicRelease JSON-LD node (cover, links, shows captured). | yes |
| Venues | |||
GET | /api/v1/venues | List venues as a schema.org ItemList of MusicVenue nodes (paginated). | yes |
GET | /api/v1/venues/:slug | A venue as a schema.org MusicVenue JSON-LD node (address, shows hosted). | yes |
| Books | |||
GET | /api/v1/books | List books as a schema.org ItemList of Book nodes (paginated). | yes |
GET | /api/v1/books/:slug | A book as a schema.org Book JSON-LD node (editions, offers, citations). | yes |
| People | |||
GET | /api/v1/people | List people as a schema.org ItemList of Person nodes (paginated). | yes |
GET | /api/v1/people/:slug | A person as a schema.org Person JSON-LD node (public-safe identity; authored works). | yes |
| Sources | |||
GET | /api/v1/sources | The credited-source registry, provenance-derived from the changelog. | yes |
| Link resolver | |||
GET | /api/v1/resolve-url | Resolve a pasted Grateful Dead URL to the canonical show (or honest candidates / no-match). | yes |
| System | |||
GET | /api/v1/health | Liveness and version probe. | yes |
OpenAPI Spec
Import the OpenAPI or Postman spec below into your client or codegen.
Agent Instructions
Get started faster with agent instructions and a starter prompt.
Limits & Quota
The API is public and read-only - no key, no account, no auth header. To keep it healthy for everyone, requests are limited by IP.
- Authentication
- None. Do not send an Authorization header or API key.
- Burst limit
- 100 requests per 60 seconds, per IP address.
- Daily quota
- 250 requests per day, per IP address - in addition to the burst limit.
- Backoff
- Every response carries RateLimit-Limit, RateLimit-Remaining, and RateLimit-Reset. A throttled request returns 429 with a Retry-After header - honor it before retrying. Health and discovery files are exempt.
Examples
Shows
GET /api/v1/shows/:slugRequest
GET /api/v1/shows/1965-12-04-big-nigs-house-san-joseResponse
{"data": {"@type": "MusicEvent","name": "Grateful Dead — 1965-12-04 — Big Nig's House, San Jose","identifier": [0: {"@type": "PropertyValue","propertyID": "jerrybase:show","value": "19651204-01"},1: {},2: {}],"performer": {"@type": "MusicGroup","name": "Grateful Dead","identifier": [0: {"@type": "PropertyValue","propertyID": "lsc:slug","value": "grateful-dead"},1: {},2: {},3: {},4: {},5: {},6: {},7: {}]},"startDate": "1965-12-04","eventAttendanceMode": "https://schema.org/OfflineEventAttendanceMode","eventStatus": "https://schema.org/EventScheduled","location": {"@type": "MusicVenue","name": "Big Nig's House, San Jose","address": {"@type": "PostalAddress","addressLocality": "San Jose","addressRegion": "CA","addressCountry": "USA"},"identifier": [0: {"@type": "PropertyValue","propertyID": "lsc:slug","value": "big-nigs-house-san-jose"}]},},"meta": {"queryTimeMs": 3,"generatedAt": "2026-01-01T00:00:00.000Z"}}
Sources
GET /api/v1/sourcesRequest
GET /api/v1/sourcesResponse
{"data": {"rows": [0: {"key": "jerrybase","touchCount": 5914},1: {},2: {},3: {},4: {},5: {},6: {},7: {},8: {},9: {},10: {},11: {},12: {},13: {},14: {},15: {},16: {},17: {},18: {},19: {},20: {},21: {},22: {},23: {}]},"meta": {"queryTimeMs": 3,"generatedAt": "2026-01-01T00:00:00.000Z"}}
Link resolver
GET /api/v1/resolve-urlRequest
GET /api/v1/resolve-url?url=https%3A%2F%2Farchive.org%2Fdetails%2Fgd1965-12-04Response
{"data": {"status": "no_match","matches": [],"gateReasons": [0: "Recognized source: archive.org",1: "Contains a date (1965-12-04)"]},"meta": {"queryTimeMs": 3,"generatedAt": "2026-01-01T00:00:00.000Z"}}
Try the resolver
Paste any Grateful Dead link (Archive.org, JerryBase, Relisten, dead.net...) and we'll resolve it to the canonical show, with honest confidence labels - never a raw score, never a fabricated URL.
What the resolver reads
Resolution is snapshot-only and reads the pasted URL string itself - the source host and any show date in the link - never the page behind it. It matches links from recognized Grateful Dead sources (Archive.org, JerryBase, Relisten, dead.net, setlist.fm, and peers). Social links (Facebook, Instagram, X, Reddit) return "Not a recognized Grateful Dead link": their URLs carry an opaque post id with no host we trust and no date to match, and the show is named only in the post body, which the resolver never fetches. Paste a canonical source link, or one with the date in it, instead.