Get Recipes from a Community

This endpoint retrieves a list of recipes from a specific community using the community identifier and pagination filters.

get
Get Recipes by Community ID

https://api.whisk.com/community/v2/{community_id}/recipes
You can append the following path and query parameters to the base URL to pull recipes from a particular community:
Request
Response
Request
Path Parameters
community_id
required
string
The community identifier.
Headers
Authentication
required
string
User token to authorize the API usage. For more information, see Authentication.
Query Parameters
fields
optional
array
Any additional recipe details to retrieve. You can choose one or more of these supported values: - 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 Note: For performance reasons, we recommend using this parameter only when required.
paging.limit
optional
string
The maximum number of recipes to retrieve from the community.
paging.cursors.after
optional
string
This parameter is used for cursor-based pagination. It takes a recipe ID as its value and retrieves only those recipes that appear after it in the database.
paging.cursors.before
optional
string
This parameter is used for cursor-based pagination. It takes a recipe ID as its value and retrieves only those recipes that appear before it in the database
Response
200: OK
This is how a successful response looks.
{
"recipes": [
{
"recipe": {
"id": "string",
"name": "string",
"description": "string",
"ingredients": [
...
],
"instructions": {
...
},
"images": [
...
],
"videos": [
...
],
"source": {
...
},
"servings": 0,
"servings_scaled": 0,
"durations": {
...
},
"normalized_ingredients": [
...
],
"nutrition": {
...
},
"labels": {
...
},
"constraints": {
...
},
"saved": {
...
},
"author": {
...
},
"language": "string",
"custom_labels": [
...
]
}
}
],
"paging": {
"cursors": {
"after": "string",
"before": "string"
},
"total": "string"
}
}
400: Bad Request
This failed response appears when error codes are found in the endpoint query.
{
"error_code": "REAL_CODES_ARE_IN_ENDPOINT_DESCRIPTION",
"message": "Additional details about error are not static and can be changed"
}
401: Unauthorized
This failed response appears due to API authentication failure. The possible error codes that may appear are: auth.tokenNotFound , auth.tokenExpired, auth.tokenInvalid, auth.tokenRequired.
{
"code": "auth.tokenNotFound"
}
500: Internal Server Error
This failed response appears when something is not right on Whisk's end. Please send a message to help@whisk.com, and be sure to include both the Request and Response data. We’ll get back to you soon.
This is unexpected response, something is wrong on our side, please contact: help@whisk.com

Sample Request and Response

Curl Request
Response
Curl Request
curl -X GET "https://api.whisk.com/community/v2/39d539c738eb47debfb1a6319d34235a/recipes?fields=RECIPE_FIELD_NORMALIZED_INGREDIENTS&fields=RECIPE_FIELD_INSTRUCTIONS&fields=RECIPE_FIELD_INSTRUCTION_INTENTS&fields=RECIPE_FIELD_NUTRITION&fields=RECIPE_FIELD_NUTRITION_COVERAGE&fields=RECIPE_FIELD_SAVED&fields=RECIPE_FIELD_INGREDIENTS_LINKED_PRODUCTS"
-H "Accept: application/json"
-H "Authorization: Bearer <YOUR-API-ACCESS-KEY>"

Whisk allows you to discover and understand its API capabilities on the Swagger interface with the ability to try out the API calls directly in your browser. You can call this endpoint here.

Response
{
"recipes": [
{
"recipe": {
"id": "10108adbfbc01a0d07056d8c40192ed0623c3bf5f01",
"name": "Chilli con carne recipe",
"description": "This great chilli recipe has to be one of the best dishes to serve to friends for a casual get-together. An easy sharing favourite that uses up storecupboard ingredients.",
"ingredients": [
{
"text": "1 large onion"
},
...
],
"instructions": {
"steps": [
{
"text": "Prepare your vegetables. Chop 1 large onion into small dice, about 5mm square. The easiest way to do this is to cut the onion in half from root to tip, peel it and slice each half into thick matchsticks lengthways, not quite cutting all the way to the root end so they are still held together. Slice across the matchsticks into neat dice."
},
...
]
},
"images": [
...
],
"source": {
"name": "bbcgoodfood.com",
"display_name": "BBC Good Food",
"source_recipe_url": "https://www.bbcgoodfood.com/recipes/chilli-con-carne-recipe",
"image": {
...
},
"license": "LICENCE_FAIRUSE"
},
"servings": 4,
"durations": {
"total_time": 70
},
"normalized_ingredients": [
{
"text": "1 onion",
"analysis": {
...
},
"source_text": "1 large onion",
"id": "72b6c811949efffe842a9a6850777dc0c81098e4:0:0"
},
...
],
"nutrition": {
"status": "STATUS_AVAILABLE",
"total": [
...
],
"coverage": 1,
"labels": [
...
],
"health_score": {
...
},
"glycemic_index": {
"value": 43.52
},
"glycemic_load": {
"value": 17.27
}
},
"labels": {
...
},
"constraints": {
"violates": {}
},
"saved": {
"value": true,
"collection_ids": [
"105b6b7f012dad2482d897f2a0c36d5e75f"
],
"recipe_type": "RECIPE_TYPE_IMPORTED"
},
"author": {
"name": "Good Food team"
},
"language": "en"
}
},
{
"recipe": {
"id": "1011d34d44e31cb9f72b03b30dce7ae584f7a29faef",
"name": "Calzone with roasted peppers",
"description": "A calzone is sort of like an Italian version of a Cornish pasty, but instead of sealing the fillings inside pastry dough you used pizza dough instead. This recipe includes lots of delicious fresh ingredients including diced chicken with olives, roasted peppers, fresh basil and mozzarella cheese to make an ideal snack for a packed lunch or picnic.",
"ingredients": [
{
"text": "3 red peppers, sliced and seeded"
},
...
],
"instructions": {
"steps": [
{
"text": "Preheat the oven to 220°C and oil a baking tray. Place the peppers on the tray and roast for 15 minutes or until the skins are wrinkled and are starting to char. Meanwhile, heat oil in a frying pan and fry onion and garlic over a low heat, stirring frequently, for 10 minutes or until softened and browning. Add chicken to the pan and fry for 5 minutes or until the chicken changes colour (it will not be cooked through). Remove from the heat. Stir in the sun-dried tomatoes, basil, olives and seasoning. Set aside. Make up the pizza dough – using both sachets – with 240 ml (8 fl oz) tepid water, or according to packet instructions. Knead the dough briefly until smooth, then cut it into 4 portions. Roll out each piece on a lightly floured work surface to a 20 cm (8 in) round. Roughly chop the peppers and stir with the mozzarella into the chicken mixture. Pile one-quarter of the chicken filling in the centre of each dough round. Brush the edge of each dough round with beaten egg, then fold over into a half-moon. Seal the edges by firmly folding them over and crimping together. Place the calzone on a lightly oiled baking tray and cover loosely with cling film. Leave to rise in a warm place for 15 minutes. Uncover the calzone and brush with beaten egg. Sprinkle with the sesame seeds. Bake for 15 minutes or until golden brown. Serve warm or at room temperature.",
"intents": [
...
],
"instruction_intents": {
...
}
}
]
},
"images": [
...
],
"source": {
"name": "whisk.com",
"display_name": "Whisk Recipes",
"source_recipe_url": "https://whisk.com/demo/calzone-roasted-peppers",
"license": "LICENCE_FAIRUSE"
},
"servings": 4,
"durations": {
"cook_time": 45,
"prep_time": 60
},
"normalized_ingredients": [
{
"text": "3 red peppers",
"analysis": {
...
},
"source_text": "3 red peppers, sliced and seeded",
"id": "f3dc3dddab01b8b6905de21ce74113f85b83ae51:0:0"
},
...
],
"nutrition": {
"status": "STATUS_AVAILABLE",
"total": [
...
],
"coverage": 1,
"labels": [
...
],
"health_score": {
"value": 8.938524211539425,
"nutrients_influence": [
...
]
},
"glycemic_index": {
"value": 68.45
},
"glycemic_load": {
"value": 45.94
}
},
"labels": {
...
},
"constraints": {
"violates": {}
},
"saved": {
"value": true,
"collection_ids": [
"105b6b7f012dad2482d897f2a0c36d5e75f"
],
"recipe_type": "RECIPE_TYPE_IMPORTED"
},
"language": "en"
}
}
],
"paging": {
"cursors": {},
"total": "2"
}
}

Note: To understand the data structure of a recipe definition, see Recipe Object.