TheMealDB

App · Food & Drink · 16 actions

Look up recipes in TheMealDB, the open, crowd-sourced database of meals from around the world. Search by name or first letter, pull a meal's full recipe with its ingredients, measures, instructions, images, and video, and browse by category, cuisine, or ingredient (including a 'what can I cook with these' search across up to four ingredients at once). Also lists every category, cuisine, and ingredient (with descriptions and artwork), and serves random, latest, and popular meal picks.

Actions

ActionWhat it does
Get a mealGet one meal's complete recipe by its id: category, cuisine, tags, step-by-step instructions, every ingredient paired with its measure, image URLs in three sizes, and the video and source links.
Get a random mealGet one randomly chosen meal in full: a ready-made 'what should I cook tonight' pick, complete with ingredients, measures, and instructions.
Get a random meal selectionGet a selection of randomly chosen meals in full: a whole week of dinner ideas in one step.
Get an ingredientGet one ingredient's description, type, and artwork URLs in full, small, medium, and large: the images TheMealDB serves for that ingredient's name.
List areasList the areas (cuisines) TheMealDB files meals under, each with its country (Italian/Italy, Japanese/Japan, and so on).
List categoriesList TheMealDB's meal categories (Beef, Dessert, Seafood, Vegan, and the rest) with each one's description and category artwork.
List category namesList just the category names, ready to loop over or feed straight into the 'List meals by category' filter.
List ingredientsList every ingredient TheMealDB knows, with its description, type, and artwork URLs in full, small, medium, and large.
List latest mealsGet the meals most recently added to TheMealDB, in full: a feed of new recipes to post or digest.
List meals by areaList every meal from one area (cuisine), such as Italian, Japanese, or Canadian.
List meals by categoryList every meal in one category, such as Seafood, Dessert, or Vegan.
List meals by first letterList every meal whose name begins with one letter, each in full.
List meals by ingredientList every meal made with one ingredient.
List meals by several ingredientsList meals that contain all of the ingredients you pick (up to four): the 'what can I cook with what's in the fridge' search.
List popular mealsGet the meals TheMealDB currently features as popular, in full: a ready-made 'trending recipes' list.
Search mealsSearch TheMealDB for meals whose name contains your search text, and get each match in full: category, cuisine, instructions, the ingredient list with measures, images, and the recipe video and source links.

Get a meal

Get one meal's complete recipe by its id: category, cuisine, tags, step-by-step instructions, every ingredient paired with its measure, image URLs in three sizes, and the video and source links.

Inputs

Meal IDmeal_idtextRequired
The meal's id, for example 52772. Reference the 'id' of a meal from a search or filter step.

Outputs

areatext
categorytext
idtext
ingredientslist
instructionstext
nametext
urltext
Example output
{
  "alternate_name": null,
  "area": "Japanese",
  "category": "Chicken",
  "country": "Japan",
  "creative_commons_confirmed": null,
  "date_modified": null,
  "id": "52772",
  "image_source": null,
  "ingredients": [
    {
      "measure": "3/4 cup",
      "name": "soy sauce"
    },
    {
      "measure": "1/2 cup",
      "name": "water"
    }
  ],
  "instructions": "Preheat oven to 350\u00b0 F. Spray a 9x13-inch baking pan...",
  "name": "Teriyaki Chicken Casserole",
  "source_url": null,
  "tags": [
    "Meat",
    "Casserole"
  ],
  "thumbnail": "https://www.themealdb.com/images/media/meals/wvpsxx1468256321.jpg",
  "thumbnail_large": "https://www.themealdb.com/images/media/meals/wvpsxx1468256321.jpg/large",
  "thumbnail_medium": "https://www.themealdb.com/images/media/meals/wvpsxx1468256321.jpg/medium",
  "thumbnail_small": "https://www.themealdb.com/images/media/meals/wvpsxx1468256321.jpg/small",
  "url": "https://www.themealdb.com/meal/52772",
  "youtube_url": "https://www.youtube.com/watch?v=4aZr5hZXP_s"
}

Get a random meal

Get one randomly chosen meal in full: a ready-made 'what should I cook tonight' pick, complete with ingredients, measures, and instructions.

Inputs

None.

Outputs

areatext
categorytext
idtext
ingredientslist
nametext
urltext
Example output
{
  "area": "Chinese",
  "category": "Chicken",
  "country": "China",
  "id": "52956",
  "ingredients": [
    {
      "measure": "1 whole",
      "name": "Chicken"
    }
  ],
  "name": "Chicken Congee",
  "tags": [],
  "url": "https://www.themealdb.com/meal/52956"
}

Get a random meal selection

Get a selection of randomly chosen meals in full: a whole week of dinner ideas in one step. A free test key returns a single meal; a TheMealDB supporter key returns ten.

Inputs

None.

Outputs

countnumber
mealslist
Example output
{
  "count": 1,
  "meals": [
    {
      "area": "Algerian",
      "category": "Side",
      "country": "Algeria",
      "id": "53290",
      "ingredients": [
        {
          "measure": "1 pack",
          "name": "Phyllo Pastry"
        }
      ],
      "name": "Cheese Borek",
      "tags": [],
      "url": "https://www.themealdb.com/meal/53290"
    }
  ]
}

Get an ingredient

Get one ingredient's description, type, and artwork URLs in full, small, medium, and large: the images TheMealDB serves for that ingredient's name.

Inputs

IngredientingredienttextRequired
Pick an ingredient, or reference an ingredient name from a previous step.

Outputs

descriptiontext
idtext
nametext
thumbnailtext
thumbnail_largetext
thumbnail_mediumtext
thumbnail_smalltext
typetext
Example output
{
  "description": "The chicken is a type of domesticated fowl.",
  "id": "1",
  "name": "Chicken",
  "thumbnail": "https://www.themealdb.com/images/ingredients/chicken.png",
  "thumbnail_large": "https://www.themealdb.com/images/ingredients/Chicken-large.png",
  "thumbnail_medium": "https://www.themealdb.com/images/ingredients/Chicken-medium.png",
  "thumbnail_small": "https://www.themealdb.com/images/ingredients/Chicken-small.png",
  "type": null
}

List areas

List the areas (cuisines) TheMealDB files meals under, each with its country (Italian/Italy, Japanese/Japan, and so on).

Inputs

None.

Outputs

areaslist
countnumber
Example output
{
  "areas": [
    {
      "area": "Canadian",
      "country": "Canada"
    },
    {
      "area": "Italian",
      "country": "Italy"
    }
  ],
  "count": 2
}

List categories

List TheMealDB's meal categories (Beef, Dessert, Seafood, Vegan, and the rest) with each one's description and category artwork.

Inputs

None.

Outputs

categorieslist
countnumber
Example output
{
  "categories": [
    {
      "description": "Beef is the culinary name for meat from cattle.",
      "id": "1",
      "name": "Beef",
      "thumbnail": "https://www.themealdb.com/images/category/beef.png"
    }
  ],
  "count": 1
}

List category names

List just the category names, ready to loop over or feed straight into the 'List meals by category' filter.

Inputs

None.

Outputs

categorieslist
countnumber
Example output
{
  "categories": [
    "Beef",
    "Breakfast",
    "Chicken"
  ],
  "count": 3
}

List ingredients

List every ingredient TheMealDB knows, with its description, type, and artwork URLs in full, small, medium, and large.

Inputs

None.

Outputs

countnumber
ingredientslist
Example output
{
  "count": 1,
  "ingredients": [
    {
      "description": "The chicken is a type of domesticated fowl.",
      "id": "1",
      "name": "Chicken",
      "thumbnail": "https://www.themealdb.com/images/ingredients/chicken.png",
      "thumbnail_large": "https://www.themealdb.com/images/ingredients/Chicken-large.png",
      "thumbnail_medium": "https://www.themealdb.com/images/ingredients/Chicken-medium.png",
      "thumbnail_small": "https://www.themealdb.com/images/ingredients/Chicken-small.png",
      "type": null
    }
  ]
}

List latest meals

Get the meals most recently added to TheMealDB, in full: a feed of new recipes to post or digest. A free test key returns a single meal; a TheMealDB supporter key returns the full set.

Inputs

None.

Outputs

countnumber
mealslist
Example output
{
  "count": 1,
  "meals": [
    {
      "area": null,
      "category": "Dessert",
      "country": "Estonia",
      "date_modified": null,
      "id": "53579",
      "ingredients": [
        {
          "measure": "200g",
          "name": "Honey"
        }
      ],
      "name": "Honey Cookies",
      "tags": [],
      "url": "https://www.themealdb.com/meal/53579"
    }
  ]
}

List meals by area

List every meal from one area (cuisine), such as Italian, Japanese, or Canadian. Returns compact meal summaries.

Inputs

AreaareatextRequired
Pick a cuisine, or reference an area name from a previous step.

Outputs

areatext
countnumber
mealslist
Example output
{
  "area": "Canadian",
  "count": 1,
  "meals": [
    {
      "area": "Canadian",
      "country": "Canada",
      "id": "52928",
      "name": "BeaverTails",
      "thumbnail": "https://www.themealdb.com/images/media/meals/ryppsv1511815505.jpg",
      "thumbnail_large": "https://www.themealdb.com/images/media/meals/ryppsv1511815505.jpg/large",
      "thumbnail_medium": "https://www.themealdb.com/images/media/meals/ryppsv1511815505.jpg/medium",
      "thumbnail_small": "https://www.themealdb.com/images/media/meals/ryppsv1511815505.jpg/small",
      "url": "https://www.themealdb.com/meal/52928"
    }
  ]
}

List meals by category

List every meal in one category, such as Seafood, Dessert, or Vegan. Returns compact meal summaries.

Inputs

CategorycategorytextRequired
Pick a category, or reference a category name from a previous step.

Outputs

categorytext
countnumber
mealslist
Example output
{
  "category": "Seafood",
  "count": 1,
  "meals": [
    {
      "area": null,
      "country": null,
      "id": "52959",
      "name": "Baked salmon with fennel & tomatoes",
      "thumbnail": "https://www.themealdb.com/images/media/meals/1548772327.jpg",
      "thumbnail_large": "https://www.themealdb.com/images/media/meals/1548772327.jpg/large",
      "thumbnail_medium": "https://www.themealdb.com/images/media/meals/1548772327.jpg/medium",
      "thumbnail_small": "https://www.themealdb.com/images/media/meals/1548772327.jpg/small",
      "url": "https://www.themealdb.com/meal/52959"
    }
  ]
}

List meals by first letter

List every meal whose name begins with one letter, each in full. Useful for walking the whole database a letter at a time.

Inputs

First letterlettertextRequired
The letter meal names must start with.One of: A, B, C, D, E, F, G, H, I, J, and 16 more.

Outputs

countnumber
lettertext
mealslist
Example output
{
  "count": 1,
  "letter": "A",
  "meals": [
    {
      "area": "British",
      "category": "Dessert",
      "country": "United Kingdom",
      "id": "52768",
      "ingredients": [
        {
          "measure": "175g/6oz",
          "name": "digestive biscuits"
        }
      ],
      "name": "Apple Frangipan Tart",
      "url": "https://www.themealdb.com/meal/52768"
    }
  ]
}

List meals by ingredient

List every meal made with one ingredient. Returns compact meal summaries: chain 'Get a meal' on an id for the full recipe.

Inputs

IngredientingredienttextRequired
Pick an ingredient, or reference an ingredient name from a previous step.

Outputs

countnumber
ingredienttext
mealslist
Example output
{
  "count": 1,
  "ingredient": "Chicken breast",
  "meals": [
    {
      "area": null,
      "country": "Belgium",
      "id": "53466",
      "name": "Belgian Waterzooi Chicken",
      "thumbnail": "https://www.themealdb.com/images/media/meals/nmxec11782498644.jpg",
      "thumbnail_large": "https://www.themealdb.com/images/media/meals/nmxec11782498644.jpg/large",
      "thumbnail_medium": "https://www.themealdb.com/images/media/meals/nmxec11782498644.jpg/medium",
      "thumbnail_small": "https://www.themealdb.com/images/media/meals/nmxec11782498644.jpg/small",
      "url": "https://www.themealdb.com/meal/53466"
    }
  ]
}

List meals by several ingredients

List meals that contain all of the ingredients you pick (up to four): the 'what can I cook with what's in the fridge' search. A free test key returns a sample of the matches; a TheMealDB supporter key returns them all.

Inputs

IngredientsingredientslistRequired
Pick up to 4 ingredients; only meals containing every one of them are returned.

Outputs

countnumber
ingredientslist
mealslist
Example output
{
  "count": 1,
  "ingredients": [
    "Chicken breast",
    "Garlic"
  ],
  "meals": [
    {
      "area": null,
      "country": null,
      "id": "53466",
      "name": "Belgian Waterzooi Chicken",
      "thumbnail": "https://www.themealdb.com/images/media/meals/nmxec11782498644.jpg",
      "thumbnail_large": "https://www.themealdb.com/images/media/meals/nmxec11782498644.jpg/large",
      "thumbnail_medium": "https://www.themealdb.com/images/media/meals/nmxec11782498644.jpg/medium",
      "thumbnail_small": "https://www.themealdb.com/images/media/meals/nmxec11782498644.jpg/small",
      "url": "https://www.themealdb.com/meal/53466"
    }
  ]
}

Get the meals TheMealDB currently features as popular, in full: a ready-made 'trending recipes' list.

Inputs

None.

Outputs

countnumber
mealslist
Example output
{
  "count": 1,
  "meals": [
    {
      "area": "Greek",
      "category": "Seafood",
      "country": "Greece",
      "id": "52764",
      "ingredients": [
        {
          "measure": "500g",
          "name": "Prawns"
        }
      ],
      "name": "Garides Saganaki",
      "tags": [],
      "url": "https://www.themealdb.com/meal/52764"
    }
  ]
}

Search meals

Search TheMealDB for meals whose name contains your search text, and get each match in full: category, cuisine, instructions, the ingredient list with measures, images, and the recipe video and source links.

Inputs

Meal namenametextRequired
Full or partial meal name, for example 'Arrabiata' or 'chicken'.

Outputs

countnumber
mealslist
querytext
Example output
{
  "count": 1,
  "meals": [
    {
      "alternate_name": null,
      "area": "Italian",
      "category": "Vegetarian",
      "country": "Italy",
      "creative_commons_confirmed": null,
      "date_modified": null,
      "id": "52771",
      "image_source": null,
      "ingredients": [
        {
          "measure": "1 pound",
          "name": "penne rigate"
        },
        {
          "measure": "1/4 cup",
          "name": "olive oil"
        }
      ],
      "instructions": "Bring a large pot of water to a boil...",
      "name": "Spicy Arrabiata Penne",
      "source_url": null,
      "tags": [
        "Pasta",
        "Curry"
      ],
      "thumbnail": "https://www.themealdb.com/images/media/meals/ustsqw1468250014.jpg",
      "thumbnail_large": "https://www.themealdb.com/images/media/meals/ustsqw1468250014.jpg/large",
      "thumbnail_medium": "https://www.themealdb.com/images/media/meals/ustsqw1468250014.jpg/medium",
      "thumbnail_small": "https://www.themealdb.com/images/media/meals/ustsqw1468250014.jpg/small",
      "url": "https://www.themealdb.com/meal/52771",
      "youtube_url": "https://www.youtube.com/watch?v=1IszT_guI08"
    }
  ],
  "query": "Arrabiata"
}

On this page