# Allrecipes API

> Allrecipes returns recipe search results and full recipe details as a workflow and API.

Search recipes finds recipes by dish or ingredients and returns ratings, photos, and cooking times; optionally set a maximum total time. Get recipe returns ingredients, directions, times, ratings, and nutrition from a recipe name or Allrecipes page link.

- Page: https://fous.com/tools/allrecipes
- Handle: `@allrecipes`
- Category: [Food](https://fous.com/tools/category/food)
- Source website: https://allrecipes.com
- Last verified: Sep 29, 2026

## Methods

### Get recipe

Operation `get_recipe`, version 1. 1 credit per completed call. Failed calls without a completed billing receipt are free; completed work can remain charged if delivery is interrupted.

Get a full Allrecipes recipe by its name or page link, including ingredients, directions, times, ratings and nutrition. Names select the most-rated close match.

**Input**

| Field | Type | Required | Example | Description |
|---|---|---|---|---|
| `recipe` | string | yes | `"https://www.allrecipes.com/recipe/23600/worlds-best-lasagna/"` | Dish name or Allrecipes recipe page link, for example World's Best Lasagna or https://www.allrecipes.com/recipe/23600/worlds-best-lasagna/. |

**Input schema**

```json
{
  "type": "object",
  "required": [
    "recipe"
  ],
  "properties": {
    "recipe": {
      "type": "string",
      "description": "Dish name or Allrecipes recipe page link, for example World's Best Lasagna or https://www.allrecipes.com/recipe/23600/worlds-best-lasagna/.",
      "examples": [
        "https://www.allrecipes.com/recipe/23600/worlds-best-lasagna/",
        "World's Best Lasagna",
        "blueberry muffins"
      ]
    }
  },
  "additionalProperties": false,
  "examples": [
    {
      "recipe": "https://www.allrecipes.com/recipe/23600/worlds-best-lasagna/"
    },
    {
      "recipe": "World's Best Lasagna"
    },
    {
      "recipe": "blueberry muffins"
    }
  ]
}
```

**Output**

| Field | Type | Example | Description |
|---|---|---|---|
| `steps` | array |  | Directions numbered in recipe order. |
| `title` | string | `"World's Best Lasagna"` |  |
| `author` | string or null | `"John Chandler"` |  |
| `servings` | integer or null | `12` |  |
| `cook_time` | string or null | `"2 hrs 30 mins"` |  |
| `prep_time` | string or null | `"30 mins"` |  |
| `photo_link` | string or null | `"https://www.allrecipes.com/thmb/htylprTl3RuTsFquG9YtbU1pzy0=/1500x0/filters:no_upscale():max_bytes(150000):strip_icc()/` |  |
| `total_time` | string or null | `"3 hrs 15 mins"` |  |
| `ingredients` | array |  |  |
| `recipe_link` | string | `"https://www.allrecipes.com/recipe/23600/worlds-best-lasagna/"` |  |
| `star_rating` | number or null | `4.8` |  |
| `cook_time_minutes` | integer or null | `150` |  |
| `number_of_ratings` | integer or null | `21007` |  |
| `prep_time_minutes` | integer or null | `30` |  |
| `short_description` | string or null | `"This lasagna recipe from John Chandler is our most popular recipe! With sausage, ground beef, basil, and 3 types of che` |  |
| `total_time_minutes` | integer or null | `195` |  |
| `nutrition_per_serving` | object |  |  |
| `nutrition_per_serving.fat_g` | number or null | `21` |  |
| `nutrition_per_serving.calories` | number or null | `448` |  |
| `nutrition_per_serving.protein_g` | number or null | `30` |  |
| `nutrition_per_serving.sodium_mg` | number or null | `1400` |  |
| `nutrition_per_serving.carbohydrates_g` | number or null | `37` |  |

**Example input**

```json
{
  "recipe": "https://www.allrecipes.com/recipe/23600/worlds-best-lasagna/"
}
```

**Example output**

```json
{
  "steps": [
    "1. Gather all your ingredients.",
    "2. Cook sausage, ground beef, onion, and garlic in a Dutch oven over medium heat until well browned.",
    "3. Stir in crushed tomatoes, tomato sauce, tomato paste, and water. Season with sugar, 2 tablespoons parsley, basil, 1 teaspoon salt, Italian seasoning, fennel seeds, and pepper. Simmer, covered, for …"
  ],
  "title": "World's Best Lasagna",
  "author": "John Chandler",
  "servings": 12,
  "cook_time": "2 hrs 30 mins",
  "prep_time": "30 mins",
  "photo_link": "https://www.allrecipes.com/thmb/htylprTl3RuTsFquG9YtbU1pzy0=/1500x0/filters:no_upscale():max_bytes(150000):strip_icc()/23600-worlds-best-lasagna-DDMFS-4x3-1196-24c5401652934ffb96d3d94bc9fbe2d7.jpg",
  "total_time": "3 hrs 15 mins",
  "ingredients": [
    "1 pound sweet Italian sausage",
    "¾ pound lean ground beef",
    "½ cup minced onion"
  ],
  "recipe_link": "https://www.allrecipes.com/recipe/23600/worlds-best-lasagna/",
  "star_rating": 4.8,
  "cook_time_minutes": 150,
  "number_of_ratings": 21007,
  "prep_time_minutes": 30,
  "short_description": "This lasagna recipe from John Chandler is our most popular recipe! With sausage, ground beef, basil, and 3 types of cheese, it lives up to its name!",
  "total_time_minutes": 195,
  "nutrition_per_serving": {
    "fat_g": 21,
    "calories": 448,
    "protein_g": 30,
    "sodium_mg": 1400,
    "carbohydrates_g": 37
  }
}
```

### Search recipes

Operation `search_recipes`, version 1. 1 credit per completed call. Failed calls without a completed billing receipt are free; completed work can remain charged if delivery is interrupted.

Find Allrecipes recipes for a dish or ingredients, in search order, with ratings, photos and total cooking times. Optionally limit results to recipes ready within a chosen number of minutes.

**Input**

| Field | Type | Required | Example | Description |
|---|---|---|---|---|
| `query` | string | yes | `"chicken broccoli casserole"` | Dish or ingredients to search for, for example chicken broccoli casserole. |
| `max_results` | integer | no | `3` | Maximum number of recipes to return, for example 20. Up to 50. |
| `max_total_minutes` | integer | no | `45` | Only include recipes ready within this many minutes, for example 60. Leave blank for no limit. |

**Input schema**

```json
{
  "type": "object",
  "required": [
    "query"
  ],
  "properties": {
    "query": {
      "type": "string",
      "description": "Dish or ingredients to search for, for example chicken broccoli casserole.",
      "examples": [
        "chicken broccoli casserole",
        "zxqv 938372 nonsense recipezz",
        "chicken broccoli"
      ]
    },
    "max_results": {
      "type": "integer",
      "default": 20,
      "maximum": 50,
      "minimum": 1,
      "description": "Maximum number of recipes to return, for example 20. Up to 50.",
      "x-fous-developer": true,
      "examples": [
        3,
        5,
        4
      ]
    },
    "max_total_minutes": {
      "type": "integer",
      "minimum": 1,
      "description": "Only include recipes ready within this many minutes, for example 60. Leave blank for no limit.",
      "x-fous-developer": false,
      "examples": [
        45
      ]
    }
  },
  "additionalProperties": false,
  "examples": [
    {
      "query": "chicken broccoli casserole",
      "max_results": 3
    },
    {
      "query": "zxqv 938372 nonsense recipezz",
      "max_results": 5
    },
    {
      "query": "chicken broccoli",
      "max_results": 4,
      "max_total_minutes": 45
    }
  ]
}
```

**Output**

| Field | Type | Example | Description |
|---|---|---|---|
| `recipes` | array |  | Matching recipes in Allrecipes search order. |
| `recipes[].title` | string | `"Chicken, Broccoli, and Cheddar Casserole"` |  |
| `recipes[].photo_link` | string or null | `"https://www.allrecipes.com/thmb/XKXdLz5hsm4wyzsLg7jdhSW5IIs=/282x188/filters:no_upscale():max_bytes(150000):strip_icc()` |  |
| `recipes[].total_time` | string or null | `"50 mins"` | Total time as written on the recipe. |
| `recipes[].recipe_link` | string | `"https://www.allrecipes.com/recipe/279848/chicken-broccoli-and-cheddar-casserole/"` |  |
| `recipes[].star_rating` | number or null | `4.7` | Average rating out of five stars. |
| `recipes[].number_of_ratings` | integer | `131` |  |
| `recipes[].total_time_minutes` | integer or null | `50` |  |

**Example input**

```json
{
  "query": "chicken broccoli casserole",
  "max_results": 3
}
```

**Example output**

```json
{
  "recipes": [
    {
      "title": "Chicken, Broccoli, and Cheddar Casserole",
      "photo_link": "https://www.allrecipes.com/thmb/XKXdLz5hsm4wyzsLg7jdhSW5IIs=/282x188/filters:no_upscale():max_bytes(150000):strip_icc():format(webp)/9373618-ef00b5a5052346a3b9a671b067d04351.jpg",
      "total_time": "50 mins",
      "recipe_link": "https://www.allrecipes.com/recipe/279848/chicken-broccoli-and-cheddar-casserole/",
      "star_rating": 4.7,
      "number_of_ratings": 131,
      "total_time_minutes": 50
    },
    {
      "title": "Broccoli Chicken Casserole",
      "photo_link": "https://www.allrecipes.com/thmb/jmmvaAT8UFY8u7acw92K-OgMNAA=/282x188/filters:no_upscale():max_bytes(150000):strip_icc():format(webp)/8965-broccoli-chicken-casserole-i-DDMFS-4x3-7c100071a13c4226bae46ea…",
      "total_time": "50 mins",
      "recipe_link": "https://www.allrecipes.com/recipe/8965/broccoli-chicken-casserole-i/",
      "star_rating": 4.2,
      "number_of_ratings": 1062,
      "total_time_minutes": 50
    },
    {
      "title": "Curried Chicken and Broccoli Casserole",
      "photo_link": "https://www.allrecipes.com/thmb/QOTW1j1RtIIgqDw_Npta-FeyXRQ=/282x188/filters:no_upscale():max_bytes(150000):strip_icc():format(webp)/2161924-curried-chicken-and-broccoli-casserole-Rock_lobster-4x3-1-7…",
      "total_time": "1 hr",
      "recipe_link": "https://www.allrecipes.com/recipe/229036/curried-chicken-and-broccoli-casserole/",
      "star_rating": 4.2,
      "number_of_ratings": 131,
      "total_time_minutes": 60
    }
  ]
}
```

## Quick start

Replace `YOUR_API_KEY` with a Fous API key. To create one, open Developers at the bottom of Fous Studio, turn on Developer mode, then go to API keys (https://app.fous.com/keys). Change the values in `input` to run the same tool on new data.

```bash
curl 'https://api.fous.com/v1/query' \
  --fail-with-body --silent --show-error --max-time 180 \
  -H "Authorization: Bearer YOUR_API_KEY" \
  -H 'Content-Type: application/json' \
  --data-raw '{
  "api": "@allrecipes",
  "visibility": "public",
  "operation": "get_recipe",
  "version": 1,
  "input": {
    "recipe": "https://www.allrecipes.com/recipe/23600/worlds-best-lasagna/"
  },
  "response": {
    "format": "json"
  }
}'
```

```python
# Save as fous.py and run with python3 fous.py. No packages needed.
import json
import urllib.error
import urllib.request

api_key = "YOUR_API_KEY"

body = json.loads("{\n  \"api\": \"@allrecipes\",\n  \"visibility\": \"public\",\n  \"operation\": \"get_recipe\",\n  \"version\": 1,\n  \"input\": {\n    \"recipe\": \"https://www.allrecipes.com/recipe/23600/worlds-best-lasagna/\"\n  },\n  \"response\": {\n    \"format\": \"json\"\n  }\n}")
request = urllib.request.Request(
    "https://api.fous.com/v1/query",
    data=json.dumps(body).encode("utf-8"),
    headers={
        "Authorization": f"Bearer {api_key}",
        "Content-Type": "application/json",
    },
    method="POST",
)
try:
    with urllib.request.urlopen(request, timeout=180) as response:
        result = json.load(response)
except urllib.error.HTTPError as error:
    raise RuntimeError(f"HTTP {error.code}: {error.read().decode('utf-8', errors='replace')}") from error
if result.get("success") is False:
    raise RuntimeError(result.get("error", {}).get("message", "Request failed"))
print(json.dumps(result["data"]["output"], indent=2))
```

```typescript
// Save as fous.mts and run with npx tsx fous.mts.
const apiKey = "YOUR_API_KEY";

const response = await fetch("https://api.fous.com/v1/query", {
  method: "POST",
  headers: {
    "Authorization": `Bearer ${apiKey}`,
    "Content-Type": "application/json",
  },
  signal: AbortSignal.timeout(180_000),
  body: JSON.stringify({
  "api": "@allrecipes",
  "visibility": "public",
  "operation": "get_recipe",
  "version": 1,
  "input": {
    "recipe": "https://www.allrecipes.com/recipe/23600/worlds-best-lasagna/"
  },
  "response": {
    "format": "json"
  }
}),
});
type ApiResult = { success: boolean; data?: { output: unknown }; error?: { message: string } };
const result: ApiResult = await response.json();
if (!response.ok || result.success === false) {
  throw new Error(result.error?.message ?? `HTTP ${response.status}`);
}
if (!result.data) throw new Error("Missing API response data");
console.log(result.data.output);
```

## Use from an AI assistant

Connect this tool to Claude Code, Claude Desktop, Cursor, VS Code, Codex and any MCP client as its own MCP server. Each method is a typed tool whose arguments are the method’s input.

- Server URL: `https://api.fous.com/mcp/tools/allrecipes`
- Authorization: `Authorization: Bearer <Fous API key>`

**Tools**

- `get_recipe`: Get recipe. 1 credit per completed call. Failed calls without a completed billing receipt are free; completed work can remain charged if delivery is interrupted.
- `search_recipes`: Search recipes. 1 credit per completed call. Failed calls without a completed billing receipt are free; completed work can remain charged if delivery is interrupted.
- `fous_get_run`: the result of a run that was still going, by its `request_id`. Free.

Claude Code:

```bash
claude mcp add --scope user --transport http fous-allrecipes https://api.fous.com/mcp/tools/allrecipes --header "Authorization: Bearer ${FOUS_API_KEY:?Set FOUS_API_KEY to your Fous API key}"
```

To give the assistant every tool, connect `https://api.fous.com/mcp`: it finds one with `fous_search_tools` and runs it with `fous_run_tool`. Setup for other clients: https://fous.com/llms-full.txt.

## Use cases

- Find recipes using ingredients on hand
- Compare recipe ratings and cooking times
- Get ingredients and directions for a recipe
- Review nutrition details per serving

## FAQ

### Can I run it with my own inputs?

Yes. Change the inputs in Studio and press Run, or send new inputs from your code, or ask a connected AI assistant.

### Can I call this Allrecipes tool as an API?

Yes. Send a POST request to /v1/query with your Fous API key and the inputs, and get JSON back.

### How much does it cost?

Each completed run costs 1 credit. Failed runs without a completed receipt are free; completed work can remain charged if delivery is interrupted. With pay as you go, a credit costs 1¢. Monthly plans cost less per credit.

### Do I need a Allrecipes account?

No. You only need a Fous account.

### How current is the data?

Fous gets the data from allrecipes.com when you run it. Some results are reused for up to 24 hours, and results that use your account or key are never reused. It was last verified on Sep 29, 2026.

### Which recipes match a dish or ingredients?

Search recipes finds matches from a dish or ingredients query and returns ratings, photos, and cooking times.

### How long does a recipe take?

Search recipes returns total cooking times; Get recipe returns preparation, cooking, and total times for a selected recipe.

### What ingredients and nutrition does a recipe have?

Get recipe returns ingredients and nutrition per serving for a recipe name or Allrecipes page link.

## Related

- [Food Network API](https://fous.com/tools/food-network.md): Food Network offers recipes, cooking shows, and food inspiration, with searchable recipes and ingredient, direction, rating, and cooking-time details when available.
- [Serious Eats API](https://fous.com/tools/serious-eats.md): Serious Eats offers recipes, cooking techniques, and food guides, with available ingredients, directions, timing, ratings, and nutrition; some details may be absent.
- [BBC Good Food API](https://fous.com/tools/bbc-good-food.md): BBC Good Food returns searchable web recipes, excluding app-only recipes, and full recipe ingredients, steps, and per-serving nutrition when available.
- [Open Food Facts API](https://fous.com/tools/open-food-facts.md): Open Food Facts provides public packaged-food information, including ingredients, allergens, nutrition, and product classifications; coverage varies, and search results favor popular products.
- [DoorDash API](https://fous.com/tools/doordash.md): DoorDash lists nearby restaurants and menus, prices, ratings, delivery fees, and estimated times; offers, availability, fees, and times can change.
- [McDonald's API](https://fous.com/tools/mcdonalds.md): McDonald’s provides menu-item food information for US, UK and Canadian items, plus nearby US restaurants and listed hours today, which may miss unexpected closures.
- [Goodreads API](https://fous.com/tools/goodreads.md): Goodreads returns public book searches, matched-book details with variable editions, popular or newest reviews, author books by popularity or date, and up to 100 quotes.
- [Starbucks API](https://fous.com/tools/starbucks.md): Starbucks provides menu drinks and food with nutrition, ingredients, allergens, and photos, plus nearby cafés ranked by distance with current open status, local hours, and amenities.
- [All Food tools](https://fous.com/tools/category/food)
