# Recipe Objects

The Recipe Object is composed of root-level attributes, some of which are objects by themselves.&#x20;

## Recipe Data Dictionary

| ATTRIBUTE              | TYPE                                                   | DESCRIPTION                                                            |
| ---------------------- | ------------------------------------------------------ | ---------------------------------------------------------------------- |
| id                     | string                                                 |                                                                        |
| name                   | string                                                 |                                                                        |
| description            | string                                                 |                                                                        |
| numberOfServings       | number                                                 | Original number of servings                                            |
| numberOfServingsScaled | number                                                 | Requested number of servings                                           |
| normalizedIngredients  | array \[[NormalizedIngredient](#normalizedingredient)] |                                                                        |
| ingredients            | array \[RawIngredient]                                 |                                                                        |
| instructions           | RecipeInstructions                                     |                                                                        |
| images                 | array \[ImageContainer]                                |                                                                        |
| videos                 | array \[VideoContainer]                                |                                                                        |
| source                 | RecipeSource                                           |                                                                        |
| durations              | RecipeDurations                                        |                                                                        |
| labels                 | RecipeLabels                                           |                                                                        |
| nutrition              | RecipeNutrition                                        |                                                                        |
| constraints            | RecipeConstraints                                      |                                                                        |
| saved                  | RecipeSaved                                            | This field is populated if fields=saved is added to request parameters |
| author                 | RecipeAuthor                                           |                                                                        |

### RecipeNutrition <a href="#recipenutrition" id="recipenutrition"></a>

| ATTRIBUTE     | TYPE                                                                                                             | DESCRIPTION                                                                                                                         |
| ------------- | ---------------------------------------------------------------------------------------------------------------- | ----------------------------------------------------------------------------------------------------------------------------------- |
| total         | array \[[Nutrient](https://app.gitbook.com/@samsungnext/s/whisk-docs/api/recipes/get-recipe-nutrition#nutrient)] | An array of nutrients for the entire recipe                                                                                         |
| labels        | array \[RecipeLabel]                                                                                             | ​Content                                                                                                                            |
| healthScore   | [HealthScore](#healthscore)                                                                                      | The recipe's [health score​](https://docs.whisk.com/master/resources/health-score-glycemic-index-glycemic-load#health-score)        |
| glycemicIndex | [GlycemicScore](#glycemicscore)                                                                                  | The recipe's [glycemic index](https://docs.whisk.com/master/resources/health-score-glycemic-index-glycemic-load#glycemic-index-gi)​ |
| glycemicLoad  | [GlycemicScore](#glycemicscore)                                                                                  | The recipe's [glycemic load​](https://docs.whisk.com/master/resources/health-score-glycemic-index-glycemic-load#glycemic-load-gl)   |

### Nutrient <a href="#nutrient" id="nutrient"></a>

| ATTRIBUTE | TYPE    | DESCRIPTION                                                                                                 |
| --------- | ------- | ----------------------------------------------------------------------------------------------------------- |
| code      | enum    | The nutrient code, as listed [here](https://docs.whisk.com/master/resources/nutrients#supported-nutrients)​ |
| label     | string  | A readable name e.g. `Energy`, `Total Fat` etc.                                                             |
| value     | integer | The nutrient's value                                                                                        |
| unit      | enum    | Possible values: `g`, `mg`, `µg`, `kcal`                                                                    |

### HealthScore <a href="#healthscore" id="healthscore"></a>

| ATTRIBUTE          | TYPE                                            | DESCRIPTION                             |
| ------------------ | ----------------------------------------------- | --------------------------------------- |
| value              | double                                          | ​Content                                |
| nutrientsInfluence | array \[[NutrientsInfluence](#recipenutrition)] | Components which influence health score |

### NutrientsInfluence <a href="#nutrientsinfluence" id="nutrientsinfluence"></a>

| ATTRIBUTE | TYPE   | DESCRIPTION |
| --------- | ------ | ----------- |
| code      | string | ​Content    |
| influence | double | ​Content    |
| comment   | string | ​Content    |

### GlycemicScore <a href="#glycemicscore" id="glycemicscore"></a>

| ATTRIBUTE | TYPE   | DESCRIPTION |
| --------- | ------ | ----------- |
| value     | double | ​Content    |

### NormalizedIngredient <a href="#normalizedingredient" id="normalizedingredient"></a>

| ATTRIBUTE | TYPE                                                  | DESCRIPTION |
| --------- | ----------------------------------------------------- | ----------- |
| text      | string                                                | ​Content    |
| group     | string                                                | ​Content    |
| analysis  | [RecipeIngredientAnalysis](#recipeingredientanalysis) | ​Content    |

### RecipeIngredientAnalysis <a href="#recipeingredientanalysis" id="recipeingredientanalysis"></a>

| ATTRIBUTE     | TYPE   | DESCRIPTION |
| ------------- | ------ | ----------- |
| product       | string | ​Content    |
| canonicalName | string | ​Content    |
| quantity      | number | ​Content    |
| unit          | string | ​Content    |
| multiplier    | number | ​Content    |
| brand         | string | ​Content    |
| comment       | string | ​Content    |
| category      | string | ​Content    |

### ProductCategory <a href="#productcategory" id="productcategory"></a>

| ATTRIBUTE | TYPE   | DESCRIPTION |
| --------- | ------ | ----------- |
| name      | string | ​Content    |

### ImageContainer <a href="#imagecontainer" id="imagecontainer"></a>

| ATTRIBUTE  | TYPE                                | DESCRIPTION                                                       |
| ---------- | ----------------------------------- | ----------------------------------------------------------------- |
| url        | string                              | original image url, depricated. Please use field original instead |
| original   | OriginalImage                       | original image information, e.g. image url                        |
| responsive | [ResponsiveImage](#responsiveimage) | ​Content                                                          |

### ResponsiveImage <a href="#responsiveimage" id="responsiveimage"></a>

| ATTRIBUTE | TYPE    | DESCRIPTION            |
| --------- | ------- | ---------------------- |
| url       | string  | Hosted url of an image |
| width     | integer | Image width            |
| height    | integer | Image height           |

### RecipeSource <a href="#recipesource" id="recipesource"></a>

| ATTRIBUTE       | TYPE           | DESCRIPTION |
| --------------- | -------------- | ----------- |
| name            | string         | ​Content    |
| displayName     | string         | ​Content    |
| sourceRecipeUrl | string         | ​Content    |
| license         | string         | ​Content    |
| image           | ImageContainer | ​Content    |

### RecipeLabels <a href="#recipelabels" id="recipelabels"></a>

| ATTRIBUTE | TYPE                                 | DESCRIPTION |
| --------- | ------------------------------------ | ----------- |
| mealType  | array \[[RecipeLabel](#recipelabel)] | ​Content    |
| cuisine   | array \[[RecipeLabel](#recipelabel)] | ​Content    |
| category  | array \[[RecipeLabel](#recipelabel)] | ​Content    |

### RecipeLabel <a href="#recipelabel" id="recipelabel"></a>

| ATTRIBUTE   | TYPE   | DESCRIPTION |
| ----------- | ------ | ----------- |
| name        | string | ​Content    |
| displayName | string | ​Content    |

### RecipeDurations <a href="#recipedurations" id="recipedurations"></a>

| ATTRIBUTE | TYPE   | DESCRIPTION                 |
| --------- | ------ | --------------------------- |
| cookTime  | number | Cooking time in minutes     |
| prepTime  | number | Preparation time in minutes |
| totalTime | number | Total time in minutes       |

### Nutrition Labels

We provide a batch of labels based on nutrition information.

### Available nutrition labels

* Low Energy
* Energy Free
* Low Fat
* Fat Free
* Low Saturated Fat
* Saturated Fat Free
* Low Sugars
* Sugars Free
* Low Sodium
* Very Low Sodium
* Sodium Free
* Low Salt
* Very Low Salt
* Salt Free
* Cholesterol Free
* Low Cholesterol
* Source Of Fiber
* High Fiber
* Source Of Protein
* High Protein
* High Monounsaturated Fat
* High Polyunsaturated Fat
* Hight Unsaturated Fat

Also labels for each vitamin and mineral presented in nutrition info:

* Source Of ...
* High ...

e.g. `Source Of Calcium` or `Hight Vitamin A`

```javascript
{
  "id": "9773cb7eca5d11e7ae7e42010a9a0035",
  "name": "Omelette pancakes with tomato & pepper sauce",
  "description": "Healthy, low-calorie and gluten-free - these herby egg 'pancakes' will become your go-to favourite for a quick midweek meal",
  "ingredients": [
    {
      "text": "4 large eggs"
    },
    {
      "text": "handful basil leaves"
    },
    {
      "text": "2 tsp rapeseed oil, plus a little extra for the pancakes"
    },
    {
      "text": "1 yellow pepper, quartered, deseeded and thinly sliced"
    },
    {
      "text": "2 garlic cloves, thinly sliced"
    },
    {
      "text": "1 tbsp cider vinegar"
    },
    {
      "text": "400g can chopped tomatoes"
    },
    {
      "text": "wholemeal bread or salad leaves, to serve"
    }
  ],
  "images": [
    {
      "url": "https://www.bbcgoodfood.com/sites/default/files/styles/recipe/public/recipe_images/omelette-pancakes-with-tomato-pepper-sauce.jpg",
      "responsive": {
        "url": "https://whisk-res.cloudinary.com/image/upload/v1523012138/recipe/758058656142eaae402f1781e18c527c.jpg",
        "width": 454,
        "height": 500
      }
    }
  ],
  "videos": [],
  "source": {
    "name": "bbcgoodfood.com",
    "displayName": "BBC Good Food",
    "sourceRecipeUrl": "https://www.bbcgoodfood.com/recipes/omelette-pancakes-tomato-pepper-sauce",
    "license": "Fairuse",
    "image": {
      "url": "https://whisk-res.cloudinary.com/image/upload/publishers/logos/bbcgoodfood-logo.png",
      "responsive": {
        "url": "https://whisk-res.cloudinary.com/image/upload/publishers/logos/bbcgoodfood-logo.png",
        "width": 256,
        "height": 256
      }
    }
  },
  "numberOfServings": 2,
  "durations": {
    "cookTime": 20,
    "prepTime": 10,
    "totalTime": 30
  },
  "nutrition": {
    "status": "Available",
    "total": [
      {
        "label": "Sugars",
        "code": "SUGAR",
        "value": 18.032,
        "unit": "G"
      },
      ...
    ],
    "labels": [
      {
        "name": "low-saturated-fat",
        "displayName": "Low Saturated Fat"
      },
      ...
    ],
    "healthScore": {
      "value": 5.328398771869642,
      "nutrientsInfluence": [
        {
          "code": "FAT_UNSAT",
          "influence": 0.6939760843841576,
          "comment": "Medium positive impact"
        },
        ...
      ]
    },
    "glycemicIndex": {
      "value": 41.37
    },
    "glycemicLoad": {
      "value": 9
    }
  },
  "labels": {
    "mealType": [
      {
        "name": "lunch",
        "displayName": "Lunch"
      },
      ...
    ],
    "cuisine": [
      {
        "name": "french",
        "displayName": "French"
      }
    ],
    "category": [
      {
        "name": "main-dishes",
        "displayName": "Main Dishes"
      },
      ...
    ],
    "technique": []
  },
  "constraints": {
    "violates": [
      "diets": [
        "lacto-vegetarian",
        "vegan"
      ],
      "avoidances": [
        "egg",
        "gluten",
        "yeast",
        "wheat"
      ]
    }
  },
  "author": {
    "name": "Sara Buenfeld"
  }
}
```
