{ "openapi": "3.0.0", "info": { "title": "spoonacular API", "description": "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.\n\nSpecial 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.", "contact": { "name": "David Urbansky", "email": "mail@spoonacular.com", "url": "https://spoonacular.com/contact" }, "version": "2.0.2", "x-codegen-settings": { "Nullify404": false, "GenerateAsyncCode": true, "UseMethodPrefix": true, "UseModelPostfix": false, "UseControllerPrefix": true, "UseEnumPostfix": true, "CollectParameters": false, "UseConstructorsForConfig": true, "UseCommonSDKLibrary": false, "iOSUseAppInfoPlist": true, "AndroidUseAppManifest": true, "BodySerialization": 0, "EnableAdditionalModelProperties": false, "PreserveParameterOrder": false, "AppendContentHeaders": true, "iOSGenerateCoreData": false, "GenerateInterfaces": false, "NodeHttpClient": "NODE_REQUEST", "ValidateRequiredParameters": false, "JavaUsePropertiesConfig": false, "Timeout": 0, "StoreTimezoneInformation": false, "EnablePHPComposerVersionString": false, "EnableLogging": false, "ArraySerialization": "Indexed", "ModelSerializationScheme": "Json", "UseExceptionPrefix": true, "RunscopeEnabled": false, "JavaHttpClient": "JAVA_OK", "ParameterArrayFormat": "ParamArrayWithIndex", "SecurityProtocols": [ "Ssl3", "Tls" ], "GenerateTravisConfig": false, "GenerateCircleConfig": false, "GenerateAppveyorConfig": false, "GenerateJenkinsConfig": false, "EnableHttpCache": false, "Retries": 0, "RetryInterval": 1, "GenerateAdvancedDocs": false, "UnderscoreNumbers": true, "UseSingletonPattern": true, "DisableLinting": false, "ApplyCustomizations": [], "SortResources": false, "AllowSkippingSSLCertVerification": false, "DoNotSplitWords": [], "EnableGlobalUserAgent": true, "ReturnCompleteHttpResponse": false, "GenerateModels": true, "GenerateExceptions": true, "IgnoreIfNullJson": false, "DisableDocs": false, "LiftParameterDescriptionFromCustomType": false, "ThrowForHttpErrorStatusCodes": true, "ResponseMapping": { "Type": "Simple" }, "ForceKeywordArgsInRuby": false, "SymbolizeHashKeysInRuby": false }, "x-server-configuration": { "default-environment": "production", "default-server": "default", "environments": [ { "name": "production", "servers": [ { "name": "default", "url": "https://api.spoonacular.com" } ] } ], "parameters": [] }, "license": { "name": "spoonacular API Terms", "url": "https://spoonacular.com/food-api/terms" }, "termsOfService": "https://spoonacular.com/food-api/terms" }, "servers": [ { "url": "https://api.spoonacular.com", "variables": {} } ], "paths": { "/recipes/complexSearch": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "description": "", "type": "object", "properties": { "offset": { "type": "integer" }, "number": { "type": "integer" }, "results": { "type": "array", "uniqueItems": true, "minItems": 0, "items": { "type": "object", "properties": { "id": { "type": "integer" }, "title": { "type": "string", "minLength": 1 }, "image": { "type": "string", "minLength": 1 }, "imageType": { "type": "string", "minLength": 1 } }, "required": [ "id", "title", "image", "imageType" ] } }, "totalResults": { "type": "integer" } }, "required": [ "offset", "number", "results", "totalResults" ] }, "examples": { "example-1": { "value": { "offset": 0, "number": 2, "results": [ { "id": 716429, "title": "Pasta with Garlic, Scallions, Cauliflower & Breadcrumbs", "calories": 584, "carbs": "84g", "fat": "20g", "image": "https://spoonacular.com/recipeImages/716429-312x231.jpg", "imageType": "jpg", "protein": "19g" }, { "id": 715538, "title": "What to make for dinner tonight?? Bruschetta Style Pork & Pasta", "calories": 521, "carbs": "69g", "fat": "10g", "image": "https://spoonacular.com/recipeImages/715538-312x231.jpg", "imageType": "jpg", "protein": "35g" } ], "totalResults": 86 } } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "$ref": "#/components/parameters/query" }, { "name": "cuisine", "description": "The cuisine(s) of the recipes. One or more, comma separated (will be interpreted as 'OR'). See a full list of supported cuisines.", "schema": { "type": "string", "example": "italian" }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "excludeCuisine", "description": "The cuisine(s) the recipes must not match. One or more, comma separated (will be interpreted as 'AND'). See a full list of supported cuisines.", "schema": { "type": "string", "example": "greek" }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "diet", "description": "The diet for which the recipes must be suitable. See a full list of supported diets.", "schema": { "type": "string", "example": "vegetarian" }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "intolerances", "description": "A comma-separated list of intolerances. All recipes returned must not contain ingredients that are not suitable for people with the intolerances entered. See a full list of supported intolerances.", "schema": { "type": "string", "example": "gluten" }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "equipment", "description": "The equipment required. Multiple values will be interpreted as 'or'. For example, value could be \"blender, frying pan, bowl\".", "schema": { "type": "string", "example": "pan" }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "includeIngredients", "description": "A comma-separated list of ingredients that should/must be used in the recipes.", "schema": { "type": "string", "example": "tomato,cheese" }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "excludeIngredients", "description": "A comma-separated list of ingredients or ingredient types that the recipes must not contain.", "schema": { "type": "string", "example": "eggs" }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "type", "description": "The type of recipe. See a full list of supported meal types.", "schema": { "type": "string", "example": "main course" }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "instructionsRequired", "description": "Whether the recipes must have instructions.", "schema": { "type": "boolean", "example": true }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "fillIngredients", "description": "Add information about the ingredients and whether they are used or missing in relation to the query.", "schema": { "type": "boolean", "example": false }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "addRecipeInformation", "description": "If set to true, you get more information about the recipes returned.", "schema": { "type": "boolean", "example": false }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "addRecipeNutrition", "description": "If set to true, you get nutritional information about each recipes returned.", "schema": { "type": "boolean", "example": false }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "author", "description": "The username of the recipe author.", "schema": { "type": "string", "example": "coffeebean" }, "required": false, "style": "form", "explode": false, "in": "query" }, { "$ref": "#/components/parameters/tags" }, { "name": "recipeBoxId", "description": "The id of the recipe box to which the search should be limited to.", "schema": { "type": "integer", "example": 2468 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "titleMatch", "description": "Enter text that must be found in the title of the recipes.", "schema": { "type": "string", "example": "Crock Pot" }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxReadyTime", "description": "The maximum time in minutes it should take to prepare and cook the recipe.", "schema": { "type": "number", "example": 20 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minServings", "description": "The minimum amount of servings the recipe is for.", "schema": { "type": "number", "example": 1 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxServings", "description": "The maximum amount of servings the recipe is for.", "schema": { "type": "number", "example": 8 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "$ref": "#/components/parameters/ignorePantry" }, { "name": "sort", "description": "The strategy to sort recipes by. See a full list of supported sorting options.", "schema": { "type": "string", "example": "calories" }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "sortDirection", "description": "The direction in which to sort. Must be either 'asc' (ascending) or 'desc' (descending).", "schema": { "type": "string", "example": "asc" }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minCarbs", "description": "The minimum amount of carbohydrates in grams the recipe must have.", "schema": { "type": "number", "example": 10 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxCarbs", "description": "The maximum amount of carbohydrates in grams the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minProtein", "description": "The minimum amount of protein in grams the recipe must have.", "schema": { "type": "number", "example": 10 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxProtein", "description": "The maximum amount of protein in grams the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minCalories", "description": "The minimum amount of calories the recipe must have.", "schema": { "type": "number", "example": 50 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxCalories", "description": "The maximum amount of calories the recipe can have.", "schema": { "type": "number", "example": 800 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minFat", "description": "The minimum amount of fat in grams the recipe must have.", "schema": { "type": "number", "example": 1 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxFat", "description": "The maximum amount of fat in grams the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minAlcohol", "description": "The minimum amount of alcohol in grams the recipe must have.", "schema": { "type": "number", "example": 0 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxAlcohol", "description": "The maximum amount of alcohol in grams the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minCaffeine", "description": "The minimum amount of caffeine in milligrams the recipe must have.", "schema": { "type": "number", "example": 0 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxCaffeine", "description": "The maximum amount of caffeine in milligrams the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minCopper", "description": "The minimum amount of copper in milligrams the recipe must have.", "schema": { "type": "number", "example": 0 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxCopper", "description": "The maximum amount of copper in milligrams the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minCalcium", "description": "The minimum amount of calcium in milligrams the recipe must have.", "schema": { "type": "number", "example": 0 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxCalcium", "description": "The maximum amount of calcium in milligrams the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minCholine", "description": "The minimum amount of choline in milligrams the recipe must have.", "schema": { "type": "number", "example": 0 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxCholine", "description": "The maximum amount of choline in milligrams the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minCholesterol", "description": "The minimum amount of cholesterol in milligrams the recipe must have.", "schema": { "type": "number", "example": 0 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxCholesterol", "description": "The maximum amount of cholesterol in milligrams the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minFluoride", "description": "The minimum amount of fluoride in milligrams the recipe must have.", "schema": { "type": "number", "example": 0 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxFluoride", "description": "The maximum amount of fluoride in milligrams the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minSaturatedFat", "description": "The minimum amount of saturated fat in grams the recipe must have.", "schema": { "type": "number", "example": 0 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxSaturatedFat", "description": "The maximum amount of saturated fat in grams the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minVitaminA", "description": "The minimum amount of Vitamin A in IU the recipe must have.", "schema": { "type": "number", "example": 0 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxVitaminA", "description": "The maximum amount of Vitamin A in IU the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minVitaminC", "description": "The minimum amount of Vitamin C milligrams the recipe must have.", "schema": { "type": "number", "example": 0 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxVitaminC", "description": "The maximum amount of Vitamin C in milligrams the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minVitaminD", "description": "The minimum amount of Vitamin D in micrograms the recipe must have.", "schema": { "type": "number", "example": 0 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxVitaminD", "description": "The maximum amount of Vitamin D in micrograms the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minVitaminE", "description": "The minimum amount of Vitamin E in milligrams the recipe must have.", "schema": { "type": "number", "example": 0 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxVitaminE", "description": "The maximum amount of Vitamin E in milligrams the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minVitaminK", "description": "The minimum amount of Vitamin K in micrograms the recipe must have.", "schema": { "type": "number", "example": 0 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxVitaminK", "description": "The maximum amount of Vitamin K in micrograms the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minVitaminB1", "description": "The minimum amount of Vitamin B1 in milligrams the recipe must have.", "schema": { "type": "number", "example": 0 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxVitaminB1", "description": "The maximum amount of Vitamin B1 in milligrams the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minVitaminB2", "description": "The minimum amount of Vitamin B2 in milligrams the recipe must have.", "schema": { "type": "number", "example": 0 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxVitaminB2", "description": "The maximum amount of Vitamin B2 in milligrams the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minVitaminB5", "description": "The minimum amount of Vitamin B5 in milligrams the recipe must have.", "schema": { "type": "number", "example": 0 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxVitaminB5", "description": "The maximum amount of Vitamin B5 in milligrams the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minVitaminB3", "description": "The minimum amount of Vitamin B3 in milligrams the recipe must have.", "schema": { "type": "number", "example": 0 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxVitaminB3", "description": "The maximum amount of Vitamin B3 in milligrams the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minVitaminB6", "description": "The minimum amount of Vitamin B6 in milligrams the recipe must have.", "schema": { "type": "number", "example": 0 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxVitaminB6", "description": "The maximum amount of Vitamin B6 in milligrams the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minVitaminB12", "description": "The minimum amount of Vitamin B12 in micrograms the recipe must have.", "schema": { "type": "number", "example": 0 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxVitaminB12", "description": "The maximum amount of Vitamin B12 in micrograms the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minFiber", "description": "The minimum amount of fiber in grams the recipe must have.", "schema": { "type": "number", "example": 0 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxFiber", "description": "The maximum amount of fiber in grams the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minFolate", "description": "The minimum amount of folate in micrograms the recipe must have.", "schema": { "type": "number", "example": 0 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxFolate", "description": "The maximum amount of folate in micrograms the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minFolicAcid", "description": "The minimum amount of folic acid in micrograms the recipe must have.", "schema": { "type": "number", "example": 0 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxFolicAcid", "description": "The maximum amount of folic acid in micrograms the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minIodine", "description": "The minimum amount of iodine in micrograms the recipe must have.", "schema": { "type": "number", "example": 0 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxIodine", "description": "The maximum amount of iodine in micrograms the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minIron", "description": "The minimum amount of iron in milligrams the recipe must have.", "schema": { "type": "number", "example": 0 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxIron", "description": "The maximum amount of iron in milligrams the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minMagnesium", "description": "The minimum amount of magnesium in milligrams the recipe must have.", "schema": { "type": "number", "example": 0 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxMagnesium", "description": "The maximum amount of magnesium in milligrams the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minManganese", "description": "The minimum amount of manganese in milligrams the recipe must have.", "schema": { "type": "number", "example": 0 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxManganese", "description": "The maximum amount of manganese in milligrams the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minPhosphorus", "description": "The minimum amount of phosphorus in milligrams the recipe must have.", "schema": { "type": "number", "example": 0 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxPhosphorus", "description": "The maximum amount of phosphorus in milligrams the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minPotassium", "description": "The minimum amount of potassium in milligrams the recipe must have.", "schema": { "type": "number", "example": 0 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxPotassium", "description": "The maximum amount of potassium in milligrams the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minSelenium", "description": "The minimum amount of selenium in micrograms the recipe must have.", "schema": { "type": "number", "example": 0 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxSelenium", "description": "The maximum amount of selenium in micrograms the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minSodium", "description": "The minimum amount of sodium in milligrams the recipe must have.", "schema": { "type": "number", "example": 0 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxSodium", "description": "The maximum amount of sodium in milligrams the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minSugar", "description": "The minimum amount of sugar in grams the recipe must have.", "schema": { "type": "number", "example": 0 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxSugar", "description": "The maximum amount of sugar in grams the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minZinc", "description": "The minimum amount of zinc in milligrams the recipe must have.", "schema": { "type": "number", "example": 0 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxZinc", "description": "The maximum amount of zinc in milligrams the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "$ref": "#/components/parameters/offset" }, { "$ref": "#/components/parameters/number" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Search-Recipes" }, "summary": "Search Recipes", "description": "Search 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.", "operationId": "searchRecipes", "deprecated": false, "tags": [ "recipes" ] } }, "/recipes/findByIngredients": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "type": "array", "description": "", "minItems": 0, "uniqueItems": true, "items": { "type": "object", "properties": { "id": { "type": "integer" }, "image": { "type": "string", "minLength": 1 }, "imageType": { "type": "string", "minLength": 1 }, "likes": { "type": "integer" }, "missedIngredientCount": { "type": "integer" }, "missedIngredients": { "type": "array", "uniqueItems": true, "minItems": 0, "items": { "type": "object", "properties": { "aisle": { "type": "string", "minLength": 1 }, "amount": { "type": "number" }, "id": { "type": "integer" }, "image": { "type": "string", "minLength": 1 }, "meta": { "type": "array", "items": { "type": "string" } }, "name": { "type": "string", "minLength": 1 }, "extendedName": { "type": "string", "minLength": 1 }, "original": { "type": "string", "minLength": 1 }, "originalName": { "type": "string", "minLength": 1 }, "unit": { "type": "string", "minLength": 0 }, "unitLong": { "type": "string", "minLength": 0 }, "unitShort": { "type": "string", "minLength": 0 } }, "required": [ "aisle", "amount", "id", "image", "name", "original", "originalName", "unit", "unitLong", "unitShort" ] } }, "title": { "type": "string", "minLength": 1 }, "unusedIngredients": { "type": "array", "minItems": 0, "items": { "type": "object" } }, "usedIngredientCount": { "type": "number" }, "usedIngredients": { "type": "array", "uniqueItems": true, "minItems": 0, "items": { "type": "object", "properties": { "aisle": { "type": "string", "minLength": 1 }, "amount": { "type": "number" }, "id": { "type": "integer" }, "image": { "type": "string", "minLength": 1 }, "meta": { "type": "array", "items": { "type": "string" } }, "name": { "type": "string", "minLength": 1 }, "extendedName": { "type": "string", "minLength": 1 }, "original": { "type": "string", "minLength": 1 }, "originalName": { "type": "string", "minLength": 1 }, "unit": { "type": "string", "minLength": 0 }, "unitLong": { "type": "string", "minLength": 0 }, "unitShort": { "type": "string", "minLength": 0 } }, "required": [ "aisle", "amount", "id", "image", "name", "original", "originalName", "unit", "unitLong", "unitShort" ] } } }, "required": [ "id", "image", "imageType", "likes", "missedIngredientCount", "missedIngredients", "title", "unusedIngredients", "usedIngredientCount", "usedIngredients" ] } }, "examples": { "example-1": { "value": [ { "id": 73420, "image": "https://spoonacular.com/recipeImages/73420-312x231.jpg", "imageType": "jpg", "likes": 0, "missedIngredientCount": 3, "missedIngredients": [ { "aisle": "Baking", "amount": 1, "id": 18371, "image": "https://spoonacular.com/cdn/ingredients_100x100/white-powder.jpg", "meta": [], "name": "baking powder", "original": "1 tsp baking powder", "originalName": "baking powder", "unit": "tsp", "unitLong": "teaspoon", "unitShort": "tsp" }, { "aisle": "Spices and Seasonings", "amount": 1, "id": 2010, "image": "https://spoonacular.com/cdn/ingredients_100x100/cinnamon.jpg", "meta": [], "name": "cinnamon", "original": "1 tsp cinnamon", "originalName": "cinnamon", "unit": "tsp", "unitLong": "teaspoon", "unitShort": "tsp" }, { "aisle": "Milk, Eggs, Other Dairy", "amount": 1, "id": 1123, "image": "https://spoonacular.com/cdn/ingredients_100x100/egg.png", "meta": [], "name": "egg", "original": "1 egg", "originalName": "egg", "unit": "", "unitLong": "", "unitShort": "" } ], "title": "Apple Or Peach Strudel", "unusedIngredients": [], "usedIngredientCount": 1, "usedIngredients": [ { "aisle": "Produce", "amount": 6, "id": 9003, "image": "https://spoonacular.com/cdn/ingredients_100x100/apple.jpg", "meta": [], "name": "apples", "original": "6 large baking apples", "originalName": "baking apples", "unit": "large", "unitLong": "larges", "unitShort": "large" } ] }, { "id": 632660, "image": "https://spoonacular.com/recipeImages/632660-312x231.jpg", "imageType": "jpg", "likes": 3, "missedIngredientCount": 4, "missedIngredients": [ { "aisle": "Milk, Eggs, Other Dairy", "amount": 1.5, "extendedName": "unsalted butter", "id": 1001, "image": "https://spoonacular.com/cdn/ingredients_100x100/butter-sliced.jpg", "meta": [ "unsalted", "cold" ], "name": "butter", "original": "1 1/2 sticks cold unsalted butter cold unsalted butter<", "originalName": "cold unsalted butter cold unsalted butter<", "unit": "sticks", "unitLong": "sticks", "unitShort": "sticks" }, { "aisle": "Produce", "amount": 4, "id": 1079003, "image": "https://spoonacular.com/cdn/ingredients_100x100/red-delicious-apples.png", "meta": [ "red", " such as golden delicious, peeled, cored and cut into 1/4-inch-thick slices " ], "name": "red apples", "original": "4 larges red apples, such as Golden Delicious, peeled, cored and cut into 1/4-inch-thick slices", "originalName": "s red apples, such as Golden Delicious, peeled, cored and cut into 1/4-inch-thick slices", "unit": "large", "unitLong": "larges", "unitShort": "large" }, { "aisle": "Spices and Seasonings", "amount": 2, "id": 2010, "image": "https://spoonacular.com/cdn/ingredients_100x100/cinnamon.jpg", "meta": [], "name": "cinnamon", "original": "2 teaspoons cinnamon", "originalName": "cinnamon", "unit": "teaspoons", "unitLong": "teaspoons", "unitShort": "tsp" }, { "aisle": "Nut butters, Jams, and Honey", "amount": 2, "id": 19719, "image": "https://spoonacular.com/cdn/ingredients_100x100/apricot-jam.jpg", "meta": [ "melted" ], "name": "apricot preserves", "original": "2 tablespoons apricot preserves, melted and strained", "originalName": "apricot preserves, melted and strained", "unit": "tablespoons", "unitLong": "tablespoons", "unitShort": "Tbsp" } ], "title": "Apricot Glazed Apple Tart", "unusedIngredients": [ { "aisle": "Produce", "amount": 1, "id": 9003, "image": "https://spoonacular.com/cdn/ingredients_100x100/apple.jpg", "meta": [], "name": "apples", "original": "apples", "originalName": "apples", "unit": "serving", "unitLong": "serving", "unitShort": "serving" } ], "usedIngredientCount": 0, "usedIngredients": [] } ] } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "$ref": "#/components/parameters/ingredients" }, { "$ref": "#/components/parameters/number" }, { "name": "ranking", "description": "Whether to maximize used ingredients (1) or minimize missing ingredients (2) first.", "schema": { "type": "integer", "example": 1 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "$ref": "#/components/parameters/ignorePantry" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Search-Recipes-by-Ingredients" }, "summary": "Search Recipes by Ingredients", "description": "\nEver 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).\n ", "operationId": "searchRecipesByIngredients", "deprecated": false, "tags": [ "recipes" ] } }, "/recipes/findByNutrients": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "type": "array", "description": "", "minItems": 0, "uniqueItems": true, "items": { "type": "object", "properties": { "calories": { "type": "number" }, "carbs": { "type": "string", "minLength": 1 }, "fat": { "type": "string", "minLength": 1 }, "id": { "type": "integer" }, "image": { "type": "string", "minLength": 1 }, "imageType": { "type": "string", "minLength": 1 }, "protein": { "type": "string", "minLength": 1 }, "title": { "type": "string", "minLength": 1 } }, "required": [ "calories", "carbs", "fat", "id", "image", "imageType", "protein", "title" ] } }, "examples": { "example-1": { "value": [ { "calories": 210, "carbs": "43g", "fat": "3g", "id": 90629, "image": "https://spoonacular.com/recipeImages/90629-312x231.jpg", "imageType": "jpg", "protein": "1g", "title": "Baked Apples in White Wine" }, { "calories": 226, "carbs": "33g", "fat": "10g", "id": 284420, "image": "https://spoonacular.com/recipeImages/284420-312x231.jpg", "imageType": "jpg", "protein": "2g", "title": "Chocolate Silk Pie with Marshmallow Meringue" } ] } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "name": "minCarbs", "description": "The minimum amount of carbohydrates in grams the recipe must have.", "schema": { "type": "number", "example": 10 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxCarbs", "description": "The maximum amount of carbohydrates in grams the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minProtein", "description": "The minimum amount of protein in grams the recipe must have.", "schema": { "type": "number", "example": 10 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxProtein", "description": "The maximum amount of protein in grams the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minCalories", "description": "The minimum amount of calories the recipe must have.", "schema": { "type": "number", "example": 50 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxCalories", "description": "The maximum amount of calories the recipe can have.", "schema": { "type": "number", "example": 800 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minFat", "description": "The minimum amount of fat in grams the recipe must have.", "schema": { "type": "number", "example": 1 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxFat", "description": "The maximum amount of fat in grams the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minAlcohol", "description": "The minimum amount of alcohol in grams the recipe must have.", "schema": { "type": "number", "example": 0 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxAlcohol", "description": "The maximum amount of alcohol in grams the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minCaffeine", "description": "The minimum amount of caffeine in milligrams the recipe must have.", "schema": { "type": "number", "example": 0 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxCaffeine", "description": "The maximum amount of caffeine in milligrams the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minCopper", "description": "The minimum amount of copper in milligrams the recipe must have.", "schema": { "type": "number", "example": 0 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxCopper", "description": "The maximum amount of copper in milligrams the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minCalcium", "description": "The minimum amount of calcium in milligrams the recipe must have.", "schema": { "type": "number", "example": 0 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxCalcium", "description": "The maximum amount of calcium in milligrams the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minCholine", "description": "The minimum amount of choline in milligrams the recipe must have.", "schema": { "type": "number", "example": 0 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxCholine", "description": "The maximum amount of choline in milligrams the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minCholesterol", "description": "The minimum amount of cholesterol in milligrams the recipe must have.", "schema": { "type": "number", "example": 0 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxCholesterol", "description": "The maximum amount of cholesterol in milligrams the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minFluoride", "description": "The minimum amount of fluoride in milligrams the recipe must have.", "schema": { "type": "number", "example": 0 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxFluoride", "description": "The maximum amount of fluoride in milligrams the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minSaturatedFat", "description": "The minimum amount of saturated fat in grams the recipe must have.", "schema": { "type": "number", "example": 0 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxSaturatedFat", "description": "The maximum amount of saturated fat in grams the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minVitaminA", "description": "The minimum amount of Vitamin A in IU the recipe must have.", "schema": { "type": "number", "example": 0 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxVitaminA", "description": "The maximum amount of Vitamin A in IU the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minVitaminC", "description": "The minimum amount of Vitamin C in milligrams the recipe must have.", "schema": { "type": "number", "example": 0 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxVitaminC", "description": "The maximum amount of Vitamin C in milligrams the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minVitaminD", "description": "The minimum amount of Vitamin D in micrograms the recipe must have.", "schema": { "type": "number", "example": 0 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxVitaminD", "description": "The maximum amount of Vitamin D in micrograms the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minVitaminE", "description": "The minimum amount of Vitamin E in milligrams the recipe must have.", "schema": { "type": "number", "example": 0 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxVitaminE", "description": "The maximum amount of Vitamin E in milligrams the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minVitaminK", "description": "The minimum amount of Vitamin K in micrograms the recipe must have.", "schema": { "type": "number", "example": 0 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxVitaminK", "description": "The maximum amount of Vitamin K in micrograms the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minVitaminB1", "description": "The minimum amount of Vitamin B1 in milligrams the recipe must have.", "schema": { "type": "number", "example": 0 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxVitaminB1", "description": "The maximum amount of Vitamin B1 in milligrams the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minVitaminB2", "description": "The minimum amount of Vitamin B2 in milligrams the recipe must have.", "schema": { "type": "number", "example": 0 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxVitaminB2", "description": "The maximum amount of Vitamin B2 in milligrams the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minVitaminB5", "description": "The minimum amount of Vitamin B5 in milligrams the recipe must have.", "schema": { "type": "number", "example": 0 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxVitaminB5", "description": "The maximum amount of Vitamin B5 in milligrams the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minVitaminB3", "description": "The minimum amount of Vitamin B3 in milligrams the recipe must have.", "schema": { "type": "number", "example": 0 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxVitaminB3", "description": "The maximum amount of Vitamin B3 in milligrams the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minVitaminB6", "description": "The minimum amount of Vitamin B6 in milligrams the recipe must have.", "schema": { "type": "number", "example": 0 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxVitaminB6", "description": "The maximum amount of Vitamin B6 in milligrams the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minVitaminB12", "description": "The minimum amount of Vitamin B12 in micrograms the recipe must have.", "schema": { "type": "number", "example": 0 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxVitaminB12", "description": "The maximum amount of Vitamin B12 in micrograms the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minFiber", "description": "The minimum amount of fiber in grams the recipe must have.", "schema": { "type": "number", "example": 0 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxFiber", "description": "The maximum amount of fiber in grams the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minFolate", "description": "The minimum amount of folate in micrograms the recipe must have.", "schema": { "type": "number", "example": 0 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxFolate", "description": "The maximum amount of folate in micrograms the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minFolicAcid", "description": "The minimum amount of folic acid in micrograms the recipe must have.", "schema": { "type": "number", "example": 0 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxFolicAcid", "description": "The maximum amount of folic acid in micrograms the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minIodine", "description": "The minimum amount of iodine in micrograms the recipe must have.", "schema": { "type": "number", "example": 0 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxIodine", "description": "The maximum amount of iodine in micrograms the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minIron", "description": "The minimum amount of iron in milligrams the recipe must have.", "schema": { "type": "number", "example": 0 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxIron", "description": "The maximum amount of iron in milligrams the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minMagnesium", "description": "The minimum amount of magnesium in milligrams the recipe must have.", "schema": { "type": "number", "example": 0 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxMagnesium", "description": "The maximum amount of magnesium in milligrams the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minManganese", "description": "The minimum amount of manganese in milligrams the recipe must have.", "schema": { "type": "number", "example": 0 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxManganese", "description": "The maximum amount of manganese in milligrams the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minPhosphorus", "description": "The minimum amount of phosphorus in milligrams the recipe must have.", "schema": { "type": "number", "example": 0 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxPhosphorus", "description": "The maximum amount of phosphorus in milligrams the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minPotassium", "description": "The minimum amount of potassium in milligrams the recipe must have.", "schema": { "type": "number", "example": 0 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxPotassium", "description": "The maximum amount of potassium in milligrams the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minSelenium", "description": "The minimum amount of selenium in micrograms the recipe must have.", "schema": { "type": "number", "example": 0 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxSelenium", "description": "The maximum amount of selenium in micrograms the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minSodium", "description": "The minimum amount of sodium in milligrams the recipe must have.", "schema": { "type": "number", "example": 0 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxSodium", "description": "The maximum amount of sodium in milligrams the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minSugar", "description": "The minimum amount of sugar in grams the recipe must have.", "schema": { "type": "number", "example": 0 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxSugar", "description": "The maximum amount of sugar in grams the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minZinc", "description": "The minimum amount of zinc in milligrams the recipe must have.", "schema": { "type": "number", "example": 0 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxZinc", "description": "The maximum amount of zinc in milligrams the recipe can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "$ref": "#/components/parameters/offset" }, { "$ref": "#/components/parameters/number" }, { "name": "random", "description": "If true, every request will give you a random set of recipes within the requested limits.", "schema": { "type": "boolean", "example": false }, "required": false, "style": "form", "explode": false, "in": "query" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Search-Recipes-by-Nutrients" }, "summary": "Search Recipes by Nutrients", "description": "Find 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.", "operationId": "searchRecipesByNutrients", "deprecated": false, "tags": [ "recipes" ] } }, "/recipes/{id}/information": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/RecipeInformation" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "name": "id", "description": "The id of the recipe.", "schema": { "type": "integer", "example": 716429 }, "required": true, "style": "simple", "explode": false, "in": "path" }, { "$ref": "#/components/parameters/includeNutrition" }, { "name": "addWinePairing", "description": "Add a wine pairing to the recipe.", "schema": { "type": "boolean", "example": false }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "addTasteData", "description": "Add taste data to the recipe.", "schema": { "type": "boolean", "example": false }, "required": false, "style": "form", "explode": false, "in": "query" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Get-Recipe-Information" }, "summary": "Get Recipe Information", "description": "Use a recipe id to get full information about a recipe, such as ingredients, nutrition, diet and allergen information, etc.", "operationId": "getRecipeInformation", "deprecated": false, "tags": [ "recipes" ] } }, "/recipes/informationBulk": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "type": "array", "description": "", "minItems": 0, "uniqueItems": true, "items": { "$ref": "#/components/schemas/RecipeInformation" } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "name": "ids", "description": "A comma-separated list of recipe ids.", "schema": { "type": "string", "example": "715538,716429" }, "required": true, "style": "form", "explode": false, "in": "query" }, { "$ref": "#/components/parameters/includeNutrition" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Get-Recipe-Information-Bulk" }, "summary": "Get Recipe Information Bulk", "description": "Get information about multiple recipes at once. This is equivalent to calling the Get Recipe Information endpoint multiple times, but faster.", "operationId": "getRecipeInformationBulk", "deprecated": false, "tags": [ "recipes" ] } }, "/recipes/{id}/similar": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "type": "array", "description": "", "minItems": 0, "uniqueItems": true, "items": { "type": "object", "properties": { "id": { "type": "integer" }, "title": { "type": "string", "minLength": 1 }, "imageType": { "type": "string", "minLength": 1 }, "readyInMinutes": { "type": "integer" }, "servings": { "type": "number" }, "sourceUrl": { "type": "string", "minLength": 1 } }, "required": [ "id", "title", "imageType", "readyInMinutes", "servings", "sourceUrl" ] } }, "examples": { "example-1": { "value": [ { "id": 209128, "title": "Dinner Tonight: Grilled Romesco-Style Pork", "imageType": "jpg", "readyInMinutes": 45, "servings": 4, "sourceUrl": "http://www.seriouseats.com/recipes/2008/07/grilled-romesco-style-pork-salad-recipe.html" }, { "id": 31868, "title": "Dinner Tonight: Chickpea Bruschetta", "imageType": "jpg", "readyInMinutes": 45, "servings": 2, "sourceUrl": "http://www.seriouseats.com/recipes/2009/06/dinner-tonight-chickpea-bruschetta-babbo-nyc-recipe.html" } ] } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "name": "id", "description": "The id of the source recipe for which similar recipes should be found.", "schema": { "type": "integer", "example": 715538 }, "required": true, "style": "simple", "explode": false, "in": "path" }, { "$ref": "#/components/parameters/number" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Get-Similar-Recipes" }, "summary": "Get Similar Recipes", "description": "Find recipes which are similar to the given one.", "operationId": "getSimilarRecipes", "deprecated": false, "tags": [ "recipes" ] } }, "/recipes/random": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "description": "", "type": "object", "properties": { "recipes": { "type": "array", "uniqueItems": true, "minItems": 0, "items": { "$ref": "#/components/schemas/RecipeInformation" } } }, "required": [ "recipes" ] } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "$ref": "#/components/parameters/includeNutrition" }, { "name": "include-tags", "description": "A comma-separated list of tags that the random recipe(s) must adhere to.", "schema": { "type": "string", "example": "vegetarian,gluten" }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "exclude-tags", "description": "A comma-separated list of tags that the random recipe(s) must not adhere to.", "schema": { "type": "string", "example": "meat,dairy" }, "required": false, "style": "form", "explode": false, "in": "query" }, { "$ref": "#/components/parameters/number" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Get-Random-Recipes" }, "summary": "Get Random Recipes", "description": "Find 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.", "operationId": "getRandomRecipes", "deprecated": false, "tags": [ "recipes" ] } }, "/recipes/autocomplete": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "type": "array", "description": "", "minItems": 0, "uniqueItems": true, "items": { "type": "object", "properties": { "id": { "type": "integer" }, "title": { "type": "string", "minLength": 1 }, "imageType": { "type": "string", "minLength": 1 } }, "required": [ "id", "title", "imageType" ] } }, "examples": { "example-1": { "value": [ { "id": 296687, "title": "chicken", "imageType": "jpg" }, { "id": 42569, "title": "chicken bbq", "imageType": "jpg" }, { "id": 83890, "title": "chicken blt", "imageType": "jpg" }, { "id": 737543, "title": "chicken pie", "imageType": "jpg" } ] } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "$ref": "#/components/parameters/query" }, { "$ref": "#/components/parameters/number" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Autocomplete-Recipe-Search" }, "summary": "Autocomplete Recipe Search", "description": "Autocomplete a partial input to suggest possible recipe names.", "operationId": "autocompleteRecipeSearch", "deprecated": false, "tags": [ "recipes" ] } }, "/recipes/{id}/tasteWidget.json": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/TasteInformation" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "name": "id", "description": "The recipe id.", "schema": { "type": "integer", "example": 69095 }, "required": true, "style": "simple", "explode": false, "in": "path" }, { "schema": { "type": "boolean", "default": true, "enum": [ false, true ], "example": true }, "required": false, "in": "query", "name": "normalize", "description": "Normalize to the strongest taste." } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Taste-by-ID" }, "summary": "Taste by ID", "description": "Get a recipe's taste. The tastes supported are sweet, salty, sour, bitter, savory, and fatty.", "operationId": "getRecipeTasteByID", "deprecated": false, "tags": [ "recipes" ] } }, "/recipes/{id}/tasteWidget.png": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "image/png": { "schema": { "type": "string", "format": "binary" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "name": "id", "description": "The recipe id.", "schema": { "type": "integer", "example": 69095 }, "required": true, "style": "simple", "explode": false, "in": "path" }, { "name": "normalize", "description": "Normalize to the strongest taste.", "schema": { "type": "boolean", "example": false }, "required": false, "style": "form", "explode": false, "in": "query" }, { "$ref": "#/components/parameters/rgb" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Recipe-Taste-by-ID-Image" }, "summary": "Recipe Taste by ID Image", "description": "Get a recipe's taste as an image. The tastes supported are sweet, salty, sour, bitter, savory, and fatty.", "operationId": "recipeTasteByIDImage", "deprecated": false, "tags": [ "recipes" ] } }, "/recipes/{id}/equipmentWidget.json": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "description": "", "type": "object", "properties": { "equipment": { "type": "array", "uniqueItems": true, "minItems": 0, "items": { "required": [ "image", "name" ], "properties": { "image": { "type": "string", "minLength": 1 }, "name": { "type": "string", "minLength": 1 } } } } }, "required": [ "equipment" ] }, "examples": { "example-1": { "value": { "equipment": [ { "image": "pie-pan.png", "name": "pie form" }, { "image": "bowl.jpg", "name": "bowl" }, { "image": "oven.jpg", "name": "oven" }, { "image": "pan.png", "name": "frying pan" } ] } } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "name": "id", "description": "The recipe id.", "schema": { "type": "integer", "example": 1003464 }, "required": true, "style": "simple", "explode": false, "in": "path" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Equipment-by-ID" }, "summary": "Equipment by ID", "description": "Get a recipe's equipment list.", "operationId": "getRecipeEquipmentByID", "deprecated": false, "tags": [ "recipes" ] } }, "/recipes/{id}/equipmentWidget.png": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "image/png": { "schema": { "type": "string", "format": "binary" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "name": "id", "description": "The recipe id.", "schema": { "type": "integer", "example": 44860 }, "required": true, "style": "simple", "explode": false, "in": "path" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Equipment-by-ID-Image" }, "summary": "Equipment by ID Image", "description": "Visualize a recipe's equipment list as an image.", "operationId": "equipmentByIDImage", "deprecated": false, "tags": [ "recipes" ] } }, "/recipes/{id}/priceBreakdownWidget.json": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "description": "", "type": "object", "properties": { "ingredients": { "type": "array", "uniqueItems": true, "minItems": 0, "items": { "type": "object", "properties": { "amount": { "type": "object", "properties": { "metric": { "type": "object", "required": [ "unit", "value" ], "properties": { "unit": { "type": "string", "minLength": 0 }, "value": { "type": "number" } } }, "us": { "type": "object", "required": [ "unit", "value" ], "properties": { "unit": { "type": "string", "minLength": 0 }, "value": { "type": "number" } } } }, "required": [ "metric", "us" ] }, "image": { "type": "string", "minLength": 1 }, "name": { "type": "string", "minLength": 1 }, "price": { "type": "number" } }, "required": [ "image", "name", "price" ] } }, "totalCost": { "type": "number" }, "totalCostPerServing": { "type": "number" } }, "required": [ "ingredients", "totalCost", "totalCostPerServing" ] }, "examples": { "example-1": { "value": { "ingredients": [ { "amount": { "metric": { "unit": "g", "value": 222 }, "us": { "unit": "cups", "value": 1.5 } }, "image": "blueberries.jpg", "name": "blueberries", "price": 174.43 }, { "amount": { "metric": { "unit": "", "value": 1 }, "us": { "unit": "", "value": 1 } }, "image": "egg-white.jpg", "name": "egg white", "price": 18.21 }, { "amount": { "metric": { "unit": "Tbsps", "value": 2 }, "us": { "unit": "Tbsps", "value": 2 } }, "image": "flour.png", "name": "flour", "price": 2 }, { "amount": { "metric": { "unit": "g", "value": 150 }, "us": { "unit": "cup", "value": 0.75 } }, "image": "sugar-in-bowl.png", "name": "granulated sugar", "price": 20.67 }, { "amount": { "metric": { "unit": "tsp", "value": 1 }, "us": { "unit": "tsp", "value": 1 } }, "image": "lemon-juice.jpg", "name": "fresh lemon juice", "price": 3.39 }, { "amount": { "metric": { "unit": "pinch", "value": 1 }, "us": { "unit": "pinch", "value": 1 } }, "image": "ground-nutmeg.jpg", "name": "nutmeg", "price": 7.39 }, { "amount": { "metric": { "unit": "", "value": 2 }, "us": { "unit": "", "value": 2 } }, "image": "pie-crust.jpg", "name": "pie dough round", "price": 364.29 }, { "amount": { "metric": { "unit": "Tbsps", "value": 2 }, "us": { "unit": "Tbsps", "value": 2 } }, "image": "tapioca-pearls.png", "name": "quick cooking tapioca", "price": 50.89 }, { "amount": { "metric": { "unit": "g", "value": 305 }, "us": { "unit": "cups", "value": 2.5 } }, "image": "rhubarb.jpg", "name": "trimmed rhubarb", "price": 185.18 }, { "amount": { "metric": { "unit": "Tbsps", "value": 0.5 }, "us": { "unit": "Tbsps", "value": 0.5 } }, "image": "butter-sliced.jpg", "name": "unsalted butter", "price": 6 } ], "totalCost": 832.45, "totalCostPerServing": 104.06 } } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "name": "id", "description": "The recipe id.", "schema": { "type": "integer", "example": 1003464 }, "required": true, "style": "simple", "explode": false, "in": "path" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Price-Breakdown-by-ID" }, "summary": "Price Breakdown by ID", "description": "Get a recipe's price breakdown data.", "operationId": "getRecipePriceBreakdownByID", "deprecated": false, "tags": [ "recipes" ] } }, "/recipes/{id}/priceBreakdownWidget.png": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "image/png": { "schema": { "type": "string", "format": "binary" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "name": "id", "description": "The recipe id.", "schema": { "type": "integer", "example": 1082038 }, "required": true, "style": "simple", "explode": false, "in": "path" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Price-Breakdown-by-ID-Image" }, "summary": "Price Breakdown by ID Image", "description": "Visualize a recipe's price breakdown.", "operationId": "priceBreakdownByIDImage", "deprecated": false, "tags": [ "recipes" ] } }, "/recipes/{id}/ingredientWidget.json": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "description": "", "type": "object", "properties": { "ingredients": { "type": "array", "uniqueItems": true, "minItems": 0, "items": { "type": "object", "properties": { "amount": { "type": "object", "properties": { "metric": { "type": "object", "required": [ "unit", "value" ], "properties": { "unit": { "type": "string", "minLength": 0 }, "value": { "type": "number" } } }, "us": { "type": "object", "required": [ "unit", "value" ], "properties": { "unit": { "type": "string", "minLength": 0 }, "value": { "type": "number" } } } }, "required": [ "metric", "us" ] }, "image": { "type": "string", "minLength": 1 }, "name": { "type": "string", "minLength": 1 } }, "required": [ "image", "name" ] } } }, "required": [ "ingredients" ] }, "examples": { "example-1": { "value": { "ingredients": [ { "amount": { "metric": { "unit": "g", "value": 222 }, "us": { "unit": "cups", "value": 1.5 } }, "image": "blueberries.jpg", "name": "blueberries" }, { "amount": { "metric": { "unit": "", "value": 1 }, "us": { "unit": "", "value": 1 } }, "image": "egg-white.jpg", "name": "egg white" }, { "amount": { "metric": { "unit": "Tbsps", "value": 2 }, "us": { "unit": "Tbsps", "value": 2 } }, "image": "flour.png", "name": "flour" }, { "amount": { "metric": { "unit": "g", "value": 150 }, "us": { "unit": "cup", "value": 0.75 } }, "image": "sugar-in-bowl.png", "name": "granulated sugar" }, { "amount": { "metric": { "unit": "tsp", "value": 1 }, "us": { "unit": "tsp", "value": 1 } }, "image": "lemon-juice.jpg", "name": "fresh lemon juice" }, { "amount": { "metric": { "unit": "pinch", "value": 1 }, "us": { "unit": "pinch", "value": 1 } }, "image": "ground-nutmeg.jpg", "name": "nutmeg" }, { "amount": { "metric": { "unit": "", "value": 2 }, "us": { "unit": "", "value": 2 } }, "image": "pie-crust.jpg", "name": "pie dough round" }, { "amount": { "metric": { "unit": "Tbsps", "value": 2 }, "us": { "unit": "Tbsps", "value": 2 } }, "image": "tapioca-pearls.png", "name": "quick cooking tapioca" }, { "amount": { "metric": { "unit": "g", "value": 305 }, "us": { "unit": "cups", "value": 2.5 } }, "image": "rhubarb.jpg", "name": "trimmed rhubarb" }, { "amount": { "metric": { "unit": "tsps", "value": 0.333 }, "us": { "unit": "tsps", "value": 0.333 } }, "image": "salt.jpg", "name": "salt" }, { "amount": { "metric": { "unit": "Tbsps", "value": 0.5 }, "us": { "unit": "Tbsps", "value": 0.5 } }, "image": "butter-sliced.jpg", "name": "unsalted butter" } ] } } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "name": "id", "description": "The recipe id.", "schema": { "type": "integer", "example": 1003464 }, "required": true, "style": "simple", "explode": false, "in": "path" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Ingredients-by-ID" }, "summary": "Ingredients by ID", "description": "Get a recipe's ingredient list.", "operationId": "getRecipeIngredientsByID", "deprecated": false, "tags": [ "recipes" ] } }, "/recipes/{id}/ingredientWidget.png": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "image/png": { "schema": { "type": "string", "format": "binary" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "name": "id", "description": "The recipe id.", "schema": { "type": "integer", "example": 1082038 }, "required": true, "style": "simple", "explode": false, "in": "path" }, { "name": "measure", "description": "Whether the the measures should be 'us' or 'metric'.", "schema": { "type": "string", "example": "metric", "enum": [ "us", "metric" ] }, "required": false, "style": "form", "explode": false, "in": "query" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Ingredients-by-ID-Image" }, "summary": "Ingredients by ID Image", "description": "Visualize a recipe's ingredient list.", "operationId": "ingredientsByIDImage", "deprecated": false, "tags": [ "ingredients" ] } }, "/recipes/{id}/nutritionWidget.json": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "description": "", "type": "object", "properties": { "calories": { "type": "string", "minLength": 1 }, "carbs": { "type": "string", "minLength": 1 }, "fat": { "type": "string", "minLength": 1 }, "protein": { "type": "string", "minLength": 1 }, "bad": { "type": "array", "uniqueItems": true, "minItems": 0, "items": { "required": [ "title", "amount", "indented", "percentOfDailyNeeds" ], "properties": { "title": { "type": "string", "minLength": 1 }, "amount": { "type": "string", "minLength": 1 }, "indented": { "type": "boolean" }, "percentOfDailyNeeds": { "type": "number" } } } }, "good": { "type": "array", "uniqueItems": true, "minItems": 0, "items": { "required": [ "amount", "indented", "percentOfDailyNeeds", "title" ], "properties": { "amount": { "type": "string", "minLength": 1 }, "indented": { "type": "boolean" }, "percentOfDailyNeeds": { "type": "number" }, "title": { "type": "string", "minLength": 1 } } } } }, "required": [ "calories", "carbs", "fat", "protein", "bad", "good" ] }, "examples": { "example-1": { "value": { "calories": "316", "carbs": "49g", "fat": "12g", "protein": "3g", "bad": [ { "title": "Calories", "amount": "316", "indented": false, "percentOfDailyNeeds": 15.84 }, { "title": "Fat", "amount": "12g", "indented": false, "percentOfDailyNeeds": 18.51 } ], "good": [ { "amount": "3g", "indented": false, "percentOfDailyNeeds": 7.57, "title": "Protein" }, { "amount": "19µg", "indented": false, "percentOfDailyNeeds": 18.76, "title": "Vitamin K" } ] } } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "name": "id", "description": "The recipe id.", "schema": { "type": "integer", "example": 1003464 }, "required": true, "style": "simple", "explode": false, "in": "path" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Nutrition-by-ID" }, "summary": "Nutrition by ID", "description": "Get a recipe's nutrition data.", "operationId": "getRecipeNutritionWidgetByID", "deprecated": false, "tags": [ "recipes" ] } }, "/recipes/{id}/nutritionWidget.png": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "image/png": { "schema": { "type": "string", "format": "binary" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "name": "id", "description": "The recipe id.", "schema": { "type": "integer", "example": 1082038 }, "required": true, "style": "simple", "explode": false, "in": "path" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Recipe-Nutrition-by-ID-Image" }, "summary": "Recipe Nutrition by ID Image", "description": "Visualize a recipe's nutritional information as an image.", "operationId": "recipeNutritionByIDImage", "deprecated": false, "tags": [ "recipes" ] } }, "/recipes/{id}/nutritionLabel": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "text/html": { "schema": { "type": "string" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "name": "id", "description": "The recipe id.", "schema": { "type": "integer", "example": 641166 }, "required": true, "style": "simple", "explode": false, "in": "path" }, { "$ref": "#/components/parameters/defaultCss" }, { "name": "showOptionalNutrients", "description": "Whether to show optional nutrients.", "schema": { "type": "boolean", "example": false }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "showZeroValues", "description": "Whether to show zero values.", "schema": { "type": "boolean", "example": false }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "showIngredients", "description": "Whether to show a list of ingredients.", "schema": { "type": "boolean", "example": false }, "required": false, "style": "form", "explode": false, "in": "query" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Recipe-Nutrition-Label-Widget" }, "summary": "Recipe Nutrition Label Widget", "description": "Get a recipe's nutrition label as an HTML widget.", "operationId": "recipeNutritionLabelWidget", "deprecated": false, "tags": [ "recipes" ] } }, "/recipes/{id}/nutritionLabel.png": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "image/png": { "schema": { "type": "string", "format": "binary" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "name": "id", "description": "The recipe id.", "schema": { "type": "integer", "example": 641166 }, "required": true, "style": "simple", "explode": false, "in": "path" }, { "name": "showOptionalNutrients", "description": "Whether to show optional nutrients.", "schema": { "type": "boolean", "example": false }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "showZeroValues", "description": "Whether to show zero values.", "schema": { "type": "boolean", "example": false }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "showIngredients", "description": "Whether to show a list of ingredients.", "schema": { "type": "boolean", "example": false }, "required": false, "style": "form", "explode": false, "in": "query" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Recipe-Nutrition-Label-Image" }, "summary": "Recipe Nutrition Label Image", "description": "Get a recipe's nutrition label as an image.", "operationId": "recipeNutritionLabelImage", "deprecated": false, "tags": [ "recipes" ] } }, "/recipes/{id}/analyzedInstructions": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "type": "array", "items": { "type": "object", "properties": { "name": { "type": "string" }, "steps": { "type": "array", "uniqueItems": true, "minItems": 0, "items": { "type": "object", "properties": { "number": { "type": "number" }, "step": { "type": "string", "minLength": 1 }, "ingredients": { "type": "array", "uniqueItems": true, "minItems": 0, "items": { "type": "object", "properties": { "id": { "type": "integer" }, "name": { "type": "string", "minLength": 1 }, "localizedName": { "type": "string", "minLength": 1 }, "image": { "type": "string", "minLength": 1 } }, "required": [ "id", "name", "localizedName", "image" ] } }, "equipment": { "type": "array", "uniqueItems": true, "minItems": 0, "items": { "type": "object", "properties": { "id": { "type": "integer" }, "name": { "type": "string", "minLength": 1 }, "localizedName": { "type": "string", "minLength": 1 }, "image": { "type": "string", "minLength": 1 } }, "required": [ "id", "name", "localizedName", "image" ] } } }, "required": [ "number", "step" ] } } }, "required": [ "name" ] } }, "examples": { "example-1": { "value": [ { "name": "", "steps": [ { "number": 1, "step": "Put the garlic in a pan and then add the onion.", "ingredients": [ { "id": 11215, "name": "garlic", "localizedName": "garlic", "image": "garlic.png" }, { "id": 11282, "name": "onion", "localizedName": "onion", "image": "brown-onion.png" } ], "equipment": [ { "id": 404645, "name": "frying pan", "localizedName": "frying pan", "image": "pan.png" } ] }, { "number": 2, "step": "Add some salt and oregano.", "ingredients": [ { "id": 2027, "name": "oregano", "localizedName": "oregano", "image": "oregano.jpg" }, { "id": 2047, "name": "salt", "localizedName": "salt", "image": "salt.jpg" } ], "equipment": [] } ] } ] } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "name": "id", "description": "The recipe id.", "schema": { "type": "integer", "example": 324694 }, "required": true, "style": "simple", "explode": false, "in": "path" }, { "name": "stepBreakdown", "description": "Whether to break down the recipe steps even more.", "schema": { "type": "boolean", "example": true }, "required": false, "style": "form", "explode": false, "in": "query" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Get-Analyzed-Recipe-Instructions" }, "summary": "Get Analyzed Recipe Instructions", "description": "Get an analyzed breakdown of a recipe's instructions. Each step is enriched with the ingredients and equipment required.", "operationId": "getAnalyzedRecipeInstructions", "deprecated": false, "tags": [ "recipes" ] } }, "/recipes/extract": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/RecipeInformation" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "name": "url", "description": "The URL of the recipe page.", "schema": { "type": "string", "example": "https://foodista.com/recipe/ZHK4KPB6/chocolate-crinkle-cookies" }, "required": true, "style": "form", "explode": false, "in": "query" }, { "name": "forceExtraction", "description": "If true, the extraction will be triggered whether we already know the recipe or not. Use this only if information is missing as this operation is slower.", "schema": { "type": "boolean", "example": true }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "analyze", "description": "If true, the recipe will be analyzed and classified resolving in more data such as cuisines, dish types, and more.", "schema": { "type": "boolean", "example": false }, "required": false, "style": "form", "explode": false, "in": "query" }, { "$ref": "#/components/parameters/includeNutrition" }, { "$ref": "#/components/parameters/includeTaste" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Extract-Recipe-from-Website" }, "summary": "Extract Recipe from Website", "description": "This endpoint lets you extract recipe data such as title, ingredients, and instructions from any properly formatted Website.", "operationId": "extractRecipeFromWebsite", "deprecated": false, "tags": [ "recipes" ] } }, "/recipes/{id}/ingredientWidget": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "text/html": { "schema": { "type": "string" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "name": "id", "description": "The recipe id.", "schema": { "type": "integer", "example": 1082038 }, "required": true, "style": "simple", "explode": false, "in": "path" }, { "$ref": "#/components/parameters/defaultCss" }, { "schema": { "type": "string", "enum": [ "us", "metric" ], "example": "metric" }, "required": false, "in": "query", "name": "measure", "description": "Whether the the measures should be 'us' or 'metric'." } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Ingredients-by-ID-Widget" }, "summary": "Ingredients by ID Widget", "description": "Visualize a recipe's ingredient list.", "operationId": "visualizeRecipeIngredientsByID", "deprecated": false, "tags": [ "recipes" ] } }, "/recipes/{id}/tasteWidget": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "text/html": { "schema": { "type": "string" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "name": "id", "description": "The recipe id.", "schema": { "type": "integer", "example": 69095 }, "required": true, "style": "simple", "explode": false, "in": "path" }, { "schema": { "type": "boolean", "enum": [ true, false ], "example": true, "default": true }, "required": false, "in": "query", "name": "normalize", "description": "Whether to normalize to the strongest taste." }, { "$ref": "#/components/parameters/rgb" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Recipe-Taste-by-ID-Widget" }, "summary": "Recipe Taste by ID Widget", "description": "Get a recipe's taste. The tastes supported are sweet, salty, sour, bitter, savory, and fatty.", "operationId": "visualizeRecipeTasteByID", "deprecated": false, "tags": [ "recipes" ] } }, "/recipes/{id}/equipmentWidget": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "text/html": { "schema": { "type": "string" }, "examples": {} } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "name": "id", "description": "The recipe id.", "schema": { "type": "integer", "example": 44860 }, "required": true, "style": "simple", "explode": false, "in": "path" }, { "$ref": "#/components/parameters/defaultCss" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Equipment-by-ID-Widget" }, "summary": "Equipment by ID Widget", "description": "Visualize a recipe's equipment list.", "operationId": "visualizeRecipeEquipmentByID", "deprecated": false, "tags": [ "recipes" ] } }, "/recipes/{id}/priceBreakdownWidget": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "text/html": { "schema": { "type": "string" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "name": "id", "description": "The recipe id.", "schema": { "type": "integer", "example": 1082038 }, "required": true, "style": "simple", "explode": false, "in": "path" }, { "$ref": "#/components/parameters/defaultCss" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Price-Breakdown-by-ID-Widget" }, "summary": "Price Breakdown by ID Widget", "description": "Visualize a recipe's price breakdown.", "operationId": "visualizeRecipePriceBreakdownByID", "deprecated": false, "tags": [ "recipes" ] } }, "/recipes/visualizeTaste": { "post": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "text/html": { "schema": { "type": "string" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "requestBody": { "required": true, "content": { "application/x-www-form-urlencoded": { "schema": { "type": "object", "required": [ "ingredientList" ], "properties": { "ingredientList": { "type": "string", "description": "The ingredient list of the recipe, one ingredient per line." }, "normalize": { "type": "boolean", "description": "Normalize to the strongest taste." }, "rgb": { "type": "string", "description": "Red, green, blue values for the chart color." } } }, "example": { "ingredientList": "3 tomatoes, 5 oranges, 1 tsp salt" } } }, "description": "" }, "parameters": [ { "$ref": "#/components/parameters/language" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Recipe-Taste-Widget" }, "summary": "Recipe Taste Widget", "description": "Visualize a recipe's taste information as HTML including CSS. You can play around with that endpoint!", "operationId": "visualizeRecipeTaste", "deprecated": false, "tags": [ "recipes" ] } }, "/recipes/visualizeNutrition": { "post": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "text/html": { "schema": { "type": "string" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "requestBody": { "required": true, "content": { "application/x-www-form-urlencoded": { "schema": { "type": "object", "required": [ "ingredientList", "servings" ], "properties": { "ingredientList": { "type": "string", "description": "The ingredient list of the recipe, one ingredient per line." }, "servings": { "type": "number", "description": "The number of servings." }, "defaultCss": { "type": "boolean", "description": "Whether the default CSS should be added to the response." }, "showBacklink": { "type": "boolean", "description": "Whether to show a backlink to spoonacular. If set false, this call counts against your quota." } } }, "example": { "ingredientList": "3 oz flour", "servings": 2 } } } }, "parameters": [ { "$ref": "#/components/parameters/language" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Recipe-Nutrition-Widget" }, "summary": "Recipe Nutrition Widget", "description": "Visualize a recipe's nutritional information as HTML including CSS.", "operationId": "visualizeRecipeNutrition", "deprecated": false, "tags": [ "recipes" ] } }, "/recipes/visualizePriceEstimator": { "post": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "text/html": { "schema": { "type": "string" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "requestBody": { "required": true, "content": { "application/x-www-form-urlencoded": { "schema": { "type": "object", "required": [ "ingredientList", "servings" ], "properties": { "ingredientList": { "type": "string", "description": "The ingredient list of the recipe, one ingredient per line." }, "servings": { "type": "number", "description": "The number of servings." }, "mode": { "type": "number", "description": "The mode in which the widget should be delivered. 1 = separate views (compact), 2 = all in one view (full)." }, "defaultCss": { "type": "boolean", "description": "Whether the default CSS should be added to the response." }, "showBacklink": { "type": "boolean", "description": "Whether to show a backlink to spoonacular. If set false, this call counts against your quota." } } }, "example": { "ingredientList": "3 oz flour", "servings": "2" } } } }, "parameters": [ { "$ref": "#/components/parameters/language" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Price-Breakdown-Widget" }, "summary": "Price Breakdown Widget", "description": "Visualize the price breakdown of a recipe.", "operationId": "visualizePriceBreakdown", "deprecated": false, "tags": [ "recipes" ] } }, "/recipes/visualizeEquipment": { "post": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "text/html": { "schema": { "type": "string" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "requestBody": { "required": true, "content": { "application/x-www-form-urlencoded": { "schema": { "type": "object", "required": [ "instructions" ], "properties": { "instructions": { "type": "string", "description": "The recipe's instructions." }, "view": { "type": "string", "enum": [ "grid", "list" ], "description": "How to visualize the ingredients, either 'grid' or 'list'." }, "defaultCss": { "type": "boolean", "description": "Whether the default CSS should be added to the response." }, "showBacklink": { "type": "boolean", "description": "Whether to show a backlink to spoonacular. If set false, this call counts against your quota." } } }, "example": { "instructions": "Preheat oven. Cut cucumber with a knife and put in a blender." } } } }, "parameters": [], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Equipment-Widget" }, "summary": "Equipment Widget", "description": "Visualize the equipment used to make a recipe.", "operationId": "visualizeEquipment", "deprecated": false, "tags": [ "recipes" ] } }, "/recipes/analyze": { "post": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "type": "object" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "requestBody": { "required": true, "content": { "application/json": { "schema": { "type": "object", "properties": { "title": { "type": "string" }, "servings": { "type": "integer" }, "ingredients": { "type": "array", "items": { "type": "string" } }, "instructions": { "type": "string" } } }, "examples": { "Example 1": { "value": { "title": "Spaghetti Carbonara", "servings": 2, "ingredients": [ "1 lb spaghetti", "3.5 oz pancetta", "2 Tbsps olive oil", "1 egg", "0.5 cup parmesan cheese" ], "instructions": "Bring a large pot of water to a boil and season generously with salt. Add the pasta to the water once boiling and cook until al dente. Reserve 2 cups of cooking water and drain the pasta. " } } } } }, "description": "Example request body." }, "parameters": [ { "name": "language", "description": "The input language, either \"en\" or \"de\".", "schema": { "type": "string", "example": "en" }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "includeNutrition", "description": "Whether nutrition data should be added to correctly parsed ingredients.", "schema": { "type": "boolean", "example": false }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "includeTaste", "description": "Whether taste data should be added to correctly parsed ingredients.", "schema": { "type": "boolean", "example": false }, "required": false, "style": "form", "explode": false, "in": "query" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Analyze-Recipe" }, "summary": "Analyze Recipe", "description": "This 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.", "operationId": "analyzeRecipe", "deprecated": false } }, "/recipes/{id}/summary": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "description": "", "type": "object", "properties": { "id": { "type": "integer" }, "summary": { "type": "string", "minLength": 1 }, "title": { "type": "string", "minLength": 1 } }, "required": [ "id", "summary", "title" ] }, "examples": { "example-1": { "value": { "id": 4632, "summary": "The recipe Soy-and-Ginger-Glazed Salmon with Udon Noodles can be made in approximately 1 hour and 35 minutes . One portion of this dish contains about 48g of protein , 17g of fat , and a total of 552 calories . This recipe serves 4. For $5.91 per serving , this recipe covers 47% of your daily requirements of vitamins and minerals. It works well as a main course. 1 person has tried and liked this recipe. It is brought to you by Food and Wine. If you have fresh ginger, udon noodles, salmon fillets, and a few other ingredients on hand, you can make it. It is a good option if you're following a dairy free and pescatarian diet. All things considered, we decided this recipe deserves a spoonacular score of 92% . This score is great. If you like this recipe, take a look at these similar recipes: Salmon With Soy-ginger Noodles, Ginger-Soy Salmon With Soba Noodles, and Soy & ginger salmon with soba noodles.", "title": "Soy-and-Ginger-Glazed Salmon with Udon Noodles" } } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "name": "id", "description": "The recipe id.", "schema": { "type": "integer", "example": 4632 }, "required": true, "style": "simple", "explode": false, "in": "path" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Summarize-Recipe" }, "summary": "Summarize Recipe", "description": "Automatically generate a short description that summarizes key information about the recipe.", "operationId": "summarizeRecipe", "deprecated": false, "tags": [ "recipes" ] } }, "/recipes/{id}/card": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "type": "object" }, "examples": {} } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "name": "id", "description": "The recipe id.", "schema": { "type": "integer", "example": 4632 }, "required": true, "style": "simple", "explode": false, "in": "path" }, { "name": "mask", "description": "The mask to put over the recipe image (\"ellipseMask\", \"diamondMask\", \"starMask\", \"heartMask\", \"potMask\", \"fishMask\").", "schema": { "type": "string", "example": "ellipseMask" }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "backgroundImage", "description": "The background image (\"none\",\"background1\", or \"background2\").", "schema": { "type": "string", "example": "background1" }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "backgroundColor", "description": "The background color for the recipe card as a hex-string.", "schema": { "type": "string", "example": "ffffff" }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "fontColor", "description": "The font color for the recipe card as a hex-string.", "schema": { "type": "string", "example": "333333" }, "required": false, "style": "form", "explode": false, "in": "query" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Create-Recipe-Card" }, "summary": "Create Recipe Card", "description": "Generate a recipe card for a recipe.", "operationId": "createRecipeCardGet", "deprecated": false } }, "/recipes/visualizeRecipe": { "post": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "description": "", "type": "object", "properties": { "url": { "type": "string", "minLength": 1 } }, "required": [ "url" ] }, "examples": { "example-1": { "value": { "url": "https://spoonacular.com/url-to-generated-recipe-card.jpg" } } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "requestBody": { "required": true, "content": { "multipart/form-data": { "schema": { "type": "object", "required": [ "title", "ingredients", "instructions", "readyInMinutes", "servings", "mask", "backgroundImage" ], "properties": { "title": { "type": "string", "description": "The title of the recipe." }, "ingredients": { "type": "string", "description": "The ingredient list of the recipe, one ingredient per line (separate lines with \\n)." }, "instructions": { "type": "string", "description": "The instructions to make the recipe. One step per line (separate lines with \\n)." }, "readyInMinutes": { "type": "number", "description": "The number of minutes it takes to get the recipe on the table." }, "servings": { "type": "number", "description": "The number of servings the recipe makes." }, "mask": { "type": "string", "enum": [ "ellipseMask", "diamondMask", "starMask", "heartMask", "potMask", "fishMask" ], "description": "The mask to put over the recipe image ('ellipseMask', 'diamondMask', 'starMask', 'heartMask', 'potMask', 'fishMask')." }, "backgroundImage": { "type": "string", "enum": [ "none", "background1", "background2" ], "description": "The background image ('none', 'background1', or 'background2')." }, "image": { "type": "string", "format": "binary", "description": "The binary image of the recipe as jpg." }, "imageUrl": { "type": "string", "description": "If you do not sent a binary image you can also pass the image URL." }, "author": { "type": "string", "description": "The author of the recipe." }, "backgroundColor": { "type": "string", "description": "The background color for the recipe card as a hex-string." }, "fontColor": { "type": "string", "description": "The font color for the recipe card as a hex-string." }, "source": { "type": "string", "description": "The source of the recipe." } } }, "example": { "title": "My recipe", "ingredients": "2 cups of green beans", "instructions": "cook the beans", "readyInMinutes": 60, "servings": 2, "mask": "ellipseMask", "backgroundImage": "background1" } } } }, "parameters": [], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Create-Recipe-Card" }, "summary": "Create Recipe Card", "description": "Generate a recipe card for a recipe.", "operationId": "createRecipeCard", "deprecated": false, "tags": [ "recipes" ] } }, "/recipes/analyzeInstructions": { "post": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "description": "", "type": "object", "properties": { "parsedInstructions": { "type": "array", "uniqueItems": true, "minItems": 0, "items": { "required": [ "name" ], "properties": { "name": { "type": "string" }, "steps": { "type": "array", "uniqueItems": true, "minItems": 0, "items": { "required": [ "number", "step" ], "properties": { "number": { "type": "number" }, "step": { "type": "string", "minLength": 1 }, "ingredients": { "type": "array", "uniqueItems": true, "minItems": 0, "items": { "required": [ "id", "name", "localizedName", "image" ], "properties": { "id": { "type": "integer" }, "name": { "type": "string", "minLength": 1 }, "localizedName": { "type": "string", "minLength": 1 }, "image": { "type": "string", "minLength": 1 } } } }, "equipment": { "type": "array", "uniqueItems": true, "minItems": 0, "items": { "required": [ "id", "name", "localizedName", "image" ], "properties": { "id": { "type": "integer" }, "name": { "type": "string", "minLength": 1 }, "localizedName": { "type": "string", "minLength": 1 }, "image": { "type": "string", "minLength": 1 } } } } } } } } } }, "ingredients": { "type": "array", "uniqueItems": true, "minItems": 0, "items": { "required": [ "id", "name" ], "properties": { "id": { "type": "integer" }, "name": { "type": "string", "minLength": 1 } } } }, "equipment": { "type": "array", "uniqueItems": true, "minItems": 0, "items": { "required": [ "id", "name" ], "properties": { "id": { "type": "integer" }, "name": { "type": "string", "minLength": 1 } } } } }, "required": [ "parsedInstructions", "ingredients", "equipment" ] }, "examples": { "example-1": { "value": { "parsedInstructions": [ { "name": "", "steps": [ { "number": 1, "step": "Put the garlic in a pan and then add the onion.", "ingredients": [ { "id": 11215, "name": "garlic", "localizedName": "garlic", "image": "garlic.png" }, { "id": 11282, "name": "onion", "localizedName": "onion", "image": "brown-onion.png" } ], "equipment": [ { "id": 404645, "name": "frying pan", "localizedName": "frying pan", "image": "pan.png" } ] }, { "number": 2, "step": "Add some salt and oregano.", "ingredients": [ { "id": 2027, "name": "oregano", "localizedName": "oregano", "image": "oregano.jpg" }, { "id": 2047, "name": "salt", "localizedName": "salt", "image": "salt.jpg" } ], "equipment": [] } ] } ], "ingredients": [ { "id": 2027, "name": "oregano" }, { "id": 11215, "name": "garlic" }, { "id": 11282, "name": "onion" }, { "id": 2047, "name": "salt" } ], "equipment": [ { "id": 404645, "name": "frying pan" } ] } } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "requestBody": { "required": true, "content": { "application/x-www-form-urlencoded": { "schema": { "type": "object", "required": [ "instructions" ], "properties": { "instructions": { "type": "string", "description": "The recipe's instructions." } } }, "example": { "instructions": "Put the garlic in a pan and then add the onion. Add some salt and oregano." } } } }, "parameters": [], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Analyze-Recipe-Instructions" }, "summary": "Analyze Recipe Instructions", "description": "This 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.", "operationId": "analyzeRecipeInstructions", "deprecated": false, "tags": [ "recipes" ] } }, "/recipes/cuisine": { "post": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "description": "", "type": "object", "properties": { "cuisine": { "type": "string", "minLength": 1 }, "cuisines": { "type": "array", "items": { "type": "string" } }, "confidence": { "type": "number" } }, "required": [ "cuisine", "cuisines", "confidence" ] }, "examples": { "example-1": { "value": { "cuisine": "Mediterranean", "cuisines": [ "Mediterranean", "European", "Italian" ], "confidence": 0 } } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "requestBody": { "required": true, "content": { "application/x-www-form-urlencoded": { "schema": { "type": "object", "required": [ "title", "ingredientList" ], "properties": { "title": { "type": "string", "description": "The title of the recipe." }, "ingredientList": { "type": "string", "description": "The ingredient list of the recipe, one ingredient per line (separate lines with \\n)." } } }, "example": { "title": "Pork roast with green beans", "ingredientList": "3 oz pork shoulder" } } } }, "parameters": [ { "$ref": "#/components/parameters/language" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Classify-Cuisine" }, "summary": "Classify Cuisine", "description": "Classify the recipe's cuisine.", "operationId": "classifyCuisine", "deprecated": false, "tags": [ "recipes" ] } }, "/recipes/queries/analyze": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "description": "", "type": "object", "properties": { "dishes": { "type": "array", "uniqueItems": true, "minItems": 0, "items": { "type": "object", "properties": { "image": { "type": "string", "minLength": 1 }, "name": { "type": "string", "minLength": 1 } }, "required": [ "image", "name" ] } }, "ingredients": { "type": "array", "uniqueItems": true, "minItems": 0, "items": { "type": "object", "properties": { "image": { "type": "string", "minLength": 1 }, "include": { "type": "boolean" }, "name": { "type": "string", "minLength": 1 } }, "required": [ "image", "include", "name" ] } }, "cuisines": { "type": "array", "items": { "type": "string" } }, "modifiers": { "type": "array", "items": { "type": "string" } } }, "required": [ "dishes", "ingredients", "cuisines", "modifiers" ] }, "examples": { "example-1": { "value": { "dishes": [ { "image": "https://spoonacular.com/cdn/ingredients_100x100/salmon.png", "name": "salmon" } ], "ingredients": [ { "image": "fusilli.jpg", "include": true, "name": "fusilli" }, { "image": "nuts-mixed.jpg", "include": false, "name": "nuts mixed" } ], "cuisines": [], "modifiers": [] } } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "name": "q", "description": "The recipe search query.", "schema": { "type": "string", "example": "salmon with fusilli and no nuts" }, "required": true, "style": "form", "explode": false, "in": "query" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Analyze-a-Recipe-Search-Query" }, "summary": "Analyze a Recipe Search Query", "description": "Parse a recipe search query to find out its intention.", "operationId": "analyzeARecipeSearchQuery", "deprecated": false, "tags": [ "recipes" ] } }, "/recipes/convert": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "description": "", "type": "object", "properties": { "sourceAmount": { "type": "number" }, "sourceUnit": { "type": "string", "minLength": 1 }, "targetAmount": { "type": "number" }, "targetUnit": { "type": "string", "minLength": 1 }, "answer": { "type": "string", "minLength": 1 } }, "required": [ "sourceAmount", "sourceUnit", "targetAmount", "targetUnit", "answer" ] }, "examples": { "example-1": { "value": { "sourceAmount": 2.5, "sourceUnit": "cups", "targetAmount": 312.5, "targetUnit": "grams", "answer": "2.5 cups flour translates to 312.5 grams." } } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "name": "ingredientName", "description": "The ingredient which you want to convert.", "schema": { "type": "string", "example": "flour" }, "required": true, "style": "form", "explode": false, "in": "query" }, { "name": "sourceAmount", "description": "The amount from which you want to convert, e.g. the 2.5 in \"2.5 cups of flour to grams\".", "schema": { "type": "number", "example": 2.5 }, "required": true, "style": "form", "explode": false, "in": "query" }, { "name": "sourceUnit", "description": "The unit from which you want to convert, e.g. the grams in \"2.5 cups of flour to grams\". You can also use \"piece\", e.g. \"3.4 oz tomatoes to piece\"", "schema": { "type": "string", "example": "cups" }, "required": true, "style": "form", "explode": false, "in": "query" }, { "name": "targetUnit", "description": "The unit to which you want to convert, e.g. the grams in \"2.5 cups of flour to grams\". You can also use \"piece\", e.g. \"3.4 oz tomatoes to piece\"", "schema": { "type": "string", "example": "grams" }, "required": true, "style": "form", "explode": false, "in": "query" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Convert-Amounts" }, "summary": "Convert Amounts", "description": "Convert amounts like \"2 cups of flour to grams\".", "operationId": "convertAmounts", "deprecated": false, "tags": [ "recipes" ] } }, "/recipes/parseIngredients": { "post": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "type": "array", "description": "", "minItems": 0, "uniqueItems": true, "items": { "$ref": "#/components/schemas/IngredientInformation" } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "requestBody": { "required": true, "content": { "application/x-www-form-urlencoded": { "schema": { "type": "object", "required": [ "ingredientList", "servings" ], "properties": { "ingredientList": { "type": "string", "description": "The ingredient list of the recipe, one ingredient per line." }, "servings": { "type": "number", "description": "The number of servings that you can make from the ingredients." }, "includeNutrition": { "type": "boolean", "description": "Whether nutrition data should be added to correctly parsed ingredients." } } }, "example": { "ingredientList": "1 cup green tea", "servings": "1" } } } }, "parameters": [ { "$ref": "#/components/parameters/language" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Parse-Ingredients" }, "summary": "Parse Ingredients", "description": "Extract an ingredient from plain text.", "operationId": "parseIngredients", "deprecated": false, "tags": [ "recipes" ] } }, "/recipes/{id}/nutritionWidget": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "text/html": { "schema": { "type": "string" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "name": "id", "description": "The recipe id.", "schema": { "type": "integer", "example": 1082038 }, "required": true, "style": "simple", "explode": false, "in": "path" }, { "$ref": "#/components/parameters/defaultCss" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Recipe-Nutrition-by-ID-Widget" }, "summary": "Recipe Nutrition by ID Widget", "description": "Visualize a recipe's nutritional information as HTML including CSS.", "operationId": "visualizeRecipeNutritionByID", "deprecated": false, "tags": [ "recipes" ] } }, "/recipes/visualizeIngredients": { "post": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "text/html": { "schema": { "type": "string" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "requestBody": { "required": true, "content": { "application/x-www-form-urlencoded": { "schema": { "type": "object", "required": [ "ingredientList", "servings" ], "properties": { "ingredientList": { "type": "string", "description": "The ingredient list of the recipe, one ingredient per line (separate lines with \\n)." }, "servings": { "type": "number", "description": "The number of servings." }, "measure": { "type": "string", "enum": [ "us", "metric" ], "description": "The original system of measurement, either 'metric' or 'us'." }, "view": { "type": "string", "enum": [ "grid", "list" ], "description": "How to visualize the ingredients, either 'grid' or 'list'." }, "defaultCss": { "type": "boolean", "description": "Whether the default CSS should be added to the response." }, "showBacklink": { "type": "boolean", "description": "Whether to show a backlink to spoonacular. If set false, this call counts against your quota." } } }, "example": { "ingredientList": "3 oz flour", "servings": 2 } } } }, "parameters": [ { "$ref": "#/components/parameters/language" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Ingredients-Widget" }, "summary": "Ingredients Widget", "description": "Visualize ingredients of a recipe. You can play around with that endpoint!", "operationId": "visualizeIngredients", "deprecated": false, "tags": [ "ingredients" ] } }, "/recipes/guessNutrition": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "description": "", "type": "object", "properties": { "calories": { "type": "object", "required": [ "confidenceRange95Percent", "standardDeviation", "unit", "value" ], "properties": { "confidenceRange95Percent": { "type": "object", "required": [ "max", "min" ], "properties": { "max": { "type": "number" }, "min": { "type": "number" } } }, "standardDeviation": { "type": "number" }, "unit": { "type": "string", "minLength": 1 }, "value": { "type": "number" } } }, "carbs": { "type": "object", "required": [ "confidenceRange95Percent", "standardDeviation", "unit", "value" ], "properties": { "confidenceRange95Percent": { "type": "object", "required": [ "max", "min" ], "properties": { "max": { "type": "number" }, "min": { "type": "number" } } }, "standardDeviation": { "type": "number" }, "unit": { "type": "string", "minLength": 1 }, "value": { "type": "number" } } }, "fat": { "type": "object", "required": [ "confidenceRange95Percent", "standardDeviation", "unit", "value" ], "properties": { "confidenceRange95Percent": { "type": "object", "required": [ "max", "min" ], "properties": { "max": { "type": "number" }, "min": { "type": "number" } } }, "standardDeviation": { "type": "number" }, "unit": { "type": "string", "minLength": 1 }, "value": { "type": "number" } } }, "protein": { "type": "object", "required": [ "confidenceRange95Percent", "standardDeviation", "unit", "value" ], "properties": { "confidenceRange95Percent": { "type": "object", "required": [ "max", "min" ], "properties": { "max": { "type": "number" }, "min": { "type": "number" } } }, "standardDeviation": { "type": "number" }, "unit": { "type": "string", "minLength": 1 }, "value": { "type": "number" } } }, "recipesUsed": { "type": "integer" } }, "required": [ "calories", "carbs", "fat", "protein", "recipesUsed" ] }, "examples": { "example-1": { "value": { "calories": { "confidenceRange95Percent": { "max": 574.07, "min": 389.92 }, "standardDeviation": 148.55, "unit": "calories", "value": 428 }, "carbs": { "confidenceRange95Percent": { "max": 78.19, "min": 55.54 }, "standardDeviation": 18.27, "unit": "g", "value": 65 }, "fat": { "confidenceRange95Percent": { "max": 19.2, "min": 12.27 }, "standardDeviation": 5.59, "unit": "g", "value": 16 }, "protein": { "confidenceRange95Percent": { "max": 29.31, "min": 8.12 }, "standardDeviation": 17.09, "unit": "g", "value": 13 }, "recipesUsed": 10 } } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "name": "title", "description": "The title of the dish.", "schema": { "type": "string", "example": "Spaghetti Aglio et Olio" }, "required": true, "style": "form", "explode": false, "in": "query" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Guess-Nutrition-by-Dish-Name" }, "summary": "Guess Nutrition by Dish Name", "description": "Estimate the macronutrients of a dish based on its title.", "operationId": "guessNutritionByDishName", "deprecated": false, "tags": [ "recipes" ] } }, "/food/ingredients/{id}/information": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/IngredientInformation" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "name": "id", "description": "The ingredient id.", "schema": { "type": "integer", "example": 9266 }, "required": true, "style": "simple", "explode": false, "in": "path" }, { "name": "amount", "description": "The amount of this ingredient.", "schema": { "type": "number", "example": 150 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "unit", "description": "The unit for the given amount.", "schema": { "type": "string", "example": "grams" }, "required": false, "style": "form", "explode": false, "in": "query" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Get-Ingredient-Information" }, "summary": "Get Ingredient Information", "description": "Use an ingredient id to get all available information about an ingredient, such as its image and supermarket aisle.", "operationId": "getIngredientInformation", "deprecated": false, "tags": [ "ingredients" ] } }, "/food/ingredients/{id}/amount": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "description": "", "type": "object", "properties": { "amount": { "type": "number" }, "unit": { "type": "string", "minLength": 1 } }, "required": [ "amount", "unit" ] }, "examples": { "example-1": { "value": { "amount": 65.32, "unit": "oz" } } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "name": "id", "description": "The id of the ingredient you want the amount for.", "schema": { "type": "integer", "example": 9266 }, "required": true, "style": "simple", "explode": false, "in": "path" }, { "name": "nutrient", "description": "The target nutrient. See a list of supported nutrients.", "schema": { "type": "string", "example": "protein" }, "required": true, "style": "form", "explode": false, "in": "query" }, { "name": "target", "description": "The target number of the given nutrient.", "schema": { "type": "integer", "example": 2 }, "required": true, "style": "form", "explode": false, "in": "query" }, { "name": "unit", "description": "The target unit.", "schema": { "type": "string", "example": "oz" }, "required": false, "style": "form", "explode": false, "in": "query" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Compute-Ingredient-Amount" }, "summary": "Compute Ingredient Amount", "description": "Compute 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?", "operationId": "computeIngredientAmount", "deprecated": false, "tags": [ "ingredients" ] } }, "/food/ingredients/glycemicLoad": { "post": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "description": "", "type": "object", "properties": { "totalGlycemicLoad": { "type": "number" }, "ingredients": { "type": "array", "uniqueItems": true, "minItems": 0, "items": { "type": "object", "properties": { "id": { "type": "integer" }, "original": { "type": "string", "minLength": 1 }, "glycemicIndex": { "type": "number" }, "glycemicLoad": { "type": "number" } }, "required": [ "id", "original", "glycemicIndex", "glycemicLoad" ] } } }, "required": [ "totalGlycemicLoad", "ingredients" ] }, "examples": { "example-1": { "value": { "totalGlycemicLoad": 183.64, "ingredients": [ { "id": 9148, "original": "1 kiwi", "glycemicIndex": 52.67, "glycemicLoad": 5.59 }, { "id": 20444, "original": "2 cups rice", "glycemicIndex": 61.19, "glycemicLoad": 178.05 }, { "id": 14412, "original": "2 glasses of water", "glycemicIndex": 0, "glycemicLoad": 0 } ] } } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "requestBody": { "required": true, "content": { "application/json": { "schema": { "description": "", "type": "object", "properties": { "ingredients": { "type": "array", "items": { "type": "string" } } }, "required": [ "ingredients" ] }, "examples": { "example-1": { "value": { "ingredients": [ "1 kiwi", "2 cups rice", "2 glasses of water" ] } } } } } }, "parameters": [ { "$ref": "#/components/parameters/language" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Compute-Glycemic-Load" }, "summary": "Compute Glycemic Load", "description": "Retrieve the glycemic index for a list of ingredients and compute the individual and total glycemic load.", "operationId": "computeGlycemicLoad", "deprecated": false, "tags": [ "recipes" ] } }, "/food/ingredients/autocomplete": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "type": "array", "description": "", "minItems": 0, "uniqueItems": true, "items": { "type": "object", "properties": { "name": { "type": "string", "minLength": 1 }, "image": { "type": "string", "minLength": 1 }, "id": { "type": "integer" }, "aisle": { "type": "string", "minLength": 1 }, "possibleUnits": { "type": "array", "items": { "type": "string" } } }, "required": [ "name", "image" ] } }, "examples": { "example-1": { "value": [ { "name": "apple", "image": "apple.jpg", "id": 9003, "aisle": "Produce", "possibleUnits": [ "small", "large", "piece", "slice", "g", "extra small", "medium", "oz", "cup slice", "cup", "serving" ] }, { "name": "applesauce", "image": "applesauce.png", "id": 9019, "aisle": "Canned and Jarred", "possibleUnits": [ "g", "oz", "cup", "serving", "tablespoon" ] }, { "name": "apple juice", "image": "apple-juice.jpg", "id": 9016, "aisle": "Beverages", "possibleUnits": [ "g", "drink box", "fl oz", "oz", "teaspoon", "cup", "serving", "tablespoon" ] }, { "name": "apple cider", "image": "apple-cider.jpg", "id": 1009016, "aisle": "Beverages", "possibleUnits": [ "g", "drink box", "fl oz", "oz", "teaspoon", "bottle NFS", "cup", "serving", "tablespoon" ] }, { "name": "apple jelly", "image": "apple-jelly.jpg", "id": 10019297, "aisle": "Nut butters, Jams, and Honey", "possibleUnits": [ "g", "oz", "packet", "teaspoon", "cup", "serving", "tablespoon" ] } ] } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "$ref": "#/components/parameters/query" }, { "$ref": "#/components/parameters/number" }, { "name": "metaInformation", "description": "Whether to return more meta information about the ingredients.", "schema": { "type": "boolean", "example": false }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "intolerances", "description": "A comma-separated list of intolerances. All recipes returned must not contain ingredients that are not suitable for people with the intolerances entered. See a full list of supported intolerances.", "schema": { "type": "string", "example": "egg" }, "required": false, "style": "form", "explode": false, "in": "query" }, { "$ref": "#/components/parameters/language" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Autocomplete-Ingredient-Search" }, "summary": "Autocomplete Ingredient Search", "description": "Autocomplete the entry of an ingredient.", "operationId": "autocompleteIngredientSearch", "deprecated": false, "tags": [ "ingredients" ] } }, "/food/ingredients/search": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "description": "", "type": "object", "properties": { "results": { "type": "array", "uniqueItems": true, "minItems": 0, "items": { "type": "object", "properties": { "id": { "type": "integer" }, "name": { "type": "string", "minLength": 1 }, "image": { "type": "string", "minLength": 1 } }, "required": [ "id", "name", "image" ] } }, "offset": { "type": "integer" }, "number": { "type": "integer" }, "totalResults": { "type": "integer" } }, "required": [ "results", "offset", "number", "totalResults" ] }, "examples": { "example-1": { "value": { "results": [ { "id": 19400, "name": "banana chips", "image": "banana-chips.jpg" }, { "id": 93779, "name": "banana liqueur", "image": "limoncello.jpg" } ], "offset": 0, "number": 2, "totalResults": 13 } } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "$ref": "#/components/parameters/query" }, { "name": "addChildren", "description": "Whether to add children of found foods.", "schema": { "type": "boolean", "example": true }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minProteinPercent", "description": "The minimum percentage of protein the food must have (between 0 and 100).", "schema": { "type": "number", "example": 10 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxProteinPercent", "description": "The maximum percentage of protein the food can have (between 0 and 100).", "schema": { "type": "number", "example": 90 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minFatPercent", "description": "The minimum percentage of fat the food must have (between 0 and 100).", "schema": { "type": "number", "example": 10 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxFatPercent", "description": "The maximum percentage of fat the food can have (between 0 and 100).", "schema": { "type": "number", "example": 90 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minCarbsPercent", "description": "The minimum percentage of carbs the food must have (between 0 and 100).", "schema": { "type": "number", "example": 10 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxCarbsPercent", "description": "The maximum percentage of carbs the food can have (between 0 and 100).", "schema": { "type": "number", "example": 90 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "metaInformation", "description": "Whether to return more meta information about the ingredients.", "schema": { "type": "boolean", "example": false }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "intolerances", "description": "A comma-separated list of intolerances. All recipes returned must not contain ingredients that are not suitable for people with the intolerances entered. See a full list of supported intolerances.", "schema": { "type": "string", "example": "egg" }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "sort", "description": "The strategy to sort recipes by. See a full list of supported sorting options.", "schema": { "type": "string", "example": "calories" }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "sortDirection", "description": "The direction in which to sort. Must be either 'asc' (ascending) or 'desc' (descending).", "schema": { "type": "string", "example": "asc" }, "required": false, "style": "form", "explode": false, "in": "query" }, { "$ref": "#/components/parameters/offset" }, { "$ref": "#/components/parameters/number" }, { "$ref": "#/components/parameters/language" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Ingredient-Search" }, "summary": "Ingredient Search", "description": "Search for simple whole foods (e.g. fruits, vegetables, nuts, grains, meat, fish, dairy etc.).", "operationId": "ingredientSearch", "deprecated": false, "tags": [ "ingredients" ] } }, "/food/ingredients/substitutes": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "description": "", "type": "object", "properties": { "ingredient": { "type": "string", "minLength": 1 }, "substitutes": { "type": "array", "items": { "type": "string" } }, "message": { "type": "string", "minLength": 1 } }, "required": [ "ingredient", "substitutes", "message" ] }, "examples": { "example-1": { "value": { "ingredient": "butter", "substitutes": [ "1 cup = 7/8 cup shortening and 1/2 tsp salt", "1 cup = 7/8 cup vegetable oil + 1/2 tsp salt", "1/2 cup = 1/4 cup buttermilk + 1/4 cup unsweetened applesauce", "1 cup = 1 cup margarine" ], "message": "Found 4 substitutes for the ingredient." } } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "name": "ingredientName", "description": "The name of the ingredient you want to replace.", "schema": { "type": "string", "example": "butter" }, "required": true, "style": "form", "explode": false, "in": "query" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Get-Ingredient-Substitutes" }, "summary": "Get Ingredient Substitutes", "description": "Search for substitutes for a given ingredient.", "operationId": "getIngredientSubstitutes", "deprecated": false, "tags": [ "ingredients" ] } }, "/food/ingredients/{id}/substitutes": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "description": "", "type": "object", "properties": { "ingredient": { "type": "string", "minLength": 1 }, "substitutes": { "type": "array", "items": { "type": "string" } }, "message": { "type": "string", "minLength": 1 } }, "required": [ "ingredient", "substitutes", "message" ] }, "examples": { "example-1": { "value": { "ingredient": "butter", "substitutes": [ "1 cup = 7/8 cup shortening and 1/2 tsp salt", "1 cup = 7/8 cup vegetable oil + 1/2 tsp salt", "1/2 cup = 1/4 cup buttermilk + 1/4 cup unsweetened applesauce", "1 cup = 1 cup margarine" ], "message": "Found 4 substitutes for the ingredient." } } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "name": "id", "description": "The id of the ingredient you want substitutes for.", "schema": { "type": "integer", "example": 1001 }, "required": true, "style": "simple", "explode": false, "in": "path" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Get-Ingredient-Substitutes-by-ID" }, "summary": "Get Ingredient Substitutes by ID", "description": "Search for substitutes for a given ingredient.", "operationId": "getIngredientSubstitutesByID", "deprecated": false, "tags": [ "ingredients" ] } }, "/food/products/search": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "description": "", "type": "object", "properties": { "products": { "type": "array", "uniqueItems": true, "minItems": 0, "items": { "type": "object", "properties": { "id": { "type": "integer" }, "title": { "type": "string", "minLength": 1 }, "imageType": { "type": "string", "minLength": 1 } }, "required": [ "id", "title", "imageType" ] } }, "totalProducts": { "type": "integer" }, "type": { "type": "string", "minLength": 1 }, "offset": { "type": "integer" }, "number": { "type": "integer" } }, "required": [ "products", "totalProducts", "type", "offset", "number" ] }, "examples": { "example-1": { "value": { "products": [ { "id": 192386, "title": "Pizza Buddy: Frozen Pizza Dough, 16 Oz", "imageType": "jpg" }, { "id": 27693, "title": "Uno Pizza", "imageType": "jpg" } ], "totalProducts": 1258, "type": "product", "offset": 0, "number": 2 } } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "$ref": "#/components/parameters/query" }, { "name": "minCalories", "description": "The minimum amount of calories the product must have.", "schema": { "type": "number", "example": 50 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxCalories", "description": "The maximum amount of calories the product can have.", "schema": { "type": "number", "example": 800 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minCarbs", "description": "The minimum amount of carbohydrates in grams the product must have.", "schema": { "type": "number", "example": 10 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxCarbs", "description": "The maximum amount of carbohydrates in grams the product can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minProtein", "description": "The minimum amount of protein in grams the product must have.", "schema": { "type": "number", "example": 10 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxProtein", "description": "The maximum amount of protein in grams the product can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minFat", "description": "The minimum amount of fat in grams the product must have.", "schema": { "type": "number", "example": 1 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxFat", "description": "The maximum amount of fat in grams the product can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "schema": { "type": "boolean", "example": true, "enum": [ false, true ] }, "required": false, "in": "query", "name": "addProductInformation", "description": "If set to true, you get more information about the products returned." }, { "$ref": "#/components/parameters/offset" }, { "$ref": "#/components/parameters/number" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Search-Grocery-Products" }, "summary": "Search Grocery Products", "description": "Search packaged food products, such as frozen pizza or Greek yogurt.", "operationId": "searchGroceryProducts", "deprecated": false, "tags": [ "products" ] } }, "/food/products/upc/{upc}": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "description": "", "type": "object", "properties": { "id": { "type": "integer" }, "title": { "type": "string" }, "badges": { "type": "array", "items": { "type": "string" } }, "importantBadges": { "type": "array", "items": { "type": "string" } }, "breadcrumbs": { "type": "array", "items": { "type": "string" } }, "generatedText": { "type": "string", "nullable": true }, "imageType": { "type": "string" }, "ingredientCount": { "type": "integer" }, "ingredientList": { "type": "string" }, "ingredients": { "type": "array", "items": { "$ref": "#/components/schemas/IngredientBasics" } }, "likes": { "type": "number" }, "nutrition": { "type": "object", "required": [ "nutrients", "caloricBreakdown" ], "properties": { "nutrients": { "type": "array", "uniqueItems": true, "minItems": 0, "items": { "type": "object", "properties": { "name": { "type": "string", "minLength": 1 }, "amount": { "type": "number" }, "unit": { "type": "string", "minLength": 1 }, "percentOfDailyNeeds": { "type": "number" } }, "required": [ "name", "amount", "unit", "percentOfDailyNeeds" ] } }, "caloricBreakdown": { "type": "object", "required": [ "percentProtein", "percentFat", "percentCarbs" ], "properties": { "percentProtein": { "type": "number" }, "percentFat": { "type": "number" }, "percentCarbs": { "type": "number" } } } } }, "price": { "type": "number" }, "servings": { "type": "object", "required": [ "number", "size", "unit" ], "properties": { "number": { "type": "number" }, "size": { "type": "number" }, "unit": { "type": "string", "minLength": 1 } } }, "spoonacularScore": { "type": "number" } }, "required": [ "id", "title", "badges", "importantBadges", "breadcrumbs", "generatedText", "imageType", "ingredientList", "ingredients", "likes", "nutrition", "price", "servings", "spoonacularScore" ] }, "examples": { "example-1": { "value": { "id": 30004, "title": "Swan Flour", "badges": [ "egg_free", "wheat_free", "grain_free", "peanut_free", "primal", "vegetarian", "nut_free", "vegan", "pescetarian", "dairy_free", "paleo", "gluten_free" ], "importantBadges": [ "gluten_free", "paleo", "primal", "wheat_free", "grain_free" ], "breadcrumbs": [ "flour" ], "generatedText": "Swan Flour: This product is an awesome fit if you are searching for a healthy flour. This product has 1 ingredient (in our experience: the fewer ingredients, the better!) This product contains no ingredients that some research suggests you should avoid. One serving of this product provides 30 calories, 0g grams of fat, 0g grams of protein, and 8g grams of carbs.", "imageType": "jpg", "ingredientCount": 1, "ingredientList": "Potato Starch", "ingredients": [ { "description": null, "name": "", "safety_level": null }, { "description": null, "name": "starch", "safety_level": null }, { "description": null, "name": "potato starch", "safety_level": null } ], "likes": 0, "nutrition": { "nutrients": [ { "name": "Fat", "amount": 0, "unit": "g", "percentOfDailyNeeds": 0 }, { "name": "Protein", "amount": 0, "unit": "g", "percentOfDailyNeeds": 0 }, { "name": "Calories", "amount": 30, "unit": "cal", "percentOfDailyNeeds": 10 }, { "name": "Carbohydrates", "amount": 8, "unit": "g", "percentOfDailyNeeds": 9.45 } ], "caloricBreakdown": { "percentProtein": 22.22, "percentFat": 20, "percentCarbs": 57.78 } }, "price": 0, "servings": { "number": 34, "size": 1, "unit": "tbsp" }, "spoonacularScore": 99 } } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "name": "upc", "description": "The product's UPC.", "schema": { "type": "string", "example": "041631000564" }, "required": true, "style": "simple", "explode": false, "in": "path" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Search-Grocery-Products-by-UPC" }, "summary": "Search Grocery Products by UPC", "description": "Get information about a packaged food using its UPC.", "operationId": "searchGroceryProductsByUPC", "deprecated": false, "tags": [ "products" ] } }, "/food/customFoods/search": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "description": "", "type": "object", "properties": { "customFoods": { "type": "array", "uniqueItems": true, "minItems": 0, "items": { "type": "object", "properties": { "id": { "type": "integer" }, "title": { "type": "string", "minLength": 1 }, "servings": { "type": "number" }, "imageUrl": { "type": "string", "minLength": 1 }, "price": { "type": "number" } }, "required": [ "id", "title", "servings", "imageUrl", "price" ] } }, "type": { "type": "string", "minLength": 1 }, "offset": { "type": "integer" }, "number": { "type": "integer" } }, "required": [ "customFoods", "type", "offset", "number" ] }, "examples": { "example-1": { "value": { "customFoods": [ { "id": 15, "title": "Max Cafe Curry Bratwurst", "servings": 1, "imageUrl": "https://spoonacular.com/cdn/ingredients_100x100/bratwurst.jpg", "price": 6.9 } ], "type": "customFood", "offset": 0, "number": 10 } } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "$ref": "#/components/parameters/query" }, { "name": "username", "description": "The username.", "schema": { "type": "string", "example": "dsky" }, "required": true, "style": "form", "explode": false, "in": "query" }, { "name": "hash", "description": "The private hash for the username.", "schema": { "type": "string", "example": "4b5v4398573406" }, "required": true, "style": "form", "explode": false, "in": "query" }, { "$ref": "#/components/parameters/offset" }, { "$ref": "#/components/parameters/number" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Search-Custom-Foods" }, "summary": "Search Custom Foods", "description": "Search custom foods in a user's account.", "operationId": "searchCustomFoods", "deprecated": false, "tags": [ "misc" ] } }, "/food/products/{id}": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/ProductInformation" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "name": "id", "description": "The id of the packaged food.", "schema": { "type": "integer", "example": 22347 }, "required": true, "style": "simple", "explode": false, "in": "path" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Get-Product-Information" }, "summary": "Get Product Information", "description": "Use a product id to get full information about a product, such as ingredients, nutrition, etc. The nutritional information is per serving.", "operationId": "getProductInformation", "deprecated": false, "tags": [ "products" ] } }, "/food/products/upc/{upc}/comparable": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "description": "", "type": "object", "properties": { "comparableProducts": { "type": "object", "required": [ "calories", "likes", "price", "protein", "spoonacular_score", "sugar" ], "properties": { "calories": { "type": "array", "items": { "$ref": "#/components/schemas/ComparableProduct" } }, "likes": { "type": "array", "items": { "$ref": "#/components/schemas/ComparableProduct" } }, "price": { "type": "array", "items": { "$ref": "#/components/schemas/ComparableProduct" } }, "protein": { "type": "array", "items": { "$ref": "#/components/schemas/ComparableProduct" } }, "spoonacular_score": { "type": "array", "items": { "$ref": "#/components/schemas/ComparableProduct" } }, "sugar": { "type": "array", "items": { "$ref": "#/components/schemas/ComparableProduct" } } } } }, "required": [ "comparableProducts" ] }, "examples": { "example-1": { "value": { "comparableProducts": { "calories": [], "likes": [], "price": [], "protein": [ { "difference": 3, "id": 11797, "image": "https://webknox.com/productImages/11797.jpg", "title": "Casa Visco Capers" }, { "difference": 1, "id": 90962, "image": "https://webknox.com/productImages/90962.jpg", "title": "Colavita Capers" }, { "difference": 1, "id": 88139, "image": "https://webknox.com/productImages/88139.jpg", "title": "Mezzetta Capers" }, { "difference": 1, "id": 152832, "image": "https://webknox.com/productImages/152832.jpg", "title": "Victoria Imported Capers" } ], "spoonacular_score": [ { "difference": 7, "id": 125354, "image": "https://webknox.com/productImages/125354.jpg", "title": "DeLallo Capers" }, { "difference": 7, "id": 118361, "image": "https://webknox.com/productImages/118361.jpg", "title": "Haddon House Non Pareil Capers" }, { "difference": 7, "id": 113686, "image": "https://webknox.com/productImages/113686.jpg", "title": "Dell Alpe Capers" }, { "difference": 7, "id": 112078, "image": "https://webknox.com/productImages/112078.jpg", "title": "Paesana Imported Capers" } ], "sugar": [] } } } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "name": "upc", "description": "The UPC of the product for which you want to find comparable products.", "schema": { "type": "string", "example": "033698816271" }, "required": true, "style": "simple", "explode": false, "in": "path" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Get-Comparable-Products" }, "summary": "Get Comparable Products", "description": "Find comparable products to the given one.", "operationId": "getComparableProducts", "deprecated": false, "tags": [ "products" ] } }, "/food/products/suggest": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "description": "", "type": "object", "properties": { "results": { "type": "array", "uniqueItems": true, "minItems": 0, "items": { "type": "object", "properties": { "id": { "type": "integer" }, "title": { "type": "string", "minLength": 1 } }, "required": [ "id", "title" ] } } }, "required": [ "results" ] }, "examples": { "example-1": { "value": { "results": [ { "id": 208698, "title": "buddig premium deli chicken breast - rotisserie flavored" }, { "id": 41291, "title": "tyson all natural chicken breasts tenderloins" } ] } } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "name": "query", "description": "The (partial) search query.", "schema": { "type": "string", "example": "chicke" }, "required": true, "style": "form", "explode": false, "in": "query" }, { "name": "number", "description": "The number of results to return (between 1 and 25).", "schema": { "type": "integer", "example": 10, "minimum": 1, "maximum": 25 }, "required": false, "style": "form", "explode": false, "in": "query" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Autocomplete-Product-Search" }, "summary": "Autocomplete Product Search", "description": "Generate suggestions for grocery products based on a (partial) query. The matches will be found by looking in the title only.", "operationId": "autocompleteProductSearch", "deprecated": false, "tags": [ "products" ] } }, "/food/products/{id}/nutritionWidget": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "text/html": { "schema": { "type": "string" }, "examples": { "example-1": { "value": "string" } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "name": "id", "description": "The id of the product.", "schema": { "type": "integer", "example": 7657 }, "required": true, "style": "simple", "explode": false, "in": "path" }, { "$ref": "#/components/parameters/defaultCss" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Product-Nutrition-by-ID-Widget" }, "summary": "Product Nutrition by ID Widget", "description": "Visualize a product's nutritional information as HTML including CSS.", "operationId": "visualizeProductNutritionByID", "deprecated": false, "tags": [ "products" ] } }, "/food/products/{id}/nutritionWidget.png": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "image/png": { "schema": { "type": "string", "format": "binary" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "name": "id", "description": "The id of the product.", "schema": { "type": "integer", "example": 7657 }, "required": true, "style": "simple", "explode": false, "in": "path" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Product-Nutrition-by-ID-Image" }, "summary": "Product Nutrition by ID Image", "description": "Visualize a product's nutritional information as an image.", "operationId": "productNutritionByIDImage", "deprecated": false, "tags": [ "products" ] } }, "/food/products/{id}/nutritionLabel": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "text/html": { "schema": { "type": "string" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "name": "id", "description": "The product id.", "schema": { "type": "integer", "example": 22347 }, "required": true, "style": "simple", "explode": false, "in": "path" }, { "$ref": "#/components/parameters/defaultCss" }, { "name": "showOptionalNutrients", "description": "Whether to show optional nutrients.", "schema": { "type": "boolean", "example": false }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "showZeroValues", "description": "Whether to show zero values.", "schema": { "type": "boolean", "example": false }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "showIngredients", "description": "Whether to show a list of ingredients.", "schema": { "type": "boolean", "example": false }, "required": false, "style": "form", "explode": false, "in": "query" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Product-Nutrition-Label-Widget" }, "summary": "Product Nutrition Label Widget", "description": "Get a product's nutrition label as an HTML widget.", "operationId": "productNutritionLabelWidget", "deprecated": false, "tags": [ "products" ] } }, "/food/products/{id}/nutritionLabel.png": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "image/png": { "schema": { "type": "string", "format": "binary" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "name": "id", "description": "The product id.", "schema": { "type": "integer", "example": 22347 }, "required": true, "style": "simple", "explode": false, "in": "path" }, { "name": "showOptionalNutrients", "description": "Whether to show optional nutrients.", "schema": { "type": "boolean", "example": false }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "showZeroValues", "description": "Whether to show zero values.", "schema": { "type": "boolean", "example": false }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "showIngredients", "description": "Whether to show a list of ingredients.", "schema": { "type": "boolean", "example": false }, "required": false, "style": "form", "explode": false, "in": "query" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Product-Nutrition-Label-Image" }, "summary": "Product Nutrition Label Image", "description": "Get a product's nutrition label as an image.", "operationId": "productNutritionLabelImage", "deprecated": false, "tags": [ "products" ] } }, "/food/products/classify": { "post": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "description": "", "type": "object", "properties": { "cleanTitle": { "type": "string", "minLength": 1 }, "image": { "type": "string", "minLength": 1 }, "category": { "type": "string", "minLength": 1 }, "breadcrumbs": { "type": "array", "items": { "type": "string" } }, "usdaCode": { "type": "integer" } }, "required": [ "cleanTitle", "image", "category", "breadcrumbs", "usdaCode" ] }, "examples": { "example-1": { "value": { "cleanTitle": "Kroger Vitamin A & D Reduced Fat 2% Milk", "image": "https://spoonacular.com/cdn/ingredients_100x100/milk.png", "category": "2 percent milk", "breadcrumbs": [ "2 percent milk", "milk", "drink", "ingredient" ], "usdaCode": 1174 } } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "requestBody": { "required": true, "content": { "application/json": { "schema": { "description": "", "type": "object", "properties": { "title": { "type": "string", "minLength": 1 }, "upc": { "type": "string" }, "plu_code": { "type": "string" } }, "required": [ "title", "upc", "plu_code" ] }, "examples": { "example-1": { "value": { "title": "Kroger Vitamin A & D Reduced Fat 2% Milk", "upc": "", "plu_code": "" } } } } } }, "parameters": [ { "name": "locale", "description": "The display name of the returned category, supported is en_US (for American English) and en_GB (for British English).", "schema": { "type": "string", "example": "en_US", "enum": [ "en_US", "en_GB" ] }, "required": false, "style": "form", "explode": false, "in": "query" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Classify-Grocery-Product" }, "summary": "Classify Grocery Product", "description": "This endpoint allows you to match a packaged food to a basic category, e.g. a specific brand of milk to the category milk.", "operationId": "classifyGroceryProduct", "deprecated": false, "tags": [ "products" ] } }, "/food/products/classifyBatch": { "post": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "type": "array", "description": "", "minItems": 0, "uniqueItems": true, "items": { "type": "object", "properties": { "cleanTitle": { "type": "string", "minLength": 1 }, "image": { "type": "string", "minLength": 1 }, "category": { "type": "string", "minLength": 1 }, "breadcrumbs": { "type": "array", "items": { "type": "string" } }, "usdaCode": { "type": "integer" } }, "required": [ "cleanTitle", "image", "category", "breadcrumbs", "usdaCode" ] } }, "examples": { "example-1": { "value": [ { "cleanTitle": "Kroger Vitamin A & D Reduced Fat 2% Milk", "image": "https://spoonacular.com/cdn/ingredients_100x100/milk.png", "category": "2 percent milk", "breadcrumbs": [ "2 percent milk", "milk", "drink", "ingredient" ], "usdaCode": 1174 } ] } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "requestBody": { "required": true, "content": { "application/json": { "schema": { "type": "array", "description": "", "minItems": 0, "uniqueItems": true, "items": { "type": "object", "required": [ "title", "upc", "plu_code" ], "properties": { "title": { "type": "string", "minLength": 1 }, "upc": { "type": "string" }, "plu_code": { "type": "string" } } } }, "examples": { "example-1": { "value": [ { "title": "Kroger Vitamin A & D Reduced Fat 2% Milk", "upc": "", "plu_code": "" } ] } } } } }, "parameters": [ { "name": "locale", "description": "The display name of the returned category, supported is en_US (for American English) and en_GB (for British English).", "schema": { "type": "string", "example": "en_US" }, "required": false, "style": "form", "explode": false, "in": "query" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Classify-Grocery-Product-Bulk" }, "summary": "Classify Grocery Product Bulk", "description": "Provide a set of product jsons, get back classified products.", "operationId": "classifyGroceryProductBulk", "deprecated": false, "tags": [ "products" ] } }, "/food/ingredients/map": { "post": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "type": "array", "description": "", "minItems": 0, "uniqueItems": true, "items": { "type": "object", "properties": { "original": { "type": "string", "minLength": 1 }, "originalName": { "type": "string", "minLength": 1 }, "ingredientImage": { "type": "string", "minLength": 1 }, "meta": { "type": "array", "items": { "type": "string" } }, "products": { "type": "array", "uniqueItems": true, "minItems": 0, "items": { "type": "object", "properties": { "id": { "type": "integer" }, "title": { "type": "string", "minLength": 1 }, "upc": { "type": "string", "minLength": 1 } }, "required": [ "id", "title", "upc" ] } } }, "required": [ "original", "originalName", "ingredientImage", "meta", "products" ] } }, "examples": { "example-1": { "value": [ { "original": "eggs", "originalName": "eggs", "ingredientImage": "egg.png", "meta": [ "egg" ], "products": [ { "id": 209945, "title": "Crystal Farms Eggs - Fresh Accents Peeled Hard Cooked 2 ct Packs", "upc": "075925889498" }, { "id": 214723, "title": "Organic Valley Eggs - Organic Medium Brown", "upc": "093966811100" }, { "id": 183228, "title": "Eggland's Best Grade A Eggs Jumbo - 12 CT", "upc": "715141328615" } ] }, { "ingredientImage": "raw-bacon.png", "meta": [ "bacon" ], "original": "bacon", "originalName": "bacon", "products": [ { "id": 159164, "title": "Wright Bacon - Naturally Hickory Smoked", "upc": "079621461552" }, { "id": 87924, "title": "Sugardale Bacon", "upc": "073890006025" }, { "id": 213315, "title": "John Morrell Bacon - Applewood Smoked", "upc": "070100060877" }, { "id": 94585, "title": "Hormel Black Label Bacon Thick Cut", "upc": "037600153041" } ] } ] } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "requestBody": { "required": true, "content": { "application/json": { "schema": { "description": "", "type": "object", "properties": { "ingredients": { "type": "array", "items": { "type": "string" } }, "servings": { "type": "number" } }, "required": [ "ingredients", "servings" ] }, "examples": { "example-1": { "value": { "ingredients": [ "eggs", "bacon" ], "servings": 2 } } } } } }, "parameters": [], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Map-Ingredients-to-Grocery-Products" }, "summary": "Map Ingredients to Grocery Products", "description": "Map a set of ingredients to products you can buy in the grocery store.", "operationId": "mapIngredientsToGroceryProducts", "deprecated": false, "tags": [ "ingredients" ] } }, "/food/menuItems/suggest": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "description": "", "type": "object", "properties": { "results": { "type": "array", "uniqueItems": true, "minItems": 0, "items": { "type": "object", "properties": { "id": { "type": "integer" }, "title": { "type": "string", "minLength": 1 } }, "required": [ "id", "title" ] } } }, "required": [ "results" ] }, "examples": { "example-1": { "value": { "results": [ { "id": 253419, "title": "pei wei asian diner thai chicken lettuce wraps" }, { "id": 380722, "title": "camille's chicken caesar salad includes 2 oz. caesar dressing" } ] } } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "name": "query", "description": "The (partial) search query.", "schema": { "type": "string", "example": "chicke" }, "required": true, "style": "form", "explode": false, "in": "query" }, { "name": "number", "description": "The number of results to return (between 1 and 25).", "schema": { "type": "integer", "example": 10, "minimum": 1, "maximum": 25 }, "required": false, "style": "form", "explode": false, "in": "query" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Autocomplete-Menu-Item-Search" }, "summary": "Autocomplete Menu Item Search", "description": "Generate suggestions for menu items based on a (partial) query. The matches will be found by looking in the title only.", "operationId": "autocompleteMenuItemSearch", "deprecated": false, "tags": [ "menu items" ] } }, "/food/menuItems/search": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "description": "", "type": "object", "properties": { "menuItems": { "type": "array", "uniqueItems": true, "minItems": 0, "items": { "$ref": "#/components/schemas/MenuItem" } }, "totalMenuItems": { "type": "integer" }, "type": { "type": "string", "minLength": 1 }, "offset": { "type": "integer" }, "number": { "type": "integer" } }, "required": [ "menuItems", "totalMenuItems", "type", "offset", "number" ] }, "examples": { "example-1": { "value": { "menuItems": [ { "id": 419357, "title": "Burger Sliders", "restaurantChain": "Hooters", "image": "https://images.spoonacular.com/file/wximages/419357-312x231.png", "imageType": "png", "servings": { "number": 1, "size": 2, "unit": "oz" } }, { "id": 424571, "title": "Bacon King Burger", "restaurantChain": "Burger King", "image": "https://images.spoonacular.com/file/wximages/424571-312x231.png", "imageType": "png", "servings": { "number": 1, "size": 2, "unit": "oz" } } ], "totalMenuItems": 6749, "type": "menuItem", "offset": 0, "number": 2 } } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "$ref": "#/components/parameters/query" }, { "name": "minCalories", "description": "The minimum amount of calories the menu item must have.", "schema": { "type": "number", "example": 50 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxCalories", "description": "The maximum amount of calories the menu item can have.", "schema": { "type": "number", "example": 800 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minCarbs", "description": "The minimum amount of carbohydrates in grams the menu item must have.", "schema": { "type": "number", "example": 10 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxCarbs", "description": "The maximum amount of carbohydrates in grams the menu item can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minProtein", "description": "The minimum amount of protein in grams the menu item must have.", "schema": { "type": "number", "example": 10 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxProtein", "description": "The maximum amount of protein in grams the menu item can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minFat", "description": "The minimum amount of fat in grams the menu item must have.", "schema": { "type": "number", "example": 1 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxFat", "description": "The maximum amount of fat in grams the menu item can have.", "schema": { "type": "number", "example": 100 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "schema": { "type": "boolean", "example": true, "enum": [ false, true ] }, "required": false, "in": "query", "name": "addMenuItemInformation", "description": "If set to true, you get more information about the menu items returned." }, { "$ref": "#/components/parameters/offset" }, { "$ref": "#/components/parameters/number" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Search-Menu-Items" }, "summary": "Search Menu Items", "description": "Search over 115,000 menu items from over 800 fast food and chain restaurants. For example, McDonald's Big Mac or Starbucks Mocha.", "operationId": "searchMenuItems", "deprecated": false, "tags": [ "menu items" ] } }, "/food/menuItems/{id}": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "$ref": "#/components/schemas/MenuItem" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "name": "id", "description": "The menu item id.", "schema": { "type": "integer", "example": 424571 }, "required": true, "style": "simple", "explode": false, "in": "path" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Get-Menu-Item-Information" }, "summary": "Get Menu Item Information", "description": "Use a menu item id to get all available information about a menu item, such as nutrition.", "operationId": "getMenuItemInformation", "deprecated": false, "tags": [ "menu items" ] } }, "/food/menuItems/{id}/nutritionWidget": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "text/html": { "schema": { "type": "string" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "name": "id", "description": "The menu item id.", "schema": { "type": "integer", "example": 1003464 }, "required": true, "style": "simple", "explode": false, "in": "path" }, { "$ref": "#/components/parameters/defaultCss" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Menu-Item-Nutrition-by-ID-Widget" }, "summary": "Menu Item Nutrition by ID Widget", "description": "Visualize a menu item's nutritional information as HTML including CSS.", "operationId": "visualizeMenuItemNutritionByID", "deprecated": false, "tags": [ "menu items" ] } }, "/food/menuItems/{id}/nutritionWidget.png": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "image/png": { "schema": { "type": "string", "format": "binary" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "name": "id", "description": "The menu item id.", "schema": { "type": "integer", "example": 424571 }, "required": true, "style": "simple", "explode": false, "in": "path" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Menu-Item-Nutrition-by-ID-Image" }, "summary": "Menu Item Nutrition by ID Image", "description": "Visualize a menu item's nutritional information as HTML including CSS.", "operationId": "menuItemNutritionByIDImage", "deprecated": false, "tags": [ "menu items" ] } }, "/food/menuItems/{id}/nutritionLabel": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "text/html": { "schema": { "type": "string" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "name": "id", "description": "The menu item id.", "schema": { "type": "integer", "example": 342313 }, "required": true, "style": "simple", "explode": false, "in": "path" }, { "$ref": "#/components/parameters/defaultCss" }, { "name": "showOptionalNutrients", "description": "Whether to show optional nutrients.", "schema": { "type": "boolean", "example": false }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "showZeroValues", "description": "Whether to show zero values.", "schema": { "type": "boolean", "example": false }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "showIngredients", "description": "Whether to show a list of ingredients.", "schema": { "type": "boolean", "example": false }, "required": false, "style": "form", "explode": false, "in": "query" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Menu-Item-Nutrition-Label-Widget" }, "summary": "Menu Item Nutrition Label Widget", "description": "Visualize a menu item's nutritional label information as HTML including CSS.", "operationId": "menuItemNutritionLabelWidget", "deprecated": false, "tags": [ "menu items" ] } }, "/food/menuItems/{id}/nutritionLabel.png": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "image/png": { "schema": { "type": "string", "format": "binary" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "name": "id", "description": "The menu item id.", "schema": { "type": "integer", "example": 342313 }, "required": true, "style": "simple", "explode": false, "in": "path" }, { "name": "showOptionalNutrients", "description": "Whether to show optional nutrients.", "schema": { "type": "boolean", "example": false }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "showZeroValues", "description": "Whether to show zero values.", "schema": { "type": "boolean", "example": false }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "showIngredients", "description": "Whether to show a list of ingredients.", "schema": { "type": "boolean", "example": false }, "required": false, "style": "form", "explode": false, "in": "query" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Menu-Item-Nutrition-Label-Image" }, "summary": "Menu Item Nutrition Label Image", "description": "Visualize a menu item's nutritional label information as an image.", "operationId": "menuItemNutritionLabelImage", "deprecated": false, "tags": [ "menu items" ] } }, "/mealplanner/generate": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "description": "", "type": "object", "properties": { "meals": { "type": "array", "uniqueItems": true, "minItems": 0, "items": { "type": "object", "properties": { "id": { "type": "integer" }, "title": { "type": "string", "minLength": 1 }, "imageType": { "type": "string", "minLength": 1 }, "readyInMinutes": { "type": "integer" }, "servings": { "type": "number" }, "sourceUrl": { "type": "string", "minLength": 1 } }, "required": [ "id", "title", "imageType", "readyInMinutes", "servings", "sourceUrl" ] } }, "nutrients": { "type": "object", "required": [ "calories", "carbohydrates", "fat", "protein" ], "properties": { "calories": { "type": "number" }, "carbohydrates": { "type": "number" }, "fat": { "type": "number" }, "protein": { "type": "number" } } } }, "required": [ "meals", "nutrients" ] }, "examples": { "example-1": { "value": { "meals": [ { "id": 655219, "title": "Peanut Butter And Chocolate Oatmeal", "imageType": "jpg", "readyInMinutes": 45, "servings": 1, "sourceUrl": "https://spoonacular.com/recipes/peanut-butter-and-chocolate-oatmeal-655219" }, { "id": 649931, "title": "Lentil Salad With Vegetables", "imageType": "jpg", "readyInMinutes": 45, "servings": 4, "sourceUrl": "https://spoonacular.com/recipes/lentil-salad-with-vegetables-649931" }, { "id": 632854, "title": "Asian Noodles", "imageType": "jpg", "readyInMinutes": 45, "servings": 4, "sourceUrl": "https://spoonacular.com/recipes/asian-noodles-632854" } ], "nutrients": { "calories": 1735.81, "carbohydrates": 235.17, "fat": 69.22, "protein": 55.43 } } } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "name": "timeFrame", "description": "Either for one \"day\" or an entire \"week\".", "schema": { "type": "string", "example": "day" }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "targetCalories", "description": "What is the caloric target for one day? The meal plan generator will try to get as close as possible to that goal.", "schema": { "type": "number", "example": 2000 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "diet", "description": "Enter a diet that the meal plan has to adhere to. See a full list of supported diets.", "schema": { "type": "string", "example": "vegetarian" }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "exclude", "description": "A comma-separated list of allergens or ingredients that must be excluded.", "schema": { "type": "string", "example": "shellfish, olives" }, "required": false, "style": "form", "explode": false, "in": "query" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Generate-Meal-Plan" }, "summary": "Generate Meal Plan", "description": "Generate a meal plan with three meals per day (breakfast, lunch, and dinner).", "operationId": "generateMealPlan", "deprecated": false, "tags": [ "meal planning" ] } }, "/mealplanner/{username}/week/{start_date}": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "description": "", "type": "object", "properties": { "days": { "type": "array", "uniqueItems": true, "minItems": 0, "items": { "type": "object", "properties": { "nutritionSummary": { "type": "object", "properties": { "nutrients": { "type": "array", "uniqueItems": true, "minItems": 0, "items": { "type": "object", "properties": { "name": { "type": "string", "minLength": 1 }, "amount": { "type": "number" }, "unit": { "type": "string", "minLength": 1 }, "percentDailyNeeds": { "type": "number" } }, "required": [ "name", "amount", "unit", "percentDailyNeeds" ] } } }, "required": [ "nutrients" ] }, "nutritionSummaryBreakfast": { "type": "object", "properties": { "nutrients": { "type": "array", "uniqueItems": true, "minItems": 0, "items": { "type": "object", "properties": { "name": { "type": "string", "minLength": 1 }, "amount": { "type": "number" }, "unit": { "type": "string", "minLength": 1 }, "percentDailyNeeds": { "type": "number" } }, "required": [ "name", "amount", "unit", "percentDailyNeeds" ] } } }, "required": [ "nutrients" ] }, "nutritionSummaryLunch": { "type": "object", "properties": { "nutrients": { "type": "array", "uniqueItems": true, "minItems": 0, "items": { "type": "object", "properties": { "name": { "type": "string", "minLength": 1 }, "amount": { "type": "number" }, "unit": { "type": "string", "minLength": 1 }, "percentDailyNeeds": { "type": "number" } }, "required": [ "name", "amount", "unit", "percentDailyNeeds" ] } } }, "required": [ "nutrients" ] }, "nutritionSummaryDinner": { "type": "object", "properties": { "nutrients": { "type": "array", "uniqueItems": true, "minItems": 0, "items": { "type": "object", "properties": { "name": { "type": "string", "minLength": 1 }, "amount": { "type": "number" }, "unit": { "type": "string", "minLength": 1 }, "percentDailyNeeds": { "type": "number" } }, "required": [ "name", "amount", "unit", "percentDailyNeeds" ] } } }, "required": [ "nutrients" ] }, "date": { "type": "number" }, "day": { "type": "string", "minLength": 1 }, "items": { "type": "array", "uniqueItems": true, "minItems": 0, "items": { "type": "object", "properties": { "id": { "type": "integer" }, "slot": { "type": "integer" }, "position": { "type": "integer" }, "type": { "type": "string", "minLength": 1 }, "value": { "type": "object", "properties": { "servings": { "type": "number" }, "id": { "type": "number" }, "title": { "type": "string", "minLength": 1 }, "imageType": { "type": "string" } }, "required": [ "servings", "id", "title", "imageType" ] } }, "required": [ "id", "slot", "position", "type" ] } } }, "required": [ "date", "day" ] } } }, "required": [ "days" ] }, "examples": { "example-1": { "value": { "days": [ { "nutritionSummary": { "nutrients": [ { "name": "Calories", "amount": 310, "unit": "cal", "percentDailyNeeds": 16 }, { "name": "Fat", "amount": 25, "unit": "g", "percentDailyNeeds": 38 }, { "name": "Carbohydrates", "amount": 1, "unit": "g", "percentDailyNeeds": 0 }, { "name": "Protein", "amount": 20, "unit": "g", "percentDailyNeeds": 40 } ] }, "nutritionSummaryBreakfast": { "nutrients": [ { "name": "Calories", "amount": 0, "unit": "cal", "percentDailyNeeds": 0 }, { "name": "Fat", "amount": 0, "unit": "g", "percentDailyNeeds": 0 }, { "name": "Carbohydrates", "amount": 0, "unit": "g", "percentDailyNeeds": 0 }, { "name": "Protein", "amount": 0, "unit": "g", "percentDailyNeeds": 0 } ] }, "nutritionSummaryLunch": { "nutrients": [ { "name": "Calories", "amount": 310, "unit": "cal", "percentDailyNeeds": 16 }, { "name": "Fat", "amount": 25, "unit": "g", "percentDailyNeeds": 38 }, { "name": "Carbohydrates", "amount": 1, "unit": "g", "percentDailyNeeds": 0 }, { "name": "Protein", "amount": 20, "unit": "g", "percentDailyNeeds": 40 } ] }, "nutritionSummaryDinner": { "nutrients": [ { "name": "Calories", "amount": 0, "unit": "cal", "percentDailyNeeds": 0 }, { "name": "Fat", "amount": 0, "unit": "g", "percentDailyNeeds": 0 }, { "name": "Carbohydrates", "amount": 0, "unit": "g", "percentDailyNeeds": 0 }, { "name": "Protein", "amount": 0, "unit": "g", "percentDailyNeeds": 0 } ] }, "date": 1589155200, "day": "Monday", "items": [ { "id": 1976489, "slot": 1, "position": 1, "type": "RECIPE", "value": { "servings": 2, "id": 1023004, "title": "Foolproof Meatloaf", "imageType": "" } }, { "id": 1976490, "slot": 2, "position": 2, "type": "CUSTOM_FOOD", "value": { "servings": 1, "id": 345, "title": "Denn's Lamb Bratwurst - 1/2 Pkg", "image": "https://spoonacular.com/cdn/ingredients_100x100/bratwurst.jpg", "imageType": "jpg" } } ] }, { "nutritionSummary": { "nutrients": [ { "name": "Calories", "amount": 200, "unit": "cal", "percentDailyNeeds": 10 }, { "name": "Fat", "amount": 1, "unit": "g", "percentDailyNeeds": 1 }, { "name": "Carbohydrates", "amount": 52, "unit": "g", "percentDailyNeeds": 17 }, { "name": "Protein", "amount": 2, "unit": "g", "percentDailyNeeds": 4 } ] }, "nutritionSummaryBreakfast": { "nutrients": [ { "name": "Calories", "amount": 200, "unit": "cal", "percentDailyNeeds": 10 }, { "name": "Fat", "amount": 1, "unit": "g", "percentDailyNeeds": 1 }, { "name": "Carbohydrates", "amount": 52, "unit": "g", "percentDailyNeeds": 17 }, { "name": "Protein", "amount": 2, "unit": "g", "percentDailyNeeds": 4 } ] }, "nutritionSummaryLunch": { "nutrients": [ { "name": "Calories", "amount": 0, "unit": "cal", "percentDailyNeeds": 0 }, { "name": "Fat", "amount": 0, "unit": "g", "percentDailyNeeds": 0 }, { "name": "Carbohydrates", "amount": 0, "unit": "g", "percentDailyNeeds": 0 }, { "name": "Protein", "amount": 0, "unit": "g", "percentDailyNeeds": 0 } ] }, "nutritionSummaryDinner": { "nutrients": [ { "name": "Calories", "amount": 0, "unit": "cal", "percentDailyNeeds": 0 }, { "name": "Fat", "amount": 0, "unit": "g", "percentDailyNeeds": 0 }, { "name": "Carbohydrates", "amount": 0, "unit": "g", "percentDailyNeeds": 0 }, { "name": "Protein", "amount": 0, "unit": "g", "percentDailyNeeds": 0 } ] }, "date": 1589241600, "day": "Tuesday", "items": [ { "id": 1976491, "slot": 1, "position": 3, "type": "INGREDIENTS", "value": { "id": 877, "name": "", "title": "apple and banana", "servings": 1, "imageType": "jpg", "ingredients": [ { "name": "apple", "unit": "", "amount": "1", "image": "https://spoonacular.com/cdn/ingredients_100x100/apple.jpg" }, { "name": "banana", "unit": "", "amount": "1", "image": "https://spoonacular.com/cdn/ingredients_100x100/bananas.jpg" } ] } } ] }, { "nutritionSummary": { "nutrients": [ { "name": "Calories", "amount": 180, "unit": "cal", "percentDailyNeeds": 9 }, { "name": "Fat", "amount": 6, "unit": "g", "percentDailyNeeds": 9 }, { "name": "Carbohydrates", "amount": 22, "unit": "g", "percentDailyNeeds": 7 }, { "name": "Protein", "amount": 10, "unit": "g", "percentDailyNeeds": 20 } ] }, "nutritionSummaryBreakfast": { "nutrients": [ { "name": "Calories", "amount": 180, "unit": "cal", "percentDailyNeeds": 9 }, { "name": "Fat", "amount": 6, "unit": "g", "percentDailyNeeds": 9 }, { "name": "Carbohydrates", "amount": 22, "unit": "g", "percentDailyNeeds": 7 }, { "name": "Protein", "amount": 10, "unit": "g", "percentDailyNeeds": 20 } ] }, "nutritionSummaryLunch": { "nutrients": [ { "name": "Calories", "amount": 0, "unit": "cal", "percentDailyNeeds": 0 }, { "name": "Fat", "amount": 0, "unit": "g", "percentDailyNeeds": 0 }, { "name": "Carbohydrates", "amount": 0, "unit": "g", "percentDailyNeeds": 0 }, { "name": "Protein", "amount": 0, "unit": "g", "percentDailyNeeds": 0 } ] }, "nutritionSummaryDinner": { "nutrients": [ { "name": "Calories", "amount": 0, "unit": "cal", "percentDailyNeeds": 0 }, { "name": "Fat", "amount": 0, "unit": "g", "percentDailyNeeds": 0 }, { "name": "Carbohydrates", "amount": 0, "unit": "g", "percentDailyNeeds": 0 }, { "name": "Protein", "amount": 0, "unit": "g", "percentDailyNeeds": 0 } ] }, "date": 1589328000, "day": "Wednesday", "items": [ { "id": 1976492, "slot": 1, "position": 4, "type": "MENU_ITEM", "value": { "servings": 1, "id": 378557, "title": "BBQ Steak Pizza, 9", "image": "https://images.spoonacular.com/file/wximages/378557-312x231.png", "imageType": "png" } } ] } ] } } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "name": "username", "description": "The username.", "schema": { "type": "string", "example": "dsky" }, "required": true, "style": "simple", "explode": false, "in": "path" }, { "name": "start_date", "description": "The start date of the meal planned week in the format yyyy-mm-dd.", "schema": { "type": "string", "example": "2020-06-01" }, "required": true, "style": "simple", "explode": false, "in": "path" }, { "$ref": "#/components/parameters/hash" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Get-Meal-Plan-Week" }, "summary": "Get Meal Plan Week", "description": "Retrieve 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.", "operationId": "getMealPlanWeek", "deprecated": false, "tags": [ "meal planning" ] } }, "/mealplanner/{username}/day/{date}": { "delete": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "type": "object" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "name": "username", "description": "The username.", "schema": { "type": "string", "example": "dsky" }, "required": true, "style": "simple", "explode": false, "in": "path" }, { "name": "date", "description": "The date in the format yyyy-mm-dd.", "schema": { "type": "string", "example": "2020-06-01" }, "required": true, "style": "simple", "explode": false, "in": "path" }, { "$ref": "#/components/parameters/hash" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Clear-Meal-Plan-Day" }, "summary": "Clear Meal Plan Day", "description": "Delete all planned items from the user's meal plan for a specific day.", "operationId": "clearMealPlanDay", "deprecated": false, "tags": [ "meal planning" ] } }, "/mealplanner/{username}/items": { "post": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "description": "", "type": "object" }, "examples": { "example-1": { "value": { "date": 1589500800, "slot": 1, "position": 0, "type": "INGREDIENTS", "value": { "ingredients": [ { "name": "1 banana" } ] } } } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "requestBody": { "required": true, "content": { "application/json": { "schema": { "description": "", "type": "object", "properties": { "date": { "type": "number" }, "slot": { "type": "integer" }, "position": { "type": "integer" }, "type": { "type": "string", "minLength": 1 }, "value": { "type": "object", "required": [ "ingredients" ], "properties": { "ingredients": { "type": "array", "uniqueItems": true, "minItems": 0, "items": { "type": "object", "properties": { "name": { "type": "string", "minLength": 1 } }, "required": [ "name" ] } } } } }, "required": [ "date", "slot", "position", "type", "value" ] }, "examples": { "example-1": { "value": { "date": 1589500800, "slot": 1, "position": 0, "type": "INGREDIENTS", "value": { "ingredients": [ { "name": "1 banana" } ] } } } } } } }, "parameters": [ { "name": "username", "description": "The username.", "schema": { "type": "string", "example": "dsky" }, "required": true, "style": "simple", "explode": false, "in": "path" }, { "$ref": "#/components/parameters/hash" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Add-to-Meal-Plan" }, "summary": "Add to Meal Plan", "description": "Add an item to the user's meal plan.", "operationId": "addToMealPlan", "deprecated": false, "tags": [ "meal planning" ] } }, "/mealplanner/{username}/items/{id}": { "delete": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "type": "object" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "name": "username", "description": "The username.", "schema": { "type": "string", "example": "dsky" }, "required": true, "style": "simple", "explode": false, "in": "path" }, { "name": "id", "description": "The shopping list item id.", "schema": { "type": "integer", "example": 15678 }, "required": true, "style": "simple", "explode": false, "in": "path" }, { "$ref": "#/components/parameters/hash" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Delete-from-Meal-Plan" }, "summary": "Delete from Meal Plan", "description": "Delete an item from the user's meal plan.", "operationId": "deleteFromMealPlan", "deprecated": false, "tags": [ "meal planning" ] } }, "/mealplanner/{username}/templates": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "description": "", "type": "object", "properties": { "templates": { "type": "array", "uniqueItems": true, "minItems": 0, "items": { "type": "object", "properties": { "id": { "type": "integer" }, "name": { "type": "string", "minLength": 1 } }, "required": [ "id", "name" ] } } }, "required": [ "templates" ] }, "examples": { "example-1": { "value": { "templates": [ { "id": 37, "name": "Busy Work Week" }, { "id": 480, "name": "Keto Meal Plan" }, { "id": 120, "name": "Not-So-Strict Paleo Meal Plan" }, { "id": 451, "name": "Week 1 Meal Plan" }, { "id": 581, "name": "Whole30 Meal Plan" } ] } } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "name": "username", "description": "The username.", "schema": { "type": "string", "example": "dsky" }, "required": true, "style": "simple", "explode": false, "in": "path" }, { "$ref": "#/components/parameters/hash" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Get-Meal-Plan-Templates" }, "summary": "Get Meal Plan Templates", "description": "Get meal plan templates from user or public ones.", "operationId": "getMealPlanTemplates", "deprecated": false, "tags": [ "meal planning" ] }, "post": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "description": "", "type": "object", "properties": { "name": { "type": "string", "minLength": 1 }, "items": { "type": "array", "uniqueItems": true, "minItems": 1, "items": { "type": "object", "properties": { "day": { "type": "integer" }, "slot": { "type": "integer" }, "position": { "type": "integer" }, "type": { "type": "string", "minLength": 1 }, "value": { "type": "object", "properties": { "id": { "type": "integer" }, "servings": { "type": "number" }, "title": { "type": "string", "minLength": 1 }, "imageType": { "type": "string", "minLength": 1 } } } }, "required": [ "day", "slot", "position", "type" ] } }, "publishAsPublic": { "type": "boolean" } }, "required": [ "name", "items", "publishAsPublic" ] }, "examples": { "example-1": { "value": { "name": "My new meal plan template", "items": [ { "day": 1, "slot": 1, "position": 0, "type": "RECIPE", "value": { "id": 296213, "servings": 2, "title": "Spinach Salad with Roasted Vegetables and Spiced Chickpea", "imageType": "jpg" } }, { "day": 2, "slot": 1, "position": 0, "type": "PRODUCT", "value": { "id": 183433, "servings": 1, "title": "Ahold Lasagna with Meat Sauce", "imageType": "jpg" } }, { "day": 3, "slot": 1, "position": 0, "type": "MENU_ITEM", "value": { "id": 378557, "servings": 1, "title": "Pizza 73 BBQ Steak Pizza, 9", "imageType": "png" } }, { "day": 4, "slot": 1, "position": 0, "type": "CUSTOM_FOOD", "value": { "id": 348, "servings": 1, "title": "Aldi Spicy Cashews - 30g", "image": "https://spoonacular.com/cdn/ingredients_100x100/cashews.jpg" } }, { "day": 5, "slot": 1, "position": 0, "type": "INGREDIENTS", "value": { "ingredients": [ { "name": "1 banana" }, { "name": "coffee", "unit": "cup", "amount": "1", "image": "https://spoonacular.com/cdn/ingredients_100x100/brewed-coffee.jpg" } ] } } ], "publishAsPublic": false } } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "name": "username", "description": "The username.", "schema": { "type": "string", "example": "dsky" }, "required": true, "style": "simple", "explode": false, "in": "path" }, { "name": "hash", "description": "The private hash for the username.", "schema": { "type": "string", "example": "4b5v4398573406" }, "required": true, "style": "form", "explode": false, "in": "query" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Add-Meal-Plan-Template" }, "summary": "Add Meal Plan Template", "description": "Add a meal plan template for a user.", "operationId": "addMealPlanTemplate", "deprecated": false, "tags": [ "meal planning" ] } }, "/mealplanner/{username}/templates/{id}": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "description": "", "type": "object", "properties": { "id": { "type": "integer" }, "name": { "type": "string", "minLength": 1 }, "days": { "type": "array", "uniqueItems": true, "minItems": 0, "items": { "type": "object", "properties": { "nutritionSummary": { "type": "object", "properties": { "nutrients": { "type": "array", "uniqueItems": true, "minItems": 0, "items": { "type": "object", "properties": { "name": { "type": "string", "minLength": 1 }, "amount": { "type": "number" }, "unit": { "type": "string", "minLength": 1 }, "percentDailyNeeds": { "type": "number" } }, "required": [ "name", "amount", "unit", "percentDailyNeeds" ] } } }, "required": [ "nutrients" ] }, "nutritionSummaryBreakfast": { "type": "object", "properties": { "nutrients": { "type": "array", "uniqueItems": true, "minItems": 0, "items": { "type": "object", "properties": { "name": { "type": "string", "minLength": 1 }, "amount": { "type": "number" }, "unit": { "type": "string", "minLength": 1 }, "percentDailyNeeds": { "type": "number" } }, "required": [ "name", "amount", "unit", "percentDailyNeeds" ] } } }, "required": [ "nutrients" ] }, "nutritionSummaryLunch": { "type": "object", "properties": { "nutrients": { "type": "array", "uniqueItems": true, "minItems": 0, "items": { "type": "object", "properties": { "name": { "type": "string", "minLength": 1 }, "amount": { "type": "number" }, "unit": { "type": "string", "minLength": 1 }, "percentDailyNeeds": { "type": "number" } }, "required": [ "name", "amount", "unit", "percentDailyNeeds" ] } } }, "required": [ "nutrients" ] }, "nutritionSummaryDinner": { "type": "object", "properties": { "nutrients": { "type": "array", "uniqueItems": true, "minItems": 0, "items": { "type": "object", "properties": { "name": { "type": "string", "minLength": 1 }, "amount": { "type": "number" }, "unit": { "type": "string", "minLength": 1 }, "percentDailyNeeds": { "type": "number" } }, "required": [ "name", "amount", "unit", "percentDailyNeeds" ] } } }, "required": [ "nutrients" ] }, "day": { "type": "string", "minLength": 1 }, "items": { "type": "array", "uniqueItems": true, "minItems": 0, "items": { "type": "object", "properties": { "id": { "type": "integer" }, "slot": { "type": "integer" }, "position": { "type": "integer" }, "type": { "type": "string", "minLength": 1 }, "value": { "type": "object", "properties": { "id": { "type": "number" }, "title": { "type": "string", "minLength": 1 }, "imageType": { "type": "string", "minLength": 1 } }, "required": [ "id", "title", "imageType" ] } }, "required": [ "id", "slot", "position", "type" ] } } }, "required": [ "day" ] } } }, "required": [ "id", "name", "days" ] }, "examples": { "example-1": { "value": { "id": 128, "name": "1500 Calorie Meal Plan", "days": [ { "nutritionSummary": { "nutrients": [ { "name": "Calories", "amount": 1293, "unit": "cal", "percentDailyNeeds": 65 }, { "name": "Fat", "amount": 65, "unit": "g", "percentDailyNeeds": 100 }, { "name": "Carbohydrates", "amount": 102, "unit": "g", "percentDailyNeeds": 34 }, { "name": "Protein", "amount": 83, "unit": "g", "percentDailyNeeds": 166 } ] }, "nutritionSummaryBreakfast": { "nutrients": [ { "name": "Calories", "amount": 132, "unit": "cal", "percentDailyNeeds": 7 }, { "name": "Fat", "amount": 3, "unit": "g", "percentDailyNeeds": 4 }, { "name": "Carbohydrates", "amount": 25, "unit": "g", "percentDailyNeeds": 8 }, { "name": "Protein", "amount": 3, "unit": "g", "percentDailyNeeds": 5 } ] }, "nutritionSummaryLunch": { "nutrients": [ { "name": "Calories", "amount": 455, "unit": "cal", "percentDailyNeeds": 23 }, { "name": "Fat", "amount": 34, "unit": "g", "percentDailyNeeds": 52 }, { "name": "Carbohydrates", "amount": 1, "unit": "g", "percentDailyNeeds": 0 }, { "name": "Protein", "amount": 35, "unit": "g", "percentDailyNeeds": 70 } ] }, "nutritionSummaryDinner": { "nutrients": [ { "name": "Calories", "amount": 706, "unit": "cal", "percentDailyNeeds": 35 }, { "name": "Fat", "amount": 29, "unit": "g", "percentDailyNeeds": 45 }, { "name": "Carbohydrates", "amount": 76, "unit": "g", "percentDailyNeeds": 25 }, { "name": "Protein", "amount": 46, "unit": "g", "percentDailyNeeds": 91 } ] }, "day": "1", "items": [ { "id": 2403, "slot": 1, "position": 0, "type": "RECIPE", "value": { "id": 630657, "title": "Double Chocolate Protein Cookies", "imageType": "jpg" } }, { "id": 2404, "slot": 1, "position": 0, "type": "INGREDIENTS", "value": { "id": 785, "name": "", "title": "orange", "servings": "1", "imageType": "jpg", "ingredients": [ { "name": "orange", "image": "https://spoonacular.com/cdn/ingredients_100x100/orange.jpg", "amount": 1, "unit": "" } ] } }, { "id": 2405, "slot": 2, "position": 0, "type": "RECIPE", "value": { "id": 296213, "title": "Spinach Salad with Roasted Vegetables and Spiced Chickpea", "imageType": "jpg" } }, { "id": 2406, "slot": 3, "position": 0, "type": "RECIPE", "value": { "id": 237677, "title": "Chicken Parmesan with Spaghetti", "imageType": "jpg" } }, { "id": 2407, "slot": 3, "position": 0, "type": "INGREDIENTS", "value": { "id": 787, "title": "broccoli", "name": "", "servings": "1", "imageType": "jpg", "ingredients": [ { "name": "broccoli", "image": "https://spoonacular.com/cdn/ingredients_100x100/broccoli.jpg", "amount": 1, "unit": "cup" } ] } }, { "id": 2408, "slot": 3, "position": 0, "type": "PRODUCT", "value": { "id": 146191, "title": "Lindt Dark Chocolate", "imageType": "jpg" } } ] }, { "nutritionSummary": { "nutrients": [ { "name": "Calories", "amount": 1386, "unit": "cal", "percentDailyNeeds": 69 }, { "name": "Fat", "amount": 66, "unit": "g", "percentDailyNeeds": 102 }, { "name": "Carbohydrates", "amount": 162, "unit": "g", "percentDailyNeeds": 54 }, { "name": "Protein", "amount": 48, "unit": "g", "percentDailyNeeds": 96 } ] }, "nutritionSummaryBreakfast": { "nutrients": [ { "name": "Calories", "amount": 239, "unit": "cal", "percentDailyNeeds": 12 }, { "name": "Fat", "amount": 11, "unit": "g", "percentDailyNeeds": 17 }, { "name": "Carbohydrates", "amount": 34, "unit": "g", "percentDailyNeeds": 11 }, { "name": "Protein", "amount": 5, "unit": "g", "percentDailyNeeds": 9 } ] }, "nutritionSummaryLunch": { "nutrients": [ { "name": "Calories", "amount": 732, "unit": "cal", "percentDailyNeeds": 37 }, { "name": "Fat", "amount": 33, "unit": "g", "percentDailyNeeds": 51 }, { "name": "Carbohydrates", "amount": 91, "unit": "g", "percentDailyNeeds": 30 }, { "name": "Protein", "amount": 22, "unit": "g", "percentDailyNeeds": 44 } ] }, "nutritionSummaryDinner": { "nutrients": [ { "name": "Calories", "amount": 414, "unit": "cal", "percentDailyNeeds": 21 }, { "name": "Fat", "amount": 22, "unit": "g", "percentDailyNeeds": 33 }, { "name": "Carbohydrates", "amount": 37, "unit": "g", "percentDailyNeeds": 12 }, { "name": "Protein", "amount": 21, "unit": "g", "percentDailyNeeds": 43 } ] }, "day": "2", "items": [ { "id": 2409, "slot": 1, "position": 0, "type": "PRODUCT", "value": { "id": 101999, "title": "Greek Gods Yogurt", "imageType": "jpg" } }, { "id": 2410, "slot": 1, "position": 0, "type": "INGREDIENTS", "value": { "id": 457, "name": "", "title": "berries", "servings": "1", "imageType": "jpg", "ingredients": [ { "name": "berries", "image": "https://spoonacular.com/cdn/ingredients_100x100/berries-mixed.jpg", "amount": 1, "unit": "cup" } ] } }, { "id": 2411, "slot": 2, "position": 0, "type": "RECIPE", "value": { "id": 516377, "title": "Southwest Quinoa Salad", "imageType": "jpg" } }, { "id": 2412, "slot": 3, "position": 0, "type": "RECIPE", "value": { "id": 247683, "title": "Pesto Caprese Omelette", "imageType": "jpg" } }, { "id": 2413, "slot": 3, "position": 0, "type": "RECIPE", "value": { "id": 484337, "title": "One Ingredient Banana Ice Cream", "imageType": "jpg" } } ] }, { "nutritionSummary": { "nutrients": [ { "name": "Calories", "amount": 1589, "unit": "cal", "percentDailyNeeds": 79 }, { "name": "Fat", "amount": 77, "unit": "g", "percentDailyNeeds": 118 }, { "name": "Carbohydrates", "amount": 158, "unit": "g", "percentDailyNeeds": 53 }, { "name": "Protein", "amount": 84, "unit": "g", "percentDailyNeeds": 168 } ] }, "nutritionSummaryBreakfast": { "nutrients": [ { "name": "Calories", "amount": 472, "unit": "cal", "percentDailyNeeds": 24 }, { "name": "Fat", "amount": 14, "unit": "g", "percentDailyNeeds": 21 }, { "name": "Carbohydrates", "amount": 62, "unit": "g", "percentDailyNeeds": 21 }, { "name": "Protein", "amount": 27, "unit": "g", "percentDailyNeeds": 54 } ] }, "nutritionSummaryLunch": { "nutrients": [ { "name": "Calories", "amount": 568, "unit": "cal", "percentDailyNeeds": 28 }, { "name": "Fat", "amount": 45, "unit": "g", "percentDailyNeeds": 69 }, { "name": "Carbohydrates", "amount": 31, "unit": "g", "percentDailyNeeds": 10 }, { "name": "Protein", "amount": 18, "unit": "g", "percentDailyNeeds": 36 } ] }, "nutritionSummaryDinner": { "nutrients": [ { "name": "Calories", "amount": 549, "unit": "cal", "percentDailyNeeds": 27 }, { "name": "Fat", "amount": 18, "unit": "g", "percentDailyNeeds": 27 }, { "name": "Carbohydrates", "amount": 65, "unit": "g", "percentDailyNeeds": 22 }, { "name": "Protein", "amount": 39, "unit": "g", "percentDailyNeeds": 78 } ] }, "day": "3", "items": [ { "id": 2414, "slot": 1, "position": 0, "type": "RECIPE", "value": { "id": 157259, "title": "Cocoa Protein Pancakes", "imageType": "jpg" } }, { "id": 2415, "slot": 1, "position": 0, "type": "INGREDIENTS", "value": { "id": 878, "name": "", "title": "orange", "servings": "1", "imageType": "jpg", "ingredients": [ { "name": "orange", "image": "https://spoonacular.com/cdn/ingredients_100x100/orange.jpg", "amount": 1, "unit": "" } ] } }, { "id": 2416, "slot": 2, "position": 0, "type": "RECIPE", "value": { "id": 535856, "title": "BLT Chopped Salad", "imageType": "jpg" } }, { "id": 2417, "slot": 2, "position": 0, "type": "PRODUCT", "value": { "id": 71144, "title": "Kind Plus Fruit & Nut Bar - Almond Walnut Macadamia with Peanuts Plus Protein", "imageType": "jpg" } }, { "id": 2418, "slot": 3, "position": 0, "type": "RECIPE", "value": { "id": 519197, "title": "Zesty Sriracha Shrimp and Quinoa", "imageType": "png" } }, { "id": 2419, "slot": 3, "position": 0, "type": "PRODUCT", "value": { "id": 163427, "title": "Green Giant Valley Fresh Steamers - Select Sugar Snap Peas", "imageType": "jpg" } }, { "id": 2420, "slot": 3, "position": 0, "type": "PRODUCT", "value": { "id": 146191, "title": "Lindt Dark Chocolate", "imageType": "jpg" } } ] }, { "nutritionSummary": { "nutrients": [ { "name": "Calories", "amount": 1343, "unit": "cal", "percentDailyNeeds": 67 }, { "name": "Fat", "amount": 70, "unit": "g", "percentDailyNeeds": 108 }, { "name": "Carbohydrates", "amount": 123, "unit": "g", "percentDailyNeeds": 41 }, { "name": "Protein", "amount": 61, "unit": "g", "percentDailyNeeds": 122 } ] }, "nutritionSummaryBreakfast": { "nutrients": [ { "name": "Calories", "amount": 239, "unit": "cal", "percentDailyNeeds": 12 }, { "name": "Fat", "amount": 11, "unit": "g", "percentDailyNeeds": 17 }, { "name": "Carbohydrates", "amount": 34, "unit": "g", "percentDailyNeeds": 11 }, { "name": "Protein", "amount": 5, "unit": "g", "percentDailyNeeds": 9 } ] }, "nutritionSummaryLunch": { "nutrients": [ { "name": "Calories", "amount": 406, "unit": "cal", "percentDailyNeeds": 20 }, { "name": "Fat", "amount": 17, "unit": "g", "percentDailyNeeds": 26 }, { "name": "Carbohydrates", "amount": 56, "unit": "g", "percentDailyNeeds": 19 }, { "name": "Protein", "amount": 10, "unit": "g", "percentDailyNeeds": 21 } ] }, "nutritionSummaryDinner": { "nutrients": [ { "name": "Calories", "amount": 698, "unit": "cal", "percentDailyNeeds": 35 }, { "name": "Fat", "amount": 43, "unit": "g", "percentDailyNeeds": 66 }, { "name": "Carbohydrates", "amount": 34, "unit": "g", "percentDailyNeeds": 11 }, { "name": "Protein", "amount": 46, "unit": "g", "percentDailyNeeds": 92 } ] }, "day": "4", "items": [ { "id": 2421, "slot": 1, "position": 0, "type": "PRODUCT", "value": { "id": 101999, "title": "Greek Gods Yogurt", "imageType": "jpg" } }, { "id": 2422, "slot": 1, "position": 0, "type": "INGREDIENTS", "value": { "id": 877, "name": "", "title": "berries", "servings": "1", "imageType": "jpg", "ingredients": [ { "name": "berries", "image": "https://spoonacular.com/cdn/ingredients_100x100/berries-mixed.jpg", "amount": 1, "unit": "cup" } ] } }, { "id": 2423, "slot": 2, "position": 0, "type": "RECIPE", "value": { "id": 535563, "title": "Black Bean Quinoa Salad", "imageType": "jpg" } }, { "id": 2424, "slot": 3, "position": 0, "type": "RECIPE", "value": { "id": 622598, "title": "Pittata - Pizza Frittata", "imageType": "jpg" } }, { "id": 2425, "slot": 3, "position": 0, "type": "RECIPE", "value": { "id": 484337, "title": "One Ingredient Banana Ice Cream", "imageType": "jpg" } } ] }, { "nutritionSummary": { "nutrients": [ { "name": "Calories", "amount": 1247, "unit": "cal", "percentDailyNeeds": 62 }, { "name": "Fat", "amount": 61, "unit": "g", "percentDailyNeeds": 95 }, { "name": "Carbohydrates", "amount": 103, "unit": "g", "percentDailyNeeds": 34 }, { "name": "Protein", "amount": 78, "unit": "g", "percentDailyNeeds": 156 } ] }, "nutritionSummaryBreakfast": { "nutrients": [ { "name": "Calories", "amount": 295, "unit": "cal", "percentDailyNeeds": 15 }, { "name": "Fat", "amount": 12, "unit": "g", "percentDailyNeeds": 19 }, { "name": "Carbohydrates", "amount": 42, "unit": "g", "percentDailyNeeds": 14 }, { "name": "Protein", "amount": 11, "unit": "g", "percentDailyNeeds": 23 } ] }, "nutritionSummaryLunch": { "nutrients": [ { "name": "Calories", "amount": 455, "unit": "cal", "percentDailyNeeds": 23 }, { "name": "Fat", "amount": 34, "unit": "g", "percentDailyNeeds": 52 }, { "name": "Carbohydrates", "amount": 1, "unit": "g", "percentDailyNeeds": 0 }, { "name": "Protein", "amount": 35, "unit": "g", "percentDailyNeeds": 70 } ] }, "nutritionSummaryDinner": { "nutrients": [ { "name": "Calories", "amount": 497, "unit": "cal", "percentDailyNeeds": 25 }, { "name": "Fat", "amount": 15, "unit": "g", "percentDailyNeeds": 24 }, { "name": "Carbohydrates", "amount": 60, "unit": "g", "percentDailyNeeds": 20 }, { "name": "Protein", "amount": 32, "unit": "g", "percentDailyNeeds": 63 } ] }, "day": "5", "items": [ { "id": 2426, "slot": 1, "position": 0, "type": "PRODUCT", "value": { "id": 71144, "title": "Kind Plus Fruit & Nut Bar - Almond Walnut Macadamia with Peanuts Plus Protein", "imageType": "jpg" } }, { "id": 2427, "slot": 1, "position": 0, "type": "INGREDIENTS", "value": { "id": 877, "name": "", "title": "banana", "servings": "1", "imageType": "jpg", "ingredients": [ { "name": "banana", "image": "https://spoonacular.com/cdn/ingredients_100x100/bananas.jpg", "amount": 1, "unit": "" } ] } }, { "id": 2428, "slot": 2, "position": 0, "type": "RECIPE", "value": { "id": 296213, "title": "Spinach Salad with Roasted Vegetables and Spiced Chickpea", "imageType": "jpg" } }, { "id": 2429, "slot": 3, "position": 0, "type": "RECIPE", "value": { "id": 497301, "title": "Shrimp Scampi", "imageType": "jpg" } }, { "id": 2430, "slot": 3, "position": 0, "type": "RECIPE", "value": { "id": 581021, "title": "Black Bean Brownies: Fudgy Fun", "imageType": "jpg" } } ] }, { "nutritionSummary": { "nutrients": [ { "name": "Calories", "amount": 1683, "unit": "cal", "percentDailyNeeds": 84 }, { "name": "Fat", "amount": 68, "unit": "g", "percentDailyNeeds": 105 }, { "name": "Carbohydrates", "amount": 139, "unit": "g", "percentDailyNeeds": 46 }, { "name": "Protein", "amount": 106, "unit": "g", "percentDailyNeeds": 212 } ] }, "nutritionSummaryBreakfast": { "nutrients": [ { "name": "Calories", "amount": 490, "unit": "cal", "percentDailyNeeds": 24 }, { "name": "Fat", "amount": 15, "unit": "g", "percentDailyNeeds": 23 }, { "name": "Carbohydrates", "amount": 65, "unit": "g", "percentDailyNeeds": 22 }, { "name": "Protein", "amount": 26, "unit": "g", "percentDailyNeeds": 53 } ] }, "nutritionSummaryLunch": { "nutrients": [ { "name": "Calories", "amount": 378, "unit": "cal", "percentDailyNeeds": 19 }, { "name": "Fat", "amount": 33, "unit": "g", "percentDailyNeeds": 51 }, { "name": "Carbohydrates", "amount": 16, "unit": "g", "percentDailyNeeds": 5 }, { "name": "Protein", "amount": 8, "unit": "g", "percentDailyNeeds": 16 } ] }, "nutritionSummaryDinner": { "nutrients": [ { "name": "Calories", "amount": 816, "unit": "cal", "percentDailyNeeds": 41 }, { "name": "Fat", "amount": 21, "unit": "g", "percentDailyNeeds": 32 }, { "name": "Carbohydrates", "amount": 58, "unit": "g", "percentDailyNeeds": 19 }, { "name": "Protein", "amount": 72, "unit": "g", "percentDailyNeeds": 144 } ] }, "day": "6", "items": [ { "id": 2431, "slot": 1, "position": 0, "type": "RECIPE", "value": { "id": 157259, "title": "Cocoa Protein Pancakes", "imageType": "jpg" } }, { "id": 2432, "slot": 1, "position": 0, "type": "INGREDIENTS", "value": { "id": 877, "name": "", "title": "berries", "servings": "1", "imageType": "jpg", "ingredients": [ { "name": "berries", "image": "https://spoonacular.com/cdn/ingredients_100x100/berries-mixed.jpg", "amount": 1, "unit": "cup" } ] } }, { "id": 2433, "slot": 2, "position": 0, "type": "RECIPE", "value": { "id": 535856, "title": "BLT Chopped Salad", "imageType": "jpg" } }, { "id": 2434, "slot": 3, "position": 0, "type": "RECIPE", "value": { "id": 149425, "title": "Herb and Cheddar Cordon Bleu", "imageType": "jpg" } }, { "id": 2435, "slot": 3, "position": 0, "type": "INGREDIENTS", "value": { "id": 877, "name": "", "title": "sprouts", "servings": "1", "imageType": "jpg", "ingredients": [ { "name": "brussels sprouts", "image": "https://spoonacular.com/cdn/ingredients_100x100/brussels-sprouts.jpg", "amount": 1, "unit": "cup" } ] } }, { "id": 2436, "slot": 3, "position": 0, "type": "INGREDIENTS", "value": { "id": 877, "name": "", "title": "wine", "servings": "1", "imageType": "jpg", "ingredients": [ { "name": "wine", "image": "https://spoonacular.com/cdn/ingredients_100x100/white-wine.jpg", "amount": 5, "unit": "ounces" } ] } } ] }, { "nutritionSummary": { "nutrients": [ { "name": "Calories", "amount": 1442, "unit": "cal", "percentDailyNeeds": 72 }, { "name": "Fat", "amount": 69, "unit": "g", "percentDailyNeeds": 106 }, { "name": "Carbohydrates", "amount": 147, "unit": "g", "percentDailyNeeds": 49 }, { "name": "Protein", "amount": 73, "unit": "g", "percentDailyNeeds": 147 } ] }, "nutritionSummaryBreakfast": { "nutrients": [ { "name": "Calories", "amount": 444, "unit": "cal", "percentDailyNeeds": 22 }, { "name": "Fat", "amount": 12, "unit": "g", "percentDailyNeeds": 19 }, { "name": "Carbohydrates", "amount": 51, "unit": "g", "percentDailyNeeds": 17 }, { "name": "Protein", "amount": 38, "unit": "g", "percentDailyNeeds": 76 } ] }, "nutritionSummaryLunch": { "nutrients": [ { "name": "Calories", "amount": 406, "unit": "cal", "percentDailyNeeds": 20 }, { "name": "Fat", "amount": 17, "unit": "g", "percentDailyNeeds": 26 }, { "name": "Carbohydrates", "amount": 56, "unit": "g", "percentDailyNeeds": 19 }, { "name": "Protein", "amount": 10, "unit": "g", "percentDailyNeeds": 21 } ] }, "nutritionSummaryDinner": { "nutrients": [ { "name": "Calories", "amount": 593, "unit": "cal", "percentDailyNeeds": 30 }, { "name": "Fat", "amount": 40, "unit": "g", "percentDailyNeeds": 62 }, { "name": "Carbohydrates", "amount": 41, "unit": "g", "percentDailyNeeds": 14 }, { "name": "Protein", "amount": 25, "unit": "g", "percentDailyNeeds": 50 } ] }, "day": "7", "items": [ { "id": 2437, "slot": 1, "position": 0, "type": "RECIPE", "value": { "id": 619085, "title": "Protein Packed Healthy French Toast with Chocolate and Peanut Butter {Super Simple, Whole Wheat}", "imageType": "jpg" } }, { "id": 2438, "slot": 1, "position": 0, "type": "INGREDIENTS", "value": { "id": 877, "name": "", "title": "orange", "servings": "1", "imageType": "jpg", "ingredients": [ { "name": "orange", "image": "https://spoonacular.com/cdn/ingredients_100x100/orange.jpg", "amount": 1, "unit": "" } ] } }, { "id": 2439, "slot": 2, "position": 0, "type": "RECIPE", "value": { "id": 535563, "title": "Black Bean Quinoa Salad", "imageType": "jpg" } }, { "id": 2440, "slot": 3, "position": 0, "type": "RECIPE", "value": { "id": 590570, "title": "Asian Beef Lettuce Wraps", "imageType": "jpg" } }, { "id": 2441, "slot": 3, "position": 0, "type": "PRODUCT", "value": { "id": 146191, "title": "Lindt Dark Chocolate", "imageType": "jpg" } } ] } ] } } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "name": "username", "description": "The username.", "schema": { "type": "string", "example": "dsky" }, "required": true, "style": "simple", "explode": false, "in": "path" }, { "name": "id", "description": "The shopping list item id.", "schema": { "type": "integer", "example": 15678 }, "required": true, "style": "simple", "explode": false, "in": "path" }, { "$ref": "#/components/parameters/hash" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Get-Meal-Plan-Template" }, "summary": "Get Meal Plan Template", "description": "Get information about a meal plan template.", "operationId": "getMealPlanTemplate", "deprecated": false, "tags": [ "meal planning" ] }, "delete": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "type": "object" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "name": "username", "description": "The username.", "schema": { "type": "string", "example": "dsky" }, "required": true, "style": "simple", "explode": false, "in": "path" }, { "name": "id", "description": "The shopping list item id.", "schema": { "type": "integer", "example": 15678 }, "required": true, "style": "simple", "explode": false, "in": "path" }, { "name": "hash", "description": "The private hash for the username.", "schema": { "type": "string", "example": "4b5v4398573406" }, "required": true, "style": "form", "explode": false, "in": "query" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Delete-Meal-Plan-Template" }, "summary": "Delete Meal Plan Template", "description": "Delete a meal plan template for a user.", "operationId": "deleteMealPlanTemplate", "deprecated": false, "tags": [ "meal planning" ] } }, "/mealplanner/{username}/shopping-list": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "description": "", "type": "object", "properties": { "aisles": { "type": "array", "uniqueItems": true, "minItems": 0, "items": { "type": "object", "properties": { "aisle": { "type": "string", "minLength": 1 }, "items": { "type": "array", "uniqueItems": true, "minItems": 0, "items": { "type": "object", "properties": { "id": { "type": "integer" }, "name": { "type": "string", "minLength": 1 }, "measures": { "type": "object", "properties": { "original": { "type": "object", "required": [ "amount", "unit" ], "properties": { "amount": { "type": "number" }, "unit": { "type": "string", "minLength": 1 } } }, "metric": { "type": "object", "required": [ "amount", "unit" ], "properties": { "amount": { "type": "number" }, "unit": { "type": "string", "minLength": 1 } } }, "us": { "type": "object", "required": [ "amount", "unit" ], "properties": { "amount": { "type": "number" }, "unit": { "type": "string", "minLength": 1 } } } }, "required": [ "original", "metric", "us" ] }, "pantryItem": { "type": "boolean" }, "aisle": { "type": "string", "minLength": 1 }, "cost": { "type": "number" }, "ingredientId": { "type": "integer" } }, "required": [ "id", "name", "pantryItem", "aisle", "cost", "ingredientId" ] } } }, "required": [ "aisle" ] } }, "cost": { "type": "number" }, "startDate": { "type": "number" }, "endDate": { "type": "number" } }, "required": [ "aisles", "cost", "startDate", "endDate" ] }, "examples": { "example-1": { "value": { "aisles": [ { "aisle": "Baking", "items": [ { "id": 115388, "name": "baking powder", "measures": { "original": { "amount": 1, "unit": "package" }, "metric": { "amount": 1, "unit": "pkg" }, "us": { "amount": 1, "unit": "pkg" } }, "pantryItem": false, "aisle": "Baking", "cost": 0.71, "ingredientId": 18369 } ] } ], "cost": 1.43, "startDate": 1588291200, "endDate": 1588896000 } } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "name": "username", "description": "The username.", "schema": { "type": "string", "example": "dsky" }, "required": true, "style": "simple", "explode": false, "in": "path" }, { "$ref": "#/components/parameters/hash" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Get-Shopping-List" }, "summary": "Get Shopping List", "description": "Get the current shopping list for the given user.", "operationId": "getShoppingList", "deprecated": false, "tags": [ "meal planning" ] } }, "/mealplanner/{username}/shopping-list/{start_date}/{end_date}": { "post": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "description": "", "type": "object", "properties": { "aisles": { "type": "array", "uniqueItems": true, "minItems": 0, "items": { "type": "object", "properties": { "aisle": { "type": "string", "minLength": 1 }, "items": { "type": "array", "uniqueItems": true, "minItems": 0, "items": { "type": "object", "properties": { "id": { "type": "integer" }, "name": { "type": "string", "minLength": 1 }, "measures": { "type": "object", "properties": { "original": { "type": "object", "required": [ "amount", "unit" ], "properties": { "amount": { "type": "number" }, "unit": { "type": "string", "minLength": 1 } } }, "metric": { "type": "object", "required": [ "amount", "unit" ], "properties": { "amount": { "type": "number" }, "unit": { "type": "string", "minLength": 1 } } }, "us": { "type": "object", "required": [ "amount", "unit" ], "properties": { "amount": { "type": "number" }, "unit": { "type": "string", "minLength": 1 } } } }, "required": [ "original", "metric", "us" ] }, "pantryItem": { "type": "boolean" }, "aisle": { "type": "string", "minLength": 1 }, "cost": { "type": "number" }, "ingredientId": { "type": "integer" } }, "required": [ "id", "name", "pantryItem", "aisle", "cost", "ingredientId" ] } } }, "required": [ "aisle" ] } }, "cost": { "type": "number" }, "startDate": { "type": "number" }, "endDate": { "type": "number" } }, "required": [ "aisles", "cost", "startDate", "endDate" ] }, "examples": { "example-1": { "value": { "aisles": [ { "aisle": "Baking", "items": [ { "id": 115388, "name": "baking powder", "measures": { "original": { "amount": 1, "unit": "package" }, "metric": { "amount": 1, "unit": "pkg" }, "us": { "amount": 1, "unit": "pkg" } }, "pantryItem": false, "aisle": "Baking", "cost": 0.71, "ingredientId": 18369 } ] } ], "cost": 0.71, "startDate": 1588291200, "endDate": 1588896000 } } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "name": "username", "description": "The username.", "schema": { "type": "string", "example": "dsky" }, "required": true, "style": "simple", "explode": false, "in": "path" }, { "name": "start_date", "description": "The start date in the format yyyy-mm-dd.", "schema": { "type": "string", "example": "2020-06-01" }, "required": true, "style": "simple", "explode": false, "in": "path" }, { "name": "end_date", "description": "The end date in the format yyyy-mm-dd.", "schema": { "type": "string", "example": "2020-06-07" }, "required": true, "style": "simple", "explode": false, "in": "path" }, { "$ref": "#/components/parameters/hash" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Generate-Shopping-List" }, "summary": "Generate Shopping List", "description": "Generate the shopping list for a user from the meal planner in a given time frame.", "operationId": "generateShoppingList", "deprecated": false, "tags": [ "meal planning" ] } }, "/users/connect": { "post": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "description": "", "type": "object", "properties": { "username": { "type": "string", "minLength": 1 }, "hash": { "type": "string", "minLength": 1 } }, "required": [ "username", "hash" ] }, "examples": { "example-1": { "value": { "username": "api_123_user", "hash": "q572587bq2405724q05" } } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "requestBody": { "required": true, "content": { "application/json": { "schema": { "description": "", "type": "object", "properties": { "username": { "type": "string", "minLength": 1 }, "firstName": { "type": "string", "minLength": 1 }, "lastName": { "type": "string", "minLength": 1 }, "email": { "type": "string", "minLength": 1 } }, "required": [ "username", "firstName", "lastName", "email" ] }, "examples": { "example-1": { "value": { "username": "your user's name", "firstName": "your user's first name", "lastName": "your user's last name", "email": "your user's email" } } } } } }, "parameters": [], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Connect-User" }, "summary": "Connect User", "description": "In order to call user-specific endpoints, you need to connect your app's users to spoonacular users.", "operationId": "connectUser", "deprecated": false, "tags": [ "meal planning" ] } }, "/mealplanner/{username}/shopping-list/items": { "post": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "description": "", "type": "object", "properties": { "aisles": { "type": "array", "uniqueItems": true, "minItems": 0, "items": { "type": "object", "properties": { "aisle": { "type": "string", "minLength": 1 }, "items": { "type": "array", "uniqueItems": true, "minItems": 0, "items": { "type": "object", "properties": { "id": { "type": "integer" }, "name": { "type": "string", "minLength": 1 }, "measures": { "type": "object", "properties": { "original": { "type": "object", "required": [ "amount", "unit" ], "properties": { "amount": { "type": "number" }, "unit": { "type": "string", "minLength": 1 } } }, "metric": { "type": "object", "required": [ "amount", "unit" ], "properties": { "amount": { "type": "number" }, "unit": { "type": "string", "minLength": 1 } } }, "us": { "type": "object", "required": [ "amount", "unit" ], "properties": { "amount": { "type": "number" }, "unit": { "type": "string", "minLength": 1 } } } }, "required": [ "original", "metric", "us" ] }, "pantryItem": { "type": "boolean" }, "aisle": { "type": "string", "minLength": 1 }, "cost": { "type": "number" }, "ingredientId": { "type": "integer" } }, "required": [ "id", "name", "pantryItem", "aisle", "cost", "ingredientId" ] } } }, "required": [ "aisle" ] } }, "cost": { "type": "number" }, "startDate": { "type": "number" }, "endDate": { "type": "number" } }, "required": [ "aisles", "cost", "startDate", "endDate" ] }, "examples": { "example-1": { "value": { "aisles": [ { "aisle": "Baking", "items": [ { "id": 115388, "name": "baking powder", "measures": { "original": { "amount": 1, "unit": "package" }, "metric": { "amount": 1, "unit": "pkg" }, "us": { "amount": 1, "unit": "pkg" } }, "pantryItem": false, "aisle": "Baking", "cost": 0.71, "ingredientId": 18369 } ] } ], "cost": 0.71, "startDate": 1588291200, "endDate": 1588896000 } } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "requestBody": { "required": true, "content": { "application/json": { "schema": { "description": "", "type": "object", "properties": { "item": { "type": "string", "minLength": 1 }, "aisle": { "type": "string", "minLength": 1 }, "parse": { "type": "boolean" } }, "required": [ "item", "aisle", "parse" ] }, "examples": { "example-1": { "value": { "item": "1 package baking powder", "aisle": "Baking", "parse": true } } } } } }, "parameters": [ { "name": "username", "description": "The username.", "schema": { "type": "string", "example": "dsky" }, "required": true, "style": "simple", "explode": false, "in": "path" }, { "$ref": "#/components/parameters/hash" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Add-to-Shopping-List" }, "summary": "Add to Shopping List", "description": "Add an item to the current shopping list of a user.", "operationId": "addToShoppingList", "deprecated": false, "tags": [ "meal planning" ] } }, "/mealplanner/{username}/shopping-list/items/{id}": { "delete": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "type": "object" } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "name": "username", "description": "The username.", "schema": { "type": "string", "example": "dsky" }, "required": true, "style": "simple", "explode": false, "in": "path" }, { "name": "id", "description": "The shopping list item id.", "schema": { "type": "integer", "example": 15678 }, "required": true, "style": "simple", "explode": false, "in": "path" }, { "$ref": "#/components/parameters/hash" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Delete-from-Shopping-List" }, "summary": "Delete from Shopping List", "description": "Delete an item from the current shopping list of the user.", "operationId": "deleteFromShoppingList", "deprecated": false, "tags": [ "meal planning" ] } }, "/food/restaurants/search": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "type": "object", "properties": { "restaurants": { "type": "array", "items": { "type": "object", "properties": { "_id": { "type": "string" }, "name": { "type": "string" }, "phone_number": { "type": "integer" }, "address": { "type": "object", "properties": { "street_addr": { "type": "string" }, "city": { "type": "string" }, "state": { "type": "string" }, "zipcode": { "type": "string" }, "country": { "type": "string" }, "lat": { "type": "number" }, "lon": { "type": "number" }, "street_addr_2": { "type": "string" }, "latitude": { "type": "number" }, "longitude": { "type": "number" } } }, "type": { "type": "string" }, "description": { "type": "string" }, "local_hours": { "type": "object", "properties": { "operational": { "type": "object", "properties": { "Monday": { "type": "string" }, "Tuesday": { "type": "string" }, "Wednesday": { "type": "string" }, "Thursday": { "type": "string" }, "Friday": { "type": "string" }, "Saturday": { "type": "string" }, "Sunday": { "type": "string" } } }, "delivery": { "type": "object", "properties": { "Monday": { "type": "string" }, "Tuesday": { "type": "string" }, "Wednesday": { "type": "string" }, "Thursday": { "type": "string" }, "Friday": { "type": "string" }, "Saturday": { "type": "string" }, "Sunday": { "type": "string" } } }, "pickup": { "type": "object", "properties": { "Monday": { "type": "string" }, "Tuesday": { "type": "string" }, "Wednesday": { "type": "string" }, "Thursday": { "type": "string" }, "Friday": { "type": "string" }, "Saturday": { "type": "string" }, "Sunday": { "type": "string" } } }, "dine_in": { "type": "object", "properties": { "Monday": { "type": "string" }, "Tuesday": { "type": "string" }, "Wednesday": { "type": "string" }, "Thursday": { "type": "string" }, "Friday": { "type": "string" }, "Saturday": { "type": "string" }, "Sunday": { "type": "string" } } } } }, "cuisines": { "type": "array", "items": { "type": "string" } }, "food_photos": { "type": "array", "items": { "type": "string" } }, "logo_photos": { "type": "array", "items": { "type": "string" } }, "store_photos": { "type": "array", "items": { "type": "string" } }, "dollar_signs": { "type": "integer" }, "pickup_enabled": { "type": "boolean" }, "delivery_enabled": { "type": "boolean" }, "is_open": { "type": "boolean" }, "offers_first_party_delivery": { "type": "boolean" }, "offers_third_party_delivery": { "type": "boolean" }, "miles": { "type": "number" }, "weighted_rating_value": { "type": "number" }, "aggregated_rating_count": { "type": "integer" } } } } } }, "examples": { "Example 1": { "value": { "restaurants": [ { "_id": "a8b49c84-a92d-4f06-802e-467af49feaf0", "name": "South Beach Cafe", "phone_number": 14159741115, "address": { "street_addr": "800 The Embarcadero", "city": "San Francisco", "state": "CA", "zipcode": "94107", "country": "US", "lat": 37.78129959, "lon": -122.38869477, "street_addr_2": "", "latitude": 37.78129959, "longitude": -122.38869477 }, "type": "restaurant", "description": "Italian, Pizza", "local_hours": { "operational": { "Monday": "07:00AM - 09:00PM", "Tuesday": "07:00AM - 09:00PM", "Wednesday": "07:00AM - 09:00PM", "Thursday": "07:00AM - 09:00PM", "Friday": "07:00AM - 09:00PM", "Saturday": "08:00AM - 09:00PM", "Sunday": "08:00AM - 09:00PM" }, "delivery": { "Monday": "07:00AM - 09:00PM", "Tuesday": "07:00AM - 09:00PM", "Wednesday": "07:00AM - 09:00PM", "Thursday": "07:00AM - 09:00PM", "Friday": "07:00AM - 09:00PM", "Saturday": "08:00AM - 09:00PM", "Sunday": "08:00AM - 09:00PM" }, "pickup": { "Monday": "07:00AM - 09:00PM", "Tuesday": "07:00AM - 09:00PM", "Wednesday": "07:00AM - 09:00PM", "Thursday": "07:00AM - 09:00PM", "Friday": "07:00AM - 09:00PM", "Saturday": "08:00AM - 09:00PM", "Sunday": "08:00AM - 09:00PM" }, "dine_in": { "Monday": "07:00AM - 09:00PM", "Tuesday": "07:00AM - 09:00PM", "Wednesday": "07:00AM - 09:00PM", "Thursday": "07:00AM - 09:00PM", "Friday": "07:00AM - 09:00PM", "Saturday": "08:00AM - 09:00PM", "Sunday": "08:00AM - 09:00PM" } }, "cuisines": [ "Breakfast", "Dinner", "Italian", "Lunch", "Pickup", "Pizza", "Salads", "Sandwich", "Sandwiches", "Takeout" ], "food_photos": [ "https://cdn-img.mealme.ai/f3d0e396f1b552927092bafa65ef2cc4e8b57c22/68747470733a2f2f6d656469612d63646e2e677275626875622e636f6d2f696d6167652f75706c6f61642f62657462706b3570747a37756a306279616b6a672e6a7067" ], "logo_photos": [ "https://cdn-img.mealme.ai/25b450d4e72eea47dccd744c326e49e23343bd0d/68747470733a2f2f7265732e636c6f7564696e6172792e636f6d2f677275626875622f696d6167652f75706c6f61642f76313531383830323236382f63686a6a356173716f6766696e726f7671376f732e706e67" ], "store_photos": [], "dollar_signs": 2, "pickup_enabled": true, "delivery_enabled": true, "is_open": false, "offers_first_party_delivery": false, "offers_third_party_delivery": true, "miles": 0.2508434381960197, "weighted_rating_value": 4.725654450261779, "aggregated_rating_count": 191 } ] } } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "name": "query", "description": "The search query.", "schema": { "type": "string", "example": "beach cafe" }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "lat", "description": "The latitude of the user's location.", "schema": { "type": "number", "example": 37.7786357 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "lng", "description": "The longitude of the user's location.\".", "schema": { "type": "number", "example": -122.3918135 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "distance", "description": "The distance around the location in miles.", "schema": { "type": "number", "example": 2 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "budget", "description": "The user's budget for a meal in USD.", "schema": { "type": "number", "example": 20 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "cuisine", "description": "The cuisine of the restaurant.", "schema": { "type": "string", "example": "italian" }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "min-rating", "description": "The minimum rating of the restaurant between 0 and 5.", "schema": { "type": "number", "example": 4.4 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "is-open", "description": "Whether the restaurant must be open at the time of search.", "schema": { "type": "boolean", "example": true }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "sort", "description": "How to sort the results, one of the following 'cheapest', 'fastest', 'rating', 'distance' or the default 'relevance'.", "schema": { "type": "string", "example": "distance" }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "page", "description": "The page number of results.", "schema": { "type": "number", "example": 0 }, "required": false, "style": "form", "explode": false, "in": "query" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Search-Restaurants" }, "summary": "Search Restaurants", "description": "Search through thousands of restaurants (in North America) by location, cuisine, budget, and more.", "operationId": "searchRestaurants", "deprecated": false } }, "/food/wine/dishes": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "description": "", "type": "object", "properties": { "pairings": { "type": "array", "items": { "type": "string" } }, "text": { "type": "string", "minLength": 1 } }, "required": [ "pairings", "text" ] }, "examples": { "example-1": { "value": { "pairings": [ "stew", "steak", "chili", "burger" ], "text": "Malbec is a dry red wine which is bold and full bodied. It goes especially well with round steak, tri tip steak, steak, boneless pork chops, and pizza burger." } } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "name": "wine", "description": "The type of wine that should be paired, e.g. \"merlot\", \"riesling\", or \"malbec\".", "schema": { "type": "string", "example": "malbec" }, "required": true, "style": "form", "explode": false, "in": "query" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Dish-Pairing-for-Wine" }, "summary": "Dish Pairing for Wine", "description": "Find a dish that goes well with a given wine.", "operationId": "getDishPairingForWine", "deprecated": false, "tags": [ "wine" ] } }, "/food/wine/pairing": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "description": "", "type": "object", "properties": { "pairedWines": { "type": "array", "items": { "type": "string" } }, "pairingText": { "type": "string", "minLength": 1 }, "productMatches": { "type": "array", "uniqueItems": true, "minItems": 0, "items": { "type": "object", "properties": { "id": { "type": "integer" }, "title": { "type": "string", "minLength": 1 }, "averageRating": { "type": "number" }, "description": { "type": "string" }, "imageUrl": { "type": "string", "minLength": 1 }, "link": { "type": "string", "minLength": 1 }, "price": { "type": "string", "minLength": 1 }, "ratingCount": { "type": "integer" }, "score": { "type": "number" } }, "required": [ "id", "title", "averageRating", "imageUrl", "link", "price", "ratingCount", "score" ] } } }, "required": [ "pairedWines", "pairingText", "productMatches" ] }, "examples": { "example-1": { "value": { "pairedWines": [ "merlot", "cabernet sauvignon", "pinot noir" ], "pairingText": "Merlot, Cabernet Sauvignon, and Pinot Noir are my top picks for Steak. After all, beef and red wine are a classic combination. Generally, leaner steaks go well with light or medium-bodied reds, such as pinot noir or merlot, while fattier steaks can handle a bold red, such as cabernet sauvingnon. The Sterling Vineyards Merlot with a 5 out of 5 star rating seems like a good match. It costs about 29 dollars per bottle.", "productMatches": [ { "id": 428278, "title": "Sterling Vineyards Merlot", "averageRating": 1, "description": null, "imageUrl": "https://spoonacular.com/productImages/428278-312x231.jpg", "link": "https://www.amazon.com/2014-Sterling-Vineyards-Valley-Merlot/dp/B071FP8NPG?tag=spoonacular-20", "price": "$28.99", "ratingCount": 1, "score": 0.75 } ] } } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "name": "food", "description": "The food to get a pairing for. This can be a dish (\"steak\"), an ingredient (\"salmon\"), or a cuisine (\"italian\").", "schema": { "type": "string", "example": "steak" }, "required": true, "style": "form", "explode": false, "in": "query" }, { "name": "maxPrice", "description": "The maximum price for the specific wine recommendation in USD.", "schema": { "type": "number", "example": 50 }, "required": false, "style": "form", "explode": false, "in": "query" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Wine-Pairing" }, "summary": "Wine Pairing", "description": "Find a wine that goes well with a food. Food can be a dish name (\"steak\"), an ingredient name (\"salmon\"), or a cuisine (\"italian\").", "operationId": "getWinePairing", "deprecated": false, "tags": [ "wine" ] } }, "/food/wine/description": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "description": "", "type": "object", "properties": { "wineDescription": { "type": "string", "minLength": 1 } }, "required": [ "wineDescription" ] }, "examples": { "example-1": { "value": { "wineDescription": "Merlot is a dry red wine which is smooth and medium bodied." } } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "name": "wine", "description": "The name of the wine that should be paired, e.g. \"merlot\", \"riesling\", or \"malbec\".", "schema": { "type": "string", "example": "merlot" }, "required": true, "style": "form", "explode": false, "in": "query" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Wine-Description" }, "summary": "Wine Description", "description": "Get a simple description of a certain wine, e.g. \"malbec\", \"riesling\", or \"merlot\".", "operationId": "getWineDescription", "deprecated": false, "tags": [ "wine" ] } }, "/food/wine/recommendation": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "description": "", "type": "object", "properties": { "recommendedWines": { "type": "array", "uniqueItems": true, "minItems": 0, "items": { "type": "object", "properties": { "id": { "type": "integer" }, "title": { "type": "string", "minLength": 1 }, "averageRating": { "type": "number" }, "description": { "type": "string", "minLength": 1 }, "imageUrl": { "type": "string", "minLength": 1 }, "link": { "type": "string", "minLength": 1 }, "price": { "type": "string", "minLength": 1 }, "ratingCount": { "type": "integer" }, "score": { "type": "number" } }, "required": [ "id", "title", "averageRating", "description", "imageUrl", "link", "price", "ratingCount", "score" ] } }, "totalFound": { "type": "integer" } }, "required": [ "recommendedWines", "totalFound" ] }, "examples": { "example-1": { "value": { "recommendedWines": [ { "id": 447938, "title": "Rombauer Merlot", "averageRating": 0.96, "description": "Enticing and lively red color; beautifully aromatic with black cherry and ripe plum. On the palate a purity of blackcurrant, cedar and mint flavors blend together seamlessly. Soft and supple, this wine has a medium-bodied mouth-feel with plush tannins that integrate with the generous finish.Our favorite pairings for this wine include chicken parmesan, cedar-planked salmon over wild rice, and mushroom pizza.", "imageUrl": "https://spoonacular.com/productImages/447938-312x231.jpg", "link": "https://click.linksynergy.com/deeplink?id=*QCiIS6t4gA&mid=2025&murl=https%3A%2F%2Fwww.wine.com%2Fproduct%2Frombauer-merlot-2008%2F116883", "price": "$25.59", "ratingCount": 5, "score": 0.8975 }, { "id": 430475, "title": "NV The Big Kahuna Merlot", "averageRating": 0.9, "description": "A ripe and rounded Merlot with notes of plum, blackberry, and hint of spice.", "imageUrl": "https://spoonacular.com/productImages/430475-312x231.jpg", "link": "https://www.amazon.com/Big-Kahuna-Merlot-Red-Wine/dp/B01F5XPTUW?tag=spoonacular-20", "price": "$6.99", "ratingCount": 4, "score": 0.823076923076923 } ], "totalFound": 21 } } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "name": "wine", "description": "The type of wine to get a specific product recommendation for.", "schema": { "type": "string", "example": "merlot" }, "required": true, "style": "form", "explode": false, "in": "query" }, { "name": "maxPrice", "description": "The maximum price for the specific wine recommendation in USD.", "schema": { "type": "number", "example": 50 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minRating", "description": "The minimum rating of the recommended wine between 0 and 1. For example, 0.8 equals 4 out of 5 stars.", "schema": { "type": "number", "example": 0.7 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "number", "description": "The number of wine recommendations expected (between 1 and 100).", "schema": { "type": "number", "example": 3, "minimum": 1, "maximum": 100, "default": 10 }, "required": false, "style": "form", "explode": false, "in": "query" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Wine-Recommendation" }, "summary": "Wine Recommendation", "description": "Get a specific wine recommendation (concrete product) for a given wine type, e.g. \"merlot\".", "operationId": "getWineRecommendation", "deprecated": false, "tags": [ "wine" ] } }, "/food/images/classify": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "description": "", "type": "object", "properties": { "category": { "type": "string", "minLength": 1 }, "probability": { "type": "number" } }, "required": [ "category", "probability" ] }, "examples": { "example-1": { "value": { "category": "burger", "probability": 0.91354 } } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "name": "imageUrl", "description": "The URL of the image to be classified.", "schema": { "type": "string", "example": "https://spoonacular.com/recipeImages/635350-240x150.jpg" }, "required": true, "style": "form", "explode": false, "in": "query" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Image-Classification-by-URL" }, "summary": "Image Classification by URL", "description": "Classify a food image.", "operationId": "imageClassificationByURL", "deprecated": false, "tags": [ "misc" ] } }, "/food/images/analyze": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "description": "", "type": "object", "properties": { "nutrition": { "type": "object", "required": [ "recipesUsed", "calories", "fat", "protein", "carbs" ], "properties": { "recipesUsed": { "type": "integer" }, "calories": { "type": "object", "required": [ "value", "unit", "confidenceRange95Percent", "standardDeviation" ], "properties": { "value": { "type": "number" }, "unit": { "type": "string", "minLength": 1 }, "confidenceRange95Percent": { "type": "object", "required": [ "min", "max" ], "properties": { "min": { "type": "number" }, "max": { "type": "number" } } }, "standardDeviation": { "type": "number" } } }, "fat": { "type": "object", "required": [ "value", "unit", "confidenceRange95Percent", "standardDeviation" ], "properties": { "value": { "type": "number" }, "unit": { "type": "string", "minLength": 1 }, "confidenceRange95Percent": { "type": "object", "required": [ "min", "max" ], "properties": { "min": { "type": "number" }, "max": { "type": "number" } } }, "standardDeviation": { "type": "number" } } }, "protein": { "type": "object", "required": [ "value", "unit", "confidenceRange95Percent", "standardDeviation" ], "properties": { "value": { "type": "number" }, "unit": { "type": "string", "minLength": 1 }, "confidenceRange95Percent": { "type": "object", "required": [ "min", "max" ], "properties": { "min": { "type": "number" }, "max": { "type": "number" } } }, "standardDeviation": { "type": "number" } } }, "carbs": { "type": "object", "required": [ "value", "unit", "confidenceRange95Percent", "standardDeviation" ], "properties": { "value": { "type": "number" }, "unit": { "type": "string", "minLength": 1 }, "confidenceRange95Percent": { "type": "object", "required": [ "min", "max" ], "properties": { "min": { "type": "number" }, "max": { "type": "number" } } }, "standardDeviation": { "type": "number" } } } } }, "category": { "type": "object", "required": [ "name", "probability" ], "properties": { "name": { "type": "string", "minLength": 1 }, "probability": { "type": "number" } } }, "recipes": { "type": "array", "uniqueItems": true, "minItems": 0, "items": { "type": "object", "properties": { "id": { "type": "integer" }, "title": { "type": "string", "minLength": 1 }, "imageType": { "type": "string", "minLength": 1 }, "url": { "type": "string", "minLength": 1 } }, "required": [ "id", "title", "imageType", "url" ] } } }, "required": [ "nutrition", "category", "recipes" ] }, "examples": { "example-1": { "value": { "nutrition": { "recipesUsed": 25, "calories": { "value": 508, "unit": "calories", "confidenceRange95Percent": { "min": 428.97, "max": 571.98 }, "standardDeviation": 182.4 }, "fat": { "value": 21, "unit": "g", "confidenceRange95Percent": { "min": 21.29, "max": 32.95 }, "standardDeviation": 14.88 }, "protein": { "value": 29, "unit": "g", "confidenceRange95Percent": { "min": 22.58, "max": 33.7 }, "standardDeviation": 14.19 }, "carbs": { "value": 40, "unit": "g", "confidenceRange95Percent": { "min": 29.74, "max": 44.96 }, "standardDeviation": 19.42 } }, "category": { "name": "burger", "probability": 0.9998999999999999 }, "recipes": [ { "id": 477749, "title": "Burger Club: Award-Winning Logan County Burger Patty Melt", "imageType": "jpg", "url": "http://www.barbarabakes.com/2010/05/burger-club-award-winning-logan-county/" }, { "id": 493632, "title": "New York Burger Week: Pretzel Burger with Beer Cheese", "imageType": "jpg", "url": "http://www.foodrepublic.com/2013/09/23/new-york-burger-week-pretzel-burger-beer-cheese" }, { "id": 23359, "title": "Beef Burger Recipe (elvis Burger With Salad & Gherkin)", "imageType": "jpg", "url": "http://www.jamieoliver.com/recipes/beef-recipes/elvis-burger-with-pickled-gherkin" }, { "id": 149115, "title": "Surf N' Turf Burger (Grilled Burger with Lobster and Bacon)", "imageType": "jpg", "url": "http://www.seriouseats.com/recipes/2013/06/lobster-bacon-burger-recipe.html" }, { "id": 861442, "title": "Istanbul-Style Wet Burger (Islak Burger)", "imageType": "jpg", "url": "http://www.epicurious.com/recipes/food/views/istanbul-style-wet-burger-islak-burger?mbid=nl_02272017_Daily_CTN_PM+(1)" }, { "id": 600423, "title": "Rajma Burger (Red Kidney Beans Burger)", "imageType": "jpg", "url": "http://www.spiceupthecurry.com/rajma-burger-red-kidney-beans-burger/" }, { "id": 493634, "title": "Chicago Burger Week: The Chicago Deep Dish Pizza Burger", "imageType": "jpg", "url": "http://www.foodrepublic.com/2013/09/30/chicago-burger-week-chicago-deep-dish-pizza-burger" }, { "id": 487346, "title": "aloo tikki burger , north indian style aloo tikki burger", "imageType": "jpg", "url": "http://www.vegrecipesofindia.com/aloo-tikki-burger/" }, { "id": 607330, "title": "Aloo Tikki Burger | How to make aloo tikki burger at home", "imageType": "jpg", "url": "http://www.spiceupthecurry.com/aloo-tikki-burger-recipe/" } ] } } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "name": "imageUrl", "description": "The URL of the image to be analyzed.", "schema": { "type": "string", "example": "https://spoonacular.com/recipeImages/635350-240x150.jpg" }, "required": true, "style": "form", "explode": false, "in": "query" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Image-Analysis-by-URL" }, "summary": "Image Analysis by URL", "description": "Analyze a food image. The API tries to classify the image, guess the nutrition, and find a matching recipes.", "operationId": "imageAnalysisByURL", "deprecated": false, "tags": [ "misc" ] } }, "/recipes/quickAnswer": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "description": "", "type": "object", "properties": { "answer": { "type": "string", "minLength": 1 }, "image": { "type": "string", "minLength": 1 } }, "required": [ "answer", "image" ] }, "examples": { "example-1": { "value": { "answer": "There are 16.74 mg of Vitamin C in 2 apples. This covers about 20% of your daily needs of Vitamin C.", "image": "https://spoonacular.com/cdn/ingredients_100x100/apple.jpg" } } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "name": "q", "description": "The nutrition related question.", "schema": { "type": "string", "example": "How much vitamin c is in 2 apples?" }, "required": true, "style": "form", "explode": false, "in": "query" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Quick-Answer" }, "summary": "Quick Answer", "description": "Answer a nutrition related natural language question.", "operationId": "quickAnswer", "deprecated": false, "tags": [ "recipes" ] } }, "/food/detect": { "post": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "description": "", "type": "object", "properties": { "annotations": { "type": "array", "uniqueItems": true, "minItems": 0, "items": { "required": [ "annotation", "image", "tag" ], "properties": { "annotation": { "type": "string", "minLength": 1 }, "image": { "type": "string", "minLength": 1 }, "tag": { "type": "string", "minLength": 1 } } } } }, "required": [ "annotations" ] }, "examples": { "example-1": { "value": { "annotations": [ { "annotation": "cheeseburger", "image": "https://spoonacular.com/menuItemImages/cheeseburger.jpg", "tag": "dish" }, { "annotation": "mushrooms", "image": "https://spoonacular.com/cdn/ingredients_100x100/mushrooms.png", "tag": "ingredient" }, { "annotation": "pepperoni", "image": "https://spoonacular.com/cdn/ingredients_100x100/pepperoni.png", "tag": "ingredient" }, { "annotation": "tomatoes", "image": "https://spoonacular.com/cdn/ingredients_100x100/tomato.png", "tag": "ingredient" }, { "annotation": "cheddar", "image": "https://spoonacular.com/cdn/ingredients_100x100/cheddar-cheese.png", "tag": "ingredient" }, { "annotation": "tacos", "image": "https://spoonacular.com/menuItemImages/taco-isolated.jpg", "tag": "dish" }, { "annotation": "pizza", "image": "https://spoonacular.com/menuItemImages/cheese-pizza.png", "tag": "dish" } ] } } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "requestBody": { "required": true, "content": { "application/x-www-form-urlencoded": { "schema": { "type": "object", "required": [ "text" ], "properties": { "text": { "type": "string" } } }, "example": { "text": "I like to eat delicious tacos. The only thing better is a cheeseburger with cheddar. But then again, pizza with pepperoni, mushrooms, and tomatoes is so good too!" } } } }, "parameters": [], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Detect-Food-in-Text" }, "summary": "Detect Food in Text", "description": "Take 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.", "operationId": "detectFoodInText", "deprecated": false, "tags": [ "misc" ] } }, "/food/site/search": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "description": "", "type": "object", "properties": { "Articles": { "type": "array", "items": { "$ref": "#/components/schemas/SearchResult" } }, "Grocery Products": { "type": "array", "items": { "$ref": "#/components/schemas/SearchResult" } }, "Menu Items": { "type": "array", "items": { "$ref": "#/components/schemas/SearchResult" } }, "Recipes": { "type": "array", "items": { "$ref": "#/components/schemas/SearchResult" } } }, "required": [ "Articles", "Grocery Products", "Menu Items", "Recipes" ] }, "examples": { "example-1": { "value": { "Articles": [ { "dataPoints": [], "image": "https://spoonacular.com/application/frontend/images/academy/vietnamese-cuisine.jpg", "link": "https://spoonacular.com/academy/vietnamese", "name": "Traditional Vietnamese Recipes" }, { "dataPoints": [], "image": "https://spoonacular.com/application/frontend/images/academy/thai-cuisine.jpg", "link": "https://spoonacular.com/academy/thai", "name": "Authentic Thai Recipes" }, { "dataPoints": [], "image": "https://spoonacular.com/application/frontend/images/academy/korean-food.jpg", "link": "https://spoonacular.com/academy/korean", "name": "Typical Korean Recipes" } ], "Grocery Products": [ { "dataPoints": [ { "key": "Calories", "value": "30 Calories" }, { "key": "Protein", "value": "2g Protein" }, { "key": "Fat", "value": "0.0g Total Fat" }, { "key": "Carbs", "value": "6g Carbs" } ], "image": "https://spoonacular.com/productImages/218909-312x231.jpg", "link": "https://spoonacular.com/products/vine-ripe-tomato-paste-218909", "name": "Vine-ripe Tomato Paste" }, { "dataPoints": [ { "key": "Calories", "value": "30 Calories" }, { "key": "Protein", "value": "2g Protein" }, { "key": "Fat", "value": "0.0g Total Fat" }, { "key": "Carbs", "value": "6g Carbs" } ], "image": "https://spoonacular.com/productImages/178883-312x231.jpg", "link": "https://spoonacular.com/products/contadina-tomato-paste-178883", "name": "Contadina Tomato Paste" }, { "dataPoints": [ { "key": "Calories", "value": "30 Calories" }, { "key": "Protein", "value": "2g Protein" }, { "key": "Fat", "value": "0.0g Total Fat" }, { "key": "Carbs", "value": "6g Carbs" } ], "image": "https://spoonacular.com/productImages/137031-312x231.jpg", "link": "https://spoonacular.com/products/cento-tomato-paste-137031", "name": "Cento Tomato Paste" } ], "Menu Items": [ { "dataPoints": [ { "key": "Calories", "value": "230 Calories" }, { "key": "Protein", "value": "1g Protein" }, { "key": "Fat", "value": "15g Total Fat" }, { "key": "Carbs", "value": "23g Carbs" } ], "image": "https://spoonacular.com/menuItemImages/stir-fry.jpg", "link": "https://spoonacular.com/menu-items/thai-express-stir-fry-chilli-paste-401670", "name": "Thai Express Stir-Fry, Chilli Paste" } ], "Recipes": [ { "dataPoints": [ { "key": "Cost", "value": "$10.51 per serving" }, { "key": "Calories", "value": "400 Calories" }, { "key": "Protein", "value": "9g Protein" }, { "key": "Fat", "value": "32g Total Fat" }, { "key": "Carbs", "value": "26g Carbs" } ], "image": "https://webknox.com/recipeImages/224844-556x370.jpg", "link": "https://spoonacular.com/recipes/chermoula-paste-224844", "name": "Chermoula Paste" }, { "dataPoints": [ { "key": "Cost", "value": "$8.37 per serving" }, { "key": "Calories", "value": "3560 Calories" }, { "key": "Protein", "value": "119g Protein" }, { "key": "Fat", "value": "319g Total Fat" }, { "key": "Carbs", "value": "54g Carbs" } ], "image": "https://webknox.com/recipeImages/146847-556x370.jpg", "link": "https://spoonacular.com/recipes/lulu-paste-146847", "name": "Lulu Paste" }, { "dataPoints": [ { "key": "Cost", "value": "$6.68 per serving" }, { "key": "Calories", "value": "990 Calories" }, { "key": "Protein", "value": "53g Protein" }, { "key": "Fat", "value": "86g Total Fat" }, { "key": "Carbs", "value": "0.82g Carbs" } ], "image": "https://webknox.com/recipeImages/84670-556x370.jpg", "link": "https://spoonacular.com/recipes/steak-paste-84670", "name": "Steak Paste" } ] } } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "name": "query", "description": "The query to search for. You can also use partial queries such as \"spagh\" to already find spaghetti recipes, articles, grocery products, and other content.", "schema": { "type": "string", "example": "past" }, "required": true, "style": "form", "explode": false, "in": "query" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Search-Site-Content" }, "summary": "Search Site Content", "description": "Search 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.", "operationId": "searchSiteContent", "deprecated": false, "tags": [ "misc" ] } }, "/food/search": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "description": "", "type": "object", "properties": { "query": { "type": "string", "minLength": 1 }, "totalResults": { "type": "integer" }, "limit": { "type": "integer" }, "offset": { "type": "integer" }, "searchResults": { "type": "array", "uniqueItems": true, "minItems": 0, "items": { "type": "object", "properties": { "name": { "type": "string", "minLength": 1 }, "totalResults": { "type": "integer" }, "results": { "type": "array", "uniqueItems": true, "minItems": 0, "items": { "$ref": "#/components/schemas/SearchResult" } } }, "required": [ "name", "totalResults" ] } } }, "required": [ "query", "totalResults", "limit", "offset", "searchResults" ] }, "examples": { "example-1": { "value": { "query": "apple", "totalResults": 5826, "limit": 2, "offset": 0, "searchResults": [ { "name": "Recipes", "totalResults": 167, "results": [ { "id": "632485", "name": "Apple Cake", "image": "https://spoonacular.com/recipeImages/632485-312x231.jpg", "link": "https://spoonacular.com/recipes/apple-cake-632485", "type": "HTML", "relevance": 10000, "content": "Apple Cake might be just the dessert you are searching for..." }, { "id": "632522", "name": "Apple Crumble", "image": "https://spoonacular.com/recipeImages/632522-312x231.jpg", "link": "https://spoonacular.com/recipes/apple-crumble-632522", "type": "HTML", "relevance": 9999, "content": "Apple Crumble might be just the dessert you are searching for..." } ] }, { "name": "Products", "totalResults": 3219, "results": [ { "id": "5487", "name": "Pleasant Valley Apple Wine", "content": null, "image": "https://spoonacular.com/productImages/469604-312x231.jpg", "link": "https://spoonacular.com/products/pleasant-valley-apple-wine-469604", "type": "HTML", "relevance": 10000 }, { "id": "428573", "name": "NV Georgetown Vineyards Apple Wine", "content": null, "image": "https://spoonacular.com/productImages/428573-312x231.jpg", "link": "https://spoonacular.com/products/nv-georgetown-vineyards-apple-wine-428573", "type": "HTML", "relevance": 9999 } ] }, { "name": "Menu Items", "totalResults": 2410, "results": [ { "id": "334550", "name": "Old Chicago Applewood Spiced BBQ Chicken Pizza, Chicago Thick, 12 Inch (Slice)", "image": null, "link": "https://spoonacular.com/menu-items/old-chicago-applewood-spiced-bbq-chicken-pizza-chicago-thick-12-inch--334550", "type": "HTML", "content": null, "relevance": 10000 }, { "id": "422013", "name": "Huddle House Apple Cobbler a la mode", "image": null, "link": "https://spoonacular.com/menu-items/huddle-house-apple-cobbler-a-la-mode-422013", "type": "HTML", "content": null, "relevance": 9999 } ] }, { "name": "Articles", "totalResults": 28, "results": [ { "id": "578", "name": "Apples", "image": "https://spoonacular.com/cdn/ingredients_100x100/braeburn-apples.jpg", "link": "https://spoonacular.com/academy/apples", "type": "HTML", "content": null, "relevance": 90.46 }, { "id": "252", "name": "Vinegar", "image": "https://spoonacular.com/cdn/ingredients_100x100/red-wine-vinegar.jpg", "link": "https://spoonacular.com/academy/vinegar", "type": "HTML", "content": null, "relevance": 23.8 } ] }, { "name": "Videos", "totalResults": 2, "results": [ { "id": "G0HENy59YkE", "name": "Pineapple Bundt Cake", "image": "https://i.ytimg.com/vi/G0HENy59YkE/hqdefault.jpg", "link": "https://www.youtube.com/watch?v=G0HENy59YkE", "type": "YOUTUBE_VIDEO", "relevance": 10000, "content": "FULL RECIPE HERE: https://tatyanaseverydayfood.com/recipe-items/pineapple-bundt-cake/..." }, { "id": "xEENgO5Z5To", "name": "Pineapple Shrimp Tacos", "image": "https://i.ytimg.com/vi/xEENgO5Z5To/mqdefault.jpg", "link": null, "type": "YOUTUBE_VIDEO", "relevance": 9999, "content": "RECIPE: Below in description.\nThese Pineapple Shrimp Tacos cook in 5 minutes and assembly is a breeze..." } ] }, { "name": "Simple Foods", "totalResults": 2, "results": [ { "id": "78541", "name": "apple", "image": "apple.jpg", "type": "HTML", "content": null, "link": null, "relevance": 10000 }, { "id": "8782", "name": "applesauce", "image": "applesauce.png", "type": "HTML", "content": null, "link": null, "relevance": 9999 } ] } ] } } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "name": "query", "description": "The search query.", "schema": { "type": "string", "example": "apple" }, "required": true, "style": "form", "explode": false, "in": "query" }, { "$ref": "#/components/parameters/offset" }, { "$ref": "#/components/parameters/number" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Search-All-Food" }, "summary": "Search All Food", "description": "Search all food content with one call. That includes recipes, grocery products, menu items, simple foods (ingredients), and food videos.", "operationId": "searchAllFood", "deprecated": false, "tags": [ "misc" ] } }, "/food/videos/search": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "description": "", "type": "object", "properties": { "videos": { "type": "array", "uniqueItems": true, "minItems": 0, "items": { "type": "object", "properties": { "title": { "type": "string", "minLength": 1 }, "length": { "type": "integer" }, "rating": { "type": "number" }, "shortTitle": { "type": "string", "minLength": 1 }, "thumbnail": { "type": "string", "minLength": 1 }, "views": { "type": "integer" }, "youTubeId": { "type": "string", "minLength": 1 } }, "required": [ "title", "length", "rating", "shortTitle", "thumbnail", "views", "youTubeId" ] } }, "totalResults": { "type": "integer" } }, "required": [ "videos", "totalResults" ] }, "examples": { "example-1": { "value": { "videos": [ { "title": "8 One-Pot Pastas", "length": 370, "rating": 0.985984219269103, "shortTitle": "8 One-Pot Pastas", "thumbnail": "https://i.ytimg.com/vi/YTZGPCCB2FU/mqdefault.jpg", "views": 550467, "youTubeId": "YTZGPCCB2FU" }, { "title": "Macaroni salad - pasta salad recipes - healthy recipe channel - quick tasty recipe - cooking channel", "length": 333, "rating": 1, "shortTitle": "Macaroni salad", "thumbnail": "https://i.ytimg.com/vi/81bn4p8H3Kg/mqdefault.jpg", "views": 307, "youTubeId": "81bn4p8H3Kg" } ], "totalResults": 172 } } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "$ref": "#/components/parameters/query" }, { "name": "type", "description": "The type of the recipes. See a full list of supported meal types.", "schema": { "type": "string", "example": "main course" }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "cuisine", "description": "The cuisine(s) of the recipes. One or more, comma separated. See a full list of supported cuisines.", "schema": { "type": "string", "example": "italian" }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "diet", "description": "The diet for which the recipes must be suitable. See a full list of supported diets.", "schema": { "type": "string", "example": "vegetarian" }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "includeIngredients", "description": "A comma-separated list of ingredients that the recipes should contain.", "schema": { "type": "string", "example": "tomato,cheese" }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "excludeIngredients", "description": "A comma-separated list of ingredients or ingredient types that the recipes must not contain.", "schema": { "type": "string", "example": "eggs" }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "minLength", "description": "Minimum video length in seconds.", "schema": { "type": "number", "example": 0 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "name": "maxLength", "description": "Maximum video length in seconds.", "schema": { "type": "number", "example": 999 }, "required": false, "style": "form", "explode": false, "in": "query" }, { "$ref": "#/components/parameters/offset" }, { "$ref": "#/components/parameters/number" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Search-Food-Videos" }, "summary": "Search Food Videos", "description": "Find recipe and other food related videos.", "operationId": "searchFoodVideos", "deprecated": false, "tags": [ "misc" ] } }, "/food/jokes/random": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "description": "", "type": "object", "properties": { "text": { "type": "string", "minLength": 1 } }, "required": [ "text" ] }, "examples": { "example-1": { "value": { "text": "Any salad can be a Caesar salad if you stab it enough." } } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Random-Food-Joke" }, "summary": "Random Food Joke", "description": "Get a random joke that is related to food. Caution: this is an endpoint for adults!", "operationId": "getARandomFoodJoke", "deprecated": false, "tags": [ "misc" ] } }, "/food/trivia/random": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "description": "", "type": "object", "properties": { "text": { "type": "string", "minLength": 1 } }, "required": [ "text" ] }, "examples": { "example-1": { "value": { "text": "The red food-coloring carmine used in Skittles and other candies is made from boiled cochineal bugs, a type of beetle." } } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Random-Food-Trivia" }, "summary": "Random Food Trivia", "description": "Returns random food trivia.", "operationId": "getRandomFoodTrivia", "deprecated": false, "tags": [ "misc" ] } }, "/food/converse": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "description": "", "type": "object", "properties": { "answerText": { "type": "string", "minLength": 1 }, "media": { "type": "array", "items": { "type": "object", "properties": { "title": { "type": "string" }, "image": { "type": "string" }, "link": { "type": "string" } } } } }, "required": [ "answerText", "media" ] }, "examples": { "example-1": { "value": { "answerText": "Baby, if you were a fruit you'd be a fineapple.", "media": [] } } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "name": "text", "description": "The request / question / answer from the user to the chatbot.", "schema": { "type": "string", "example": "donut recipes" }, "required": true, "style": "form", "explode": false, "in": "query" }, { "name": "contextId", "description": "An arbitrary globally unique id for your conversation. The conversation can contain states so you should pass your context id if you want the bot to be able to remember the conversation.", "schema": { "type": "string", "example": "342938" }, "required": false, "style": "form", "explode": false, "in": "query" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Talk-to-Chatbot" }, "summary": "Talk to Chatbot", "description": "This 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.", "operationId": "talkToChatbot", "deprecated": false, "tags": [ "misc" ] } }, "/food/converse/suggest": { "get": { "responses": { "200": { "description": "Success", "headers": {}, "content": { "application/json": { "schema": { "description": "", "type": "object", "properties": { "suggests": { "type": "object", "properties": { "_": { "type": "array", "uniqueItems": true, "minItems": 0, "items": { "required": [ "name" ], "properties": { "name": { "type": "string", "minLength": 1 } } } } }, "required": [ "_" ] }, "words": { "type": "array", "items": { "type": "string" } } }, "required": [ "suggests", "words" ] }, "examples": { "example-1": { "value": { "suggests": { "_": [ { "name": "Tell me something funny" }, { "name": "Tell me a food fact" }, { "name": "Tell me a joke" }, { "name": "Tell me food trivia" }, { "name": "Tell me a fact about food" } ] }, "words": [] } } } } } }, "401": { "description": "Unauthorized" }, "403": { "description": "Forbidden" }, "404": { "description": "Not Found" } }, "parameters": [ { "name": "query", "description": "A (partial) query from the user. The endpoint will return if it matches topics it can talk about.", "schema": { "type": "string", "example": "tell" }, "required": true, "style": "form", "explode": false, "in": "query" }, { "name": "number", "description": "The number of suggestions to return (between 1 and 25).", "schema": { "type": "number", "example": 5 }, "required": false, "style": "form", "explode": false, "in": "query" } ], "externalDocs": { "description": "Read entire docs", "url": "https://spoonacular.com/food-api/docs#Conversation-Suggests" }, "summary": "Conversation Suggests", "description": "This endpoint returns suggestions for things the user can say or ask the chatbot.", "operationId": "getConversationSuggests", "deprecated": false, "tags": [ "misc" ] } } }, "components": { "schemas": { "SearchResult": { "description": "", "type": "object", "properties": { "image": { "type": "string" }, "link": { "type": "string", "nullable": true }, "name": { "type": "string" }, "type": { "type": "string" }, "kvtable": { "type": "string" }, "content": { "type": "string", "nullable": true }, "id": { "type": "integer" }, "relevance": { "type": "number" } }, "required": [ "name" ] }, "ProductInformation": { "description": "", "type": "object", "properties": { "id": { "type": "integer" }, "title": { "type": "string", "minLength": 1 }, "upc": { "type": "string", "nullable": true }, "usdaCode": { "type": "string", "nullable": true }, "breadcrumbs": { "type": "array", "items": { "type": "string" } }, "imageType": { "type": "string", "minLength": 1 }, "badges": { "type": "array", "items": { "type": "string" } }, "importantBadges": { "type": "array", "items": { "type": "string" } }, "ingredientCount": { "type": "integer" }, "generatedText": { "type": "string", "nullable": true }, "ingredientList": { "type": "string", "minLength": 1 }, "ingredients": { "type": "array", "uniqueItems": false, "minItems": 0, "items": { "$ref": "#/components/schemas/IngredientBasics" } }, "likes": { "type": "number" }, "aisle": { "type": "string", "nullable": true }, "credits": { "type": "object", "properties": { "text": { "type": "string" }, "link": { "type": "string" }, "image": { "type": "string" }, "imageLink": { "type": "string" } } }, "nutrition": { "type": "object", "required": [ "nutrients", "caloricBreakdown" ], "properties": { "nutrients": { "type": "array", "uniqueItems": true, "minItems": 0, "items": { "type": "object", "properties": { "name": { "type": "string", "minLength": 1 }, "amount": { "type": "number" }, "unit": { "type": "string", "minLength": 1 }, "percentOfDailyNeeds": { "type": "number" } }, "required": [ "name", "amount", "unit", "percentOfDailyNeeds" ] } }, "caloricBreakdown": { "type": "object", "required": [ "percentProtein", "percentFat", "percentCarbs" ], "properties": { "percentProtein": { "type": "number" }, "percentFat": { "type": "number" }, "percentCarbs": { "type": "number" } } } } }, "price": { "type": "number" }, "servings": { "type": "object", "required": [ "number", "size", "unit" ], "properties": { "number": { "type": "number" }, "size": { "type": "number" }, "unit": { "type": "string", "minLength": 1 } } }, "spoonacularScore": { "type": "number" } }, "required": [ "id", "title", "breadcrumbs", "imageType", "badges", "importantBadges", "ingredientCount", "ingredientList", "ingredients", "likes", "aisle", "nutrition", "price", "servings", "spoonacularScore" ], "example": { "breadcrumbs": [ "bars" ], "category": "bars", "usdaCode": null, "id": 22347, "title": "SNICKERS Minis Size Chocolate Candy Bars Variety Mix 10.5-oz. Bag", "price": 324, "likes": 0, "badges": [ "msg_free", "no_artificial_colors", "no_artificial_flavors", "no_artificial_ingredients", "gluten_free" ], "importantBadges": [ "no_artificial_flavors", "no_artificial_colors", "no_artificial_ingredients", "gluten_free", "msg_free" ], "nutrition": { "nutrients": [ { "name": "Alcohol", "amount": 0, "unit": "g", "percentOfDailyNeeds": 100 }, { "name": "Caffeine", "amount": 0, "unit": "mg", "percentOfDailyNeeds": 0 }, { "name": "Net Carbohydrates", "amount": 24, "unit": "g", "percentOfDailyNeeds": 8.73 } ], "caloricBreakdown": { "percentProtein": 4.44, "percentFat": 40, "percentCarbs": 55.56 }, "calories": 180, "fat": "8g", "protein": "2g", "carbs": "25g" }, "servings": { "number": 1, "size": 4, "unit": "pieces", "raw": "4.0 pieces (38 g)" }, "spoonacularScore": 0, "aisle": null, "description": "Snickers® brand almond bar.What's inside... per minis piece.Calories 45, 2% DV.Total fat 2g, 3% DV.Sat fat 1g, 5% DV.Sugars 5g.Sodium 20mg, 1% DV.GDA's are based on a 2,000 calorie diet.To learn more visit www.marshealthyliving.com.*No DV defined.Snickers® brand.What's inside... per minis piece.Calories 45, 2% DV.Total fat 2g, 3% DV.Sat fat 1g, 5% DV.Sugars 5g.Sodium 20mg, 1% DV.GDA's are based on a 2,000 calorie diet.To learn more visit www.marshealthyliving.com.*No DV defined.Snickers® brand peanut butter squared bars.What's inside... per minis piece.Calories 50, 3% DV.Total fat 2.5g, 4% DV.Sat fat 1g, 5% DV.Sugars 4g.Sodium 30mg, 1% DV.GDA's are based on a 2,000 calorie diet.To learn more visit www.marshealthyliving.com.*No DV defined.snickers.com.Please save the unused product and wrapper.Mars Real Chocolate®.We value your questions or comments. Call 1-800-551-0702 or visit us at www.snickers.com.Visit us at www.snickers.com.®/TM trademarks.©Mars, Incorporated.", "image": "https://img.spoonacular.com/products/22347-312x231.jpeg", "imageType": "jpeg", "images": [ "https://img.spoonacular.com/products/22347-90x90.jpeg", "https://img.spoonacular.com/products/22347-312x231.jpeg", "https://img.spoonacular.com/products/22347-636x393.jpeg" ], "generatedText": null, "upc": "040000421610", "brand": "Snickers", "ingredients": [ { "name": "artificial flavor.snickersâ® brand", "safety_level": null, "description": null }, { "name": "cocoa butter", "safety_level": "high", "description": null }, { "name": "soy lecithin", "safety_level": "high", "description": "Soy lecithin is not a concern for most people allergic to soy." } ], "ingredientCount": 32, "ingredientList": "Snickers Brand Almond Bar: Milk Chocolate (Sugar, Cocoa Butter, Chocolate, Skim Milk, Lactose, Milkfat, Soy Lecithin, Artificial Flavor), Corn Syrup, Almonds, Sugar, Milkfat, Skim Milk, Less than 2% - Lactose, Salt, Hydrogenated Palm Kernel Oil and/or Palm Oil, Egg Whites, Chocolate, Artificial Flavor. Snickers Brand: Milk Chocolate (Sugar, Cocoa Butter, Chocolate, Skim Milk, Lactose, Milkfat, Soy Lecithin, Artificial Flavor), Peanuts, Corn Syrup, Sugar, Milkfat, Skim Milk, Partially Hydrogenated Soybean Oil, Lactose, Salt, Egg Whites, Chocolate, Artificial Flavor. Snickers Brand Peanut Butter Squared Bars: Milk Chocolate (Sugar, Cocoa Butter, Chocolate, Skim Milk, Lactose, Milkfat, Soy Lecithin, Artificial Flavor), Peanut Butter (Peanuts, Partially Hydrogenated Soybean Oil), Peanuts, Sugar, Corn Syrup, Vegetable Oil (Hydrogenated Palm Kernel Oil, Palm Oil, Rapeseed Oil and Cottonseed Oil and/or Partially Hydrogenated Palm Kernel Oil), Lactose, Corn Syrup Solids, Invert Sugar, Less than 2% - Glycerin, Dextrose, Skim Milk, Salt, Calcium Carbonate, Partially Hydrogenated Soybean Oil, Egg Whites, Artificial Flavor, TBHQ to Maintain Freshness", "credits": { "text": "openfoodfacts.org under (ODbL) v1.0", "link": "https://opendatacommons.org/licenses/odbl/1-0/", "image": "openfoodfacts.org under CC BY-SA 3.0 DEED", "imageLink": "https://creativecommons.org/licenses/by-sa/3.0/deed.en" } } }, "ComparableProduct": { "type": "object", "properties": { "difference": { "type": "number" }, "id": { "type": "integer" }, "image": { "type": "string", "minLength": 1 }, "title": { "type": "string", "minLength": 1 } }, "required": [ "difference", "id", "image", "title" ] }, "MenuItem": { "description": "", "type": "object", "properties": { "id": { "type": "integer" }, "title": { "type": "string", "minLength": 1 }, "restaurantChain": { "type": "string", "minLength": 1 }, "nutrition": { "type": "object", "required": [ "nutrients", "caloricBreakdown" ], "properties": { "nutrients": { "type": "array", "uniqueItems": true, "minItems": 0, "items": { "type": "object", "properties": { "name": { "type": "string", "minLength": 1 }, "amount": { "type": "number" }, "unit": { "type": "string", "minLength": 1 }, "percentOfDailyNeeds": { "type": "number" } }, "required": [ "name", "amount", "unit", "percentOfDailyNeeds" ] } }, "caloricBreakdown": { "type": "object", "required": [ "percentProtein", "percentFat", "percentCarbs" ], "properties": { "percentProtein": { "type": "number" }, "percentFat": { "type": "number" }, "percentCarbs": { "type": "number" } } } } }, "badges": { "type": "array", "items": { "type": "string" } }, "breadcrumbs": { "type": "array", "items": { "type": "string" } }, "generatedText": { "type": "string", "nullable": true }, "imageType": { "type": "string", "minLength": 1 }, "likes": { "type": "integer" }, "servings": { "type": "object", "required": [ "number", "size", "unit" ], "properties": { "number": { "type": "number" }, "size": { "type": "number", "nullable": true }, "unit": { "type": "string", "nullable": true, "minLength": 1 } } }, "price": { "type": "number", "nullable": true }, "spoonacularScore": { "type": "number", "nullable": true } }, "required": [ "id", "title", "restaurantChain", "price", "spoonacularScore" ], "example": { "id": 424571, "title": "Bacon King Burger", "restaurantChain": "Burger King", "nutrition": { "nutrients": [ { "name": "Fat", "amount": 69, "unit": "g", "percentOfDailyNeeds": 30 }, { "name": "Protein", "amount": 57, "unit": "g", "percentOfDailyNeeds": 35 }, { "name": "Calories", "amount": 1040, "unit": "cal", "percentOfDailyNeeds": 50 }, { "name": "Carbohydrates", "amount": 48, "unit": "g", "percentOfDailyNeeds": 35 } ], "caloricBreakdown": { "percentProtein": 35, "percentFat": 30, "percentCarbs": 35 } }, "badges": [], "breadcrumbs": [ "burger", "main course", "food product category" ], "generatedText": "", "imageType": "png", "likes": 0, "servings": { "number": 1, "size": 2, "unit": "oz" }, "price": 2.35, "spoonacularScore": 12.5 } }, "IngredientBasics": { "type": "object", "properties": { "description": { "type": "string", "nullable": true }, "name": { "type": "string" }, "safety_level": { "type": "string", "nullable": true } }, "required": [ "name", "description", "safety_level" ] }, "IngredientInformation": { "description": "", "type": "object", "properties": { "id": { "type": "integer" }, "original": { "type": "string", "minLength": 1 }, "originalName": { "type": "string", "minLength": 1 }, "name": { "type": "string", "minLength": 1 }, "amount": { "type": "number" }, "unit": { "type": "string" }, "unitShort": { "type": "string" }, "unitLong": { "type": "string" }, "possibleUnits": { "type": "array", "items": { "type": "string" } }, "estimatedCost": { "type": "object", "required": [ "value", "unit" ], "properties": { "value": { "type": "number" }, "unit": { "type": "string", "minLength": 1 } } }, "consistency": { "type": "string", "minLength": 1 }, "shoppingListUnits": { "type": "array", "items": { "type": "string" } }, "aisle": { "type": "string", "minLength": 1 }, "image": { "type": "string", "minLength": 1 }, "meta": { "type": "array", "items": { "type": "string" } }, "nutrition": { "type": "object", "required": [ "nutrients", "properties", "caloricBreakdown", "weightPerServing" ], "properties": { "nutrients": { "type": "array", "uniqueItems": true, "minItems": 0, "items": { "type": "object", "properties": { "name": { "type": "string", "minLength": 1 }, "amount": { "type": "number" }, "unit": { "type": "string", "minLength": 1 }, "percentOfDailyNeeds": { "type": "number" } }, "required": [ "name", "amount", "unit", "percentOfDailyNeeds" ] } }, "properties": { "type": "array", "uniqueItems": true, "minItems": 0, "items": { "type": "object", "properties": { "name": { "type": "string", "minLength": 1 }, "amount": { "type": "number" }, "unit": { "type": "string" } }, "required": [ "name", "amount", "unit" ] } }, "caloricBreakdown": { "type": "object", "required": [ "percentProtein", "percentFat", "percentCarbs" ], "properties": { "percentProtein": { "type": "number" }, "percentFat": { "type": "number" }, "percentCarbs": { "type": "number" } } }, "weightPerServing": { "type": "object", "required": [ "amount", "unit" ], "properties": { "amount": { "type": "number" }, "unit": { "type": "string", "minLength": 1 } } } } }, "categoryPath": { "type": "array", "items": { "type": "string" } } }, "required": [ "id", "original", "originalName", "name", "amount", "unit", "unitShort", "unitLong", "possibleUnits", "estimatedCost", "consistency", "aisle", "image", "meta" ], "example": { "id": 9266, "original": "pineapples", "originalName": "pineapples", "name": "pineapples", "amount": 1, "unit": "", "unitShort": "", "unitLong": "", "possibleUnits": [ "piece", "slice", "fruit", "g", "oz", "cup", "serving" ], "estimatedCost": { "value": 299, "unit": "US Cents" }, "consistency": "solid", "shoppingListUnits": [ "pieces" ], "aisle": "Produce", "image": "pineapple.jpg", "meta": [], "nutrition": { "nutrients": [ { "name": "Calories", "amount": 452.5, "unit": "cal", "percentOfDailyNeeds": 22.63 }, { "name": "Fat", "amount": 1.09, "unit": "g", "percentOfDailyNeeds": 1.67 }, { "name": "Saturated Fat", "amount": 0.08, "unit": "g", "percentOfDailyNeeds": 0.51 }, { "name": "Carbohydrates", "amount": 118.74, "unit": "g", "percentOfDailyNeeds": 39.58 }, { "name": "Net Carbohydrates", "amount": 106.07, "unit": "g", "percentOfDailyNeeds": 38.57 }, { "name": "Sugar", "amount": 89.14, "unit": "g", "percentOfDailyNeeds": 99.05 }, { "name": "Cholesterol", "amount": 0, "unit": "mg", "percentOfDailyNeeds": 0 }, { "name": "Sodium", "amount": 9.05, "unit": "mg", "percentOfDailyNeeds": 0.39 }, { "name": "Protein", "amount": 4.89, "unit": "g", "percentOfDailyNeeds": 9.77 }, { "name": "Vitamin C", "amount": 432.59, "unit": "mg", "percentOfDailyNeeds": 524.35 }, { "name": "Manganese", "amount": 8.39, "unit": "mg", "percentOfDailyNeeds": 419.47 }, { "name": "Fiber", "amount": 12.67, "unit": "g", "percentOfDailyNeeds": 50.68 }, { "name": "Vitamin B6", "amount": 1.01, "unit": "mg", "percentOfDailyNeeds": 50.68 }, { "name": "Copper", "amount": 1, "unit": "mg", "percentOfDailyNeeds": 49.78 }, { "name": "Vitamin B1", "amount": 0.72, "unit": "mg", "percentOfDailyNeeds": 47.66 }, { "name": "Folate", "amount": 162.9, "unit": "µg", "percentOfDailyNeeds": 40.73 }, { "name": "Potassium", "amount": 986.45, "unit": "mg", "percentOfDailyNeeds": 28.18 }, { "name": "Magnesium", "amount": 108.6, "unit": "mg", "percentOfDailyNeeds": 27.15 }, { "name": "Vitamin B3", "amount": 4.53, "unit": "mg", "percentOfDailyNeeds": 22.63 }, { "name": "Vitamin B5", "amount": 1.93, "unit": "mg", "percentOfDailyNeeds": 19.28 }, { "name": "Vitamin B2", "amount": 0.29, "unit": "mg", "percentOfDailyNeeds": 17.04 }, { "name": "Iron", "amount": 2.62, "unit": "mg", "percentOfDailyNeeds": 14.58 }, { "name": "Calcium", "amount": 117.65, "unit": "mg", "percentOfDailyNeeds": 11.77 }, { "name": "Vitamin A", "amount": 524.9, "unit": "IU", "percentOfDailyNeeds": 10.5 }, { "name": "Zinc", "amount": 1.09, "unit": "mg", "percentOfDailyNeeds": 7.24 }, { "name": "Phosphorus", "amount": 72.4, "unit": "mg", "percentOfDailyNeeds": 7.24 }, { "name": "Vitamin K", "amount": 6.34, "unit": "µg", "percentOfDailyNeeds": 6.03 }, { "name": "Selenium", "amount": 0.91, "unit": "µg", "percentOfDailyNeeds": 1.29 }, { "name": "Vitamin E", "amount": 0.18, "unit": "mg", "percentOfDailyNeeds": 1.21 } ], "properties": [ { "name": "Glycemic Index", "amount": 58.67, "unit": "" }, { "name": "Glycemic Load", "amount": 62.23, "unit": "" } ], "caloricBreakdown": { "percentProtein": 3.88, "percentFat": 1.94, "percentCarbs": 94.18 }, "weightPerServing": { "amount": 905, "unit": "g" } }, "categoryPath": [ "tropical fruit", "fruit" ] } }, "TasteInformation": { "description": "", "type": "object", "properties": { "sweetness": { "type": "number" }, "saltiness": { "type": "number" }, "sourness": { "type": "number" }, "bitterness": { "type": "number" }, "savoriness": { "type": "number" }, "fattiness": { "type": "number" }, "spiciness": { "type": "number" } }, "required": [ "sweetness", "saltiness", "sourness", "bitterness", "savoriness", "fattiness", "spiciness" ], "example": { "sweetness": 28.79, "saltiness": 26.74, "sourness": 6.22, "bitterness": 12.38, "savoriness": 11.8, "fattiness": 100, "spiciness": 0 } }, "RecipeInformation": { "description": "", "type": "object", "properties": { "id": { "type": "integer" }, "title": { "type": "string", "minLength": 1 }, "image": { "type": "string", "nullable": true }, "imageType": { "type": "string", "minLength": 1 }, "servings": { "type": "number" }, "readyInMinutes": { "type": "integer" }, "preparationMinutes": { "type": "integer", "nullable": true }, "cookingMinutes": { "type": "integer", "nullable": true }, "license": { "type": "string", "minLength": 1 }, "sourceName": { "type": "string", "minLength": 1 }, "sourceUrl": { "type": "string", "minLength": 1 }, "spoonacularSourceUrl": { "type": "string" }, "aggregateLikes": { "type": "integer" }, "healthScore": { "type": "number" }, "spoonacularScore": { "type": "number" }, "pricePerServing": { "type": "number" }, "analyzedInstructions": { "type": "array", "items": { "type": "object" } }, "cheap": { "type": "boolean" }, "creditsText": { "type": "string", "minLength": 1 }, "cuisines": { "type": "array", "items": { "type": "string" } }, "dairyFree": { "type": "boolean" }, "diets": { "type": "array", "items": { "type": "string" } }, "gaps": { "type": "string", "minLength": 1 }, "glutenFree": { "type": "boolean" }, "instructions": { "type": "string", "nullable": true }, "lowFodmap": { "type": "boolean" }, "occasions": { "type": "array", "items": { "type": "string" } }, "sustainable": { "type": "boolean" }, "vegan": { "type": "boolean" }, "vegetarian": { "type": "boolean" }, "veryHealthy": { "type": "boolean" }, "veryPopular": { "type": "boolean" }, "weightWatcherSmartPoints": { "type": "number" }, "dishTypes": { "type": "array", "items": { "type": "string" } }, "extendedIngredients": { "type": "array", "uniqueItems": true, "minItems": 0, "items": { "type": "object", "properties": { "aisle": { "type": "string", "minLength": 1 }, "amount": { "type": "number" }, "consistency": { "type": "string", "minLength": 1 }, "id": { "type": "integer" }, "image": { "type": "string", "minLength": 1 }, "measures": { "type": "object", "properties": { "metric": { "type": "object", "required": [ "amount", "unitLong", "unitShort" ], "properties": { "amount": { "type": "number" }, "unitLong": { "type": "string", "minLength": 0 }, "unitShort": { "type": "string", "minLength": 0 } } }, "us": { "type": "object", "required": [ "amount", "unitLong", "unitShort" ], "properties": { "amount": { "type": "number" }, "unitLong": { "type": "string", "minLength": 0 }, "unitShort": { "type": "string", "minLength": 0 } } } }, "required": [ "metric", "us" ] }, "meta": { "type": "array", "items": { "type": "string" } }, "name": { "type": "string", "minLength": 1 }, "original": { "type": "string", "minLength": 1 }, "originalName": { "type": "string", "minLength": 1 }, "unit": { "type": "string", "minLength": 0 } }, "required": [ "aisle", "amount", "consistency", "id", "image", "name", "original", "originalName", "unit" ] } }, "summary": { "type": "string", "minLength": 1 }, "winePairing": { "type": "object", "properties": { "pairedWines": { "type": "array", "items": { "type": "string" } }, "pairingText": { "type": "string", "minLength": 1 }, "productMatches": { "type": "array", "uniqueItems": true, "minItems": 0, "items": { "type": "object", "properties": { "id": { "type": "integer" }, "title": { "type": "string", "minLength": 1 }, "description": { "type": "string", "minLength": 1 }, "price": { "type": "string", "minLength": 1 }, "imageUrl": { "type": "string", "minLength": 1 }, "averageRating": { "type": "number" }, "ratingCount": { "type": "integer" }, "score": { "type": "number" }, "link": { "type": "string", "minLength": 1 } }, "required": [ "id", "title", "description", "price", "imageUrl", "averageRating", "ratingCount", "score", "link" ] } } } }, "taste": { "$ref": "#/components/schemas/TasteInformation" } }, "required": [ "id", "title", "image", "servings", "readyInMinutes", "sourceName", "sourceUrl", "spoonacularSourceUrl", "aggregateLikes", "healthScore", "spoonacularScore", "pricePerServing", "analyzedInstructions", "cheap", "creditsText", "cuisines", "dairyFree", "diets", "gaps", "glutenFree", "instructions", "lowFodmap", "occasions", "sustainable", "vegan", "vegetarian", "veryHealthy", "veryPopular", "weightWatcherSmartPoints", "dishTypes", "extendedIngredients", "summary" ], "example": { "id": 716429, "title": "Pasta with Garlic, Scallions, Cauliflower & Breadcrumbs", "image": "https://spoonacular.com/recipeImages/716429-556x370.jpg", "imageType": "jpg", "servings": 2, "readyInMinutes": 45, "license": "CC BY-SA 3.0", "sourceName": "Full Belly Sisters", "sourceUrl": "http://fullbellysisters.blogspot.com/2012/06/pasta-with-garlic-scallions-cauliflower.html", "spoonacularSourceUrl": "https://spoonacular.com/pasta-with-garlic-scallions-cauliflower-breadcrumbs-716429", "aggregateLikes": 209, "healthScore": 19, "spoonacularScore": 83, "pricePerServing": 163.15, "analyzedInstructions": [], "cheap": false, "creditsText": "Full Belly Sisters", "cuisines": [], "dairyFree": false, "diets": [], "gaps": "no", "glutenFree": false, "instructions": "", "lowFodmap": false, "occasions": [], "sustainable": false, "vegan": false, "vegetarian": false, "veryHealthy": false, "veryPopular": false, "weightWatcherSmartPoints": 17, "dishTypes": [ "lunch", "main course", "main dish", "dinner" ], "extendedIngredients": [ { "aisle": "Milk, Eggs, Other Dairy", "amount": 1, "consistency": "solid", "id": 1001, "image": "butter-sliced.jpg", "measures": { "metric": { "amount": 1, "unitLong": "Tbsp", "unitShort": "Tbsp" }, "us": { "amount": 1, "unitLong": "Tbsp", "unitShort": "Tbsp" } }, "meta": [], "name": "butter", "original": "1 tbsp butter", "originalName": "butter", "unit": "tbsp" }, { "aisle": "Produce", "amount": 2, "consistency": "solid", "id": 10011135, "image": "cauliflower.jpg", "measures": { "metric": { "amount": 473.176, "unitLong": "milliliters", "unitShort": "ml" }, "us": { "amount": 2, "unitLong": "cups", "unitShort": "cups" } }, "meta": [ "frozen", "thawed", "cut into bite-sized pieces" ], "name": "cauliflower florets", "original": "about 2 cups frozen cauliflower florets, thawed, cut into bite-sized pieces", "originalName": "about frozen cauliflower florets, thawed, cut into bite-sized pieces", "unit": "cups" }, { "aisle": "Cheese", "amount": 2, "consistency": "solid", "id": 1041009, "image": "cheddar-cheese.png", "measures": { "metric": { "amount": 2, "unitLong": "Tbsps", "unitShort": "Tbsps" }, "us": { "amount": 2, "unitLong": "Tbsps", "unitShort": "Tbsps" } }, "meta": [ "grated", "(I used romano)" ], "name": "cheese", "original": "2 tbsp grated cheese (I used romano)", "originalName": "grated cheese (I used romano)", "unit": "tbsp" }, { "aisle": "Oil, Vinegar, Salad Dressing", "amount": 1, "consistency": "liquid", "id": 1034053, "image": "olive-oil.jpg", "measures": { "metric": { "amount": 1, "unitLong": "Tbsp", "unitShort": "Tbsp" }, "us": { "amount": 1, "unitLong": "Tbsp", "unitShort": "Tbsp" } }, "meta": [], "name": "extra virgin olive oil", "original": "1-2 tbsp extra virgin olive oil", "originalName": "extra virgin olive oil", "unit": "tbsp" }, { "aisle": "Produce", "amount": 5, "consistency": "solid", "id": 11215, "image": "garlic.jpg", "measures": { "metric": { "amount": 5, "unitLong": "cloves", "unitShort": "cloves" }, "us": { "amount": 5, "unitLong": "cloves", "unitShort": "cloves" } }, "meta": [], "name": "garlic", "original": "5-6 cloves garlic", "originalName": "garlic", "unit": "cloves" }, { "aisle": "Pasta and Rice", "amount": 6, "consistency": "solid", "id": 20420, "image": "fusilli.jpg", "measures": { "metric": { "amount": 170.097, "unitLong": "grams", "unitShort": "g" }, "us": { "amount": 6, "unitLong": "ounces", "unitShort": "oz" } }, "meta": [ "(I used linguine)" ], "name": "pasta", "original": "6-8 ounces pasta (I used linguine)", "originalName": "pasta (I used linguine)", "unit": "ounces" }, { "aisle": "Spices and Seasonings", "amount": 2, "consistency": "solid", "id": 1032009, "image": "red-pepper-flakes.jpg", "measures": { "metric": { "amount": 2, "unitLong": "pinches", "unitShort": "pinches" }, "us": { "amount": 2, "unitLong": "pinches", "unitShort": "pinches" } }, "meta": [ "red" ], "name": "red pepper flakes", "original": "couple of pinches red pepper flakes, optional", "originalName": "couple of red pepper flakes, optional", "unit": "pinches" }, { "aisle": "Spices and Seasonings", "amount": 2, "consistency": "solid", "id": 1102047, "image": "salt-and-pepper.jpg", "measures": { "metric": { "amount": 2, "unitLong": "servings", "unitShort": "servings" }, "us": { "amount": 2, "unitLong": "servings", "unitShort": "servings" } }, "meta": [ "to taste" ], "name": "salt and pepper", "original": "salt and pepper, to taste", "originalName": "salt and pepper, to taste", "unit": "servings" }, { "aisle": "Produce", "amount": 3, "consistency": "solid", "id": 11291, "image": "spring-onions.jpg", "measures": { "metric": { "amount": 3, "unitLong": "", "unitShort": "" }, "us": { "amount": 3, "unitLong": "", "unitShort": "" } }, "meta": [ "white", "green", "separated", "chopped" ], "name": "scallions", "original": "3 scallions, chopped, white and green parts separated", "originalName": "scallions, chopped, white and green parts separated", "unit": "" }, { "aisle": "Alcoholic Beverages", "amount": 2, "consistency": "liquid", "id": 14106, "image": "white-wine.jpg", "measures": { "metric": { "amount": 2, "unitLong": "Tbsps", "unitShort": "Tbsps" }, "us": { "amount": 2, "unitLong": "Tbsps", "unitShort": "Tbsps" } }, "meta": [ "white" ], "name": "white wine", "original": "2-3 tbsp white wine", "originalName": "white wine", "unit": "tbsp" }, { "aisle": "Pasta and Rice", "amount": 0.25, "consistency": "solid", "id": 99025, "image": "breadcrumbs.jpg", "measures": { "metric": { "amount": 59.147, "unitLong": "milliliters", "unitShort": "ml" }, "us": { "amount": 0.25, "unitLong": "cups", "unitShort": "cups" } }, "meta": [ "whole wheat", "(I used panko)" ], "name": "whole wheat bread crumbs", "original": "1/4 cup whole wheat bread crumbs (I used panko)", "originalName": "whole wheat bread crumbs (I used panko)", "unit": "cup" } ], "summary": "Pasta with Garlic, Scallions, Cauliflower & Breadcrumbs might be a good recipe to expand your main course repertoire. One portion of this dish contains approximately <b>19g of protein </b>, <b>20g of fat </b>, and a total of <b>584 calories </b>. For <b>$1.63 per serving </b>, this recipe <b>covers 23% </b> of your daily requirements of vitamins and minerals. This recipe serves 2. It is brought to you by fullbellysisters.blogspot.com. 209 people were glad they tried this recipe. A mixture of scallions, salt and pepper, white wine, and a handful of other ingredients are all it takes to make this recipe so scrumptious. From preparation to the plate, this recipe takes approximately <b>45 minutes </b>. All things considered, we decided this recipe <b>deserves a spoonacular score of 83% </b>. This score is awesome. If you like this recipe, take a look at these similar recipes: <a href=\"https://spoonacular.com/recipes/cauliflower-gratin-with-garlic-breadcrumbs-318375\">Cauliflower Gratin with Garlic Breadcrumbs</a>, < href=\"https://spoonacular.com/recipes/pasta-with-cauliflower-sausage-breadcrumbs-30437\">Pasta With Cauliflower, Sausage, & Breadcrumbs</a>, and <a href=\"https://spoonacular.com/recipes/pasta-with-roasted-cauliflower-parsley-and-breadcrumbs-30738\">Pasta With Roasted Cauliflower, Parsley, And Breadcrumbs</a>.", "winePairing": { "pairedWines": [ "chardonnay", "gruener veltliner", "sauvignon blanc" ], "pairingText": "Chardonnay, Gruener Veltliner, and Sauvignon Blanc are great choices for Pasta. Sauvignon Blanc and Gruner Veltliner both have herby notes that complement salads with enough acid to match tart vinaigrettes, while a Chardonnay can be a good pick for creamy salad dressings. The Buddha Kat Winery Chardonnay with a 4 out of 5 star rating seems like a good match. It costs about 25 dollars per bottle.", "productMatches": [ { "id": 469199, "title": "Buddha Kat Winery Chardonnay", "description": "We barrel ferment our Chardonnay and age it in a mix of Oak and Stainless. Giving this light bodied wine modest oak character, a delicate floral aroma, and a warming finish.", "price": "$25.0", "imageUrl": "https://spoonacular.com/productImages/469199-312x231.jpg", "averageRating": 0.8, "ratingCount": 1, "score": 0.55, "link": "https://www.amazon.com/2015-Buddha-Kat-Winery-Chardonnay/dp/B00OSAVVM4?tag=spoonacular-20" } ] } } } }, "securitySchemes": { "apiKeyScheme": { "type": "apiKey", "name": "x-api-key", "in": "header" } }, "parameters": { "ingredients": { "name": "ingredients", "in": "query", "required": true, "schema": { "type": "string", "example": "carrots,tomatoes" }, "description": "A comma-separated list of ingredients that the recipes should contain." }, "number": { "name": "number", "in": "query", "required": false, "schema": { "type": "integer", "minimum": 1, "maximum": 100, "default": 10, "example": 10 }, "description": "The maximum number of items to return (between 1 and 100). Defaults to 10." }, "ignorePantry": { "name": "ignorePantry", "in": "query", "required": false, "schema": { "type": "boolean", "default": false, "example": false }, "description": "Whether to ignore typical pantry items, such as water, salt, flour, etc." }, "query": { "name": "query", "in": "query", "required": true, "schema": { "type": "string", "example": "burger" }, "description": "The (natural language) search query." }, "offset": { "name": "offset", "in": "query", "required": false, "schema": { "type": "integer", "minimum": 0, "maximum": 900 }, "description": "The number of results to skip (between 0 and 900)." }, "includeNutrition": { "name": "includeNutrition", "in": "query", "required": false, "schema": { "type": "boolean", "default": false }, "description": "Include nutrition data in the recipe information. Nutrition data is per serving. If you want the nutrition data for the entire recipe, just multiply by the number of servings." }, "tags": { "name": "tags", "in": "query", "required": false, "schema": { "type": "string" }, "description": "The tags (can be diets, meal types, cuisines, or intolerances) that the recipe must have." }, "id": { "name": "id", "in": "path", "required": true, "schema": { "type": "integer", "example": 1 }, "description": "The item's id." }, "includeTaste": { "name": "includeTaste", "in": "query", "required": false, "schema": { "type": "boolean", "example": false, "default": false }, "description": "Whether taste data should be added to correctly parsed ingredients." }, "defaultCss": { "name": "defaultCss", "in": "query", "required": false, "schema": { "type": "boolean", "default": true, "example": false }, "description": "Whether the default CSS should be added to the response." }, "language": { "name": "language", "in": "query", "required": false, "schema": { "type": "string", "enum": [ "en", "de" ], "example": "en" }, "description": "The language of the input. Either 'en' or 'de'." }, "username": { "name": "username", "in": "path", "required": true, "schema": { "type": "string", "example": "dsky" }, "description": "The username." }, "hash": { "name": "hash", "in": "query", "required": true, "schema": { "type": "string" }, "description": "The private hash for the username." }, "rgb": { "name": "rgb", "in": "query", "required": false, "schema": { "type": "string", "example": "75,192,192" }, "description": "Red, green, blue values for the chart color." } } }, "externalDocs": { "description": "The official documentation.", "url": "https://spoonacular.com/food-api/docs" }, "security": [ { "apiKeyScheme": [] } ], "tags": [ { "name": "ingredients" }, { "name": "meal planning" }, { "name": "menu items" }, { "name": "misc" }, { "name": "products" }, { "name": "recipes" }, { "name": "wine" } ] }