GET /api/v1/index.json
API index. What this API is, its license and attribution, the sections it covers, and every endpoint.
Example: https://therun.news/api/v1/index.json
Sample response
{
"api": "The Run Data API",
"version": "v1",
"docs": "https://therun.news/api",
"data_as_of": "2026-11-04",
"data_as_of_label": "Nov 4, 2026",
"data_pulled_at": "2026-11-05T02:00:22.312Z",
"generated_at": "2026-11-12T17:38:13.292Z",
"attribution": "Credit The Run (therun.news) with a visible link to the page the figure came from; every record carries its page_url.",
"name": "The Run Data API",
"description": "Free JSON for every number published on The Run (therun.news): season scoreboard, run summary, areas, species, forecast. The Alaska salmon season, by district, species and value.",
"publisher": {
"name": "The Run",
"url": "https://therun.news"
},
"auth": "none",
"cors": "*",
"format": "application/json; charset=utf-8",
"license": "Free to use and republish with attribution; no key or sign-up. The underlying figures are public records from the agencies named in each series' provenance; The Run collects, checks and publishes them.",
"update_policy": "Static files rebuilt every time the site rebuilds with new data. data_as_of in each response is the newest observation it holds; data_pulled_at is when the site last pulled its sources.",
"counts": {
"series": 16,
"stats": 13
},
"sections": [
{
"key": "scoreboard",
"label": "Season scoreboard",
"series": 1,
"example": "https://therun.news/api/v1/series/scoreboard/statewide.json"
},
{
"key": "run-summary",
"label": "Run summary",
"series": 1,
"example": "https://therun.news/api/v1/series/run-summary/bristol-bay.json"
},
{
"key": "district",
"label": "Areas",
"series": 8,
"example": "https://therun.news/api/v1/series/district/alaska-peninsula.json"
},
{
"key": "species",
"label": "Species",
"series": 5,
"example": "https://therun.news/api/v1/series/species/chinook.json"
},
{
"key": "forecast",
"label": "Forecast",
"series": 1,
"example": "https://therun.news/api/v1/series/forecast/preseason.json"
}
],
"endpoints": [
{
"method": "GET",
"path": "/api/v1/index.json",
"url": "https://therun.news/api/v1/index.json",
"description": "What this API is, its license and attribution, the sections it covers, and every endpoint."
},
{
"method": "GET",
"path": "/api/v1/latest.json",
"url": "https://therun.news/api/v1/latest.json",
"description": "The newest reading of every data page on The Run (16 series): the headline value as the site shows it, the newest point of each charted line with its date, whether it is current, and links to its page and full history."
},
{
"method": "GET",
"path": "/api/v1/stats.json",
"url": "https://therun.news/api/v1/stats.json",
"description": "The 13 headline numbers on the therun.news/stats page, each as a quotable sentence with its data date and a ready-made citation."
},
{
"method": "GET",
"path": "/api/v1/series/{section}/{slug}.json",
"url": "https://therun.news/api/v1/series/scoreboard/statewide.json",
"description": "Everything behind one data page: every charted point (date + value), the historical band where the page draws one, the page's tables exactly as shown, its source and citation. Find each series_url in latest.json."
},
{
"method": "GET",
"path": "/api/v1/openapi.json",
"url": "https://therun.news/api/v1/openapi.json",
"description": "A machine-readable OpenAPI 3.1 description of these endpoints."
}
]
}