Open Food Facts

Barcode food data — Nutri-Score, allergens

🩺 Health & FoodDYINGchecked 40 min ago
AUTH NONECORS AGENT HTTPS COMMERCIAL ?

Global open food database. Query by category or barcode for nutrition and ingredients; ODbL data, no read key.

29HOW IT'S SCORED ⓘ
Status badge · for your READMEshipapis health badge: 29 · dying
Uptime history
39.2%90 days
33.3%30 days
1556P50 · ms
2836P95 · ms
operationalpartialdownno data
Response time · last 48 checks
Fastest 136 ms, slowest 2836 ms, most recent 478 ms.
Live response samplecaptured by our last successful check
GET https://world.openfoodfacts.org/api/v2/search?categories_tags_en=chocolate&page_size=1

{
  "count": 31475,
  "page": 1,
  "page_count": 1,
  "page_size": 1,
  "products": [
    {
      "_id": "3046920029759",
      "_keywords": [
        "afgeleide",
        "bar"
      ],
      "added_countries_tags": [],
      "additives_n": 0,
      "additives_original_tags": [],
      "additives_tags": [],
      "allergens": "",
      "allergens_from_user": "(en) "
    }
  ],
  "skip": 0
}
Call itcurl · fetch · python
curl "https://world.openfoodfacts.org/api/v2/search?categories_tags_en=chocolate&page_size=1"
const res = await fetch("https://world.openfoodfacts.org/api/v2/search?categories_tags_en=chocolate&page_size=1");
const data = await res.json();
console.log(data);
import requests

res = requests.get("https://world.openfoodfacts.org/api/v2/search?categories_tags_en=chocolate&page_size=1")
print(res.json())

BROWSER CALLS BLOCKED (NO CORS/HTTPS) — USE THE CURL SNIPPET

Endpoints · 6DyingFULL DOCS ↗
Dying — error rate climbing on GET /api/v2/search?categories_tags_en=chocolate&page_size=11556 mschecked 40 min ago
GET/api/v2/search?categories_tags_en=chocolate&page_size=1PROBED

Barcode food data — Nutri-Score, allergens

GET/api

Api — documented GET route.

GET/api/1

Api details by ID (example: 1).

GET/api?limit=10

Api — documented GET route.

GET/api/search?q=test

Search by query parameters.

GET/api/v2/search?limit=5

Search by query parameters.

Machine-readable spec

We probe a documented GET and expect 2xx JSON — full uptime and health score. Export includes every documented route below.

Response-shape history

Stable. No schema drift observed since monitoring began — the response shape has not changed under our checks.

Open Food Facts: common questions

Is Open Food Facts free to use?

Yes — Open Food Facts is a free health & food API. Free tier: Free — limits not published. Whether the free tier allows commercial use is unclear — check the provider docs.

Does Open Food Facts need an API key?

No — Open Food Facts needs no API key or signup. You can call it straight away; rate limits still apply (Unpublished).

Can I call Open Food Facts from the browser?

Not directly — Open Food Facts doesn't send browser-friendly CORS headers, so call it from a server or proxy instead. Copy the curl or Python snippet on this page to get started.

Is Open Food Facts up right now?

As of our last scheduled check, Open Food Facts is dying with 39.2% uptime over 90 days and a 1556 ms median response. We re-probe it every sweep — the status badge and uptime chart above always show the latest.