GET /api/v1/index.json
API index. What this API is, its license and attribution, the sections it covers, and every endpoint.
Example: https://fill-line.com/api/v1/index.json
Sample response
{
"api": "The Fill Line Data API",
"version": "v1",
"docs": "https://fill-line.com/api",
"data_as_of": "2026-11-09",
"data_as_of_label": "week of Nov 9, 2026",
"data_pulled_at": "2026-11-12T00:16:11.666Z",
"generated_at": "2026-11-12T07:47:15.204Z",
"attribution": "Credit The Fill Line (fill-line.com) with a visible link to the page the figure came from; every record carries its page_url.",
"name": "The Fill Line Data API",
"description": "Free JSON for every number published on The Fill Line (fill-line.com): state prices, regional prices, inventories, spot, supply, heating demand. What propane costs at home, state by state.",
"publisher": {
"name": "The Fill Line",
"url": "https://fill-line.com"
},
"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 Fill Line 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": 51,
"stats": 16
},
"sections": [
{
"key": "state",
"label": "State prices",
"series": 38,
"example": "https://fill-line.com/api/v1/series/state/alabama.json"
},
{
"key": "region",
"label": "Regional prices",
"series": 8,
"example": "https://fill-line.com/api/v1/series/region/padd1.json"
},
{
"key": "stocks",
"label": "Inventories",
"series": 2,
"example": "https://fill-line.com/api/v1/series/stocks/padd3.json"
},
{
"key": "spot",
"label": "Spot",
"series": 1,
"example": "https://fill-line.com/api/v1/series/spot/mont-belvieu.json"
},
{
"key": "supply",
"label": "Supply",
"series": 1,
"example": "https://fill-line.com/api/v1/series/supply/exports.json"
},
{
"key": "heating-demand",
"label": "Heating demand",
"series": 1,
"example": "https://fill-line.com/api/v1/series/heating-demand/us.json"
}
],
"endpoints": [
{
"method": "GET",
"path": "/api/v1/index.json",
"url": "https://fill-line.com/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://fill-line.com/api/v1/latest.json",
"description": "The newest reading of every data page on The Fill Line (51 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://fill-line.com/api/v1/stats.json",
"description": "The 16 headline numbers on the fill-line.com/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://fill-line.com/api/v1/series/stocks/us.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://fill-line.com/api/v1/openapi.json",
"description": "A machine-readable OpenAPI 3.1 description of these endpoints."
}
]
}