Whisk Docs
Whisk HomeHelp CenterDeveloper Tools
v1.0.0
v1.0.0
  • Overview
  • Guides
    • Creating An Account
    • Getting Started
    • Whisk Sandbox
  • API
    • Authentication
      • Server Token
      • Client Token
      • User Access Token
      • Anonymous Access
    • Recipes
      • Get Recipe
      • Get Recipe Categories
      • Recipe Objects
    • Recipe Discovery
      • Recipe Feed
      • Recipe Search
      • Get Similar Recipes
    • Shopping Lists
      • Get Shopping Lists
      • Create A Shopping List
      • Add Items To A Shopping List
      • List Analysis
    • Meal Plans
      • Meal Plan Management
      • Delete Meals
      • Auto-Generator
      • Error Handling
    • Retailers
      • Get Available Stores
      • Retailers Checkout Flow
      • Retailer Aliases
      • OAuth Retailer Flow
      • Retailer User Info
      • Search Store Items
    • Carts
      • Create a Cart
      • Update Cart Item
      • Splitting Combined Items
      • Add Items To Cart
      • Add Recipes To Cart
      • Get Cart Item Options
      • Swap Cart Item Product
      • Delete A Cart Or A Cart Item
      • Checkout
    • Users
      • Get A User
      • Update A User
    • User Recipes & Collections
      • Add User Recipe
      • Create A Recipe
      • Update External Recipe
      • Get All User Recipes
      • Update User Recipe
      • Remove Recipe from Favorites
      • Create Collection
      • Get All User Collections
      • Get Collection
      • Get Recipes from a Collection
      • Remove Collection
    • Tools
      • Autocomplete
  • Shopping List SDK
    • Overview
    • Examples
      • Shoppable Recipes
      • Shoppable Products
      • Shoppable Media
    • Basic Setup
      • Basic Setup
      • Methods
      • Event Listeners
      • Widget
      • Subscriptions
      • Global Configuration
      • UTM Parameters
      • Using With SPA
  • Shopping List Mobile API
    • Overview
    • Examples
    • Reference
  • Tips and Tricks
    • Object IDs
    • URL Lookup
    • Searching
    • Multiple IDs request
  • Resources
    • Nutrients
    • Recipe Labels
    • Health Score, Glycemic Index, Glycemic Load
    • Whisk User Data
    • Supported Retailers
    • Optimizing Image Load
Powered by GitBook
On this page
  • Add User Recipe
  • Sample Request
  • Partially added recipe
  • Response
  • RawIngredient
  • NormalizedIngredient
  • RawIngredient
  • RecipeIngredientAnalysis
  • RecipeInstruction
  • RecipeInstructions
  • ProductCategory
  • ImageContainer
  • ResponsiveImage
  • OriginalImage
  • VideoContainer
  • RecipeSource
  • RecipeLabels
  • RecipeLabel
  • RecipeDurations
  • RecipeConstraints
  • ConstraintsCollection
  • RecipeSaved
  • RecipeAuthor

Was this helpful?

  1. API
  2. User Recipes & Collections

Add User Recipe

This endpoint allows adding favorite recipe. This API available only for user access-token integration.

Add User Recipe

POST https://graph.whisk.com/v1/recipes

Path Parameters

Name
Type
Description

fields

array

Extra fields to return on the recipe Possible values: normalizedIngredients, instructions, nutrition.

Request Body

Name
Type
Description

recipeId

string

Identifier of a Recipe to add.

collectionIds

array

Collections for this recipe. If not specified it will add recipe without collection

{
  "recipe": {
    "id": "1070c26c320ce194efca97093e72517b4e7",
    "name": "Home made pasta",
    "description": "Pasta with tomato souce",
    "ingredients": [
      {
        "text": "Pappardelle pasta"
      },
      {
        "text": "5 tomatoes"
      },
      {
        "text": "3tbs of olive oil"
      }
    ],
    "saved": {
      "value": true,
      "collectionIds": [
        "cd037513c9e149a1b707e85eab1fc7f6"
      ],
      "owner": true,
      "type": "manual"
    }
  },
  "status": "success"
}
{
    "status": "bad request"
}

Sample Request

curl "https://graph.whisk.com/v1/recipes" \
  -H "Accept: application/json" \
  -H "Content-Type: application/json" \
  -H "Authorization: Bearer <Access-Token>" \
  -d '{
    "recipeId": "3d4fda8595114a3a9f7b12fd471a4169"
  }'

It will return a 400 error code if a limit of the allowed number of saved recipes is exceeded. The limit is 50 recipes per user.

Partially added recipe

If the recipe was not successfully extracted from the site. It means Whisk was not able to understand at least name and recipe ingredients.

Whisk will create a recipe copy for this user. So a user will be able to finish up a recipe by himself.

Recipe state will be failed, in case if whisk was not able to parse recipe.

Response

ATTRIBUTE

TYPE

DESCRIPTION

recipe

ManualRecipeDetails

Recipe details.

partiallyParsed

PartialRecipeDetails

If parsing status is failed we can provide some fields whisk were able to parse.

status*

enum

Possible values: success, failure.

RawIngredient

ATTRIBUTE

TYPE

DESCRIPTION

text*

string

group

string

NormalizedIngredient

ATTRIBUTE

TYPE

DESCRIPTION

text*

string

group

string

analysis

RecipeIngredientAnalysis

RawIngredient

ATTRIBUTE

TYPE

DESCRIPTION

text*

string

group

string

RecipeIngredientAnalysis

ATTRIBUTE

TYPE

DESCRIPTION

product*

string

canonicalName*

string

quantity

number

unit

string

multiplier

number

brand

string

comment

string

category

string

RecipeInstruction

ATTRIBUTE

TYPE

DESCRIPTION

text*

string

group

string

images

array [ImageContainer]

RecipeInstructions

ATTRIBUTE

TYPE

DESCRIPTION

steps*

array [RecipeInstruction]

ProductCategory

ATTRIBUTE

TYPE

DESCRIPTION

name*

string

ImageContainer

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

ATTRIBUTE

TYPE

DESCRIPTION

url*

string

Hosted url of an image

width*

integer

Image width

height*

integer

Image height

OriginalImage

ATTRIBUTE

TYPE

DESCRIPTION

url*

string

URL of the image

VideoContainer

ATTRIBUTE

TYPE

DESCRIPTION

url

string

URL to original video provider page

contentUrl

string

URL to video file. Actual bytes of the media object

embedUrl

string

An embed format of video with player

playerType

enum

Possible values: flash, html5, silverlight.

thumbnail

string

A thumbnail image relevant to the Video

duration

number

The duration of the recording

height

number

The height of the item

width

number

The width of the item

RecipeSource

ATTRIBUTE

TYPE

DESCRIPTION

name*

string

displayName

string

sourceRecipeUrl

string

license

string

image

ImageContainer

RecipeLabels

ATTRIBUTE

TYPE

DESCRIPTION

mealType*

array [RecipeLabel]

cuisine*

array [RecipeLabel]

category*

array [RecipeLabel]

RecipeLabel

Some RecipeLabel description

ATTRIBUTE

TYPE

DESCRIPTION

name*

string

displayName*

string

RecipeDurations

ATTRIBUTE

TYPE

DESCRIPTION

cookTime

number

Cooking time in minutes

prepTime

number

Preparation time in minutes

totalTime

number

Total time in minutes

RecipeConstraints

ATTRIBUTE

TYPE

DESCRIPTION

violates*

ConstraintsCollection

Constraints which are violated in a recipe

ConstraintsCollection

ATTRIBUTE

TYPE

DESCRIPTION

diets*

array

List of diets Possible values: lacto-vegetarian, ovo-vegetarian, ovo-lacto-vegetarian, pescatarian, vegan, vegetarian.

avoidances*

array

List of avoidances and intolerances Possible values: celery, crustacean, egg, fish, groundnut, milk, mollusc, mustard, sesame, soybean, sulphites, tree-nut, wheat.

RecipeSaved

ATTRIBUTE

TYPE

DESCRIPTION

value

boolean

True if this recipe is saved to favorites

collectionIds

array [string]

owner

boolean

If current user is owner of the recipe

type

enum

Recipe type Possible values: manual, imported.

RecipeAuthor

ATTRIBUTE

TYPE

DESCRIPTION

name

string

image

ImageContainer

PreviousUser Recipes & CollectionsNextCreate A Recipe

Last updated 5 years ago

Was this helpful?