Free Recipe API
The Recipe – Food – Nutrition API provides access to a vast collection of recipes, storebought packaged foods, and chain restaurant menu items. It is designed to serve developers, businesses, and hobbyists who wish to incorporate rich food and nutrition data into their applications. This API empowers users to perform natural language queries such as “gluten free brownies without sugar” or “low fat vegan cupcakes,” offering an easy-to-integrate solution for various dietary needs.
The API caters to a wide range of applications, from calculating nutritional information to generating entire meal plans. With its powerful features, it is an indispensable tool for anyone looking to create applications in the realm of food and nutrition.
Table of Contents
- Recipe API: Key Features
- Recipe API: Endpoints List
- Practical Applications
- Free Recipe API Usage
- Final Overview
Recipe API: Key Features
This API offers an extensive array of features that set it apart in the market:
- Recipe Search: Search through thousands of recipes using advanced filtering and ranking. This feature supports natural language queries for enhanced user interaction.
- Nutritional Information: Automatically calculate the nutritional information for any recipe, as well as visualize this data with widgets and images.
- Meal Planning: Generate comprehensive meal plans tailored to specific dietary needs. This feature also includes the ability to create and manage shopping lists.
- Ingredient Handling: Convert ingredient amounts, find substitutes, and compute the glycemic load of recipes.
- Food Ontology: Utilize a robust food ontology and semantic recipe search engine for precise ingredient and recipe handling.
- Special Diets: Support for various dietary requirements including vegan, vegetarian, pescetarian, gluten free, grain free, and more.
- Cost Estimation: Estimate recipe costs to assist in budgeting and planning.
- Visualization Tools: Generate visual elements such as recipe cards, nutritional labels, and ingredient lists in both image and HTML formats.
- Wine Pairing: Provides wine recommendations and pairings for specified dishes or ingredients, enhancing the culinary experience.
Recipe API: Endpoints List
Menu Items
- GET – Get Menu Item Information:
Retrieve details about a specific menu item. - GET – Autocomplete Menu Item Search:
Receive suggestions for menu items based on a partial query by searching through titles only. - GET – Search Menu Items:
Look up menu items like McDonalds Big Mac for information.
Wine
- GET – Wine Recommendation:
Get a specific wine recommendation for a given wine type such as “merlot”. - GET – Wine Description:
Obtain a brief description of a particular wine like “malbec” or “riesling”. - GET – Wine Pairing:
Discover a wine that complements a specific food item, whether a dish, ingredient, or cuisine. - GET – Dish Pairing for Wine:
Find a suitable dish to pair with a selected wine.
Products
- GET – Get Product Information:
Retrieve details about a packaged food product. - GET – Search Grocery Products by UPC:
Retrieve information about a food product using its UPC. - GET – Get Comparable Products:
Find similar products to the specified one. - POST – Classify Grocery Product Bulk:
Submit a set of product jsons to obtain classified products. - POST – Map Ingredients to Grocery Products:
Link a set of ingredients to grocery store products. - POST – Classify a Grocery Product:
Detect the basic ingredient of a grocery product based on its title. - GET – Search Grocery Products:
Look for packaged food products like frozen pizza and snickers bars. - GET – Autocomplete Product Search:
Receive suggestions for grocery products based on partial queries searching through titles only.
Ingredients
- GET – Compute Ingredient Amount:
Calculate the required quantity of a specific ingredient to meet a nutritional goal, such as determining how much soy milk is needed to obtain 10 grams of protein. - GET – Ingredient Search:
Search for basic whole foods (e.g. fruits, vegetables, nuts, grains, meat, fish, dairy, etc.) for recipe or dietary planning purposes. - GET – Autocomplete Ingredient Search:
Utilize autocomplete functionality to streamline the search process for an ingredient. - POST – Compute Glycemic Load:
Retrieve the glycemic index for a selection of ingredients and calculate both the individual and total glycemic load. - GET – Convert Amounts:
Easily convert measurements, such as converting “2 cups of flour” to grams for precise recipe preparation. - POST – Parse Ingredients:
Extract a specific ingredient from plain text for accurate tracking or analysis. - GET – Get Ingredient Substitutes:
Obtain substitute options for a particular ingredient by its name to accommodate dietary restrictions or preferences. - GET – Get Ingredient Substitutes by ID:
Retrieve alternative substitutes for a designated ingredient for culinary or nutritional needs. - GET – Get Ingredient Information:
Access comprehensive details about an ingredient using its unique identifier, including images and placement in a supermarket aisle.
Misc
- GET – Search All Food:
Easily search for various food content including recipes, grocery products, menu items, simple foods, and food videos with just one call. - GET – Conversation Suggests:
Receive suggestions for chatbot interactions to facilitate user engagement. - POST – Detect Food in Text:
Identify ingredients and dishes mentioned in text inputs. - GET – Talk to Chatbot:
Initiate food-related conversations with the spoonacular chat bot and use chat suggests for user prompts. - POST – Image Analysis (File):
Analyze and categorize a food image provided as a file. - GET – Search Site Content:
Utilize spoonacular’s site content search to access a variety of information available on spoonacular.com. - GET – Image Analysis (URL):
Analyze and categorize a food image using a specified URL. - GET – Get a Random Food Joke:
Retrieve a random joke related to food for entertainment purposes. - GET – Image Classification (URL):
Classify a food image based on information from a given URL. - GET – Quick Answer:
Obtain quick responses to nutrition-related questions using natural language processing. - GET – Get Random Food Trivia:
Access random trivia facts related to food to increase knowledge on the topic. - GET – Search Food Videos:
Discover recipe and food-related videos for culinary inspiration and guidance. - POST – Image Classification (File):
Categorize a food image provided in a file format.
Meal Planning
- GET – Get Meal Plan Day:
Retrieve a meal planned day for the given spoonacular user using their hash. - GET – Get Meal Plan Week:
Get a meal planned week for the specified spoonacular user using their hash. - GET – Search Custom Foods:
Browse through custom foods stored in a user’s account. - POST – Compute Shopping List:
Calculate a shopping list based on a set of simple foods. - POST – Generate Shopping List:
Create a shopping list for a user from their meal planner within a specific time frame. - DELETE – Delete from Shopping List:
Remove an item from the user’s current shopping list. - POST – Add to Shopping List:
Include an item in the user’s current shopping list. - GET – Get Shopping List:
Retrieve the current shopping list for the provided user. - DELETE – Delete Meal Plan Template:
Erase a meal plan template for a user. - POST – Add Meal Plan Template:
Add a new meal plan template for a specific user. - GET – Get Meal Plan Template:
Access information regarding a meal plan template. - GET – Get Meal Plan Templates:
Retrieve meal plan templates owned by the user. - DELETE – Delete from Meal Plan:
Eliminate an item from the user’s meal plan. - DELETE – Clear Meal Plan Day:
Remove all planned items for a specific day from the user’s meal plan. - POST – Add to Meal Plan:
Include an item in the user’s meal plan, following the provided guidelines. - POST – Connect User:
Establish a connection between the app user and spoonacular user to access user-specific endpoints. - GET – Generate Meal Plan:
Create a meal plan consisting of three meals per day (breakfast, lunch, and dinner).
Widgets
- GET – Get Recipe Card:
Retrieve a visually appealing recipe card for a specific recipe. - GET – Menu Item Nutrition Label Image:
Generate an image displaying the nutritional label information of a menu item. - GET – Menu Item Nutrition Label Widget:
Display the nutritional label information of a menu item in HTML format with CSS styling. - POST – Create Recipe Card (Deprecated):
Obtain a recipe card for a given recipe (deprecated functionality). - GET – Menu Item Nutrition by ID Image:
Visualize the nutritional information of a menu item as HTML with CSS styling. - GET – Menu Item Nutrition by ID Widget:
Show the nutritional information of a menu item in HTML format with CSS styling. - GET – Product Nutrition by ID Image:
View a product’s nutritional information in image form. - GET – Product Nutrition by ID Widget:
Access a product’s nutritional information in HTML format with CSS styling. - GET – Product Nutrition Label Image:
Retrieve a product’s nutrition label as an image. - GET – Product Nutrition Label Widget:
Get a product’s nutrition label as an HTML widget. - GET – Price Breakdown by ID Image:
Generate visual representation of a recipe’s price breakdown. - POST – Price Breakdown Widget:
Visualize the breakdown of a recipe’s price in graphical form. - GET – Equipment by ID Image:
Display a recipe’s equipment list as an image. - POST – Equipment Widget:
View the equipment required to make a recipe in a visual format. - GET – Recipe Nutrition by ID Widget:
Display a recipe’s nutritional information in HTML format with CSS styling. - GET – Ingredients by ID Image:
Visualize a recipe’s list of ingredients as an image. - GET – Ingredients by ID Widget:
Show the ingredient list of a recipe in HTML format with CSS styling. - POST – Ingredients Widget:
Visualize the ingredients needed to make a specific recipe. - POST – Recipe Nutrition Widget:
Access a recipe’s nutritional information in HTML format with CSS styling. For a complete example of working with widgets, refer to our [spoonacular-widget GitHub](https://github.com/ddsky/spoonacular-widgets). - GET – Recipe Nutrition by ID Image:
View a recipe’s nutritional information as an image.
Recipes
- GET – Search Recipes:
Utilize advanced filtering and ranking to search through thousands of recipes, with each request counting as 3 requests due to the combination of searching methods. - GET – Nutrition by ID:
Retrieve a recipe’s nutrition widget data for analysis. - GET – Equipment by ID:
Access a recipe’s equipment list for reference. - GET – Get Random Recipes:
Discover random popular recipes for inspiration. - GET – Get Similar Recipes:
Find recipes similar to the input recipe. - POST – Analyze Recipe:
Enrich your raw recipe data with semantic analysis by sending information such as title, servings, and ingredients. - GET – Analyze a Recipe Search Query:
Parse a recipe search query and determine its intention. - POST – Analyze Recipe Instructions:
Extract ingredients and equipment from recipe instruction steps for easier understanding. - GET – Extract Recipe from Website:
Extract recipe data from recipe blogs or web pages for convenient access. - GET – Ingredients by ID:
Retrieve a recipe’s ingredient list for reference. - GET – Autocomplete Recipe Search:
Obtain autocomplete suggestions for recipe names based on partial inputs. - GET – Get Recipe Information Bulk:
Efficiently gather information about multiple recipes at once through a faster process. - GET – Get Recipe Information:
Access detailed information about a specific recipe. - GET – Search Recipes (Deprecated):
Conduct natural language recipe searches for specific queries. - GET – Search Recipes Complex (Deprecated):
Search through hundreds of thousands of recipes using advanced filtering and ranking, with each request counting as 3 requests. - GET – Search Recipes by Nutrients:
Find recipes that adhere to specific nutrient limits, ensuring macro nutrients are within set boundaries. - GET – Taste by ID:
Discover a recipe’s taste profile including sweet, salty, sour, bitter, savory, and fatty tastes on a scale of 0-100, with spiciness measured in scoville units. - GET – Summarize Recipe:
Obtain a brief summary of the recipe for quick reference. - GET – Get Analyzed Recipe Instructions:
Receive an analyzed breakdown of a recipe’s instructions with enriched details on ingredients and equipment used in each step. - GET – Guess Nutrition by Dish Name:
Estimate the macro nutrients of a dish based on its title.
Practical Applications
This versatile API can be applied to a plethora of real-world scenarios:
- Diet Management Applications: Ideal for apps focused on health and nutrition, allowing users to search for recipes based on their dietary restrictions.
- Grocery Shopping Apps: Facilitate ingredient substitutions and compute shopping lists, making grocery shopping both efficient and diet-compliant.
- Restaurant Menus: Offer detailed nutritional information and cost estimation for menu items, helping patrons make informed choices.
- Recipe Blogs: Extract and enhance recipe data from web pages, providing a richer user experience on food and cooking blogs.
- Weight Management Programs: Generate meal plans and track nutritional information to support weight loss or maintenance goals.
- Cooking Assistants: Enhances virtual cooking assistants with features such as ingredient parsing and equipment lists.
- Health Bots: Engage users in conversations about food and nutrition, using natural language understanding to offer personalized advice.
Free Recipe API Usage
To begin with the Free Recipe API, subscribe to the Free Tier. Review the API documentation for detailed usage instructions.
Final Overview
The Recipe – Food – Nutrition API stands out as a comprehensive solution for accessing and integrating food and nutrition data into various applications. With features like advanced recipe search, nutritional calculation, and meal planning, it provides all the tools necessary to create sophisticated food-related applications.
Whether you are a developer creating a health app, a business managing restaurant menus, or a hobbyist experimenting with recipes, this API offers the functionality you need.
Its versatility makes it a valuable asset for a wide array of use cases, ensuring that dietary preferences and nutritional needs are met with precision and ease.