RSVP form template: collect replies with one link

Updated 2026-10-30

It asks guests if they can come, how many they bring and any food needs. Share one link. Read the replies as JSON or CSV.

Make it with my AI

Paste this into your AI. It needs the creator MCP.

text
Create a form with AI Form API called "Will you join us?".
Description: Let us know if you can come. A quick answer helps us plan.
Fields:
- full_name: short_text, required, "Your name"
- attending: single_choice, required, options "Yes, I will be there", "No, I cannot come", "Maybe"
- guest_count: number 0 to 10, optional, "How many guests are you bringing?"
- food_needs: short_text, optional
- contact_email: email, optional
- message: long_text, optional, "A note for the host"
Set close_at to [RSVP deadline, with time zone] and turn agent_fill on. Give me the public link.

Tips

Questions

Can guests reply without an account?

Yes. Guests open the public link and answer.

How do I set an RSVP deadline?

Set close_at in the form settings. The form closes then. You can reopen it.

How do I count how many are coming?

Count the rows where attending starts with Yes. Add the guest_count values.

Try the form

Live demo ยท nothing is saved

Will you join us?

Let us know if you can come. A quick answer helps us plan.

Can you come? (required)

Optional. Add it if you want the host to reach you.

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": "Will you join us?",
  "description": "Let us know if you can come. A quick answer helps us plan.",
  "fields": [
    {
      "id": "full_name",
      "label": "Your name",
      "type": "short_text",
      "required": true,
      "max_length": 120
    },
    {
      "id": "attending",
      "label": "Can you come?",
      "type": "single_choice",
      "required": true,
      "options": [
        "Yes, I will be there",
        "No, I cannot come",
        "Maybe"
      ]
    },
    {
      "id": "guest_count",
      "label": "How many guests are you bringing?",
      "type": "number",
      "min": 0,
      "max": 10
    },
    {
      "id": "food_needs",
      "label": "Food needs or allergies",
      "type": "short_text",
      "max_length": 300
    },
    {
      "id": "contact_email",
      "label": "Email",
      "type": "email",
      "help": "Optional. Add it if you want the host to reach you."
    },
    {
      "id": "message",
      "label": "A note for the host",
      "type": "long_text",
      "max_length": 1000
    }
  ]
}

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":"Will you join us?","description":"Let us know if you can come. A quick answer helps us plan.","fields":[{"id":"full_name","label":"Your name","type":"short_text","required":true,"max_length":120},{"id":"attending","label":"Can you come?","type":"single_choice","required":true,"options":["Yes, I will be there","No, I cannot come","Maybe"]},{"id":"guest_count","label":"How many guests are you bringing?","type":"number","min":0,"max":10},{"id":"food_needs","label":"Food needs or allergies","type":"short_text","max_length":300},{"id":"contact_email","label":"Email","type":"email","help":"Optional. Add it if you want the host to reach you."},{"id":"message","label":"A note for the host","type":"long_text","max_length":1000}]}'

JSON definition

json
{
  "title": "Will you join us?",
  "description": "Let us know if you can come. A quick answer helps us plan.",
  "fields": [
    {
      "id": "full_name",
      "label": "Your name",
      "type": "short_text",
      "required": true,
      "max_length": 120
    },
    {
      "id": "attending",
      "label": "Can you come?",
      "type": "single_choice",
      "required": true,
      "options": [
        "Yes, I will be there",
        "No, I cannot come",
        "Maybe"
      ]
    },
    {
      "id": "guest_count",
      "label": "How many guests are you bringing?",
      "type": "number",
      "min": 0,
      "max": 10
    },
    {
      "id": "food_needs",
      "label": "Food needs or allergies",
      "type": "short_text",
      "max_length": 300
    },
    {
      "id": "contact_email",
      "label": "Email",
      "type": "email",
      "help": "Optional. Add it if you want the host to reach you."
    },
    {
      "id": "message",
      "label": "A note for the host",
      "type": "long_text",
      "max_length": 1000
    }
  ]
}