spoonacular API
The spoonacular Nutrition, Recipe, and Food API allows you to access over thousands of recipes, thousands of ingredients, 800,000 food products, over 100,000 menu items, and restaurants. Our food ontology and semantic recipe search engine makes it possible to search for recipes using natural language queries, such as "gluten free brownies without sugar" or "low fat vegan cupcakes." You can automatically calculate the nutritional information for any recipe, analyze recipe costs, visualize ingredient lists, find recipes for what's in your fridge, find recipes based on special diets, nutritional requirements, or favorite ingredients, classify recipes into types and cuisines, convert ingredient amounts, or even compute an entire meal plan. With our powerful API, you can create many kinds of food and especially nutrition apps.
Special diets/dietary requirements currently available include: vegan, vegetarian, pescetarian, gluten free, grain free, dairy free, high protein, whole 30, low sodium, low carb, Paleo, ketogenic, FODMAP, and Primal.
- Homepage
- https://api.apis.guru/v2/specs/spoonacular.com/1.1.json
- Provider
- spoonacular.com
- OpenAPI version
- 3.0.0
- Spec (JSON)
- https://api.apis.guru/v2/specs/spoonacular.com/1.1/openapi.json
- Spec (YAML)
- https://api.apis.guru/v2/specs/spoonacular.com/1.1/openapi.yaml
Tools (101)
Extracted live via the executor SDK.
-
food.searchRestaurantsSearch through thousands of restaurants (in North America) by location, cuisine, budget, and more.
-
ingredients.autocompleteIngredientSearchAutocomplete the entry of an ingredient.
-
ingredients.computeIngredientAmountCompute the amount you need of a certain ingredient for a certain nutritional goal. For example, how much pineapple do you have to eat to get 10 grams of protein?
-
ingredients.getIngredientInformationUse an ingredient id to get all available information about an ingredient, such as its image and supermarket aisle.
-
ingredients.getIngredientSubstitutesSearch for substitutes for a given ingredient.
-
ingredients.getIngredientSubstitutesByIdSearch for substitutes for a given ingredient.
-
ingredients.ingredientsByIdImageVisualize a recipe's ingredient list.
-
ingredients.ingredientSearchSearch for simple whole foods (e.g. fruits, vegetables, nuts, grains, meat, fish, dairy etc.).
-
ingredients.mapIngredientsToGroceryProductsMap a set of ingredients to products you can buy in the grocery store.
-
ingredients.visualizeIngredientsVisualize ingredients of a recipe. You can play around with that endpoint!
-
mealPlanning.addMealPlanTemplateAdd a meal plan template for a user.
-
mealPlanning.addToMealPlanAdd an item to the user's meal plan.
-
mealPlanning.addToShoppingListAdd an item to the current shopping list of a user.
-
mealPlanning.clearMealPlanDayDelete all planned items from the user's meal plan for a specific day.
-
mealPlanning.connectUserIn order to call user-specific endpoints, you need to connect your app's users to spoonacular users.
-
mealPlanning.deleteFromMealPlanDelete an item from the user's meal plan.
-
mealPlanning.deleteFromShoppingListDelete an item from the current shopping list of the user.
-
mealPlanning.deleteMealPlanTemplateDelete a meal plan template for a user.
-
mealPlanning.generateMealPlanGenerate a meal plan with three meals per day (breakfast, lunch, and dinner).
-
mealPlanning.generateShoppingListGenerate the shopping list for a user from the meal planner in a given time frame.
-
mealPlanning.getMealPlanTemplateGet information about a meal plan template.
-
mealPlanning.getMealPlanTemplatesGet meal plan templates from user or public ones.
-
mealPlanning.getMealPlanWeekRetrieve a meal planned week for the given user. The username must be a spoonacular user and the hash must the the user's hash that can be found in his/her account.
-
mealPlanning.getShoppingListGet the current shopping list for the given user.
-
menuItems.autocompleteMenuItemSearchGenerate suggestions for menu items based on a (partial) query. The matches will be found by looking in the title only.
-
menuItems.getMenuItemInformationUse a menu item id to get all available information about a menu item, such as nutrition.
-
menuItems.menuItemNutritionByIdImageVisualize a menu item's nutritional information as HTML including CSS.
-
menuItems.menuItemNutritionLabelImageVisualize a menu item's nutritional label information as an image.
-
menuItems.menuItemNutritionLabelWidgetVisualize a menu item's nutritional label information as HTML including CSS.
-
menuItems.searchMenuItemsSearch over 115,000 menu items from over 800 fast food and chain restaurants. For example, McDonald's Big Mac or Starbucks Mocha.
-
menuItems.visualizeMenuItemNutritionByIdVisualize a menu item's nutritional information as HTML including CSS.
-
misc.detectFoodInTextTake any text and find all mentions of food contained within it. This task is also called Named Entity Recognition (NER). In this case, the entities are foods. Either dishes, such as pizza or cheeseburger, or ingredients, such as cucumber or almonds.
-
misc.getARandomFoodJokeGet a random joke that is related to food. Caution: this is an endpoint for adults!
-
misc.getConversationSuggestsThis endpoint returns suggestions for things the user can say or ask the chatbot.
-
misc.getRandomFoodTriviaReturns random food trivia.
-
misc.imageAnalysisByUrlAnalyze a food image. The API tries to classify the image, guess the nutrition, and find a matching recipes.
-
misc.imageClassificationByUrlClassify a food image.
-
misc.searchAllFoodSearch all food content with one call. That includes recipes, grocery products, menu items, simple foods (ingredients), and food videos.
-
misc.searchCustomFoodsSearch custom foods in a user's account.
-
misc.searchFoodVideosFind recipe and other food related videos.
-
misc.searchSiteContentSearch spoonacular's site content. You'll be able to find everything that you could also find using the search suggestions on spoonacular.com. This is a suggest API so you can send partial strings as queries.
-
misc.talkToChatbotThis endpoint can be used to have a conversation about food with the spoonacular chatbot. Use the "Get Conversation Suggests" endpoint to show your user what he or she can say.
-
products.autocompleteProductSearchGenerate suggestions for grocery products based on a (partial) query. The matches will be found by looking in the title only.
-
products.classifyGroceryProductThis endpoint allows you to match a packaged food to a basic category, e.g. a specific brand of milk to the category milk.
-
products.classifyGroceryProductBulkProvide a set of product jsons, get back classified products.
-
products.getComparableProductsFind comparable products to the given one.
-
products.getProductInformationUse a product id to get full information about a product, such as ingredients, nutrition, etc. The nutritional information is per serving.
-
products.productNutritionByIdImageVisualize a product's nutritional information as an image.
-
products.productNutritionLabelImageGet a product's nutrition label as an image.
-
products.productNutritionLabelWidgetGet a product's nutrition label as an HTML widget.
-
products.searchGroceryProductsSearch packaged food products, such as frozen pizza or Greek yogurt.
-
products.searchGroceryProductsByUpcGet information about a packaged food using its UPC.
-
products.visualizeProductNutritionByIdVisualize a product's nutritional information as HTML including CSS.
-
recipes.analyzeARecipeSearchQueryParse a recipe search query to find out its intention.
-
recipes.analyzeRecipeThis endpoint allows you to send raw recipe information, such as title, servings, and ingredients, to then see what we compute (badges, diets, nutrition, and more). This is useful if you have your own recipe data and want to enrich it with our semantic analysis.
-
recipes.analyzeRecipeInstructionsThis endpoint allows you to break down instructions into atomic steps. Furthermore, each step will contain the ingredients and equipment required. Additionally, all ingredients and equipment from the recipe's instructions will be extracted independently of the step they're used in.
-
recipes.autocompleteRecipeSearchAutocomplete a partial input to suggest possible recipe names.
-
recipes.classifyCuisineClassify the recipe's cuisine.
-
recipes.computeGlycemicLoadRetrieve the glycemic index for a list of ingredients and compute the individual and total glycemic load.
-
recipes.convertAmountsConvert amounts like "2 cups of flour to grams".
-
recipes.createRecipeCardGenerate a recipe card for a recipe.
-
recipes.createRecipeCardGetGenerate a recipe card for a recipe.
-
recipes.equipmentByIdImageVisualize a recipe's equipment list as an image.
-
recipes.extractRecipeFromWebsiteThis endpoint lets you extract recipe data such as title, ingredients, and instructions from any properly formatted Website.
-
recipes.getAnalyzedRecipeInstructionsGet an analyzed breakdown of a recipe's instructions. Each step is enriched with the ingredients and equipment required.
-
recipes.getRandomRecipesFind random (popular) recipes. If you need to filter recipes by diet, nutrition etc. you might want to consider using the complex recipe search endpoint and set the sort request parameter to random.
-
recipes.getRecipeEquipmentByIdGet a recipe's equipment list.
-
recipes.getRecipeInformationUse a recipe id to get full information about a recipe, such as ingredients, nutrition, diet and allergen information, etc.
-
recipes.getRecipeInformationBulkGet information about multiple recipes at once. This is equivalent to calling the Get Recipe Information endpoint multiple times, but faster.
-
recipes.getRecipeIngredientsByIdGet a recipe's ingredient list.
-
recipes.getRecipeNutritionWidgetByIdGet a recipe's nutrition data.
-
recipes.getRecipePriceBreakdownByIdGet a recipe's price breakdown data.
-
recipes.getRecipeTasteByIdGet a recipe's taste. The tastes supported are sweet, salty, sour, bitter, savory, and fatty.
-
recipes.getSimilarRecipesFind recipes which are similar to the given one.
-
recipes.guessNutritionByDishNameEstimate the macronutrients of a dish based on its title.
-
recipes.parseIngredientsExtract an ingredient from plain text.
-
recipes.priceBreakdownByIdImageVisualize a recipe's price breakdown.
-
recipes.quickAnswerAnswer a nutrition related natural language question.
-
recipes.recipeNutritionByIdImageVisualize a recipe's nutritional information as an image.
-
recipes.recipeNutritionLabelImageGet a recipe's nutrition label as an image.
-
recipes.recipeNutritionLabelWidgetGet a recipe's nutrition label as an HTML widget.
-
recipes.recipeTasteByIdImageGet a recipe's taste as an image. The tastes supported are sweet, salty, sour, bitter, savory, and fatty.
-
recipes.searchRecipesSearch through hundreds of thousands of recipes using advanced filtering and ranking. NOTE: This method combines searching by query, by ingredients, and by nutrients into one endpoint.
-
recipes.searchRecipesByIngredientsEver wondered what recipes you can cook with the ingredients you have in your fridge or pantry? This endpoint lets you find recipes that either maximize the usage of ingredients you have at hand (pre shopping) or minimize the ingredients that you don't currently have (post shopping).
-
recipes.searchRecipesByNutrientsFind a set of recipes that adhere to the given nutritional limits. You may set limits for macronutrients (calories, protein, fat, and carbohydrate) and/or many micronutrients.
-
recipes.summarizeRecipeAutomatically generate a short description that summarizes key information about the recipe.
-
recipes.visualizeEquipmentVisualize the equipment used to make a recipe.
-
recipes.visualizePriceBreakdownVisualize the price breakdown of a recipe.
-
recipes.visualizeRecipeEquipmentByIdVisualize a recipe's equipment list.
-
recipes.visualizeRecipeIngredientsByIdVisualize a recipe's ingredient list.
-
recipes.visualizeRecipeNutritionVisualize a recipe's nutritional information as HTML including CSS.
-
recipes.visualizeRecipeNutritionByIdVisualize a recipe's nutritional information as HTML including CSS.
-
recipes.visualizeRecipePriceBreakdownByIdVisualize a recipe's price breakdown.
-
recipes.visualizeRecipeTasteVisualize a recipe's taste information as HTML including CSS. You can play around with that endpoint!
-
recipes.visualizeRecipeTasteByIdGet a recipe's taste. The tastes supported are sweet, salty, sour, bitter, savory, and fatty.
-
wine.getDishPairingForWineFind a dish that goes well with a given wine.
-
wine.getWineDescriptionGet a simple description of a certain wine, e.g. "malbec", "riesling", or "merlot".
-
wine.getWinePairingFind a wine that goes well with a food. Food can be a dish name ("steak"), an ingredient name ("salmon"), or a cuisine ("italian").
-
wine.getWineRecommendationGet a specific wine recommendation (concrete product) for a given wine type, e.g. "merlot".
-
openapi.previewSpecPreview an OpenAPI document before adding it as a source
-
openapi.addSourceAdd an OpenAPI source and register its operations as tools