← Services›Diet, Recipe & Allergen Data›Sample
PUBLIC BETA · LIVE REST API

Structured recipes for developer workflows.

A compact recipe example showing ingredient quantities, serving scaling, declared diet tags and cautious ingredient-derived allergen fields. Use the live REST endpoints for current responses.

Original sample recipeDeterministic scalingJSON + schema download
MVP contractSearch and filterScale by servingsPreserve uncertainty
Ingredient tags do not establish allergy safety

Tags describe listed ingredients only and do not assess cross-contact, product labels, substitutions or preparation conditions. The sample is a static illustration; live recipe search is available from the service page. No nutrition facts are provided.

Sample response

Example: search tomato recipes declared vegan and scale to four servings.

View complete illustrative JSON
{
  "data": {
    "query": "tomato",
    "filters": {
      "diet": "vegetarian",
      "jurisdiction": "GB",
      "exclude_allergens": []
    },
    "scaling": {
      "base_servings": "recipe-specific",
      "requested_servings": 4,
      "method": "amount × requested_servings / base_servings; rounded to 0.1 unit"
    },
    "result_count": 5,
    "recipes": [
      {
        "id": "red-lentil-tomato-dal",
        "title": "Red lentil and tomato dal",
        "summary": "A simple stovetop red lentil dal with tomato, cumin and rice.",
        "base_servings": 2,
        "diets": [
          "vegan",
          "vegetarian",
          "gluten_free",
          "dairy_free"
        ],
        "ingredients": [
          {
            "name": "red lentils, dry",
            "amount": 160,
            "unit": "g",
            "allergens": [],
            "scaled_amount": 320
          },
          {
            "name": "chopped tomatoes",
            "amount": 400,
            "unit": "g",
            "allergens": [],
            "scaled_amount": 800
          },
          {
            "name": "water",
            "amount": 350,
            "unit": "ml",
            "allergens": [],
            "scaled_amount": 700
          },
          {
            "name": "onion",
            "amount": 120,
            "unit": "g",
            "allergens": [],
            "scaled_amount": 240
          },
          {
            "name": "olive oil",
            "amount": 15,
            "unit": "ml",
            "allergens": [],
            "scaled_amount": 30
          },
          {
            "name": "ground cumin",
            "amount": 4,
            "unit": "g",
            "allergens": [],
            "scaled_amount": 8
          },
          {
            "name": "ground turmeric",
            "amount": 2,
            "unit": "g",
            "allergens": [],
            "scaled_amount": 4
          },
          {
            "name": "basmati rice, dry",
            "amount": 150,
            "unit": "g",
            "allergens": [],
            "scaled_amount": 300
          }
        ],
        "method": [
          "Rinse the lentils and finely chop the onion.",
          "Warm the oil in a saucepan. Cook the onion until soft, then stir in cumin and turmeric.",
          "Add lentils, tomatoes and water. Simmer gently until the lentils are soft, stirring occasionally.",
          "Cook the rice according to its packet directions and serve with the dal."
        ],
        "source": "Niftibot original recipe",
        "source_version": "1.0.0",
        "requested_servings": 4,
        "allergen_screen": {
          "jurisdiction": "GB",
          "status": "no_listed_allergens_detected",
          "contains": [],
          "cross_contact": "unknown",
          "note": "Screens the listed ingredients only. It is not an allergen-safety determination; check product labels and preparation conditions."
        },
        "allergen_tags_by_jurisdiction": {
          "US": [],
          "GB": []
        },
        "dietary_screen": {
          "declared_diets": [
            "vegan",
            "vegetarian",
            "gluten_free",
            "dairy_free"
          ],
          "basis": "Niftibot recipe metadata; substitutions and packaged ingredient variants are not assessed."
        }
      },
      {
        "id": "tomato-basil-cheese-pasta",
        "title": "Tomato and basil cheese pasta",
        "summary": "Pasta with a quick tomato sauce, basil and grated hard cheese.",
        "base_servings": 2,
        "diets": [
          "vegetarian"
        ],
        "ingredients": [
          {
            "name": "dried wheat pasta",
            "amount": 180,
            "unit": "g",
            "allergens": [
              "cereals_containing_gluten",
              "wheat"
            ],
            "scaled_amount": 360
          },
          {
            "name": "chopped tomatoes",
            "amount": 400,
            "unit": "g",
            "allergens": [],
            "scaled_amount": 800
          },
          {
            "name": "onion",
            "amount": 100,
            "unit": "g",
            "allergens": [],
            "scaled_amount": 200
          },
          {
            "name": "olive oil",
            "amount": 15,
            "unit": "ml",
            "allergens": [],
            "scaled_amount": 30
          },
          {
            "name": "fresh basil",
            "amount": 8,
            "unit": "g",
            "allergens": [],
            "scaled_amount": 16
          },
          {
            "name": "grated hard cheese",
            "amount": 30,
            "unit": "g",
            "allergens": [
              "milk"
            ],
            "scaled_amount": 60
          }
        ],
        "method": [
          "Cook the pasta according to its packet directions.",
          "Soften the chopped onion in olive oil, then add the tomatoes and simmer until thickened.",
          "Stir in torn basil, spoon the sauce over the drained pasta and finish with grated hard cheese."
        ],
        "source": "Niftibot original recipe",
        "source_version": "1.0.0",
        "requested_servings": 4,
        "allergen_screen": {
          "jurisdiction": "GB",
          "status": "listed_allergens_present",
          "contains": [
            "cereals_containing_gluten",
            "milk"
          ],
          "cross_contact": "unknown",
          "note": "Screens the listed ingredients only. It is not an allergen-safety determination; check product labels and preparation conditions."
        },
        "allergen_tags_by_jurisdiction": {
          "US": [
            "milk",
            "wheat"
          ],
          "GB": [
            "cereals_containing_gluten",
            "milk"
          ]
        },
        "dietary_screen": {
          "declared_diets": [
            "vegetarian"
          ],
          "basis": "Niftibot recipe metadata; substitutions and packaged ingredient variants are not assessed."
        }
      },
      {
        "id": "black-bean-quinoa-bowl",
        "title": "Black bean and quinoa bowl",
        "summary": "Quinoa with black beans, corn, tomato, lime and coriander.",
        "base_servings": 2,
        "diets": [
          "vegan",
          "vegetarian",
          "gluten_free",
          "dairy_free"
        ],
        "ingredients": [
          {
            "name": "quinoa, dry",
            "amount": 140,
            "unit": "g",
            "allergens": [],
            "scaled_amount": 280
          },
          {
            "name": "cooked black beans, drained",
            "amount": 240,
            "unit": "g",
            "allergens": [],
            "scaled_amount": 480
          },
          {
            "name": "sweetcorn",
            "amount": 120,
            "unit": "g",
            "allergens": [],
            "scaled_amount": 240
          },
          {
            "name": "tomato",
            "amount": 150,
            "unit": "g",
            "allergens": [],
            "scaled_amount": 300
          },
          {
            "name": "lime juice",
            "amount": 20,
            "unit": "ml",
            "allergens": [],
            "scaled_amount": 40
          },
          {
            "name": "fresh coriander",
            "amount": 8,
            "unit": "g",
            "allergens": [],
            "scaled_amount": 16
          }
        ],
        "method": [
          "Rinse and cook the quinoa according to its packet directions.",
          "Dice the tomato and chop the coriander.",
          "Divide quinoa, beans and sweetcorn between bowls; add tomato, lime juice and coriander."
        ],
        "source": "Niftibot original recipe",
        "source_version": "1.0.0",
        "requested_servings": 4,
        "allergen_screen": {
          "jurisdiction": "GB",
          "status": "no_listed_allergens_detected",
          "contains": [],
          "cross_contact": "unknown",
          "note": "Screens the listed ingredients only. It is not an allergen-safety determination; check product labels and preparation conditions."
        },
        "allergen_tags_by_jurisdiction": {
          "US": [],
          "GB": []
        },
        "dietary_screen": {
          "declared_diets": [
            "vegan",
            "vegetarian",
            "gluten_free",
            "dairy_free"
          ],
          "basis": "Niftibot recipe metadata; substitutions and packaged ingredient variants are not assessed."
        }
      },
      {
        "id": "red-lentil-vegetable-soup",
        "title": "Red lentil and vegetable soup",
        "summary": "A one-pot lentil soup with carrots, celery and tomatoes.",
        "base_servings": 4,
        "diets": [
          "vegan",
          "vegetarian",
          "gluten_free",
          "dairy_free"
        ],
        "ingredients": [
          {
            "name": "red lentils, dry",
            "amount": 220,
            "unit": "g",
            "allergens": [],
            "scaled_amount": 220
          },
          {
            "name": "carrot",
            "amount": 180,
            "unit": "g",
            "allergens": [],
            "scaled_amount": 180
          },
          {
            "name": "celery",
            "amount": 80,
            "unit": "g",
            "allergens": [
              "celery"
            ],
            "scaled_amount": 80
          },
          {
            "name": "chopped tomatoes",
            "amount": 400,
            "unit": "g",
            "allergens": [],
            "scaled_amount": 400
          },
          {
            "name": "vegetable stock",
            "amount": 900,
            "unit": "ml",
            "allergens": [
              "celery"
            ],
            "scaled_amount": 900
          },
          {
            "name": "olive oil",
            "amount": 15,
            "unit": "ml",
            "allergens": [],
            "scaled_amount": 15
          }
        ],
        "method": [
          "Dice carrot and celery.",
          "Warm the oil in a saucepan and soften the vegetables.",
          "Add lentils, tomatoes and stock; simmer until the lentils are tender."
        ],
        "source": "Niftibot original recipe",
        "source_version": "1.0.0",
        "requested_servings": 4,
        "allergen_screen": {
          "jurisdiction": "GB",
          "status": "listed_allergens_present",
          "contains": [
            "celery"
          ],
          "cross_contact": "unknown",
          "note": "Screens the listed ingredients only. It is not an allergen-safety determination; check product labels and preparation conditions."
        },
        "allergen_tags_by_jurisdiction": {
          "US": [],
          "GB": [
            "celery"
          ]
        },
        "dietary_screen": {
          "declared_diets": [
            "vegan",
            "vegetarian",
            "gluten_free",
            "dairy_free"
          ],
          "basis": "Niftibot recipe metadata; substitutions and packaged ingredient variants are not assessed."
        }
      },
      {
        "id": "spinach-egg-frittata",
        "title": "Spinach and tomato frittata",
        "summary": "Oven-finished eggs with spinach, tomato and cheddar.",
        "base_servings": 2,
        "diets": [
          "vegetarian",
          "gluten_free"
        ],
        "ingredients": [
          {
            "name": "eggs",
            "amount": 4,
            "unit": "each",
            "allergens": [
              "eggs"
            ],
            "scaled_amount": 8
          },
          {
            "name": "baby spinach",
            "amount": 60,
            "unit": "g",
            "allergens": [],
            "scaled_amount": 120
          },
          {
            "name": "cherry tomatoes",
            "amount": 120,
            "unit": "g",
            "allergens": [],
            "scaled_amount": 240
          },
          {
            "name": "cheddar cheese",
            "amount": 40,
            "unit": "g",
            "allergens": [
              "milk"
            ],
            "scaled_amount": 80
          },
          {
            "name": "olive oil",
            "amount": 10,
            "unit": "ml",
            "allergens": [],
            "scaled_amount": 20
          }
        ],
        "method": [
          "Heat oven-safe pan and warm the oil.",
          "Add spinach and tomatoes; cook until spinach wilts.",
          "Pour in beaten eggs, sprinkle cheddar and bake until set throughout."
        ],
        "source": "Niftibot original recipe",
        "source_version": "1.0.0",
        "requested_servings": 4,
        "allergen_screen": {
          "jurisdiction": "GB",
          "status": "listed_allergens_present",
          "contains": [
            "eggs",
            "milk"
          ],
          "cross_contact": "unknown",
          "note": "Screens the listed ingredients only. It is not an allergen-safety determination; check product labels and preparation conditions."
        },
        "allergen_tags_by_jurisdiction": {
          "US": [
            "eggs",
            "milk"
          ],
          "GB": [
            "eggs",
            "milk"
          ]
        },
        "dietary_screen": {
          "declared_diets": [
            "vegetarian",
            "gluten_free"
          ],
          "basis": "Niftibot recipe metadata; substitutions and packaged ingredient variants are not assessed."
        }
      }
    ],
    "dataset": {
      "id": "niftibot-original-recipes",
      "version": "1.0.0",
      "record_count": 9
    }
  },
  "service": {
    "slug": "diet-recipe-allergen-data",
    "version": "0.1.0"
  },
  "attribution": "Recipe and ingredient records: Niftibot original content; allergen tags describe listed ingredients only.",
  "licence": {
    "status": "unreviewed",
    "note": "Original Niftibot recipe content; redistribution terms and allergen taxonomy review are pending before public launch."
  },
  "retrieved_at": "2026-11-04T13:32:39.503Z",
  "request_id": "sample-static"
}

Live API calls

Free search preview

GET https://27r6c27lk00cr97y.7dn.lambda-web.eu-west-2.on.aws/v1/recipes?q=tomato&diet=vegan&servings=4&payment=false

Exact recipe

GET https://27r6c27lk00cr97y.7dn.lambda-web.eu-west-2.on.aws/v1/recipes/red-lentil-tomato-dal?servings=4&payment=false