Edamam
4.8
4.8/5

[┐∵]-

Food Information API

Food information API for searching for nutrition and diet information within Edamam's Food Database by Edamam
This food information API by Edamam maintains data with the purpose of searching for nutrition and diet information within Edamam’s Food Database. This database covers global data. Certain examples of the type of business who uses it are culinary and hobby websites, cooking app and platform developers, influencers, online shopping platforms, marketers and more, usually the customers might be small business, medium business and enterprises in the culinary, social media, food and grocery, restaurant and more industry. With the system customers can filter determined by app_id, app_key, ingr, upc, nutrition-type, health and more to get the response output customers need. There are boundless platforms that are being built using the food information data. Developers constantly come with new ideas to use the API, here are several possible cases; culinary applications, websites and blogs, website plugins, product marketing and more and surely there are more customers can think about.

Food Information API endpoints

GET
POST
GET
/api/food-database/v2/parser
/api/food-database/v2/nutrients
/auto-complete
GET /api/food-database/v2/parser
POST /api/food-database/v2/nutrients
GET /auto-complete
In order to receive a data response as in the example response, customers need to connect with the food and diet API endpoint by sending a GET request to the endpoint; /api/food-database/v2/parser with the right object parameters. The object table clarifies the available parameters and objects output descriptions. To make request, put the endpoint into the URL field. The API documentation works with all leading coding languages, just attach the API key parameter to the API endpoint URL and set it up to your private key to begin receiving the required data.

Data filters

Find here the filters available for the food information API.
Filters
app_id health nutrients[CHOCDF.net]
app_key calories nutrients[CHOLE]
ingr category nutrients[ENERC_KCAL]
upc nutrients[CA] nutrients[FAMS]
nutrition-type nutrients[CHOCDF] nutrients[FAPU]

Data objects for food information API

Understand the objects and the related description by using the table to be able to make use of the API also make use of the available parameters to be able to attain the required data output.
Objects Description
tags
name
paths
summary
description
name
in
collectionFormat
uniqueItems
items
type
enum

Output response of the food information API

Example output response of the endpoint call. There is more data available, it is limited to be able to make it readable. Opt-in for the API system and receive the complete response output.
				
					{
  "swagger": "2.0",
  "info": {
    "version": "2.0",
    "title": "",
    "description": ""
  },
  "schemes": [
    "https"
  ],
  "host": "api.edamam.com",
  "tags": [
    {
      "name": "Food Request Step 1 - Parser"
    },
    {
      "name": "Food Request Step 2 - Nutrients"
    },
    {
      "name": "Food Search Autocomplete"
    }
  ],
  "paths": {
    "/api/food-database/v2/parser": {
      "get": {
        "tags": [
          "Food Request Step 1 - Parser"
        ],
        "summary": "<b>Click here to view the documentation</b>",
        "description": "The parser access point handles text search for foods as well as filters for the foods like presence specific nutrient content or exclusion of allergens. <ul> <li>Search for a phrase or keyword using NLP to get food entities from it.</li> <li> Get basic nutrition facts and ingredients for each food </li> <li> Search for food by given nutrient quantity for 28 nutrients </li> <li> Search for foods within a given brand </li> <li> With the build in food-logging context it allows for requests which do not contain quantity and suggest expected quantities for them. </li> </ul>  <b>Access Point:</b> https://api.edamam.com/api/food-database/v2/parser",
        "parameters": [
          {
            "name": "app_id",
            "in": "query",
            "x-data-threescale-name": "app_ids",
            "description": "The application ID",
            "required": true,
            "type": "string"
          },
          {
            "name": "app_key",
            "in": "query",
            "x-data-threescale-name": "app_keys",
            "description": "The application key",
            "required": true,
            "type": "string"
          },
          {
            "name": "ingr",
            "in": "query",
            "description": "A keyword search parameter to be found in the food name. Not required when upc is present",
            "type": "string"
          },
          {
            "name": "upc",
            "in": "query",
            "description": " valid UPC, EAN, or PLU code. Not required when ingr is present",
            "type": "string"
          },
          {
            "name": "nutrition-type",
            "in": "query",
            "description": "Select between cooking and food logging processor.",
            "type": "string",
            "default": "cooking",
            "enum": [
              "cooking",
              "logging"
            ]
          },
          {
            "name": "health",
            "in": "query",
            "description": "Health label",
            "type": "array",
            "collectionFormat": "multi",
            "uniqueItems": true,
            "items": {
              "type": "string",
              "enum": [
                "alcohol-free",
                "celery-free",
                "crustacean-free",
                "dairy-free",
                "egg-free",
                "fish-free",
                "fodmap-free",
                "gluten-free",
                "immuno-supportive",
                "keto-friendly",
                "kidney-friendly",
                "kosher",
                "low-fat-abs",
                "low-potassium",
                "low-sugar",
                "lupine-free",
                "mustard-free",
                "no-oil-added",
                "paleo",
                "peanut-free",
                "pescatarian",
                "pork-free",
                "red-meat-free",
                "sesame-free",
                "shellfish-free",
                "soy-free",
                "sugar-conscious",
                "tree-nut-free",
                "vegan",
                "vegetarian",
                "wheat-free"
              ]
            }
          },
          {
            "name": "calories",
            "in": "query",
            "description": "The format is calories=RANGE where RANGE is replaced by the value in kcal. RANGE is in one of MIN+, MIN-MAX or MAX, where MIN and MAX are non-negative integer numbers. The + symbol needs to be properly encoded. Examples: “calories=100-300” will return all recipes with which have between 100 and 300 kcal per serving.",
            "type": "string"
          },
          {
            "name": "category",
            "in": "query",
            "description": "Categories",
            "type": "array",
            "collectionFormat": "multi",
            "uniqueItems": true,
            "items": {
              "type": "string",
              "enum": [
                "generic-foods",
                "generic-meals",
                "packaged-foods",
                "fast-foods"
              ]
            }
          },
          {
            "name": "nutrients[CA]",
            "in": "query",
            "description": "Calcium, Ca. Unit: mg. Input the range which is one of MIN+, MIN-MAX or MAX, where MIN and MAX are non-negative floating point numbers. <br> <br> For example: nutrients[CA]=50+ means minimum 50mg calcium, where ‘50+’ has to be properly encoded as ‘50%2B’ nutrients[FAT]=30 means maximum 30g fat and nutrients[FE]=5-10 means iron between 5mg and 10mg inclusive",
            "pattern": "(?:[+-]?d+(?:.d*)?)|(?:(?:[+-]?d+(?:.d*)?)-(?:[+-]?d+(?:.d*)?))|(?:(?:[+-]?d+(?:.d*)?)[+-])",
            "type": "string"
          },
          {
            "name": "nutrients[CHOCDF]",
            "in": "query",
            "description": "Carbohydrate, by difference. Unit: g. Input the range which is one of MIN+, MIN-MAX or MAX, where MIN and MAX are non-negative floating point numbers. <br> <br> See calcium for an example for how to fill in the range.",
            "pattern": "(?:[+-]?d+(?:.d*)?)|(?:(?:[+-]?d+(?:.d*)?)-(?:[+-]?d+(?:.d*)?))|(?:(?:[+-]?d+(?:.d*)?)[+-])",
            "type": "string"
          },
          {
            "name": "nutrients[CHOCDF.net]",
            "in": "query",
            "description": "Carbohydrates (net). Unit: g. Input the range which is one of MIN+, MIN-MAX or MAX, where MIN and MAX are non-negative floating point numbers. <br> <br> See calcium for an example for how to fill in the range.",
            "pattern": "(?:[+-]?d+(?:.d*)?)|(?:(?:[+-]?d+(?:.d*)?)-(?:[+-]?d+(?:.d*)?))|(?:(?:[+-]?d+(?:.d*)?)[+-])",
            "type": "string"
          },
          {
            "name": "nutrients[CHOLE]",
            "in": "query",
            "description": "Cholesterol. Unit: mg. Input the range which is one of MIN+, MIN-MAX or MAX, where MIN and MAX are non-negative floating point numbers. <br> <br>See calcium for an example for how to fill in the range.",
            "pattern": "(?:[+-]?d+(?:.d*)?)|(?:(?:[+-]?d+(?:.d*)?)-(?:[+-]?d+(?:.d*)?))|(?:(?:[+-]?d+(?:.d*)?)[+-])",
            "type": "string"
          },
          {
            "name": "nutrients[ENERC_KCAL]",
            "in": "query",
            "description": "Energy. Unit: kcal. Input the range which is one of MIN+, MIN-MAX or MAX, where MIN and MAX are non-negative floating point numbers. <br> <br> See calcium for an example for how to fill in the range.",
            "pattern": "(?:[+-]?d+(?:.d*)?)|(?:(?:[+-]?d+(?:.d*)?)-(?:[+-]?d+(?:.d*)?))|(?:(?:[+-]?d+(?:.d*)?)[+-])",
            "type": "string"
          },
          {
            "name": "nutrients[FAMS]",
            "in": "query",
            "description": "Fatty acids, total monounsaturated. Unit: g. Input the range which is one of MIN+, MIN-MAX or MAX, where MIN and MAX are non-negative floating point numbers. <br> <br> See calcium for an example for how to fill in the range.",
            "pattern": "(?:[+-]?d+(?:.d*)?)|(?:(?:[+-]?d+(?:.d*)?)-(?:[+-]?d+(?:.d*)?))|(?:(?:[+-]?d+(?:.d*)?)[+-])",
            "type": "string"
          },
          {
            "name": "nutrients[FAPU]",
            "in": "query",
            "description": "Fatty acids, total polyunsaturated. Unit: g. Input the range which is one of MIN+, MIN-MAX or MAX, where MIN and MAX are non-negative floating point numbers. <br> <br> See calcium for an example for how to fill in the range.",
            "pattern": "(?:[+-]?d+(?:.d*)?)|(?:(?:[+-]?d+(?:.d*)?)-(?:[+-]?d+(?:.d*)?))|(?:(?:[+-]?d+(?:.d*)?)[+-])",
            "type": "string"
          },
          {
            "name": "nutrients[FASAT]",
            "in": "query",
            "description": "Fatty acids, total saturated. Unit: g. Input the range which is one of MIN+, MIN-MAX or MAX, where MIN and MAX are non-negative floating point numbers. <br> <br> See calcium for an example for how to fill in the range.",
            "pattern": "(?:[+-]?d+(?:.d*)?)|(?:(?:[+-]?d+(?:.d*)?)-(?:[+-]?d+(?:.d*)?))|(?:(?:[+-]?d+(?:.d*)?)[+-])",
            "type": "string"
          },
          {
            "name": "nutrients[FAT]",
            "in": "query",
            "description": "Total lipid (fat). Unit: g. Input the range which is one of MIN+, MIN-MAX or MAX, where MIN and MAX are non-negative floating point numbers. <br> <br> See calcium for an example for how to fill in the range.",
            "pattern": "(?:[+-]?d+(?:.d*)?)|(?:(?:[+-]?d+(?:.d*)?)-(?:[+-]?d+(?:.d*)?))|(?:(?:[+-]?d+(?:.d*)?)[+-])",
            "type": "string"
          },
          {
            "name": "nutrients[FATRN]",
            "in": "query",
            "description": "Fatty acids, total trans. Unit: g. Input the range which is one of MIN+, MIN-MAX or MAX, where MIN and MAX are non-negative floating point numbers. <br> <br> See calcium for an example for how to fill in the range.",
            "pattern": "(?:[+-]?d+(?:.d*)?)|(?:(?:[+-]?d+(?:.d*)?)-(?:[+-]?d+(?:.d*)?))|(?:(?:[+-]?d+(?:.d*)?)[+-])",
            "type": "string"
          },
          {
            "name": "nutrients[FE]",
            "in": "query",
            "description": "Iron, Fe. Unit: mg. Input the range which is one of MIN+, MIN-MAX or MAX, where MIN and MAX are non-negative floating point numbers. <br> <br> See calcium for an example for how to fill in the range.",
            "pattern": "(?:[+-]?d+(?:.d*)?)|(?:(?:[+-]?d+(?:.d*)?)-(?:[+-]?d+(?:.d*)?))|(?:(?:[+-]?d+(?:.d*)?)[+-])",
            "type": "string"
          },
          {
            "name": "nutrients[FIBTG]",
            "in": "query",
            "description": "Fiber, total dietary. Unit: g. Input the range which is one of MIN+, MIN-MAX or MAX, where MIN and MAX are non-negative floating point numbers. <br> <br> See calcium for an example for how to fill in the range.",
            "pattern": "(?:[+-]?d+(?:.d*)?)|(?:(?:[+-]?d+(?:.d*)?)-(?:[+-]?d+(?:.d*)?))|(?:(?:[+-]?d+(?:.d*)?)[+-])",
            "type": "string"
          },
          {
            "name": "nutrients[FOLAC]",
            "in": "query",
            "description": "Folic acid. Unit: µg. Input the range which is one of MIN+, MIN-MAX or MAX, where MIN and MAX are non-negative floating point numbers. <br> <br> See calcium for an example for how to fill in the range.",
            "pattern": "(?:[+-]?d+(?:.d*)?)|(?:(?:[+-]?d+(?:.d*)?)-(?:[+-]?d+(?:.d*)?))|(?:(?:[+-]?d+(?:.d*)?)[+-])",
            "type": "string"
          },
          {
            "name": "nutrients[FOLDFE]",
            "in": "query",
            "description": "Folate, DFE. Unit: µg. Input the range which is one of MIN+, MIN-MAX or MAX, where MIN and MAX are non-negative floating point numbers. <br> <br> See calcium for an example for how to fill in the range.",
            "pattern": "(?:[+-]?d+(?:.d*)?)|(?:(?:[+-]?d+(?:.d*)?)-(?:[+-]?d+(?:.d*)?))|(?:(?:[+-]?d+(?:.d*)?)[+-])",
            "type": "string"
          },
          {
            "name": "nutrients[FOLFD]",
            "in": "query",
            "description": "Folate (food). Unit: µg. Input the range which is one of MIN+, MIN-MAX or MAX, where MIN and MAX are non-negative floating point numbers. <br> <br> See calcium for an example for how to fill in the range.",
            "pattern": "(?:[+-]?d+(?:.d*)?)|(?:(?:[+-]?d+(?:.d*)?)-(?:[+-]?d+(?:.d*)?))|(?:(?:[+-]?d+(?:.d*)?)[+-])",
            "type": "string"
          },
          {
            "name": "nutrients[K]",
            "in": "query",
            "description": "Potassium, K. Unit: mg. Input the range which is one of MIN+, MIN-MAX or MAX, where MIN and MAX are non-negative floating point numbers. <br> <br> See calcium for an example for how to fill in the range.",
            "pattern": "(?:[+-]?d+(?:.d*)?)|(?:(?:[+-]?d+(?:.d*)?)-(?:[+-]?d+(?:.d*)?))|(?:(?:[+-]?d+(?:.d*)?)[+-])",
            "type": "string"
          },
          {
            "name": "nutrients[MG]",
            "in": "query",
            "description": "Magnesium. Unit: mg. Input the range which is one of MIN+, MIN-MAX or MAX, where MIN and MAX are non-negative floating point numbers. <br> <br> See calcium for an example for how to fill in the range.",
            "pattern": "(?:[+-]?d+(?:.d*)?)|(?:(?:[+-]?d+(?:.d*)?)-(?:[+-]?d+(?:.d*)?))|(?:(?:[+-]?d+(?:.d*)?)[+-])",
            "type": "string"
          },
          {
            "name": "nutrients[NA]",
            "in": "query",
            "description": "Sodium, Na. Unit: mg. Input the range which is one of MIN+, MIN-MAX or MAX, where MIN and MAX are non-negative floating point numbers. <br> <br> See calcium for an example for how to fill in the range.",
            "pattern": "(?:[+-]?d+(?:.d*)?)|(?:(?:[+-]?d+(?:.d*)?)-(?:[+-]?d+(?:.d*)?))|(?:(?:[+-]?d+(?:.d*)?)[+-])",
            "type": "string"
          },
          {
            "name": "nutrients[NIA]",
            "in": "query",
            "description": "Niacin. Unit: mg. Input the range which is one of MIN+, MIN-MAX or MAX, where MIN and MAX are non-negative floating point numbers. <br> <br> See calcium for an example for how to fill in the range.",
            "pattern": "(?:[+-]?d+(?:.d*)?)|(?:(?:[+-]?d+(?:.d*)?)-(?:[+-]?d+(?:.d*)?))|(?:(?:[+-]?d+(?:.d*)?)[+-])",
            "type": "string"
          },
          {
            "name": "nutrients[P]",
            "in": "query",
            "description": "Phosphorus, P. Unit: mg. Input the range which is one of MIN+, MIN-MAX or MAX, where MIN and MAX are non-negative floating point numbers. <br> <br> See calcium for an example for how to fill in the range.",
            "pattern": "(?:[+-]?d+(?:.d*)?)|(?:(?:[+-]?d+(?:.d*)?)-(?:[+-]?d+(?:.d*)?))|(?:(?:[+-]?d+(?:.d*)?)[+-])",
            "type": "string"
          },
          {
            "name": "nutrients[PROCNT]",
            "in": "query",
            "description": "Protein. Unit: g. Input the range which is one of MIN+, MIN-MAX or MAX, where MIN and MAX are non-negative floating point numbers. <br> <br> See calcium for an example for how to fill in the range.",
            "pattern": "(?:[+-]?d+(?:.d*)?)|(?:(?:[+-]?d+(?:.d*)?)-(?:[+-]?d+(?:.d*)?))|(?:(?:[+-]?d+(?:.d*)?)[+-])",
            "type": "string"
          },
          {
            "name": "nutrients[RIBF]",
            "in": "query",
            "description": "Riboflavin. Unit: mg. Input the range which is one of MIN+, MIN-MAX or MAX, where MIN and MAX are non-negative floating point numbers. <br> <br> See calcium for an example for how to fill in the range.",
            "pattern": "(?:[+-]?d+(?:.d*)?)|(?:(?:[+-]?d+(?:.d*)?)-(?:[+-]?d+(?:.d*)?))|(?:(?:[+-]?d+(?:.d*)?)[+-])",
            "type": "string"
          },
          {
            "name": "nutrients[SUGAR]",
            "in": "query",
            "description": "Sugars, total. Unit: g. Input the range which is one of MIN+, MIN-MAX or MAX, where MIN and MAX are non-negative floating point numbers. <br> <br> See calcium for an example for how to fill in the range.",
            "pattern": "(?:[+-]?d+(?:.d*)?)|(?:(?:[+-]?d+(?:.d*)?)-(?:[+-]?d+(?:.d*)?))|(?:(?:[+-]?d+(?:.d*)?)[+-])",
            "type": "string"
          },
          {
            "name": "nutrients[SUGAR.added]",
            "in": "query",
            "description": "Sugars, added. Unit: g. Input the range which is one of MIN+, MIN-MAX or MAX, where MIN and MAX are non-negative floating point numbers. <br> <br> See calcium for an example for how to fill in the range.",
            "pattern": "(?:[+-]?d+(?:.d*)?)|(?:(?:[+-]?d+(?:.d*)?)-(?:[+-]?d+(?:.d*)?))|(?:(?:[+-]?d+(?:.d*)?)[+-])",
            "type": "string"
          },
          {
            "name": "nutrients[Sugar.alcohol]",
            "in": "query",
            "description": "Sugar alcohols. Unit: g. Input the range which is one of MIN+, MIN-MAX or MAX, where MIN and MAX are non-negative floating point numbers. <br> <br> See calcium for an example for how to fill in the range.",
            "pattern": "(?:[+-]?d+(?:.d*)?)|(?:(?:[+-]?d+(?:.d*)?)-(?:[+-]?d+(?:.d*)?))|(?:(?:[+-]?d+(?:.d*)?)[+-])",
            "type": "string"
          },
          {
            "name": "nutrients[THIA]",
            "in": "query",
            "description": "Thiamin. Unit: mg. Input the range which is one of MIN+, MIN-MAX or MAX, where MIN and MAX are non-negative floating point numbers. <br> <br> See calcium for an example for how to fill in the range.",
            "pattern": "(?:[+-]?d+(?:.d*)?)|(?:(?:[+-]?d+(?:.d*)?)-(?:[+-]?d+(?:.d*)?))|(?:(?:[+-]?d+(?:.d*)?)[+-])",
            "type": "string"
          },
          {
            "name": "nutrients[TOCPHA]",
            "in": "query",
            "description": "Vitamin E (alpha-tocopherol). Unit: mg. Input the range which is one of MIN+, MIN-MAX or MAX, where MIN and MAX are non-negative floating point numbers. <br> <br> See calcium for an example for how to fill in the range.",
            "pattern": "(?:[+-]?d+(?:.d*)?)|(?:(?:[+-]?d+(?:.d*)?)-(?:[+-]?d+(?:.d*)?))|(?:(?:[+-]?d+(?:.d*)?)[+-])",
            "type": "string"
          },
          {
            "name": "nutrients[VITA_RAE]",
            "in": "query",
            "description": "Vitamin A, RAE. Unit: µg. Input the range which is one of MIN+, MIN-MAX or MAX, where MIN and MAX are non-negative floating point numbers. <br> <br> See calcium for an example for how to fill in the range.",
            "pattern": "(?:[+-]?d+(?:.d*)?)|(?:(?:[+-]?d+(?:.d*)?)-(?:[+-]?d+(?:.d*)?))|(?:(?:[+-]?d+(?:.d*)?)[+-])",
            "type": "string"
          },
          {
            "name": "nutrients[VITB12]",
            "in": "query",
            "description": "Vitamin B12. Unit: µg. Input the range which is one of MIN+, MIN-MAX or MAX, where MIN and MAX are non-negative floating point numbers. <br> <br> See calcium for an example for how to fill in the range.",
            "pattern": "(?:[+-]?d+(?:.d*)?)|(?:(?:[+-]?d+(?:.d*)?)-(?:[+-]?d+(?:.d*)?))|(?:(?:[+-]?d+(?:.d*)?)[+-])",
            "type": "string"
          },
          {
            "name": "nutrients[VITB6A]",
            "in": "query",
            "description": "Vitamin B6. Unit: mg. Input the range which is one of MIN+, MIN-MAX or MAX, where MIN and MAX are non-negative floating point numbers. <br> <br> See calcium for an example for how to fill in the range.",
            "pattern": "(?:[+-]?d+(?:.d*)?)|(?:(?:[+-]?d+(?:.d*)?)-(?:[+-]?d+(?:.d*)?))|(?:(?:[+-]?d+(?:.d*)?)[+-])",
            "type": "string"
          },
          {
            "name": "nutrients[VITC]",
            "in": "query",
            "description": "Vitamin C, total ascorbic acid. Unit: mg. Input the range which is one of MIN+, MIN-MAX or MAX, where MIN and MAX are non-negative floating point numbers. <br> <br> See calcium for an example for how to fill in the range.",
            "pattern": "(?:[+-]?d+(?:.d*)?)|(?:(?:[+-]?d+(?:.d*)?)-(?:[+-]?d+(?:.d*)?))|(?:(?:[+-]?d+(?:.d*)?)[+-])",
            "type": "string"
          },
          {
            "name": "nutrients[VITD]",
            "in": "query",
            "description": "Vitamin D (D2 + D3). Unit: µg. Input the range which is one of MIN+, MIN-MAX or MAX, where MIN and MAX are non-negative floating point numbers. <br> <br> See calcium for an example for how to fill in the range.",
            "pattern": "(?:[+-]?d+(?:.d*)?)|(?:(?:[+-]?d+(?:.d*)?)-(?:[+-]?d+(?:.d*)?))|(?:(?:[+-]?d+(?:.d*)?)[+-])",
            "type": "string"
          },
          {
            "name": "nutrients[VITK1]",
            "in": "query",
            "description": "Vitamin K (phylloquinone). Unit: µg. Input the range which is one of MIN+, MIN-MAX or MAX, where MIN and MAX are non-negative floating point numbers. <br> <br> See calcium for an example for how to fill in the range.",
            "pattern": "(?:[+-]?d+(?:.d*)?)|(?:(?:[+-]?d+(?:.d*)?)-(?:[+-]?d+(?:.d*)?))|(?:(?:[+-]?d+(?:.d*)?)[+-])",
            "type": "string"
          },
          {
            "name": "nutrients[WATER]",
            "in": "query",
            "description": "Water. Unit: g. Input the range which is one of MIN+, MIN-MAX or MAX, where MIN and MAX are non-negative floating point numbers. <br> <br> See calcium for an example for how to fill in the range.",
            "pattern": "(?:[+-]?d+(?:.d*)?)|(?:(?:[+-]?d+(?:.d*)?)-(?:[+-]?d+(?:.d*)?))|(?:(?:[+-]?d+(?:.d*)?)[+-])",
            "type": "string"
          },
          {
            "name": "nutrients[ZN]",
            "in": "query",
            "description": "Zinc, Zn. Unit: mg. Input the range which is one of MIN+, MIN-MAX or MAX, where MIN and MAX are non-negative floating point numbers. <br> <br> See calcium for an example for how to fill in the range.",
            "pattern": "(?:[+-]?d+(?:.d*)?)|(?:(?:[+-]?d+(?:.d*)?)-(?:[+-]?d+(?:.d*)?))|(?:(?:[+-]?d+(?:.d*)?)[+-])",
            "type": "string"
          }
        ],
        "responses": {
          "200": {
            "description": "List of food objects, with each food object containing: kcal per 100gr, protein per 100 grams, carbohydrates per 100 grams, brand of the food, if the food is generic or brandid, a list of existing measures for the food, contents label of the food"
          },
          "404": {
            "description": "The specified URL was not found or couldn’t be retrieved",
            "schema": {
              "$ref": "#/definitions/Errors"
            }
          }
        }
      }
    },
    "/api/food-database/v2/nutrients": {
      "post": {
        "tags": [
          "Food Request Step 2 - Nutrients"
        ],
        "summary": "<b>Click here to view the documentation</b>",
        "description": "In the response to your parser request you receive the a food ID for each database match. Using the food ID and the measure URI, which parser provides, you can make a request to the nutrients access point. The nutrients access points returns nutrition with diet and health labels for a given quantity of the food.  <b>Access Point:</b> https://api.edamam.com/api/food-database/v2/nutrients",
        "consumes": [
          "application/json"
        ],
        "parameters": [
          {
            "name": "app_id",
            "in": "query",
            "x-data-threescale-name": "app_ids",
            "description": "App ID from your dashboard",
            "required": true,
            "type": "string"
          },
          {
            "name": "app_key",
            "in": "query",
            "x-data-threescale-name": "app_keys",
            "description": "App key from your dashboard",
            "required": true,
            "type": "string"
          },
          {
            "name": "ingredients",
            "in": "body",
            "description": "Using the food ID and the measure URI which parser provides you can make a request to the nutrients access point. The nutrients access points returns nutrition with diet and health labels for a given quantity of the food.",
            "required": true,
            "schema": {
              "$ref": "#/definitions/List"
            }
          }
        ],
        "responses": {
          "200": {
            "description": "Object containing number of servings (yield), total calories for the food (calories), nutrient content by nutrient type (totalNutrients, totalDaily), diet and health classification (dietLabels, healthLabels)"
          },
          "404": {
            "description": "The specified URL was not found or couldn’t be retrieved",
            "schema": {
              "$ref": "#/definitions/Errors"
            }
          },
          "422": {
            "description": "Couldn’t parse the request or extract the nutritional info",
            "schema": {
              "$ref": "#/definitions/Errors"
            }
          },
          "555": {
            "description": "Text with insufficient quality to process correctly",
            "schema": {
              "$ref": "#/definitions/Errors"
            }
          }
        }
      }
    },
    "/auto-complete": {
      "get": {
        "tags": [
          "Food Search Autocomplete"
        ],
        "summary": "<b>Click here to view the documentation</b>",
        "description": "Edamam provides a convenient autocomplete functionality which can be implemented for use when searching for ingredients. Just send in the current query as the "q" parameter and the number of suggestions you wish to receive as the "limit" parameter.   <b>Access Point:</b> https://api.edamam.com/auto-complete",
        "parameters": [
          {
            "name": "app_id",
            "in": "query",
            "x-data-threescale-name": "app_ids",
            "description": "The application ID",
            "required": true,
            "type": "string"
          },
          {
            "name": "app_key",
            "in": "query",
            "x-data-threescale-name": "app_keys",
            "description": "The application key",
            "required": true,
            "type": "string"
          },
          {
            "name": "q",
            "in": "query",
            "description": "Query text. For example q=chi. This or the r parameter are required",
            "required": true,
            "type": "string"
          },
          {
            "name": "limit",
            "in": "query",
            "description": "response limit",
            "type": "integer"
          }
        ],
        "responses": {
          "200": {
            "description": "Object containing number of servings (yield), total calories for the food (calories), nutrient content by nutrient type (totalNutrients, totalDaily), diet and health classification (dietLabels, healthLabels)"
          }
        }
      }
    }
  },
  "definitions": {
    "Ingredients": {
      "type": "object",
      "properties": {
        "quantity": {
          "type": "number"
        },
        "measureURI": {
          "type": "string"
        },
        "foodId": {
          "type": "string"
        }
      }
    },
    "Errors": {
      "type": "array",
      "items": {
        "$ref": "#/definitions/Error"
      }
    },
    "Error": {
      "properties": {
        "errorCode": {
          "type": "string"
        },
        "message": {
          "type": "string"
        },
        "params": {
          "type": "array",
          "items": {
            "type": "string"
          }
        }
      }
    },
    "List": {
      "type": "object",
      "properties": {
        "ingredients": {
          "type": "array",
          "items": {
            "$ref": "#/definitions/Ingredients"
          }
        }
      }
    }
  }
}
				
			

SDKs

This is a JSON API and if people would like SDKs, those are accessible for Javascript, Angular, JQuery, JAVA, R, C#, NodeJS, PHP, Python, Ruby, VueJS, Strest, Swift, Rust, Go and Scala. Just request it and they will be sent by email. Kickoff by using the filter objects and use the output with the SDKs and build the project.

Food Information API pricing

Write an email to the API provider to request for access to trials and samples of the data so that you can experiment with the data ahead of deciding to purchase the full API access. The sample access is not unlimited but will be able to provide you with a decent insight into the full API system.

Cost of this API

Edamam data is accessible with prices starting monthly from $49 with 3D secure payment.
Option Price
Monthly subscription From $49/month
Variable pricing no

Free Trial

Free trial is available

Alternative options

Edamam

Nutrition Analysis API
4.5
4.5/5
Nutrition Analysis API provides data solutions to develop projects for fetching the nutritional information based on a POST request of the recipe content objectives. The nutrition analysis API is the top tool to precisely fetch Nutrition data to your product.

Spoonacular

Search Recipes By Nutrients API
4.2
4.2/5
Contact the Search Recipes By Nutrients API provider to access comprehensive data for finding a set of recipes that adhere to the given nutritional limits purposes today. Search Recipes By Nutrients API by Spoonacular offers extensive and fundemental elements necessary to have in culinary applications, websites and blogs, website plugins, product marketing and more fields.

Spoonacular

Similar Recipes API
4.2
4.2/5
Similar Recipes API ensures you get the best external data solutions to build products for finding recipes which are similar to the given one functions. The similar recipes API is the ideal data tool to directly get Food data to your project.

Spoonacular

Ingredient Information API
4.5
4.5/5
Ingredient Information API by Spoonacular offers extensive and necessary details necessary to have in culinary applications, websites and blogs, website plugins, product marketing and more related projects. Ingredient Information API proposes to offer precise culinary applications, websites and blogs, website plugins, product marketing and more data for building iOS and Android apps, online services, tools, software, market inquiries and much more.

Spoonacular

Search Grocery Products API
4.3
4.3/5
Search Grocery Products API offers external data solutions to build data-oriented products for searching packaged food products, such as frozen pizza or Greek yogurt use cases. The search grocery products API is the ideal tool to directly get Food data to your client.

Spoonacular

Menu Item Information API
4.8
4.8/5
Menu Item Information API ensures you get the best external data solutions to develop projects for getting all available information about a menu item, such as nutrition objectives. Food data via menu item information API returns required details to ensure you can build advanced apps, websites, and more.

Sign up for Edamam food information API

Get Data Access

~[ ∵ ]~

Sign-up Succesful

Wait for the Data