Open data · Free API

Chinese Ingredient Substitutes API

A free JSON feed of every substitute on Chowmi: 52 hard-to-find Chinese ingredients, each with its substitutes ranked by how close they come, the ratio to use, what each is best for, and whether it’s vegan or gluten-free. No API key, no sign-up, CORS enabled. Use it in an app, a recipe site, a class or a research project — just credit Chowmi with a link.

Endpoint

GET https://chowmi.com/api/substitutes
  • HTTPS only, JSON response, UTF-8.
  • CORS enabled (Access-Control-Allow-Origin: *), so you can call it straight from a browser.
  • No authentication and no key.
  • Cached for an hour in browsers and a day at the edge. The data changes a few times a month, so please cache on your side too rather than calling it on every page view.

Examples

curl https://chowmi.com/api/substitutes
const res = await fetch("https://chowmi.com/api/substitutes");
const data = await res.json();
const doubanjiang = data.ingredients.find((i) => i.slug === "doubanjiang");
console.log(doubanjiang.substitutes[0]); // the closest match

What you get back

One object with some metadata and an ingredients array. Fields are only ever added, never renamed or removed; if that ever has to change, it’ll be announced on this page first.

Fields returned by the Chowmi substitutes API
FieldTypeWhat it is
countnumberHow many ingredients are in the feed
updateddateWhen any ingredient in the feed was last changed (YYYY-MM-DD)
license / licenseUrlstringCC BY 4.0 and the link to its terms
attributionstringThe credit line to show wherever you use the data
ingredients[].slugstringStable ID, also the page path: /substitutes/{slug}
ingredients[].namestringIngredient name in English
ingredients[].akastring or nullChinese name, pinyin and other names, separated by ·
ingredients[].urlstringThe full guide on Chowmi
substitutes[].namestringThe substitute, sorted best match first
substitutes[].ratiostringHow much to use, in plain words
substitutes[].closenessnumberHow close it comes to the real thing, 0–100
substitutes[].bestForstringThe dishes or jobs it suits
substitutes[].vegan / glutenFreetrue, false or nullWhether the substitute is vegan / gluten-free; null means we haven't marked it either way

Sample response (trimmed)

{
  "name": "Chinese Ingredient Substitutes",
  "source": "https://chowmi.com",
  "docs": "https://chowmi.com/developers",
  "license": "CC BY 4.0",
  "count": 52,
  "ingredients": [
    {
      "slug": "doubanjiang",
      "name": "Doubanjiang",
      "aka": "Pixian broad bean paste · 豆瓣酱 · chili bean paste · toban djan · spicy bean paste",
      "url": "https://chowmi.com/substitutes/doubanjiang",
      "substitutes": [ // first 2 shown
        {
          "name": "Gochujang + white miso",
          "ratio": "2 parts gochujang : 1 part white miso + a pinch of sugar",
          "closeness": 72,
          "bestFor": "Mapo tofu, twice-cooked pork, stir-fries",
          "vegan": null,
          "glutenFree": null
        },
        {
          "name": "White miso + chili flakes",
          "ratio": "2 tbsp white miso + 1–2 tsp chili flakes (or sambal) + ½ tsp sugar",
          "closeness": 62,
          "bestFor": "Vegan dishes, adjustable heat",
          "vegan": true,
          "glutenFree": null
        }
      ]
    }
    // …one entry per ingredient
  ]
}

License and credit

The data is licensed Creative Commons Attribution 4.0 (CC BY 4.0). You can copy it, change it, translate it and use it commercially, as long as you credit Chowmi with a link wherever the data shows up. This line, pasted as HTML, covers it:

Chinese ingredient substitutes data by <a href="https://chowmi.com/substitutes">Chowmi</a>, licensed <a href="https://creativecommons.org/licenses/by/4.0/">CC BY 4.0</a>.

Prefer something ready-made? The printable substitution cheat sheet shows the same data as one chart, with embed code for any website. Each ingredient also has a full guide with comparisons and per-dish advice under /substitutes.

Questions

Found a mistake, need a field we don’t have, or built something with it? Email hello@chowmi.com.