Guest registration form for hosts who like to be ready

Updated 2026-10-30

Guests turn up at the door with a car, three friends and no idea where to park. A message thread with each of them gets long. I would rather collect the same details from every guest before they arrive.

Who is this form for?

Hosts of short stays, small guesthouses, community halls and event venues who want an arrivals record. It also suits family weekends where the host wants to know who is coming and when.

What do I ask, and why?

Arrival and departure dates, party size and arrival time let you plan the welcome. A parking tick and an access note help you prepare. A special occasion question adds a friendly touch. The rules checkbox confirms the guest saw your house rules. The form leaves out passport and ID numbers on purpose. If your local rules require a check, do it in person.

What would a guest's AI ask?

"What are your arrival and departure dates?" Then "How many adults and children are staying?" Then "Will you bring a car?" It shows the answers and sends only after a yes. Read about agent-fillable forms.

Find more in forms for landlords and hosts and forms for events. For longer stays, a move-in checklist records the condition of the home. For gatherings, an event registration form collects a guest list, and an open house sign-in suits viewings.

Questions

Does the form check guests in on the day?

No. It collects details before arrival and gives you rows. The check-in itself happens in person or in your own message. The form sends no reminders.

Where do I put the house rules?

In the form description, in plain short sentences. The rules checkbox then confirms the guest saw them. Keep the text brief, or guests will skip it.

Can I get a list of arrivals for one day?

Download the CSV and filter by arrival date. Sort by arrival time to plan who greets whom. Departures work the same way with the departure date column.

Try the form

Live demo ยท nothing is saved

Before you arrive

A few details help us welcome you properly. Please send them before your stay begins.

We will bring a car and need parking
Is it a special occasion?
I have read the house rules and agree to follow them (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": "Before you arrive",
  "description": "A few details help us welcome you properly. Please send them before your stay begins.",
  "fields": [
    {
      "id": "lead_guest_name",
      "label": "Lead guest's full name",
      "type": "short_text",
      "required": true,
      "max_length": 150
    },
    {
      "id": "guest_email",
      "label": "Email",
      "type": "email",
      "required": true
    },
    {
      "id": "guest_phone",
      "label": "Phone you will have on the trip",
      "type": "phone",
      "required": true
    },
    {
      "id": "arrival_date",
      "label": "Arrival date",
      "type": "date",
      "required": true
    },
    {
      "id": "departure_date",
      "label": "Departure date",
      "type": "date",
      "required": true
    },
    {
      "id": "expected_arrival_time",
      "label": "Expected arrival time",
      "type": "short_text",
      "max_length": 100
    },
    {
      "id": "adults_staying",
      "label": "How many adults are staying?",
      "type": "number",
      "required": true,
      "min": 1,
      "max": 20
    },
    {
      "id": "children_staying",
      "label": "How many children are staying?",
      "type": "number",
      "min": 0,
      "max": 20
    },
    {
      "id": "other_guest_names",
      "label": "Names of the other guests",
      "type": "long_text",
      "max_length": 800
    },
    {
      "id": "needs_parking",
      "label": "We will bring a car and need parking",
      "type": "checkbox"
    },
    {
      "id": "special_occasion",
      "label": "Is it a special occasion?",
      "type": "single_choice",
      "options": [
        "No",
        "Birthday",
        "Anniversary",
        "Honeymoon",
        "Work trip",
        "Another celebration"
      ]
    },
    {
      "id": "access_or_dietary_needs",
      "label": "Access, dietary or other needs",
      "type": "long_text",
      "max_length": 1000
    },
    {
      "id": "house_rules_agreed",
      "label": "I have read the house rules and agree to follow them",
      "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":"Before you arrive","description":"A few details help us welcome you properly. Please send them before your stay begins.","fields":[{"id":"lead_guest_name","label":"Lead guest'\''s full name","type":"short_text","required":true,"max_length":150},{"id":"guest_email","label":"Email","type":"email","required":true},{"id":"guest_phone","label":"Phone you will have on the trip","type":"phone","required":true},{"id":"arrival_date","label":"Arrival date","type":"date","required":true},{"id":"departure_date","label":"Departure date","type":"date","required":true},{"id":"expected_arrival_time","label":"Expected arrival time","type":"short_text","max_length":100},{"id":"adults_staying","label":"How many adults are staying?","type":"number","required":true,"min":1,"max":20},{"id":"children_staying","label":"How many children are staying?","type":"number","min":0,"max":20},{"id":"other_guest_names","label":"Names of the other guests","type":"long_text","max_length":800},{"id":"needs_parking","label":"We will bring a car and need parking","type":"checkbox"},{"id":"special_occasion","label":"Is it a special occasion?","type":"single_choice","options":["No","Birthday","Anniversary","Honeymoon","Work trip","Another celebration"]},{"id":"access_or_dietary_needs","label":"Access, dietary or other needs","type":"long_text","max_length":1000},{"id":"house_rules_agreed","label":"I have read the house rules and agree to follow them","type":"checkbox","required":true}]}'

JSON definition

json
{
  "title": "Before you arrive",
  "description": "A few details help us welcome you properly. Please send them before your stay begins.",
  "fields": [
    {
      "id": "lead_guest_name",
      "label": "Lead guest's full name",
      "type": "short_text",
      "required": true,
      "max_length": 150
    },
    {
      "id": "guest_email",
      "label": "Email",
      "type": "email",
      "required": true
    },
    {
      "id": "guest_phone",
      "label": "Phone you will have on the trip",
      "type": "phone",
      "required": true
    },
    {
      "id": "arrival_date",
      "label": "Arrival date",
      "type": "date",
      "required": true
    },
    {
      "id": "departure_date",
      "label": "Departure date",
      "type": "date",
      "required": true
    },
    {
      "id": "expected_arrival_time",
      "label": "Expected arrival time",
      "type": "short_text",
      "max_length": 100
    },
    {
      "id": "adults_staying",
      "label": "How many adults are staying?",
      "type": "number",
      "required": true,
      "min": 1,
      "max": 20
    },
    {
      "id": "children_staying",
      "label": "How many children are staying?",
      "type": "number",
      "min": 0,
      "max": 20
    },
    {
      "id": "other_guest_names",
      "label": "Names of the other guests",
      "type": "long_text",
      "max_length": 800
    },
    {
      "id": "needs_parking",
      "label": "We will bring a car and need parking",
      "type": "checkbox"
    },
    {
      "id": "special_occasion",
      "label": "Is it a special occasion?",
      "type": "single_choice",
      "options": [
        "No",
        "Birthday",
        "Anniversary",
        "Honeymoon",
        "Work trip",
        "Another celebration"
      ]
    },
    {
      "id": "access_or_dietary_needs",
      "label": "Access, dietary or other needs",
      "type": "long_text",
      "max_length": 1000
    },
    {
      "id": "house_rules_agreed",
      "label": "I have read the house rules and agree to follow them",
      "type": "checkbox",
      "required": true
    }
  ]
}