A dietary requirements form to send before any meal

Updated 2026-10-30

A host should not learn about a nut allergy while the plates are going out. I would ask early, in one link, and read the answers before I order food. Then the menu fits the room, and nobody has to explain their needs twice.

Use this when

You cook or order food for a group: a wedding caterer, a school trip, an office lunch, a church supper or a restaurant with a large booking. See forms for restaurants and food businesses and forms for schools and teachers.

Skip it when

You need a medical record, an allergy action plan or proof of a diagnosis. Those belong elsewhere. This form only records what guests say.

What is asked and why

  • Name and who it is for: so the right plate reaches the right person, including a child.
  • Diets: vegetarian, vegan, halal, kosher and other choices.
  • Allergens from a common list: so the kitchen can check ingredients.
  • How strict: traces fine, or avoid cross-contact too.
  • Dislikes and notes: the small things that spoil a plate.
  • Confirmation tick: the guest says the details are correct.

What a guest's AI would ask

"Who is this form for?" Then "Which allergens must be avoided?" Then "Are traces a problem?" It shows every answer and sends only after a yes. Read about agent-fillable forms.

Before you use it

Check your local privacy rules before collecting health data. This is a form, not medical advice. For weekly school meals, use a school lunch order form. For small kitchen orders, a food order form also has an allergy box.

Questions

Can one form cover a whole class or group?

Yes. Share one link and each person or parent replies once. Filter the allergens column in the CSV to see how many portions need a change.

Does the form decide what is safe to serve?

No. It collects what people tell you. The kitchen decides what is safe, and should confirm serious allergies directly with the guest before the meal.

Why does the form not ask about medicines?

It asks only for allergies, diets and needs the kitchen must act on. Medical history stays out, which keeps the form short and the data you hold small.

Try the form

Live demo ยท nothing is saved

Tell us how to feed you well

Please list any allergies or diets before the meal. We read every answer and plan the menu around them.

Who is this for? (required)
Which diets do you follow?
Which of these must be avoided?
How strict is it? (required)
I confirm these details are correct (required)

Or paste the JSON

Give this to your AI. It needs the AI Form API MCP server or an API key. It makes the form and sends you the link.

text
Create this form with the AI Form API create_form tool (or POST https://aiformapi.com/v1/forms with my API key). Then reply with the public_url.

{
  "title": "Tell us how to feed you well",
  "description": "Please list any allergies or diets before the meal. We read every answer and plan the menu around them.",
  "fields": [
    {
      "id": "person_name",
      "label": "Name of the person with the requirement",
      "type": "short_text",
      "required": true,
      "max_length": 120
    },
    {
      "id": "who_for",
      "label": "Who is this for?",
      "type": "single_choice",
      "required": true,
      "options": [
        "Myself",
        "My child",
        "A guest in my group"
      ]
    },
    {
      "id": "contact_email",
      "label": "Email, in case we need to check something",
      "type": "email"
    },
    {
      "id": "event_or_meal",
      "label": "Which meal or event is this for?",
      "type": "short_text",
      "max_length": 150
    },
    {
      "id": "diet_types",
      "label": "Which diets do you follow?",
      "type": "multi_choice",
      "options": [
        "Vegetarian",
        "Vegan",
        "Pescatarian",
        "Halal",
        "Kosher",
        "Gluten free",
        "Dairy free"
      ]
    },
    {
      "id": "allergens",
      "label": "Which of these must be avoided?",
      "type": "multi_choice",
      "options": [
        "Peanuts",
        "Tree nuts",
        "Milk",
        "Eggs",
        "Wheat or gluten",
        "Soy",
        "Fish",
        "Shellfish",
        "Sesame"
      ]
    },
    {
      "id": "strictness",
      "label": "How strict is it?",
      "type": "single_choice",
      "required": true,
      "options": [
        "Traces are fine",
        "Avoid completely",
        "Avoid completely, including cross-contact"
      ]
    },
    {
      "id": "foods_disliked",
      "label": "Foods you would rather not be served",
      "type": "short_text",
      "max_length": 250
    },
    {
      "id": "kitchen_notes",
      "label": "Anything else the kitchen should know?",
      "type": "long_text",
      "max_length": 800
    },
    {
      "id": "details_correct",
      "label": "I confirm these details are correct",
      "type": "checkbox",
      "required": true
    }
  ]
}

Or call the API

bash
curl -X POST https://aiformapi.com/v1/forms \
  -H "Authorization: Bearer $AIFORMAPI_KEY" \
  -H "Content-Type: application/json" \
  -d '{"title":"Tell us how to feed you well","description":"Please list any allergies or diets before the meal. We read every answer and plan the menu around them.","fields":[{"id":"person_name","label":"Name of the person with the requirement","type":"short_text","required":true,"max_length":120},{"id":"who_for","label":"Who is this for?","type":"single_choice","required":true,"options":["Myself","My child","A guest in my group"]},{"id":"contact_email","label":"Email, in case we need to check something","type":"email"},{"id":"event_or_meal","label":"Which meal or event is this for?","type":"short_text","max_length":150},{"id":"diet_types","label":"Which diets do you follow?","type":"multi_choice","options":["Vegetarian","Vegan","Pescatarian","Halal","Kosher","Gluten free","Dairy free"]},{"id":"allergens","label":"Which of these must be avoided?","type":"multi_choice","options":["Peanuts","Tree nuts","Milk","Eggs","Wheat or gluten","Soy","Fish","Shellfish","Sesame"]},{"id":"strictness","label":"How strict is it?","type":"single_choice","required":true,"options":["Traces are fine","Avoid completely","Avoid completely, including cross-contact"]},{"id":"foods_disliked","label":"Foods you would rather not be served","type":"short_text","max_length":250},{"id":"kitchen_notes","label":"Anything else the kitchen should know?","type":"long_text","max_length":800},{"id":"details_correct","label":"I confirm these details are correct","type":"checkbox","required":true}]}'

JSON definition

json
{
  "title": "Tell us how to feed you well",
  "description": "Please list any allergies or diets before the meal. We read every answer and plan the menu around them.",
  "fields": [
    {
      "id": "person_name",
      "label": "Name of the person with the requirement",
      "type": "short_text",
      "required": true,
      "max_length": 120
    },
    {
      "id": "who_for",
      "label": "Who is this for?",
      "type": "single_choice",
      "required": true,
      "options": [
        "Myself",
        "My child",
        "A guest in my group"
      ]
    },
    {
      "id": "contact_email",
      "label": "Email, in case we need to check something",
      "type": "email"
    },
    {
      "id": "event_or_meal",
      "label": "Which meal or event is this for?",
      "type": "short_text",
      "max_length": 150
    },
    {
      "id": "diet_types",
      "label": "Which diets do you follow?",
      "type": "multi_choice",
      "options": [
        "Vegetarian",
        "Vegan",
        "Pescatarian",
        "Halal",
        "Kosher",
        "Gluten free",
        "Dairy free"
      ]
    },
    {
      "id": "allergens",
      "label": "Which of these must be avoided?",
      "type": "multi_choice",
      "options": [
        "Peanuts",
        "Tree nuts",
        "Milk",
        "Eggs",
        "Wheat or gluten",
        "Soy",
        "Fish",
        "Shellfish",
        "Sesame"
      ]
    },
    {
      "id": "strictness",
      "label": "How strict is it?",
      "type": "single_choice",
      "required": true,
      "options": [
        "Traces are fine",
        "Avoid completely",
        "Avoid completely, including cross-contact"
      ]
    },
    {
      "id": "foods_disliked",
      "label": "Foods you would rather not be served",
      "type": "short_text",
      "max_length": 250
    },
    {
      "id": "kitchen_notes",
      "label": "Anything else the kitchen should know?",
      "type": "long_text",
      "max_length": 800
    },
    {
      "id": "details_correct",
      "label": "I confirm these details are correct",
      "type": "checkbox",
      "required": true
    }
  ]
}