Free JSON · no key · open CORS

Know Your Onions Data API

Every number published on Know Your Onions (knowyouronions.news) as free JSON: origins, varieties, packs, price trend, exports, the Board, why prices are moving and current price. No key, no sign-up, callable from any website or script. The files are rebuilt every time the site rebuilds with new data, so they always match the pages.

Base URL
https://knowyouronions.news/api/v1
Auth
None
Format
JSON, UTF-8, GET only
CORS
Access-Control-Allow-Origin: *
Series
23
Data as of
Nov 10, 2026

Quick start

The newest reading of every series, from a terminal:

curl https://knowyouronions.news/api/v1/latest.json

Or in JavaScript, from any page:

const res = await fetch("https://knowyouronions.news/api/v1/latest.json");
const { data_as_of, data } = await res.json();
for (const row of data) console.log(row.title, row.headline, row.data_through);

Endpoints

GET /api/v1/index.json

API index. What this API is, its license and attribution, the sections it covers, and every endpoint.

Example: https://knowyouronions.news/api/v1/index.json

Sample response
{
  "api": "Know Your Onions Data API",
  "version": "v1",
  "docs": "https://knowyouronions.news/api",
  "data_as_of": "2026-11-10",
  "data_as_of_label": "Nov 10, 2026",
  "data_pulled_at": "2026-11-11T00:22:24.975Z",
  "generated_at": "2026-11-11T07:49:13.070Z",
  "attribution": "Credit Know Your Onions (knowyouronions.news) with a visible link to the page the figure came from; every record carries its page_url.",
  "name": "Know Your Onions Data API",
  "description": "Free JSON for every number published on Know Your Onions (knowyouronions.news): origins, varieties, packs, price trend, exports, the Board, why prices are moving, current price. The onion market page produce buyers actually need.",
  "publisher": {
    "name": "Know Your Onions",
    "url": "https://knowyouronions.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; Know Your Onions 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": 23,
    "stats": 0
  },
  "sections": [
    {
      "key": "origin",
      "label": "Origins",
      "series": 12,
      "example": "https://knowyouronions.news/api/v1/series/origin/california.json"
    },
    {
      "key": "variety",
      "label": "Varieties",
      "series": 4,
      "example": "https://knowyouronions.news/api/v1/series/variety/red.json"
    },
    {
      "key": "pack",
      "label": "Packs",
      "series": 2,
      "example": "https://knowyouronions.news/api/v1/series/pack/50-lb-sacks.json"
    },
    {
      "key": "trend",
      "label": "Price trend",
      "series": 1,
      "example": "https://knowyouronions.news/api/v1/series/trend/onion-prices.json"
    },
    {
      "key": "export",
      "label": "Exports",
      "series": 1,
      "example": "https://knowyouronions.news/api/v1/series/export/benelux.json"
    },
    {
      "key": "board",
      "label": "The Board",
      "series": 1,
      "example": "https://knowyouronions.news/api/v1/series/board/weekly-movers.json"
    },
    {
      "key": "why",
      "label": "Why prices are moving",
      "series": 1,
      "example": "https://knowyouronions.news/api/v1/series/why/onion-prices-falling.json"
    },
    {
      "key": "current-price",
      "label": "Current price",
      "series": 1,
      "example": "https://knowyouronions.news/api/v1/series/current-price/onions.json"
    }
  ],
  "endpoints": [
    {
      "method": "GET",
      "path": "/api/v1/index.json",
      "url": "https://knowyouronions.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://knowyouronions.news/api/v1/latest.json",
      "description": "The newest reading of every data page on Know Your Onions (23 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/series/{section}/{slug}.json",
      "url": "https://knowyouronions.news/api/v1/series/origin/california.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://knowyouronions.news/api/v1/openapi.json",
      "description": "A machine-readable OpenAPI 3.1 description of these endpoints."
    }
  ]
}

GET /api/v1/latest.json

Latest readings. The newest reading of every data page on Know Your Onions (23 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.

Example: https://knowyouronions.news/api/v1/latest.json

Sample response
{
  "api": "Know Your Onions Data API",
  "version": "v1",
  "docs": "https://knowyouronions.news/api",
  "data_as_of": "2026-11-10",
  "data_as_of_label": "Nov 10, 2026",
  "data_pulled_at": "2026-11-11T00:22:24.975Z",
  "generated_at": "2026-11-11T07:49:13.070Z",
  "attribution": "Credit Know Your Onions (knowyouronions.news) with a visible link to the page the figure came from; every record carries its page_url.",
  "count": 23,
  "data": [
    {
      "id": "origin/california",
      "section": "origin",
      "section_label": "Origins",
      "title": "California onion prices",
      "headline": "$15.00",
      "unit": "$/50 lb sack",
      "data_through": "2026-08-14",
      "frequency": "USDA reports on business days",
      "status": "not_current",
      "status_note": "Out of season",
      "last_quoted": "2026-08-14",
      "values": [
        {
          "series": "Yellow jumbo, 50 lb sacks",
          "date": "2026-08-14",
          "value": 15
        },
        {
          "series": "Yellow medium, 50 lb sacks",
          "date": "2026-08-14",
          "value": 13
        },
        {
          "series": "Yellow colossal, 50 lb sacks",
          "date": "2026-08-14",
          "value": 15.5
        },
        {
          "series": "Yellow super colossal, 50 lb sacks",
          "date": "2026-08-03",
          "value": 18
        },
        {
          "series": "White jumbo, 50 lb sacks",
          "date": "2026-07-28",
          "value": 22.5
        },
        {
          "series": "White medium, 50 lb sacks",
          "date": "2026-07-28",
          "value": 22
        }
      ],
      "source": "USDA AMS shipping-point onion FOB reports (FV130) and Daily Movement (FV170)",
      "page_url": "https://knowyouronions.news/origin/california",
      "series_url": "https://knowyouronions.news/api/v1/series/origin/california.json"
    },
    {
      "id": "origin/canada",
      "section": "origin",
      "section_label": "Origins",
      "title": "Canada onion import volume",
      "headline": "101 units of 10,000 pounds",
      "unit": "10,000-lb units",
      "data_through": "2026-11-09",
      "frequency": "USDA reports on business days",
      "status": "current",
      "values": [
        {
          "series": "Shipments",
          "date": "2026-11-09",
          "value": 101.2723
        }
      ],
      "source": "USDA AMS Daily Movement report (FV170)",
      "page_url": "https://knowyouronions.news/origin/canada",
      "series_url": "https://knowyouronions.news/api/v1/series/origin/canada.json"
    }
  ]
}

Trimmed to 2 of 23 entries.

GET /api/v1/series/{section}/{slug}.json

One series, full history. 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.

Example: https://knowyouronions.news/api/v1/series/origin/california.json

Sample response
{
  "api": "Know Your Onions Data API",
  "version": "v1",
  "docs": "https://knowyouronions.news/api",
  "data_as_of": "2026-08-14",
  "data_as_of_label": "Aug 14, 2026",
  "data_pulled_at": "2026-11-11T00:22:24.975Z",
  "generated_at": "2026-11-11T07:49:13.070Z",
  "attribution": "Credit Know Your Onions (knowyouronions.news) with a visible link to the page the figure came from; every record carries its page_url.",
  "id": "origin/california",
  "section": "origin",
  "section_label": "Origins",
  "title": "California onion prices",
  "subtitle": "California onions are not currently quoted. The last USDA shipping-point price was mostly $15.00 FOB per 50 lb sack for yellow jumbo in 50 lb sacks, on Aug 14, 2026.",
  "description": "California onion prices: mostly $15.00, 50 lb sacks yellow jumbo last quoted Aug 14, 2026, from USDA shipping-point reports. Latest shipments: 139 units of 10,000 pounds, Nov 6, 2026.",
  "page_url": "https://knowyouronions.news/origin/california",
  "headline": "$15.00",
  "unit": "$/50 lb sack",
  "data_through": "2026-08-14",
  "frequency": "USDA reports on business days",
  "status": "not_current",
  "status_note": "Out of season",
  "last_quoted": "2026-08-14",
  "source": "USDA AMS shipping-point onion FOB reports (FV130) and Daily Movement (FV170)",
  "provenance": {
    "source": "USDA AMS shipping-point onion FOB reports (FV130) and Daily Movement (FV170)",
    "series": "Onion FOB price at a benchmark variety, pack and size",
    "basis": "FOB shipping point, low-high range",
    "geography": "California",
    "unit": "$/50 lb sack",
    "lastObservation": "Aug 14, 2026",
    "frequency": "USDA reports on business days"
  },
  "citation": "California benchmark onion FOB prices are 50% above the five-year median for the corresponding calendar week (USDA shipping-point reports). Know Your Onions, data through Aug 14, 2026. https://knowyouronions.news/origin/california",
  "series": [
    {
      "label": "Yellow jumbo, 50 lb sacks",
      "unit": "$/50 lb sack",
      "points": [
        {
          "date": "2026-08-12",
          "value": 15
        },
        {
          "date": "2026-08-13",
          "value": 15
        },
        {
          "date": "2026-08-14",
          "value": 15
        }
      ]
    },
    {
      "label": "Yellow medium, 50 lb sacks",
      "unit": "$/50 lb sack",
      "points": [
        {
          "date": "2026-08-12",
          "value": 13
        },
        {
          "date": "2026-08-13",
          "value": 13
        },
        {
          "date": "2026-08-14",
          "value": 13
        }
      ]
    }
  ],
  "band": {
    "label": "USDA mostly / low-high range for Yellow jumbo, 50 lb sacks",
    "lower": [
      {
        "date": "2026-08-13",
        "value": 15
      },
      {
        "date": "2026-08-14",
        "value": 15
      }
    ],
    "upper": [
      {
        "date": "2026-08-13",
        "value": 15
      },
      {
        "date": "2026-08-14",
        "value": 15
      }
    ]
  },
  "tables": [
    {
      "caption": "No new quote this week — last quoted Aug 14, 2026. Weekly and monthly moves are omitted while this crop is out of season; the year-scale rows below are its last reading vs history. The table and current price track Yellow jumbo, 50 lb sacks.",
      "columns": [
        "Period",
        "Current",
        "Prior",
        "Change"
      ],
      "rows": [
        [
          "Year over year",
          "$15.00",
          "$7.50",
          "+100.0%"
        ],
        [
          "vs 5-yr median",
          "$15.00",
          "$10.00",
          "+50.0%"
        ]
      ]
    }
  ]
}

Trimmed: the live response carries all 1406 points, all 6 lines, the full table.

GET /api/v1/openapi.json

OpenAPI description. A machine-readable OpenAPI 3.1 description of these endpoints.

Example: https://knowyouronions.news/api/v1/openapi.json

Sample response
{
  "openapi": "3.1.0",
  "info": {
    "title": "Know Your Onions Data API",
    "version": "1.0.0",
    "description": "Free JSON for every number published on Know Your Onions (knowyouronions.news): origins, varieties, packs, price trend, exports, the Board, why prices are moving, current price. The onion market page produce buyers actually need. No key needed. Credit Know Your Onions (knowyouronions.news) with a visible link to the page the figure came from; every record carries its page_url.",
    "license": {
      "name": "Free to use with attribution",
      "url": "https://knowyouronions.news/api"
    }
  },
  "servers": [
    {
      "url": "https://knowyouronions.news/api/v1"
    }
  ],
  "externalDocs": {
    "description": "Docs",
    "url": "https://knowyouronions.news/api"
  },
  "paths": {
    "/index.json": {
      "get": {
        "operationId": "getIndex",
  ...

First lines only.

What's in it

One series file per data page on the site, at https://knowyouronions.news/api/v1/series/{section}/{slug}.json. Every valid pair is listed in latest.json (its id and series_url fields).

SectionSeriesExample
OriginsFOB prices by growing origin: Idaho-Eastern Oregon's storage crop, Washington, California, Texas, Georgia, New Mexico, and import crossings from Mexico, Peru and Canada, with each origin's shipment volume. 12 California onion prices
VarietiesFOB prices by variety across origins: yellow, red, white and sweet. 4 Red onion prices
PacksFOB prices by pack across origins: 50-lb sacks, 25-lb sacks and 40-lb cartons. 2 50 lb sack of onions price, FOB by origin and size
Price trendThe long-run price history: the market's reference spec, yellow jumbo in 50-lb sacks, at every origin that quotes it, plus the lowest and highest published quote year by year. 1 Onion price trend
ExportsThe European export lane: what Dutch and Belgian onions actually left for West Africa at, per tonne, from EU trade statistics, with the volumes behind it. 1 Benelux onion export prices
The BoardThe weekly board: this week's biggest FOB movers, largest move first. 1 The weekly onion board
Why prices are movingWhy onion prices are rising or falling right now at the benchmark spec, updated every week the data moves. 1 Why are onion prices falling right now?
Current priceThe current benchmark onion price in one sentence: the USDA range, the move and what drives it. 1 Current onion prices

Fields every response carries

In latest.json and each series file, headline is the value exactly as the site shows it (with its unit), values / series carry the raw numbers with their dates, and status is current or not_current. A series that is out of season or not recently quoted says so, with last_quoted, rather than passing an old reading off as today's. See an example series.

Use, credit and limits

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; Know Your Onions collects, checks and publishes them.

Attribution: Credit Know Your Onions (knowyouronions.news) with a visible link to the page the figure came from; every record carries its page_url.

No rate limit is set and there is nothing to sign up for: the files are static and served from Cloudflare's network. Please cache responses rather than polling; they change only when the site rebuilds. Fields are only ever added within v1, never renamed or removed. Questions or a series you need: contact us. How each number is collected: methodology.