Get Meals
A method to get a meal.
Our API spec clearly shows that each endpoint has two versions - one with meal_plan_id and one without.
GET https://api.whisk.com/mealplan/v2/:meal_plan_id/meal
The meal_plan_id is optional - the endpoint will return the same result whether it is provided or not.
Path Parameters
meal_plan_id
string
Optional meal-plan identifier. No need to specify if API requested with UserToken
period.from.year
integer
period.from.month
integer
period.from.day
integer
period.to.year
integer
period.to.month
integer
period.to.day
integer
fields
array
Additional recipe fields to include in response. Requesting less fields will reduce response size and improve time to response
{
"meal_plan_id": "string",
"start_date": {
"year": 0,
"month": 0,
"day": 0
},
"end_date": {
"year": 0,
"month": 0,
"day": 0
},
"meals": [
{
"id": "string",
"meal_type": "MEAL_TYPE_INVALID",
"date_time": {
"year": 0,
"month": 0,
"day": 0
},
"content": {
"recipe": {
"id": "string",
"name": "string",
"description": "string",
"ingredients": [
{
"text": "string",
"group": "string",
"linked_products": [
{
"id": "string",
"name": "string",
"images": [
{
"responsive": {
"url": "string",
"width": 0,
"height": 0
},
"url": "string"
}
],
"description": "string",
"url": "string",
"price": {
"rrp": {
"currency_code": "string",
"cents": "string"
}
},
"gtin": "string",
"brand": {
"raw_name": "string"
}
}
]
}
],
"instructions": {
"steps": [
{
"text": "string",
"images": [
{
"responsive": {
"url": "string",
"width": 0,
"height": 0
},
"url": "string"
}
],
"group": "string",
"intents": [
{
"name": "string",
"options": [
{
"key": "string",
"value": 0,
"unit": "string"
}
]
}
],
"labels": [
{
"name": "string",
"labels": [
{
"name": "string"
}
]
}
]
}
]
},
"images": [
{
"responsive": {
"url": "string",
"width": 0,
"height": 0
},
"url": "string"
}
],
"videos": [
{
"content_url": "string",
"embed_url": "string",
"thumbnail": "string"
}
],
"source": {
"name": "string",
"display_name": "string",
"source_recipe_url": "string",
"image": {
"responsive": {
"url": "string",
"width": 0,
"height": 0
},
"url": "string"
},
"license": "LICENCE_INVALID"
},
"servings": 0,
"servings_scaled": 0,
"durations": {
"cook_time": 0,
"prep_time": 0,
"total_time": 0
},
"normalized_ingredients": [
{
"text": "string",
"group": "string",
"analysis": {
"product": {
"canonical_name": "string",
"original_name": "string"
},
"category": {
"canonical_name": "string"
},
"brand": {
"canonical_name": "string"
},
"quantity": 0,
"unit": "string",
"multiplier": 0,
"comment": "string",
"image_url": "string"
},
"source_text": "string",
"labels": [
{
"name": "string",
"labels": [
{
"name": "string"
}
]
}
]
}
],
"nutrition": {
"status": "STATUS_INVALID",
"total": [
{
"label": "string",
"code": "NUTRITION_CODE_INVALID",
"value": 0,
"unit": "NUTRITION_UNIT_INVALID"
}
],
"coverage": 0,
"labels": [
{
"name": "string",
"display_name": "string"
}
],
"health_score": {
"value": 0,
"nutrients_influence": [
{
"code": "NUTRITION_CODE_INVALID",
"influence": 0,
"comment": "string"
}
]
},
"glycemic_index": {
"value": 0
},
"glycemic_load": {
"value": 0
}
},
"labels": {
"meal_type": [
{
"name": "string",
"display_name": "string"
}
],
"cuisine": [
{
"name": "string",
"display_name": "string"
}
],
"category": [
{
"name": "string",
"display_name": "string"
}
],
"technique": [
{
"name": "string",
"display_name": "string"
}
],
"holiday": [
{
"name": "string",
"display_name": "string"
}
],
"seasonality": [
{
"name": "string",
"display_name": "string"
}
]
},
"constraints": {
"violates": {
"diets": [
"DIET_INVALID"
],
"avoidances": [
"AVOIDANCE_INVALID"
]
}
},
"saved": {
"value": true,
"collection_ids": [
"string"
],
"owner": true,
"recipe_type": "RECIPE_TYPE_INVALID"
},
"author": {
"name": "string",
"image": {
"responsive": {
"url": "string",
"width": 0,
"height": 0
},
"url": "string"
}
},
"language": "string",
"custom_labels": [
{
"name": "string",
"labels": [
{
"name": "string"
}
]
}
]
}
},
"generated": true,
"day_slot": 0,
"date": {
"year": 0,
"month": 0,
"day": 0
}
}
],
"week_meals": [
{
"id": "string",
"week_start_date": {
"year": 0,
"month": 0,
"day": 0
},
"content": {
"recipe": {
"id": "string",
"name": "string",
"description": "string",
"ingredients": [
{
"text": "string",
"group": "string",
"linked_products": [
{
"id": "string",
"name": "string",
"images": [
{
"responsive": {
"url": "string",
"width": 0,
"height": 0
},
"url": "string"
}
],
"description": "string",
"url": "string",
"price": {
"rrp": {
"currency_code": "string",
"cents": "string"
}
},
"gtin": "string",
"brand": {
"raw_name": "string"
}
}
]
}
],
"instructions": {
"steps": [
{
"text": "string",
"images": [
{
"responsive": {
"url": "string",
"width": 0,
"height": 0
},
"url": "string"
}
],
"group": "string",
"intents": [
{
"name": "string",
"options": [
{
"key": "string",
"value": 0,
"unit": "string"
}
]
}
],
"labels": [
{
"name": "string",
"labels": [
{
"name": "string"
}
]
}
]
}
]
},
"images": [
{
"responsive": {
"url": "string",
"width": 0,
"height": 0
},
"url": "string"
}
],
"videos": [
{
"content_url": "string",
"embed_url": "string",
"thumbnail": "string"
}
],
"source": {
"name": "string",
"display_name": "string",
"source_recipe_url": "string",
"image": {
"responsive": {
"url": "string",
"width": 0,
"height": 0
},
"url": "string"
},
"license": "LICENCE_INVALID"
},
"servings": 0,
"servings_scaled": 0,
"durations": {
"cook_time": 0,
"prep_time": 0,
"total_time": 0
},
"normalized_ingredients": [
{
"text": "string",
"group": "string",
"analysis": {
"product": {
"canonical_name": "string",
"original_name": "string"
},
"category": {
"canonical_name": "string"
},
"brand": {
"canonical_name": "string"
},
"quantity": 0,
"unit": "string",
"multiplier": 0,
"comment": "string",
"image_url": "string"
},
"source_text": "string",
"labels": [
{
"name": "string",
"labels": [
{
"name": "string"
}
]
}
]
}
],
"nutrition": {
"status": "STATUS_INVALID",
"total": [
{
"label": "string",
"code": "NUTRITION_CODE_INVALID",
"value": 0,
"unit": "NUTRITION_UNIT_INVALID"
}
],
"coverage": 0,
"labels": [
{
"name": "string",
"display_name": "string"
}
],
"health_score": {
"value": 0,
"nutrients_influence": [
{
"code": "NUTRITION_CODE_INVALID",
"influence": 0,
"comment": "string"
}
]
},
"glycemic_index": {
"value": 0
},
"glycemic_load": {
"value": 0
}
},
"labels": {
"meal_type": [
{
"name": "string",
"display_name": "string"
}
],
"cuisine": [
{
"name": "string",
"display_name": "string"
}
],
"category": [
{
"name": "string",
"display_name": "string"
}
],
"technique": [
{
"name": "string",
"display_name": "string"
}
],
"holiday": [
{
"name": "string",
"display_name": "string"
}
],
"seasonality": [
{
"name": "string",
"display_name": "string"
}
]
},
"constraints": {
"violates": {
"diets": [
"DIET_INVALID"
],
"avoidances": [
"AVOIDANCE_INVALID"
]
}
},
"saved": {
"value": true,
"collection_ids": [
"string"
],
"owner": true,
"recipe_type": "RECIPE_TYPE_INVALID"
},
"author": {
"name": "string",
"image": {
"responsive": {
"url": "string",
"width": 0,
"height": 0
},
"url": "string"
}
},
"language": "string",
"custom_labels": [
{
"name": "string",
"labels": [
{
"name": "string"
}
]
}
]
}
}
}
]
}{
"error_code": "REAL_CODES_ARE_IN_ENDPOINT_DESCRIPTION",
"message": "Additional details about error are not static and can be changed"
}{
"code": "auth.tokenNotFound"
}This is unexpected response, something is wrong on our side, please contact: [email protected]Fields
Enums
Notes
RECIPE_FIELD_INVALID
RECIPE_FIELD_NORMALIZED_INGREDIENTS
RECIPE_FIELD_INSTRUCTIONS
RECIPE_FIELD_INSTRUCTION_INTENTS
RECIPE_FIELD_NUTRITION
RECIPE_FIELD_NUTRITION_COVERAGE
RECIPE_FIELD_SAVED
RECIPE_FIELD_INGREDIENTS_LINKED_PRODUCTS
Last updated
Was this helpful?