Cook from your pantry

Rank recipes by how much of them your pantry already covers, with the missing ingredients listed.

GET/pantryAPI key

Returns what you can cook from what you have, best covered first. `ingredients` is the pantry. Only recipes using at least one pantry ingredient are returned; each carries the ingredients your pantry covers and the ones it does not, named as the recipe names them. `maxMissing` narrows the results to recipes you are short no more than that many ingredients for, so `maxMissing=0` is what you can cook right now. Matching is the same as the `ingredients` filter of GET /recipes: exact canonical ids or whole canonical names, with a space and a hyphen treated alike.

Request

curl 'https://api.tinyplates.dev/pantry?ingredients=chicken%2Crice%2Conion&limit=3' \
  -H 'Authorization: Bearer rd_your_api_key'

Sign in to run this request with your own key. Free, 500 requests a day.

Parameters

  • ingredientsstringrequired

    The ingredients you have: 1 to 20 comma-separated names or canonical ids, each at most 80 characters. Required.

  • languagestringdefaults to en

    Only return recipes written in this language, as a two-letter ISO 639-1 code.

  • limitintegerdefaults to 20at least 1

    How many recipes to return.

  • maxMissinginteger0–20

    Only return recipes you are missing at most this many ingredients for (0–20). 0 returns what you can cook right now. Left out, a recipe may be missing any number.

  • offsetintegerdefaults to 0at least 0

    How many recipes to skip. Use it with `limit` to page.

Response

Offset pagination.

The recipes, best covered first.

Example

{
  "pagination": {
    "limit": 1,
    "offset": 0,
    "total": 112
  },
  "recipes": [
    {
      "id": "6a9820e58f8122ec891b68a3",
      "author": {
        "name": "Lindsay Ostrom",
        "url": "https://pinchofyum.com/about"
      },
      "description": "This peanut butter dark chocolate hummus is a sweet alternative to traditional hummus. Perfect served on graham crackers as an afternoon snack!",
      "instructions": [
        {
          "step": 1,
          "text": "Blend everything through milk in a food processor."
        },
        {
          "step": 2,
          "text": "Add flour by the spoonful and blend until desired consistency is reached."
        },
        {
          "step": 3,
          "text": "Stir in dark chocolate."
        },
        {
          "step": 4,
          "text": "Chill before serving."
        }
      ],
      "language": "en",
      "media": [
        {
          "id": "hero",
          "role": "hero",
          "type": "image",
          "url": "https://pinchofyum.com/tachyon/2011/05/Peanut-Butter-Dark-Chocolate-Hummus.jpeg?fit=225%2C225",
          "variants": [
            {
              "url": "https://pinchofyum.com/tachyon/2011/05/Peanut-Butter-Dark-Chocolate-Hummus.jpeg?fit=195%2C195"
            },
            {
              "url": "https://pinchofyum.com/tachyon/2011/05/Peanut-Butter-Dark-Chocolate-Hummus.jpeg?fit=180%2C180"
            },
            {
              "url": "https://pinchofyum.com/tachyon/2011/05/Peanut-Butter-Dark-Chocolate-Hummus.jpeg"
            }
          ]
        }
      ],
      "nutrition": {
        "basis": {
          "type": "serving"
        },
        "calories": {
          "unit": "kcal",
          "value": 201
        },
        "carbohydrates": {
          "unit": "g",
          "value": 29.4
        },
        "cholesterol": {
          "unit": "mg",
          "value": 0.8
        },
        "fat": {
          "unit": "g",
          "value": 7.4
        },
        "fiber": {
          "unit": "g",
          "value": 3.3
        },
        "micronutrients": {
          "trans-fat": {
            "unit": "g",
            "value": 0
          }
        },
        "protein": {
          "unit": "g",
          "value": 5.6
        },
        "saturatedFat": {
          "unit": "g",
          "value": 2.5
        },
        "sodium": {
          "unit": "mg",
          "value": 76
        },
        "source": "provided",
        "sugar": {
          "unit": "g",
          "value": 16.9
        }
      },
      "rating": {
        "count": 1,
        "reviewCount": 1,
        "value": 5
      },
      "servings": {
        "max": 8,
        "original": "6-8",
        "quantity": 6
      },
      "times": {
        "cook": {
          "seconds": 600
        },
        "prep": {
          "seconds": 300
        },
        "total": {
          "seconds": 900
        }
      },
      "title": "Peanut Butter Dark Chocolate Hummus",
      "categories": [],
      "courses": [
        "dessert"
      ],
      "createdAt": "2026-09-02T13:13:09.089Z",
      "cuisines": [
        "american"
      ],
      "ingredients": [
        {
          "display": "1 can white beans or chickpeas, rinsed",
          "name": "white beans or chickpeas",
          "optional": false,
          "preparation": "rinsed",
          "quantity": {
            "unit": "can",
            "value": 1
          }
        },
        {
          "display": "¼ cup peanut butter",
          "name": "peanut butter",
          "optional": false,
          "quantity": {
            "unit": "cup",
            "value": 0.25
          }
        },
        {
          "display": "2 tbsp caramel sauce",
          "name": "caramel sauce",
          "optional": false,
          "quantity": {
            "unit": "tbsp",
            "value": 2
          }
        },
        {
          "display": "2 tbsp maple syrup",
          "name": "maple syrup",
          "optional": false,
          "quantity": {
            "unit": "tbsp",
            "value": 2
          }
        },
        {
          "display": "¼ cup brown sugar",
          "name": "brown sugar",
          "optional": false,
          "quantity": {
            "unit": "cup",
            "value": 0.25
          }
        },
        {
          "display": "pinch of cinnamon",
          "name": "pinch of cinnamon",
          "optional": false
        },
        {
          "display": "¼ cup milk",
          "name": "milk",
          "optional": false,
          "quantity": {
            "unit": "cup",
            "value": 0.25
          }
        },
        {
          "display": "¼ cup flour",
          "name": "flour",
          "optional": false,
          "quantity": {
            "unit": "cup",
            "value": 0.25
          }
        },
        {
          "display": "chopped dark chocolate",
          "name": "chopped dark chocolate",
          "optional": false
        }
      ],
      "tags": [
        "chocolate hummus",
        "peanut butter hummus",
        "peanut butter chocolate",
        "hummus recipe",
        "dessert hummus"
      ],
      "text": {
        "ingredients": [
          "1 can white beans or chickpeas, rinsed",
          "¼ cup peanut butter",
          "2 tbsp caramel sauce",
          "2 tbsp maple syrup",
          "¼ cup brown sugar",
          "pinch of cinnamon",
          "¼ cup milk",
          "¼ cup flour",
          "chopped dark chocolate"
        ],
        "instructions": [
          "Blend everything through milk in a food processor.",
          "Add flour by the spoonful and blend until desired consistency is reached.",
          "Stir in dark chocolate.",
          "Chill before serving."
        ]
      },
      "updatedAt": "2026-09-06T01:11:59.223Z",
      "url": "https://pinchofyum.com/pb-dark-chocolate-hummus",
      "coverage": 0.78,
      "matchedIngredients": [
        "white beans or chickpeas",
        "peanut butter",
        "maple syrup",
        "brown sugar",
        "pinch of cinnamon",
        "milk",
        "flour"
      ],
      "missingIngredients": [
        "caramel sauce",
        "chopped dark chocolate"
      ]
    }
  ]
}

Errors

  • 400

    The "ingredients" parameter is required. Send the ingredients you have, such as "chicken,rice".

    A parameter was not a value the API accepts. The message names the parameter, the value it was given and where the allowed values are listed.

  • 400

    The "maxMissing" parameter must be a whole number between 0 and 20. Send how many ingredients you are willing to shop for, such as 1.

    A parameter was not a value the API accepts. The message names the parameter, the value it was given and where the allowed values are listed.

  • 401

    An API key is required. Pass it as an Authorization: Bearer header.

    No key was sent, and this deployment requires one. Keys are optional today and will become required.

  • 401

    Invalid API key.

    The key does not exist. Check for a truncated copy, or create a new one on your dashboard.

  • 401

    This API key has been disabled.

    The key was revoked. Create a new one on your dashboard.

  • 401

    This API key has expired.

    The key was created with an expiry that has passed. Create a new one.

  • 429

    Rate limit exceeded for this API key. Try again later.

    The account has used its 500 requests for the day. The allowance is per account, so another key will not help. It resets at midnight UTC.

  • 500

    Something went wrong. Please try again.

    The API could not answer. The request was not your fault; retry it, and report it if it keeps happening.