Introduction

Learn how to integrate Whisk to power your food applications using our REST API.

Whisk API lets you connect to our platform and use services for recipe feed and search, shopping lists, food data, and personalization. The API is HTTP-based, so it works with any language that has an HTTP library, such as cURL.

API Services

Here is the list of services that our API provides:

Service

Description

Recipe

The Recipe API allows you to pull recipes from external sources and normalize and enrich their content with smart data. It also offers functionalities to integrate recipe search on your website or app and lets you create and delete recipes and manage recipe collections on the Whisk platform.

Feed

The Feed API allows you to get smart recommendations on recipe content based on your existing content and user preferences if you are part of the Whisk ecosystem.

Meal Plan

The Meal Plan API provides you the functionality to create a meal schedule made up of specific recipes during a period.

Shopping List

The Shopping List API provides a simple way to integrate Whisk’s add-to-basket functionality into your website or app, allowing you to send items and recipes to an online grocery cart.

Store Item

The Store Item API allows you to retrieve store items from a specific retailer.

Food List

The Food List API allows you to track items in your pantry or refrigerator and use it for recommendations.

Community

The Community API allows you to discover, search and retrieve communities related to recipe content from the Whisk platform.

Custom Label

The Custom Label API allows you to retrieve a list of all labels that you created on the Whisk platform.

Users

The Users API allows you to handle user management on the Whisk platform.

API Request

A Whisk API request is composed of:

Endpoint

The Endpoint is the URL you use to send a request. You can also call it a Request URL. It follows this structure:

https://api.whisk.com/recipe/v2/1124ba?quantity.servings=2

An Endpoint contains the following components.

Component

Description

Example

Host

The Whisk API domain.

api.whisk.com

Resource Path

The path to the resource. In the example, the path leads to a recipe resource.

/recipe/v2/1124ba

Query Parameters

Options to modify your request with key-value pairs. An endpoint may or may not have query parameters depending on the need.

?quantity.servings=2

HTTP Method

An HTTP method represents the type of request you send to the server.

The primary or most-commonly-used HTTP methods are:

  • POST: Creates a resource.

  • GET: Retrieves one or more resources.

  • PUT: Updates a resource.

  • DELETE: Deletes a resource.

These correspond to create, read, update, and delete (or CRUD) operations, respectively. While working with Whisk API, you can also come across other less used verbs, like PATCH or UPSERT.

Headers

-H "Accept: application/json" \
-H "Authorization: Token <YOUR-API-ACCESS-TOKEN>"

Headers are property-value pairs used for specifying access token for authentication and providing information about the body content type.

Body

{
"name": "New Recipes Collection"
}

The Body contains information you want to send to the server. This option is only used with POST, PUT, PATCH or DELETE requests. A GET request has no body. Whisk API uses JSON (JavaScript Object Notation) as its content format to specify the body in the request.

API Response

All Whisk API responses are formatted in JSON and include a status code. For more information on the different status codes that our API supports, see Status Codes and Error Handling.