---
title: "Vocabularies — Tiny Plates recipe API"
description: "The closed lists recipes are classified with: cuisines, courses, diets, EU and US regulated allergen features, and units. Fetch them once and cache them."
url: "https://www.tinyplates.dev/docs/api/vocabularies"
---

# Vocabularies

The closed lists recipes are classified with: cuisines, courses, diets, EU and US regulated allergen features, and units. Fetch them once and cache them.

GET`/vocabularies`API key

Returns the closed lists recipes are classified with. These are the values the \`course\`, \`cuisine\` and \`diet\` filters accept, the EU and US regulated allergen features with their jurisdictions, and the units a quantity can carry. They change rarely; fetch them once and cache them.

## Request

```
curl 'https://api.tinyplates.dev/vocabularies' \
  -H 'Authorization: Bearer rd_your_api_key'
```

Sign in to run this request with your own key. Free, 50 requests a day and 300 a week.

[Create an account](https://www.tinyplates.dev/sign-up)[Sign in](https://www.tinyplates.dev/sign-in)

## Parameters

This endpoint takes no parameters.

## Response

`allergens`object\[\]

The 16 EU and US regulated allergen features and their applicable jurisdictions.

`courses`string\[\]

The values the \`course\` filter accepts.

`cuisines`string\[\]

The values the \`cuisine\` filter accepts.

`diets`string\[\]

The values the \`diet\` filter accepts.

`units`string\[\]

The units a quantity can carry.

Example

```
{
  "allergens": [
    {
      "feature": "celery",
      "jurisdictions": [
        "eu"
      ]
    },
    {
      "feature": "crustaceans",
      "jurisdictions": [
        "eu",
        "us"
      ]
    },
    {
      "feature": "eggs",
      "jurisdictions": [
        "eu",
        "us"
      ]
    },
    {
      "feature": "fish",
      "jurisdictions": [
        "eu",
        "us"
      ]
    },
    {
      "feature": "gluten-cereals",
      "jurisdictions": [
        "eu"
      ]
    },
    {
      "feature": "lupin",
      "jurisdictions": [
        "eu"
      ]
    },
    {
      "feature": "milk",
      "jurisdictions": [
        "eu",
        "us"
      ]
    },
    {
      "feature": "molluscs",
      "jurisdictions": [
        "eu"
      ]
    },
    {
      "feature": "mustard",
      "jurisdictions": [
        "eu"
      ]
    },
    {
      "feature": "nuts-eu",
      "jurisdictions": [
        "eu"
      ]
    },
    {
      "feature": "peanuts",
      "jurisdictions": [
        "eu",
        "us"
      ]
    },
    {
      "feature": "sesame",
      "jurisdictions": [
        "eu",
        "us"
      ]
    },
    {
      "feature": "soy",
      "jurisdictions": [
        "eu",
        "us"
      ]
    },
    {
      "feature": "sulphites",
      "jurisdictions": [
        "eu"
      ]
    },
    {
      "feature": "tree-nuts-us",
      "jurisdictions": [
        "us"
      ]
    },
    {
      "feature": "wheat",
      "jurisdictions": [
        "us"
      ]
    }
  ],
  "courses": [
    "appetizer",
    "breakfast",
    "brunch",
    "dessert",
    "dinner",
    "drink",
    "lunch",
    "main-course",
    "side-dish",
    "snack"
  ],
  "cuisines": [
    "african",
    "american",
    "argentinian",
    "asian",
    "australian",
    "austrian",
    "belgian",
    "brazilian",
    "british",
    "cajun",
    "caribbean",
    "chinese",
    "cuban",
    "danish",
    "dutch",
    "eastern-european",
    "egyptian",
    "ethiopian",
    "filipino",
    "finnish",
    "french",
    "german",
    "greek",
    "hungarian",
    "indian",
    "indonesian",
    "iranian",
    "irish",
    "israeli",
    "italian",
    "jamaican",
    "japanese",
    "korean",
    "latin-american",
    "lebanese",
    "malaysian",
    "mediterranean",
    "mexican",
    "middle-eastern",
    "moroccan",
    "norwegian",
    "pakistani",
    "peruvian",
    "polish",
    "portuguese",
    "russian",
    "scandinavian",
    "southern-us",
    "spanish",
    "swedish",
    "swiss",
    "tex-mex",
    "thai",
    "turkish",
    "vietnamese"
  ],
  "diets": [
    "dairy-free",
    "gluten-free",
    "pescatarian",
    "vegan",
    "vegetarian"
  ],
  "units": [
    "g",
    "kg",
    "lb",
    "oz",
    "cl",
    "cup",
    "dl",
    "fl-oz",
    "gallon",
    "l",
    "ml",
    "pint",
    "quart",
    "tbsp",
    "tsp",
    "bag",
    "bottle",
    "box",
    "bunch",
    "can",
    "clove",
    "cube",
    "dash",
    "drop",
    "ear",
    "handful",
    "head",
    "jar",
    "knob",
    "leaf",
    "package",
    "packet",
    "piece",
    "pinch",
    "portion",
    "pot",
    "scoop",
    "sheet",
    "shot",
    "slice",
    "sprig",
    "stalk",
    "stick",
    "tub",
    "cm",
    "inch"
  ]
}
```

## Errors

* 401  
An API key is required. Pass it as an Authorization: Bearer header.  
No key was sent. Every endpoint except the root, /health, /docs and /openapi.json requires one.
* 401  
Invalid API key.  
The key does not exist. Check for a truncated copy, or create a new one on your dashboard.
* 401  
This API key has been disabled.  
The key was revoked. Create a new one on your dashboard.
* 401  
This API key has expired.  
The key was created with an expiry that has passed. Create a new one.
* 429  
Daily allowance of 50 requests used. It resets at midnight UTC. Paid plans include more; see https://www.tinyplates.dev/pricing.  
The account has used its 50 requests for the day. The allowance is per account, so another key will not help. It resets at midnight UTC.
* 429  
Weekly allowance of 300 requests used. It covers the last 7 days. Paid plans include more; see https://www.tinyplates.dev/pricing.  
The account has used its 300 requests over the last 7 days, today included. The allowance is per account, so another key will not help. Room comes back as older days drop out of the window.
* 429  
Daily limit of 5,000 requests on the Personal plan reached. It resets at midnight UTC. Contact us for a higher limit.  
The account has used its plan's limit for the day. The message names the number and the plan, which differ between accounts. The limit is per account, so another key will not help. It resets at midnight UTC.
* 429  
Weekly limit of 30,000 requests on the Business plan reached. It covers the last 7 days. Contact us for a higher limit.  
The account has used the weekly limit set on it over the last 7 days, today included. The message names the number and the plan. Only accounts with a weekly limit can see this. Room comes back as older days drop out of the window.

See also

Concepts

* [Authentication](https://www.tinyplates.dev/docs/authentication)
* [Errors](https://www.tinyplates.dev/docs/errors)
* [Rate limits](https://www.tinyplates.dev/docs/rate-limits)

Reference

* [Ingredient substitutions](https://www.tinyplates.dev/docs/api/substitutions)
* [List ingredients](https://www.tinyplates.dev/docs/api/list-ingredients)
