Created
January 7, 2021 13:34
-
-
Save MikeRalphson/122b301f66b092e1951518034d955bfb to your computer and use it in GitHub Desktop.
Amended spoonacular OpenAPI definition to pass validation
This file contains hidden or bidirectional Unicode text that may be interpreted or compiled differently than what appears below. To review, open the file in an editor that reveals hidden Unicode characters.
Learn more about bidirectional Unicode characters
{ | |
"openapi": "3.0.0", | |
"info": { | |
"title": "spoonacular API", | |
"description": "The spoonacular Nutrition, Recipe, and Food API allows you to access over 380,000 recipes, thousands of ingredients, 80,000 food products, and 100,000 menu items. 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": "david@spoonacular.com", | |
"url": "https://spoonacular.com/contact" | |
}, | |
"version": "1.0", | |
"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/findByIngredients": { | |
"get": { | |
"responses": { | |
"200": { | |
"description": "Success", | |
"headers": {}, | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object" | |
} | |
} | |
} | |
}, | |
"401": { | |
"description": "Unauthorized" | |
}, | |
"403": { | |
"description": "Forbidden" | |
}, | |
"404": { | |
"description": "Not Found" | |
} | |
}, | |
"parameters": [ | |
{ | |
"name": "ingredients", | |
"description": "A comma-separated list of ingredients that the recipes should contain.", | |
"schema": { | |
"type": "string", | |
"example": "apples,flour,sugar" | |
}, | |
"required": true, | |
"style": "form", | |
"explode": false, | |
"in": "query" | |
}, | |
{ | |
"name": "number", | |
"description": "The maximum number of recipes to return (between 1 and 100). Defaults to 10.", | |
"schema": { | |
"type": "number", | |
"example": 10 | |
}, | |
"required": false, | |
"style": "form", | |
"explode": false, | |
"in": "query" | |
}, | |
{ | |
"name": "limitLicense", | |
"description": "Whether the recipes should have an open license that allows display with proper attribution.", | |
"schema": { | |
"type": "boolean", | |
"example": true | |
}, | |
"required": false, | |
"style": "form", | |
"explode": false, | |
"in": "query" | |
}, | |
{ | |
"name": "ranking", | |
"description": "Whether to maximize used ingredients (1) or minimize missing ingredients (2) first.", | |
"schema": { | |
"type": "number", | |
"example": 1 | |
}, | |
"required": false, | |
"style": "form", | |
"explode": false, | |
"in": "query" | |
}, | |
{ | |
"name": "ignorePantry", | |
"description": "Whether to ignore typical pantry items, such as water, salt, flour, etc.", | |
"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#Search-Recipes-by-Ingredients" | |
}, | |
"summary": "Search Recipes by Ingredients", | |
"description": "\n Ever 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 | |
} | |
}, | |
"/recipes/findByNutrients": { | |
"get": { | |
"responses": { | |
"200": { | |
"description": "Success", | |
"headers": {}, | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object" | |
} | |
} | |
} | |
}, | |
"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" | |
}, | |
{ | |
"name": "offset", | |
"description": "The number of results to skip (between 0 and 900).", | |
"schema": { | |
"type": "number", | |
"example": 0 | |
}, | |
"required": false, | |
"style": "form", | |
"explode": false, | |
"in": "query" | |
}, | |
{ | |
"name": "number", | |
"description": "The number of expected results (between 1 and 100).", | |
"schema": { | |
"type": "number", | |
"example": 10 | |
}, | |
"required": false, | |
"style": "form", | |
"explode": false, | |
"in": "query" | |
}, | |
{ | |
"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" | |
}, | |
{ | |
"name": "limitLicense", | |
"description": "Whether the recipes should have an open license that allows display with proper attribution.", | |
"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#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 | |
} | |
}, | |
"/recipes/complexSearch": { | |
"get": { | |
"responses": { | |
"200": { | |
"description": "Success", | |
"headers": {}, | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object" | |
} | |
} | |
} | |
}, | |
"401": { | |
"description": "Unauthorized" | |
}, | |
"403": { | |
"description": "Forbidden" | |
}, | |
"404": { | |
"description": "Not Found" | |
} | |
}, | |
"parameters": [ | |
{ | |
"name": "query", | |
"description": "The (natural language) recipe search query.", | |
"schema": { | |
"type": "string", | |
"example": "pasta" | |
}, | |
"required": true, | |
"style": "form", | |
"explode": false, | |
"in": "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" | |
}, | |
{ | |
"name": "tags", | |
"description": "User defined tags that have to match. The author param has to be set.", | |
"schema": { | |
"type": "string", | |
"example": "myCustomTag" | |
}, | |
"required": false, | |
"style": "form", | |
"explode": false, | |
"in": "query" | |
}, | |
{ | |
"name": "recipeBoxId", | |
"description": "The id of the recipe box to which the search should be limited to.", | |
"schema": { | |
"type": "number", | |
"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": "ignorePantry", | |
"description": "Whether to ignore typical pantry items, such as water, salt, flour, etc.", | |
"schema": { | |
"type": "boolean", | |
"example": true | |
}, | |
"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" | |
}, | |
{ | |
"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" | |
}, | |
{ | |
"name": "offset", | |
"description": "The number of results to skip (between 0 and 900).", | |
"schema": { | |
"type": "number", | |
"example": 0 | |
}, | |
"required": false, | |
"style": "form", | |
"explode": false, | |
"in": "query" | |
}, | |
{ | |
"name": "number", | |
"description": "The number of expected results (between 1 and 100).", | |
"schema": { | |
"type": "number", | |
"example": 10 | |
}, | |
"required": false, | |
"style": "form", | |
"explode": false, | |
"in": "query" | |
}, | |
{ | |
"name": "limitLicense", | |
"description": "Whether the recipes should have an open license that allows display with proper attribution.", | |
"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#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 | |
} | |
}, | |
"/recipes/{id}/information": { | |
"get": { | |
"responses": { | |
"200": { | |
"description": "Success", | |
"headers": {}, | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object" | |
} | |
} | |
} | |
}, | |
"401": { | |
"description": "Unauthorized" | |
}, | |
"403": { | |
"description": "Forbidden" | |
}, | |
"404": { | |
"description": "Not Found" | |
} | |
}, | |
"parameters": [ | |
{ | |
"name": "id", | |
"description": "The id of the recipe.", | |
"schema": { | |
"type": "number", | |
"example": 716429 | |
}, | |
"required": true, | |
"style": "simple", | |
"explode": false, | |
"in": "path" | |
}, | |
{ | |
"name": "includeNutrition", | |
"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.", | |
"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 | |
} | |
}, | |
"/recipes/informationBulk": { | |
"get": { | |
"responses": { | |
"200": { | |
"description": "Success", | |
"headers": {}, | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object" | |
} | |
} | |
} | |
}, | |
"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" | |
}, | |
{ | |
"name": "includeNutrition", | |
"description": "Include nutrition data to 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.", | |
"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-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 | |
} | |
}, | |
"/recipes/{id}/similar": { | |
"get": { | |
"responses": { | |
"200": { | |
"description": "Success", | |
"headers": {}, | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object" | |
} | |
} | |
} | |
}, | |
"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": "number", | |
"example": 715538 | |
}, | |
"required": true, | |
"style": "simple", | |
"explode": false, | |
"in": "path" | |
}, | |
{ | |
"name": "number", | |
"description": "The number of random recipes to be returned (between 1 and 100).", | |
"schema": { | |
"type": "number", | |
"example": 1 | |
}, | |
"required": false, | |
"style": "form", | |
"explode": false, | |
"in": "query" | |
}, | |
{ | |
"name": "limitLicense", | |
"description": "Whether the recipes should have an open license that allows display with proper attribution.", | |
"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-Similar-Recipes" | |
}, | |
"summary": "Get Similar Recipes", | |
"description": "Find recipes which are similar to the given one.", | |
"operationId": "getSimilarRecipes", | |
"deprecated": false | |
} | |
}, | |
"/recipes/random": { | |
"get": { | |
"responses": { | |
"200": { | |
"description": "Success", | |
"headers": {}, | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object" | |
} | |
} | |
} | |
}, | |
"401": { | |
"description": "Unauthorized" | |
}, | |
"403": { | |
"description": "Forbidden" | |
}, | |
"404": { | |
"description": "Not Found" | |
} | |
}, | |
"parameters": [ | |
{ | |
"name": "limitLicense", | |
"description": "Whether the recipes should have an open license that allows display with proper attribution.", | |
"schema": { | |
"type": "boolean", | |
"example": true | |
}, | |
"required": false, | |
"style": "form", | |
"explode": false, | |
"in": "query" | |
}, | |
{ | |
"name": "tags", | |
"description": "The tags (can be diets, meal types, cuisines, or intolerances) that the recipe must have.", | |
"schema": { | |
"type": "string", | |
"example": "vegetarian, dessert" | |
}, | |
"required": false, | |
"style": "form", | |
"explode": false, | |
"in": "query" | |
}, | |
{ | |
"name": "number", | |
"description": "The number of random recipes to be returned (between 1 and 100).", | |
"schema": { | |
"type": "number", | |
"example": 1 | |
}, | |
"required": false, | |
"style": "form", | |
"explode": false, | |
"in": "query" | |
} | |
], | |
"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 | |
} | |
}, | |
"/recipes/autocomplete": { | |
"get": { | |
"responses": { | |
"200": { | |
"description": "Success", | |
"headers": {}, | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object" | |
} | |
} | |
} | |
}, | |
"401": { | |
"description": "Unauthorized" | |
}, | |
"403": { | |
"description": "Forbidden" | |
}, | |
"404": { | |
"description": "Not Found" | |
} | |
}, | |
"parameters": [ | |
{ | |
"name": "query", | |
"description": "The query to be autocompleted.", | |
"schema": { | |
"type": "string", | |
"example": "burger" | |
}, | |
"required": true, | |
"style": "form", | |
"explode": false, | |
"in": "query" | |
}, | |
{ | |
"name": "number", | |
"description": "The number of results to return (between 1 and 25).", | |
"schema": { | |
"type": "number", | |
"example": 10 | |
}, | |
"required": false, | |
"style": "form", | |
"explode": false, | |
"in": "query" | |
} | |
], | |
"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 | |
} | |
}, | |
"/recipes/{id}/tasteWidget.json": { | |
"get": { | |
"responses": { | |
"200": { | |
"description": "Success", | |
"headers": {}, | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object" | |
} | |
} | |
} | |
}, | |
"401": { | |
"description": "Unauthorized" | |
}, | |
"403": { | |
"description": "Forbidden" | |
}, | |
"404": { | |
"description": "Not Found" | |
} | |
}, | |
"parameters": [ | |
{ | |
"name": "id", | |
"description": "The recipe id.", | |
"schema": { | |
"type": "number", | |
"example": 69095 | |
}, | |
"required": true, | |
"style": "simple", | |
"explode": false, | |
"in": "path" | |
} | |
], | |
"externalDocs": { | |
"description": "Read entire docs", | |
"url": "https://spoonacular.com/food-api/docs#Get-Recipe-Taste-by-ID" | |
}, | |
"summary": "Get Recipe Taste by ID", | |
"description": "Get a recipe's taste. The tastes supported are sweet, salty, sour, bitter, savory, and fatty.", | |
"operationId": "getRecipeTasteByID", | |
"deprecated": false | |
} | |
}, | |
"/recipes/{id}/equipmentWidget.json": { | |
"get": { | |
"responses": { | |
"200": { | |
"description": "Success", | |
"headers": {}, | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object" | |
} | |
} | |
} | |
}, | |
"401": { | |
"description": "Unauthorized" | |
}, | |
"403": { | |
"description": "Forbidden" | |
}, | |
"404": { | |
"description": "Not Found" | |
} | |
}, | |
"parameters": [ | |
{ | |
"name": "id", | |
"description": "The recipe id.", | |
"schema": { | |
"type": "number", | |
"example": 1003464 | |
}, | |
"required": true, | |
"style": "simple", | |
"explode": false, | |
"in": "path" | |
} | |
], | |
"externalDocs": { | |
"description": "Read entire docs", | |
"url": "https://spoonacular.com/food-api/docs#Get-Recipe-Equipment-by-ID" | |
}, | |
"summary": "Get Recipe Equipment by ID", | |
"description": "Get a recipe's equipment list.", | |
"operationId": "getRecipeEquipmentByID", | |
"deprecated": false | |
} | |
}, | |
"/recipes/{id}/priceBreakdownWidget.json": { | |
"get": { | |
"responses": { | |
"200": { | |
"description": "Success", | |
"headers": {}, | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object" | |
} | |
} | |
} | |
}, | |
"401": { | |
"description": "Unauthorized" | |
}, | |
"403": { | |
"description": "Forbidden" | |
}, | |
"404": { | |
"description": "Not Found" | |
} | |
}, | |
"parameters": [ | |
{ | |
"name": "id", | |
"description": "The recipe id.", | |
"schema": { | |
"type": "number", | |
"example": 1003464 | |
}, | |
"required": true, | |
"style": "simple", | |
"explode": false, | |
"in": "path" | |
} | |
], | |
"externalDocs": { | |
"description": "Read entire docs", | |
"url": "https://spoonacular.com/food-api/docs#Get-Recipe-Price-Breakdown-by-ID" | |
}, | |
"summary": "Get Recipe Price Breakdown by ID", | |
"description": "Get a recipe's price breakdown data.", | |
"operationId": "getRecipePriceBreakdownByID", | |
"deprecated": false | |
} | |
}, | |
"/recipes/{id}/ingredientWidget.json": { | |
"get": { | |
"responses": { | |
"200": { | |
"description": "Success", | |
"headers": {}, | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object" | |
} | |
} | |
} | |
}, | |
"401": { | |
"description": "Unauthorized" | |
}, | |
"403": { | |
"description": "Forbidden" | |
}, | |
"404": { | |
"description": "Not Found" | |
} | |
}, | |
"parameters": [ | |
{ | |
"name": "id", | |
"description": "The recipe id.", | |
"schema": { | |
"type": "number", | |
"example": 1003464 | |
}, | |
"required": true, | |
"style": "simple", | |
"explode": false, | |
"in": "path" | |
} | |
], | |
"externalDocs": { | |
"description": "Read entire docs", | |
"url": "https://spoonacular.com/food-api/docs#Get-Recipe-Ingredients-by-ID" | |
}, | |
"summary": "Get Recipe Ingredients by ID", | |
"description": "Get a recipe's ingredient list.", | |
"operationId": "getRecipeIngredientsByID", | |
"deprecated": false | |
} | |
}, | |
"/recipes/{id}/nutritionWidget.json": { | |
"get": { | |
"responses": { | |
"200": { | |
"description": "Success", | |
"headers": {}, | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object" | |
} | |
} | |
} | |
}, | |
"401": { | |
"description": "Unauthorized" | |
}, | |
"403": { | |
"description": "Forbidden" | |
}, | |
"404": { | |
"description": "Not Found" | |
} | |
}, | |
"parameters": [ | |
{ | |
"name": "id", | |
"description": "The recipe id.", | |
"schema": { | |
"type": "number", | |
"example": 1003464 | |
}, | |
"required": true, | |
"style": "simple", | |
"explode": false, | |
"in": "path" | |
} | |
], | |
"externalDocs": { | |
"description": "Read entire docs", | |
"url": "https://spoonacular.com/food-api/docs#Get-Recipe-Nutrition-Widget-by-ID" | |
}, | |
"summary": "Get Recipe Nutrition Widget by ID", | |
"description": "Get a recipe's nutrition widget data.", | |
"operationId": "getRecipeNutritionWidgetByID", | |
"deprecated": false | |
} | |
}, | |
"/recipes/{id}/analyzedInstructions": { | |
"get": { | |
"responses": { | |
"200": { | |
"description": "Success", | |
"headers": {}, | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object" | |
} | |
} | |
} | |
}, | |
"401": { | |
"description": "Unauthorized" | |
}, | |
"403": { | |
"description": "Forbidden" | |
}, | |
"404": { | |
"description": "Not Found" | |
} | |
}, | |
"parameters": [ | |
{ | |
"name": "id", | |
"description": "The recipe id.", | |
"schema": { | |
"type": "number", | |
"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 | |
} | |
}, | |
"/recipes/extract": { | |
"get": { | |
"responses": { | |
"200": { | |
"description": "Success", | |
"headers": {}, | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object" | |
} | |
} | |
} | |
}, | |
"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" | |
} | |
], | |
"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 | |
} | |
}, | |
"/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": "number", | |
"example": 1082038 | |
}, | |
"required": true, | |
"style": "simple", | |
"explode": false, | |
"in": "path" | |
}, | |
{ | |
"name": "defaultCss", | |
"description": "Whether the default CSS should be added to the response.", | |
"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#Visualize-Recipe-Ingredients-by-ID" | |
}, | |
"summary": "Visualize Recipe Ingredients by ID", | |
"description": "Visualize a recipe's ingredient list.", | |
"operationId": "visualizeRecipeIngredientsByID", | |
"deprecated": false | |
} | |
}, | |
"/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": "number", | |
"example": 69095 | |
}, | |
"required": true, | |
"style": "simple", | |
"explode": false, | |
"in": "path" | |
} | |
], | |
"externalDocs": { | |
"description": "Read entire docs", | |
"url": "https://spoonacular.com/food-api/docs#Visualize-Recipe-Taste-by-ID" | |
}, | |
"summary": "Visualize Recipe Taste by ID", | |
"description": "Get a recipe's taste. The tastes supported are sweet, salty, sour, bitter, savory, and fatty.", | |
"operationId": "visualizeRecipeTasteByID", | |
"deprecated": false | |
} | |
}, | |
"/recipes/{id}/equipmentWidget": { | |
"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": "number", | |
"example": 44860 | |
}, | |
"required": true, | |
"style": "simple", | |
"explode": false, | |
"in": "path" | |
}, | |
{ | |
"name": "defaultCss", | |
"description": "Whether the default CSS should be added to the response.", | |
"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#Visualize-Recipe-Equipment-by-ID" | |
}, | |
"summary": "Visualize Recipe Equipment by ID", | |
"description": "Visualize a recipe's equipment list.", | |
"operationId": "visualizeRecipeEquipmentByID", | |
"deprecated": false | |
} | |
}, | |
"/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": "number", | |
"example": 1082038 | |
}, | |
"required": true, | |
"style": "simple", | |
"explode": false, | |
"in": "path" | |
}, | |
{ | |
"name": "defaultCss", | |
"description": "Whether the default CSS should be added to the response.", | |
"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#Visualize-Recipe-Price-Breakdown-by-ID" | |
}, | |
"summary": "Visualize Recipe Price Breakdown by ID", | |
"description": "Visualize a recipe's price breakdown.", | |
"operationId": "visualizeRecipePriceBreakdownByID", | |
"deprecated": false | |
} | |
}, | |
"/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": { | |
"required": [ | |
"ingredientList" | |
], | |
"type": "object", | |
"properties": { | |
"ingredientList": { | |
"type": "string", | |
"description": "The ingredient list of the recipe, one ingredient per line.", | |
"example": "1 lemon" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"parameters": [], | |
"externalDocs": { | |
"description": "Read entire docs", | |
"url": "https://spoonacular.com/food-api/docs#Visualize-Recipe-Taste" | |
}, | |
"summary": "Visualize Recipe Taste", | |
"description": "Visualize a recipe's taste information as HTML including CSS. You can play around with that endpoint!", | |
"operationId": "visualizeRecipeTaste", | |
"deprecated": false | |
} | |
}, | |
"/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": { | |
"required": [ | |
"ingredientList", | |
"servings" | |
], | |
"type": "object", | |
"properties": { | |
"ingredientList": { | |
"type": "string", | |
"description": "The ingredient list of the recipe, one ingredient per line.", | |
"example": "3 oz flour" | |
}, | |
"servings": { | |
"type": "number", | |
"description": "The number of servings.", | |
"example": 2 | |
}, | |
"defaultCss": { | |
"type": "boolean", | |
"description": "Whether the default CSS should be added to the response.", | |
"example": true | |
}, | |
"showBacklink": { | |
"type": "boolean", | |
"description": "Whether to show a backlink to spoonacular. If set false, this call counts against your quota.", | |
"example": true | |
} | |
} | |
} | |
} | |
} | |
}, | |
"parameters": [], | |
"externalDocs": { | |
"description": "Read entire docs", | |
"url": "https://spoonacular.com/food-api/docs#Visualize-Recipe-Nutrition" | |
}, | |
"summary": "Visualize Recipe Nutrition", | |
"description": "Visualize a recipe's nutritional information as HTML including CSS. You can play around with that endpoint!", | |
"operationId": "visualizeRecipeNutrition", | |
"deprecated": false | |
} | |
}, | |
"/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": { | |
"required": [ | |
"ingredientList", | |
"servings" | |
], | |
"type": "object", | |
"properties": { | |
"ingredientList": { | |
"type": "string", | |
"description": "The ingredient list of the recipe, one ingredient per line.", | |
"example": "3 oz flour" | |
}, | |
"servings": { | |
"type": "number", | |
"description": "The number of servings.", | |
"example": 2 | |
}, | |
"mode": { | |
"type": "number", | |
"description": "The mode in which the widget should be delivered. 1 = separate views (compact), 2 = all in one view (full).", | |
"example": 1 | |
}, | |
"defaultCss": { | |
"type": "boolean", | |
"description": "Whether the default CSS should be added to the response.", | |
"example": true | |
}, | |
"showBacklink": { | |
"type": "boolean", | |
"description": "Whether to show a backlink to spoonacular. If set false, this call counts against your quota.", | |
"example": true | |
} | |
} | |
} | |
} | |
} | |
}, | |
"parameters": [], | |
"externalDocs": { | |
"description": "Read entire docs", | |
"url": "https://spoonacular.com/food-api/docs#Visualize-Price-Breakdown" | |
}, | |
"summary": "Visualize Price Breakdown", | |
"description": "Visualize the price breakdown of a recipe. You can play around with that endpoint!", | |
"operationId": "visualizePriceBreakdown", | |
"deprecated": false | |
} | |
}, | |
"/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": { | |
"required": [ | |
"instructions" | |
], | |
"type": "object", | |
"properties": { | |
"instructions": { | |
"type": "string", | |
"description": "The recipe's instructions.", | |
"example": "Preheat oven. Cut cucumber with a knife and put in a blender." | |
}, | |
"view": { | |
"type": "string", | |
"description": "How to visualize the equipment, either \"grid\" or \"list\".", | |
"example": "grid" | |
}, | |
"defaultCss": { | |
"type": "boolean", | |
"description": "Whether the default CSS should be added to the response.", | |
"example": true | |
}, | |
"showBacklink": { | |
"type": "boolean", | |
"description": "Whether to show a backlink to spoonacular. If set false, this call counts against your quota.", | |
"example": true | |
} | |
} | |
} | |
} | |
} | |
}, | |
"parameters": [], | |
"externalDocs": { | |
"description": "Read entire docs", | |
"url": "https://spoonacular.com/food-api/docs#Visualize-Equipment" | |
}, | |
"summary": "Visualize Equipment", | |
"description": "Visualize the equipment used to make a recipe. You can play around with that endpoint!", | |
"operationId": "visualizeEquipment", | |
"deprecated": false | |
} | |
}, | |
"/recipes/{id}/summary": { | |
"get": { | |
"responses": { | |
"200": { | |
"description": "Success", | |
"headers": {}, | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object" | |
} | |
} | |
} | |
}, | |
"401": { | |
"description": "Unauthorized" | |
}, | |
"403": { | |
"description": "Forbidden" | |
}, | |
"404": { | |
"description": "Not Found" | |
} | |
}, | |
"parameters": [ | |
{ | |
"name": "id", | |
"description": "The recipe id.", | |
"schema": { | |
"type": "number", | |
"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 | |
} | |
}, | |
"/recipes/visualizeRecipe": { | |
"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": { | |
"multipart/form-data": { | |
"schema": { | |
"required": [ | |
"title", | |
"image", | |
"ingredients", | |
"instructions", | |
"readyInMinutes", | |
"servings", | |
"mask", | |
"backgroundImage" | |
], | |
"type": "object", | |
"properties": { | |
"title": { | |
"type": "string", | |
"description": "The title of the recipe.", | |
"example": "My recipe" | |
}, | |
"image": { | |
"type": "string", | |
"format": "binary", | |
"description": "The binary image of the recipe as jpg.", | |
"example": "" | |
}, | |
"ingredients": { | |
"type": "string", | |
"description": "The ingredient list of the recipe, one ingredient per line (separate lines with \\n).", | |
"example": "2 cups of green beans" | |
}, | |
"instructions": { | |
"type": "string", | |
"description": "The instructions to make the recipe. One step per line (separate lines with \\n).", | |
"example": "cook the beans" | |
}, | |
"readyInMinutes": { | |
"type": "number", | |
"description": "The number of minutes it takes to get the recipe on the table.", | |
"example": 60 | |
}, | |
"servings": { | |
"type": "number", | |
"description": "The number of servings the recipe makes.", | |
"example": 2 | |
}, | |
"mask": { | |
"type": "string", | |
"description": "The mask to put over the recipe image (\"ellipseMask\", \"diamondMask\", \"starMask\", \"heartMask\", \"potMask\", \"fishMask\").", | |
"example": "ellipseMask" | |
}, | |
"backgroundImage": { | |
"type": "string", | |
"description": "The background image (\"none\",\"background1\", or \"background2\").", | |
"example": "background1" | |
}, | |
"author": { | |
"type": "string", | |
"description": "The author of the recipe.", | |
"example": "Anna Banana" | |
}, | |
"backgroundColor": { | |
"type": "string", | |
"description": "The background color for the recipe card as a hex-string.", | |
"example": "#ffffff" | |
}, | |
"fontColor": { | |
"type": "string", | |
"description": "The font color for the recipe card as a hex-string.", | |
"example": "#333333" | |
}, | |
"source": { | |
"type": "string", | |
"description": "The source of the recipe.", | |
"example": "spoonacular.com" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"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 | |
} | |
}, | |
"/recipes/analyzeInstructions": { | |
"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/x-www-form-urlencoded": { | |
"schema": { | |
"required": [ | |
"instructions" | |
], | |
"type": "object", | |
"properties": { | |
"instructions": { | |
"type": "string", | |
"description": "The instructions to be analyzed.", | |
"example": "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 | |
} | |
}, | |
"/recipes/cuisine": { | |
"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/x-www-form-urlencoded": { | |
"schema": { | |
"required": [ | |
"title", | |
"ingredientList" | |
], | |
"type": "object", | |
"properties": { | |
"title": { | |
"type": "string", | |
"description": "The title of the recipe.", | |
"example": "Pork roast with green beans" | |
}, | |
"ingredientList": { | |
"type": "string", | |
"description": "The ingredient list of the recipe, one ingredient per line (separate lines with \\n).", | |
"example": "3 oz pork shoulder" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"parameters": [], | |
"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 | |
} | |
}, | |
"/recipes/queries/analyze": { | |
"get": { | |
"responses": { | |
"200": { | |
"description": "Success", | |
"headers": {}, | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object" | |
} | |
} | |
} | |
}, | |
"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 | |
} | |
}, | |
"/recipes/convert": { | |
"get": { | |
"responses": { | |
"200": { | |
"description": "Success", | |
"headers": {}, | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object" | |
} | |
} | |
} | |
}, | |
"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 | |
} | |
}, | |
"/recipes/parseIngredients": { | |
"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/x-www-form-urlencoded": { | |
"schema": { | |
"required": [ | |
"ingredientList", | |
"servings" | |
], | |
"type": "object", | |
"properties": { | |
"ingredientList": { | |
"type": "string", | |
"description": "The ingredient list of the recipe, one ingredient per line.", | |
"example": "1 cup green tea" | |
}, | |
"servings": { | |
"type": "number", | |
"description": "The number of servings that you can make from the ingredients.", | |
"example": 1 | |
}, | |
"includeNutrition": { | |
"type": "boolean", | |
"description": "Whether nutrition data should be added to correctly parsed ingredients.", | |
"example": true | |
} | |
} | |
} | |
} | |
} | |
}, | |
"parameters": [], | |
"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 | |
} | |
}, | |
"/food/ingredients/glycemicLoad": { | |
"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": {} | |
} | |
} | |
} | |
}, | |
"parameters": [], | |
"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 | |
} | |
}, | |
"/food/ingredients/autocomplete": { | |
"get": { | |
"responses": { | |
"200": { | |
"description": "Success", | |
"headers": {}, | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object" | |
} | |
} | |
} | |
}, | |
"401": { | |
"description": "Unauthorized" | |
}, | |
"403": { | |
"description": "Forbidden" | |
}, | |
"404": { | |
"description": "Not Found" | |
} | |
}, | |
"parameters": [ | |
{ | |
"name": "query", | |
"description": "The partial or full ingredient name.", | |
"schema": { | |
"type": "string", | |
"example": "appl" | |
}, | |
"required": true, | |
"style": "form", | |
"explode": false, | |
"in": "query" | |
}, | |
{ | |
"name": "number", | |
"description": "The number of results to return (between 1 and 100).", | |
"schema": { | |
"type": "number", | |
"example": 10 | |
}, | |
"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" | |
} | |
], | |
"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 | |
} | |
}, | |
"/food/ingredients/search": { | |
"get": { | |
"responses": { | |
"200": { | |
"description": "Success", | |
"headers": {}, | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object" | |
} | |
} | |
} | |
}, | |
"401": { | |
"description": "Unauthorized" | |
}, | |
"403": { | |
"description": "Forbidden" | |
}, | |
"404": { | |
"description": "Not Found" | |
} | |
}, | |
"parameters": [ | |
{ | |
"name": "query", | |
"description": "The partial or full ingredient name.", | |
"schema": { | |
"type": "string", | |
"example": "apple" | |
}, | |
"required": true, | |
"style": "form", | |
"explode": false, | |
"in": "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" | |
}, | |
{ | |
"name": "offset", | |
"description": "The number of results to skip (between 0 and 990).", | |
"schema": { | |
"type": "number", | |
"example": 0 | |
}, | |
"required": false, | |
"style": "form", | |
"explode": false, | |
"in": "query" | |
}, | |
{ | |
"name": "number", | |
"description": "The number of expected results (between 1 and 100).", | |
"schema": { | |
"type": "number", | |
"example": 10 | |
}, | |
"required": false, | |
"style": "form", | |
"explode": false, | |
"in": "query" | |
} | |
], | |
"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 | |
} | |
}, | |
"/food/ingredients/substitutes": { | |
"get": { | |
"responses": { | |
"200": { | |
"description": "Success", | |
"headers": {}, | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object" | |
} | |
} | |
} | |
}, | |
"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 | |
} | |
}, | |
"/food/ingredients/{id}/substitutes": { | |
"get": { | |
"responses": { | |
"200": { | |
"description": "Success", | |
"headers": {}, | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object" | |
} | |
} | |
} | |
}, | |
"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": "number", | |
"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 | |
} | |
}, | |
"/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": { | |
"required": [ | |
"ingredientList", | |
"servings" | |
], | |
"type": "object", | |
"properties": { | |
"ingredientList": { | |
"type": "string", | |
"description": "The ingredient list of the recipe, one ingredient per line.", | |
"example": "3 oz flour" | |
}, | |
"servings": { | |
"type": "number", | |
"description": "The number of servings.", | |
"example": 2 | |
}, | |
"measure": { | |
"type": "string", | |
"description": "The original system of measurement, either \"metric\" or \"us\".", | |
"example": "metric" | |
}, | |
"view": { | |
"type": "string", | |
"description": "How to visualize the ingredients, either \"grid\" or \"list\".", | |
"example": "grid" | |
}, | |
"defaultCss": { | |
"type": "boolean", | |
"description": "Whether the default CSS should be added to the response.", | |
"example": true | |
}, | |
"showBacklink": { | |
"type": "boolean", | |
"description": "Whether to show a backlink to spoonacular. If set false, this call counts against your quota.", | |
"example": true | |
} | |
} | |
} | |
} | |
} | |
}, | |
"parameters": [], | |
"externalDocs": { | |
"description": "Read entire docs", | |
"url": "https://spoonacular.com/food-api/docs#Visualize-Ingredients" | |
}, | |
"summary": "Visualize Ingredients", | |
"description": "Visualize ingredients of a recipe. You can play around with that endpoint!", | |
"operationId": "visualizeIngredients", | |
"deprecated": false | |
} | |
}, | |
"/food/products/{id}": { | |
"get": { | |
"responses": { | |
"200": { | |
"description": "Success", | |
"headers": {}, | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object" | |
} | |
} | |
} | |
}, | |
"401": { | |
"description": "Unauthorized" | |
}, | |
"403": { | |
"description": "Forbidden" | |
}, | |
"404": { | |
"description": "Not Found" | |
} | |
}, | |
"parameters": [ | |
{ | |
"name": "id", | |
"description": "The id of the packaged food.", | |
"schema": { | |
"type": "number", | |
"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 | |
} | |
}, | |
"/food/products/search": { | |
"get": { | |
"responses": { | |
"200": { | |
"description": "Success", | |
"headers": {}, | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object" | |
} | |
} | |
} | |
}, | |
"401": { | |
"description": "Unauthorized" | |
}, | |
"403": { | |
"description": "Forbidden" | |
}, | |
"404": { | |
"description": "Not Found" | |
} | |
}, | |
"parameters": [ | |
{ | |
"name": "query", | |
"description": "The search query.", | |
"schema": { | |
"type": "string", | |
"example": "greek yogurt" | |
}, | |
"required": true, | |
"style": "form", | |
"explode": false, | |
"in": "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" | |
}, | |
{ | |
"name": "offset", | |
"description": "The number of results to skip (between 0 and 990).", | |
"schema": { | |
"type": "number", | |
"example": 0 | |
}, | |
"required": false, | |
"style": "form", | |
"explode": false, | |
"in": "query" | |
}, | |
{ | |
"name": "number", | |
"description": "The number of expected results (between 1 and 100).", | |
"schema": { | |
"type": "number", | |
"example": 10 | |
}, | |
"required": false, | |
"style": "form", | |
"explode": false, | |
"in": "query" | |
} | |
], | |
"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 | |
} | |
}, | |
"/food/products/upc/{upc}": { | |
"get": { | |
"responses": { | |
"200": { | |
"description": "Success", | |
"headers": {}, | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object" | |
} | |
} | |
} | |
}, | |
"401": { | |
"description": "Unauthorized" | |
}, | |
"403": { | |
"description": "Forbidden" | |
}, | |
"404": { | |
"description": "Not Found" | |
} | |
}, | |
"parameters": [ | |
{ | |
"name": "upc", | |
"description": "The product's UPC.", | |
"schema": { | |
"type": "number", | |
"example": 41631000564 | |
}, | |
"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 | |
} | |
}, | |
"/food/customFoods/search": { | |
"get": { | |
"responses": { | |
"200": { | |
"description": "Success", | |
"headers": {}, | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object" | |
} | |
} | |
} | |
}, | |
"401": { | |
"description": "Unauthorized" | |
}, | |
"403": { | |
"description": "Forbidden" | |
}, | |
"404": { | |
"description": "Not Found" | |
} | |
}, | |
"parameters": [ | |
{ | |
"name": "query", | |
"description": "The search query.", | |
"schema": { | |
"type": "string", | |
"example": "brat" | |
}, | |
"required": true, | |
"style": "form", | |
"explode": false, | |
"in": "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" | |
}, | |
{ | |
"name": "offset", | |
"description": "The number of results to skip (between 0 and 990).", | |
"schema": { | |
"type": "number", | |
"example": 0 | |
}, | |
"required": false, | |
"style": "form", | |
"explode": false, | |
"in": "query" | |
}, | |
{ | |
"name": "number", | |
"description": "The number of expected results (between 1 and 100).", | |
"schema": { | |
"type": "number", | |
"example": 10 | |
}, | |
"required": false, | |
"style": "form", | |
"explode": false, | |
"in": "query" | |
} | |
], | |
"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 | |
} | |
}, | |
"/food/products/upc/{upc}/comparable": { | |
"get": { | |
"responses": { | |
"200": { | |
"description": "Success", | |
"headers": {}, | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object" | |
} | |
} | |
} | |
}, | |
"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": "number", | |
"example": 33698816271 | |
}, | |
"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 | |
} | |
}, | |
"/food/products/suggest": { | |
"get": { | |
"responses": { | |
"200": { | |
"description": "Success", | |
"headers": {}, | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object" | |
} | |
} | |
} | |
}, | |
"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": "number", | |
"example": 10 | |
}, | |
"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 | |
} | |
}, | |
"/food/products/{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 id of the product.", | |
"schema": { | |
"type": "number", | |
"example": 7657 | |
}, | |
"required": true, | |
"style": "simple", | |
"explode": false, | |
"in": "path" | |
}, | |
{ | |
"name": "defaultCss", | |
"description": "Whether the default CSS should be added to the response.", | |
"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#Visualize-Product-Nutrition-by-ID" | |
}, | |
"summary": "Visualize Product Nutrition by ID", | |
"description": "Visualize a product's nutritional information as HTML including CSS.", | |
"operationId": "visualizeProductNutritionByID", | |
"deprecated": false | |
} | |
}, | |
"/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": "number", | |
"example": 1082038 | |
}, | |
"required": true, | |
"style": "simple", | |
"explode": false, | |
"in": "path" | |
}, | |
{ | |
"name": "defaultCss", | |
"description": "Whether the default CSS should be added to the response.", | |
"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#Visualize-Recipe-Nutrition-by-ID" | |
}, | |
"summary": "Visualize Recipe Nutrition by ID", | |
"description": "Visualize a recipe's nutritional information as HTML including CSS.", | |
"operationId": "visualizeRecipeNutritionByID", | |
"deprecated": false | |
} | |
}, | |
"/food/products/classify": { | |
"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": { | |
"locale": { | |
"type": "string", | |
"description": "The display name of the returned category, supported is en_US (for American English) and en_GB (for British English).", | |
"example": "en_US" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"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" | |
}, | |
"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 | |
} | |
}, | |
"/food/products/classifyBatch": { | |
"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": "array", | |
"items": { | |
"properties": { | |
"locale": { | |
"type": "string", | |
"description": "The display name of the returned category, supported is en_US (for American English) and en_GB (for British English).", | |
"example": "en_US" | |
} | |
} | |
} | |
} | |
} | |
} | |
}, | |
"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 | |
} | |
}, | |
"/food/ingredients/map": { | |
"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": {} | |
} | |
} | |
} | |
}, | |
"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 | |
} | |
}, | |
"/recipes/guessNutrition": { | |
"get": { | |
"responses": { | |
"200": { | |
"description": "Success", | |
"headers": {}, | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object" | |
} | |
} | |
} | |
}, | |
"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 | |
} | |
}, | |
"/food/menuItems/suggest": { | |
"get": { | |
"responses": { | |
"200": { | |
"description": "Success", | |
"headers": {}, | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object" | |
} | |
} | |
} | |
}, | |
"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": "number", | |
"example": 10 | |
}, | |
"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 | |
} | |
}, | |
"/food/menuItems/search": { | |
"get": { | |
"responses": { | |
"200": { | |
"description": "Success", | |
"headers": {}, | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object" | |
} | |
} | |
} | |
}, | |
"401": { | |
"description": "Unauthorized" | |
}, | |
"403": { | |
"description": "Forbidden" | |
}, | |
"404": { | |
"description": "Not Found" | |
} | |
}, | |
"parameters": [ | |
{ | |
"name": "query", | |
"description": "The search query.", | |
"schema": { | |
"type": "string", | |
"example": "snickers" | |
}, | |
"required": true, | |
"style": "form", | |
"explode": false, | |
"in": "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" | |
}, | |
{ | |
"name": "offset", | |
"description": "The offset number for paging (between 0 and 990).", | |
"schema": { | |
"type": "number", | |
"example": 0 | |
}, | |
"required": false, | |
"style": "form", | |
"explode": false, | |
"in": "query" | |
}, | |
{ | |
"name": "number", | |
"description": "The number of expected results (between 1 and 10).", | |
"schema": { | |
"type": "number", | |
"example": 100 | |
}, | |
"required": false, | |
"style": "form", | |
"explode": false, | |
"in": "query" | |
} | |
], | |
"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 | |
} | |
}, | |
"/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": "number", | |
"example": 1003464 | |
}, | |
"required": true, | |
"style": "simple", | |
"explode": false, | |
"in": "path" | |
}, | |
{ | |
"name": "defaultCss", | |
"description": "Whether the default CSS should be added to the response.", | |
"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#Visualize-Menu-Item-Nutrition-by-ID" | |
}, | |
"summary": "Visualize Menu Item Nutrition by ID", | |
"description": "Visualize a menu item's nutritional information as HTML including CSS.", | |
"operationId": "visualizeMenuItemNutritionByID", | |
"deprecated": false | |
} | |
}, | |
"/food/menuItems/{id}": { | |
"get": { | |
"responses": { | |
"200": { | |
"description": "Success", | |
"headers": {}, | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object" | |
} | |
} | |
} | |
}, | |
"401": { | |
"description": "Unauthorized" | |
}, | |
"403": { | |
"description": "Forbidden" | |
}, | |
"404": { | |
"description": "Not Found" | |
} | |
}, | |
"parameters": [ | |
{ | |
"name": "id", | |
"description": "The menu item id.", | |
"schema": { | |
"type": "number", | |
"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 | |
} | |
}, | |
"/mealplanner/generate": { | |
"get": { | |
"responses": { | |
"200": { | |
"description": "Success", | |
"headers": {}, | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object" | |
} | |
} | |
} | |
}, | |
"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 | |
} | |
}, | |
"/mealplanner/{username}/week/{start-date}": { | |
"get": { | |
"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": "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" | |
}, | |
{ | |
"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#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 | |
} | |
}, | |
"/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" | |
} | |
}, | |
"requestBody": { | |
"required": true, | |
"content": { | |
"": { | |
"schema": { | |
"required": [ | |
"username", | |
"date", | |
"hash" | |
], | |
"type": "object", | |
"properties": { | |
"username": { | |
"type": "string", | |
"description": "The username.", | |
"example": "dsky" | |
}, | |
"date": { | |
"type": "string", | |
"description": "The date in the format yyyy-mm-dd.", | |
"example": "2020-06-01" | |
}, | |
"hash": { | |
"type": "string", | |
"description": "The private hash for the username.", | |
"example": "4b5v4398573406" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"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" | |
}, | |
{ | |
"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#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 | |
} | |
}, | |
"/mealplanner/{username}/items": { | |
"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": { | |
"": { | |
"schema": { | |
"required": [ | |
"username", | |
"hash" | |
], | |
"type": "object", | |
"properties": { | |
"username": { | |
"type": "string", | |
"description": "The username.", | |
"example": "dsky" | |
}, | |
"hash": { | |
"type": "string", | |
"description": "The private hash for the username.", | |
"example": "4b5v4398573406" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"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-to-Meal-Plan" | |
}, | |
"summary": "Add to Meal Plan", | |
"description": "Add an item to the user's meal plan.", | |
"operationId": "addToMealPlan", | |
"deprecated": false | |
} | |
}, | |
"/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" | |
} | |
}, | |
"requestBody": { | |
"required": true, | |
"content": { | |
"": { | |
"schema": { | |
"required": [ | |
"username", | |
"id", | |
"hash" | |
], | |
"type": "object", | |
"properties": { | |
"username": { | |
"type": "string", | |
"description": "The username.", | |
"example": "dsky" | |
}, | |
"id": { | |
"type": "number", | |
"description": "The shopping list item id.", | |
"example": 15678 | |
}, | |
"hash": { | |
"type": "string", | |
"description": "The private hash for the username.", | |
"example": "4b5v4398573406" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"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": "number", | |
"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-from-Meal-Plan" | |
}, | |
"summary": "Delete from Meal Plan", | |
"description": "Delete an item from the user's meal plan.", | |
"operationId": "deleteFromMealPlan", | |
"deprecated": false | |
} | |
}, | |
"/mealplanner/{username}/templates": { | |
"get": { | |
"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": "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#Get-Meal-Plan-Templates" | |
}, | |
"summary": "Get Meal Plan Templates", | |
"description": "Get meal plan templates from user or public ones.", | |
"operationId": "getMealPlanTemplates", | |
"deprecated": false | |
} | |
}, | |
"/mealplanner/{username}/templates/{id}": { | |
"get": { | |
"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": "number", | |
"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#Get-Meal-Plan-Template" | |
}, | |
"summary": "Get Meal Plan Template", | |
"description": "Get information about a meal plan template.", | |
"operationId": "getMealPlanTemplate", | |
"deprecated": false | |
} | |
}, | |
"/mealplanner/{username}/shopping-list": { | |
"get": { | |
"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": "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#Get-Shopping-List" | |
}, | |
"summary": "Get Shopping List", | |
"description": "Get the current shopping list for the given user.", | |
"operationId": "getShoppingList", | |
"deprecated": false | |
} | |
}, | |
"/mealplanner/{username}/shopping-list/{start-date}/{end-date}": { | |
"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": { | |
"": { | |
"schema": { | |
"required": [ | |
"username", | |
"start-date", | |
"end-date", | |
"hash" | |
], | |
"type": "object", | |
"properties": { | |
"username": { | |
"type": "string", | |
"description": "The username.", | |
"example": "dsky" | |
}, | |
"start-date": { | |
"type": "string", | |
"description": "The start date in the format yyyy-mm-dd.", | |
"example": "2020-06-01" | |
}, | |
"end-date": { | |
"type": "string", | |
"description": "The end date in the format yyyy-mm-dd.", | |
"example": "2020-06-07" | |
}, | |
"hash": { | |
"type": "string", | |
"description": "The private hash for the username.", | |
"example": "4b5v4398573406" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"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" | |
}, | |
{ | |
"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#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 | |
} | |
}, | |
"/users/connect": { | |
"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": { | |
"": { | |
"schema": { | |
"type": "object", | |
"properties": {} | |
} | |
} | |
} | |
}, | |
"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 | |
} | |
}, | |
"/mealplanner/{username}/shopping-list/items": { | |
"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": { | |
"": { | |
"schema": { | |
"required": [ | |
"username", | |
"hash" | |
], | |
"type": "object", | |
"properties": { | |
"username": { | |
"type": "string", | |
"description": "The username.", | |
"example": "dsky" | |
}, | |
"hash": { | |
"type": "string", | |
"description": "The private hash for the username.", | |
"example": "4b5v4398573406" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"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-to-Shopping-List" | |
}, | |
"summary": "Add to Shopping List", | |
"description": "Add an item to the current shopping list of a user.", | |
"operationId": "addToShoppingList", | |
"deprecated": false | |
} | |
}, | |
"/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" | |
} | |
}, | |
"requestBody": { | |
"required": true, | |
"content": { | |
"": { | |
"schema": { | |
"required": [ | |
"username", | |
"id", | |
"hash" | |
], | |
"type": "object", | |
"properties": { | |
"username": { | |
"type": "string", | |
"description": "The username.", | |
"example": "dsky" | |
}, | |
"id": { | |
"type": "number", | |
"description": "The shopping list item id.", | |
"example": 15678 | |
}, | |
"hash": { | |
"type": "string", | |
"description": "The private hash for the username.", | |
"example": "4b5v4398573406" | |
} | |
} | |
} | |
} | |
} | |
}, | |
"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": "number", | |
"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-from-Shopping-List" | |
}, | |
"summary": "Delete from Shopping List", | |
"description": "Delete an item from the current shopping list of the user.", | |
"operationId": "deleteFromShoppingList", | |
"deprecated": false | |
} | |
}, | |
"/food/wine/dishes": { | |
"get": { | |
"responses": { | |
"200": { | |
"description": "Success", | |
"headers": {}, | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object" | |
} | |
} | |
} | |
}, | |
"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#Get-Dish-Pairing-for-Wine" | |
}, | |
"summary": "Get Dish Pairing for Wine", | |
"description": "Find a dish that goes well with a given wine.", | |
"operationId": "getDishPairingForWine", | |
"deprecated": false | |
} | |
}, | |
"/food/wine/pairing": { | |
"get": { | |
"responses": { | |
"200": { | |
"description": "Success", | |
"headers": {}, | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object" | |
} | |
} | |
} | |
}, | |
"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#Get-Wine-Pairing" | |
}, | |
"summary": "Get 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 | |
} | |
}, | |
"/food/wine/description": { | |
"get": { | |
"responses": { | |
"200": { | |
"description": "Success", | |
"headers": {}, | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object" | |
} | |
} | |
} | |
}, | |
"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#Get-Wine-Description" | |
}, | |
"summary": "Get Wine Description", | |
"description": "Get a simple description of a certain wine, e.g. \"malbec\", \"riesling\", or \"merlot\".", | |
"operationId": "getWineDescription", | |
"deprecated": false | |
} | |
}, | |
"/food/wine/recommendation": { | |
"get": { | |
"responses": { | |
"200": { | |
"description": "Success", | |
"headers": {}, | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object" | |
} | |
} | |
} | |
}, | |
"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 | |
}, | |
"required": false, | |
"style": "form", | |
"explode": false, | |
"in": "query" | |
} | |
], | |
"externalDocs": { | |
"description": "Read entire docs", | |
"url": "https://spoonacular.com/food-api/docs#Get-Wine-Recommendation" | |
}, | |
"summary": "Get Wine Recommendation", | |
"description": "Get a specific wine recommendation (concrete product) for a given wine type, e.g. \"merlot\".", | |
"operationId": "getWineRecommendation", | |
"deprecated": false | |
} | |
}, | |
"/food/images/classify": { | |
"get": { | |
"responses": { | |
"200": { | |
"description": "Success", | |
"headers": {}, | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object" | |
} | |
} | |
} | |
}, | |
"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. You can play around with that endpoint!", | |
"operationId": "imageClassificationByURL", | |
"deprecated": false | |
} | |
}, | |
"/food/images/analyze": { | |
"get": { | |
"responses": { | |
"200": { | |
"description": "Success", | |
"headers": {}, | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object" | |
} | |
} | |
} | |
}, | |
"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. You can play around with that endpoint!", | |
"operationId": "imageAnalysisByURL", | |
"deprecated": false | |
} | |
}, | |
"/recipes/quickAnswer": { | |
"get": { | |
"responses": { | |
"200": { | |
"description": "Success", | |
"headers": {}, | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object" | |
} | |
} | |
} | |
}, | |
"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 | |
} | |
}, | |
"/food/detect": { | |
"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/x-www-form-urlencoded": { | |
"schema": { | |
"required": [ | |
"text" | |
], | |
"type": "object", | |
"properties": { | |
"text": { | |
"type": "string", | |
"description": "The text in which food items, such as dish names and ingredients, should be detected in.", | |
"example": "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 | |
} | |
}, | |
"/food/site/search": { | |
"get": { | |
"responses": { | |
"200": { | |
"description": "Success", | |
"headers": {}, | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object" | |
} | |
} | |
} | |
}, | |
"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 | |
} | |
}, | |
"/food/search": { | |
"get": { | |
"responses": { | |
"200": { | |
"description": "Success", | |
"headers": {}, | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object" | |
} | |
} | |
} | |
}, | |
"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" | |
}, | |
{ | |
"name": "offset", | |
"description": "The number of results to skip (between 0 and 990).", | |
"schema": { | |
"type": "number", | |
"example": 0 | |
}, | |
"required": false, | |
"style": "form", | |
"explode": false, | |
"in": "query" | |
}, | |
{ | |
"name": "number", | |
"description": "The number of expected results (between 1 and 100).", | |
"schema": { | |
"type": "number", | |
"example": 10 | |
}, | |
"required": false, | |
"style": "form", | |
"explode": false, | |
"in": "query" | |
} | |
], | |
"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 | |
} | |
}, | |
"/food/videos/search": { | |
"get": { | |
"responses": { | |
"200": { | |
"description": "Success", | |
"headers": {}, | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object" | |
} | |
} | |
} | |
}, | |
"401": { | |
"description": "Unauthorized" | |
}, | |
"403": { | |
"description": "Forbidden" | |
}, | |
"404": { | |
"description": "Not Found" | |
} | |
}, | |
"parameters": [ | |
{ | |
"name": "query", | |
"description": "The search query.", | |
"schema": { | |
"type": "string", | |
"example": "chicken soup" | |
}, | |
"required": true, | |
"style": "form", | |
"explode": false, | |
"in": "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" | |
}, | |
{ | |
"name": "offset", | |
"description": "The number of results to skip (between 0 and 900).", | |
"schema": { | |
"type": "number", | |
"example": 0 | |
}, | |
"required": false, | |
"style": "form", | |
"explode": false, | |
"in": "query" | |
}, | |
{ | |
"name": "number", | |
"description": "The number of results to return (between 1 and 100).", | |
"schema": { | |
"type": "number", | |
"example": 10 | |
}, | |
"required": false, | |
"style": "form", | |
"explode": false, | |
"in": "query" | |
} | |
], | |
"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 | |
} | |
}, | |
"/food/jokes/random": { | |
"get": { | |
"responses": { | |
"200": { | |
"description": "Success", | |
"headers": {}, | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object" | |
} | |
} | |
} | |
}, | |
"401": { | |
"description": "Unauthorized" | |
}, | |
"403": { | |
"description": "Forbidden" | |
}, | |
"404": { | |
"description": "Not Found" | |
} | |
}, | |
"parameters": [], | |
"externalDocs": { | |
"description": "Read entire docs", | |
"url": "https://spoonacular.com/food-api/docs#Get-a-Random-Food-Joke" | |
}, | |
"summary": "Get a Random Food Joke", | |
"description": "Get a random joke that is related to food. Caution: this is an endpoint for adults!", | |
"operationId": "getARandomFoodJoke", | |
"deprecated": false | |
} | |
}, | |
"/food/trivia/random": { | |
"get": { | |
"responses": { | |
"200": { | |
"description": "Success", | |
"headers": {}, | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object" | |
} | |
} | |
} | |
}, | |
"401": { | |
"description": "Unauthorized" | |
}, | |
"403": { | |
"description": "Forbidden" | |
}, | |
"404": { | |
"description": "Not Found" | |
} | |
}, | |
"parameters": [], | |
"externalDocs": { | |
"description": "Read entire docs", | |
"url": "https://spoonacular.com/food-api/docs#Get-Random-Food-Trivia" | |
}, | |
"summary": "Get Random Food Trivia", | |
"description": "Returns random food trivia.", | |
"operationId": "getRandomFoodTrivia", | |
"deprecated": false | |
} | |
}, | |
"/food/ingredients/{id}/information": { | |
"get": { | |
"responses": { | |
"200": { | |
"description": "Success", | |
"headers": {}, | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object" | |
} | |
} | |
} | |
}, | |
"401": { | |
"description": "Unauthorized" | |
}, | |
"403": { | |
"description": "Forbidden" | |
}, | |
"404": { | |
"description": "Not Found" | |
} | |
}, | |
"parameters": [ | |
{ | |
"name": "id", | |
"description": "The ingredient id.", | |
"schema": { | |
"type": "number", | |
"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 | |
} | |
}, | |
"/food/converse": { | |
"get": { | |
"responses": { | |
"200": { | |
"description": "Success", | |
"headers": {}, | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object" | |
} | |
} | |
} | |
}, | |
"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 | |
} | |
}, | |
"/food/converse/suggest": { | |
"get": { | |
"responses": { | |
"200": { | |
"description": "Success", | |
"headers": {}, | |
"content": { | |
"application/json": { | |
"schema": { | |
"type": "object" | |
} | |
} | |
} | |
}, | |
"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#Get-Conversation-Suggests" | |
}, | |
"summary": "Get Conversation Suggests", | |
"description": "This endpoint returns suggestions for things the user can say or ask the chatbot.", | |
"operationId": "getConversationSuggests", | |
"deprecated": false | |
} | |
} | |
}, | |
"components": { | |
"schemas": {}, | |
"securitySchemes": { | |
"apiKeyScheme": { | |
"type": "apiKey", | |
"name": "api_key", | |
"in": "query" | |
} | |
} | |
}, | |
"tags": [], | |
"externalDocs": { | |
"description": "The official documentation.", | |
"url": "https://spoonacular.com/food-api/docs" | |
}, | |
"security": [ | |
{ | |
"apiKeyScheme": [] | |
} | |
] | |
} |
Sign up for free
to join this conversation on GitHub.
Already have an account?
Sign in to comment