Meeting request form for advisers, consultants and agencies

Updated 2026-10-30

Everyone who wants "a quick chat" sends a different message. One has a date, one has a topic, and nobody mentions a time zone. I would rather ask for the same few things every time, so I can say yes, no or "not this week".

Is this a booking system?

No. There is no calendar or slot booking. The visitor suggests two dates and parts of the day, and you reply to confirm one. That keeps the form short and keeps the final decision with you.

What does the visitor tell you?

Who they are, the topic and the purpose, such as advice, a project or an introduction. They add how long they need, whether it is a video call, a phone call or in person, how many people will join and a link to background. The purpose and the length help you tell a short call from a long one.

How can their AI help?

A visitor's AI might ask "What would you like to talk about?" Then "Which two dates suit you?" Then "What is your time zone?" It shows all answers, asks "Send it?" and submits only after a yes. Read about agent-fillable forms.

Use it as a meeting request template on your contact page. Browse forms for accountants, lawyers and consultants and forms for agencies and freelancers. A referral form suits introductions from partners, and a quote request form suits visitors who want a price first.

Questions

Does the form check my calendar?

No. There is no calendar or slot booking. The visitor suggests two dates and parts of the day, and you reply to confirm one of them.

Can I limit requests in a busy week?

Yes. Set max_responses to a number, or set close_at for the end of the week, so the link stops taking requests when you are full.

Why ask for the purpose of the meeting?

The purpose lets you sort requests by type. Introductions and follow ups need shorter slots than project talks, and you can answer each group together.

Try the form

Live demo ยท nothing is saved

Request a meeting

Tell us what you would like to talk about and when you are free. We will reply to confirm a time.

What is the purpose? (required)
How long do you need?
How would you like to meet?
Which parts of the day suit 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": "Request a meeting",
  "description": "Tell us what you would like to talk about and when you are free. We will reply to confirm a time.",
  "fields": [
    {
      "id": "requester_name",
      "label": "Your name",
      "type": "short_text",
      "required": true,
      "max_length": 150
    },
    {
      "id": "requester_email",
      "label": "Your email",
      "type": "email",
      "required": true
    },
    {
      "id": "requester_phone",
      "label": "Your phone",
      "type": "phone"
    },
    {
      "id": "requester_company",
      "label": "Your company or organisation",
      "type": "short_text",
      "max_length": 150
    },
    {
      "id": "meeting_topic",
      "label": "What would you like to talk about?",
      "type": "short_text",
      "required": true,
      "max_length": 250
    },
    {
      "id": "meeting_purpose",
      "label": "What is the purpose?",
      "type": "single_choice",
      "required": true,
      "options": [
        "Get advice",
        "Discuss a project",
        "Introduce myself or my company",
        "Follow up on earlier work",
        "Something else"
      ]
    },
    {
      "id": "agenda_points",
      "label": "Points you would like to cover",
      "type": "long_text",
      "max_length": 1500
    },
    {
      "id": "meeting_length",
      "label": "How long do you need?",
      "type": "single_choice",
      "options": [
        "15 minutes",
        "30 minutes",
        "60 minutes"
      ]
    },
    {
      "id": "meeting_format",
      "label": "How would you like to meet?",
      "type": "single_choice",
      "options": [
        "Video call",
        "Phone call",
        "In person"
      ]
    },
    {
      "id": "first_choice_date",
      "label": "First choice of date",
      "type": "date",
      "required": true
    },
    {
      "id": "second_choice_date",
      "label": "Second choice of date",
      "type": "date"
    },
    {
      "id": "time_windows",
      "label": "Which parts of the day suit you?",
      "type": "multi_choice",
      "options": [
        "Morning",
        "Midday",
        "Afternoon",
        "Evening"
      ]
    },
    {
      "id": "requester_time_zone",
      "label": "Your time zone",
      "type": "short_text",
      "required": true,
      "max_length": 100
    },
    {
      "id": "people_joining",
      "label": "How many people will join?",
      "type": "number",
      "min": 1,
      "max": 20
    },
    {
      "id": "background_link",
      "label": "Link to background material",
      "type": "url"
    }
  ]
}

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":"Request a meeting","description":"Tell us what you would like to talk about and when you are free. We will reply to confirm a time.","fields":[{"id":"requester_name","label":"Your name","type":"short_text","required":true,"max_length":150},{"id":"requester_email","label":"Your email","type":"email","required":true},{"id":"requester_phone","label":"Your phone","type":"phone"},{"id":"requester_company","label":"Your company or organisation","type":"short_text","max_length":150},{"id":"meeting_topic","label":"What would you like to talk about?","type":"short_text","required":true,"max_length":250},{"id":"meeting_purpose","label":"What is the purpose?","type":"single_choice","required":true,"options":["Get advice","Discuss a project","Introduce myself or my company","Follow up on earlier work","Something else"]},{"id":"agenda_points","label":"Points you would like to cover","type":"long_text","max_length":1500},{"id":"meeting_length","label":"How long do you need?","type":"single_choice","options":["15 minutes","30 minutes","60 minutes"]},{"id":"meeting_format","label":"How would you like to meet?","type":"single_choice","options":["Video call","Phone call","In person"]},{"id":"first_choice_date","label":"First choice of date","type":"date","required":true},{"id":"second_choice_date","label":"Second choice of date","type":"date"},{"id":"time_windows","label":"Which parts of the day suit you?","type":"multi_choice","options":["Morning","Midday","Afternoon","Evening"]},{"id":"requester_time_zone","label":"Your time zone","type":"short_text","required":true,"max_length":100},{"id":"people_joining","label":"How many people will join?","type":"number","min":1,"max":20},{"id":"background_link","label":"Link to background material","type":"url"}]}'

JSON definition

json
{
  "title": "Request a meeting",
  "description": "Tell us what you would like to talk about and when you are free. We will reply to confirm a time.",
  "fields": [
    {
      "id": "requester_name",
      "label": "Your name",
      "type": "short_text",
      "required": true,
      "max_length": 150
    },
    {
      "id": "requester_email",
      "label": "Your email",
      "type": "email",
      "required": true
    },
    {
      "id": "requester_phone",
      "label": "Your phone",
      "type": "phone"
    },
    {
      "id": "requester_company",
      "label": "Your company or organisation",
      "type": "short_text",
      "max_length": 150
    },
    {
      "id": "meeting_topic",
      "label": "What would you like to talk about?",
      "type": "short_text",
      "required": true,
      "max_length": 250
    },
    {
      "id": "meeting_purpose",
      "label": "What is the purpose?",
      "type": "single_choice",
      "required": true,
      "options": [
        "Get advice",
        "Discuss a project",
        "Introduce myself or my company",
        "Follow up on earlier work",
        "Something else"
      ]
    },
    {
      "id": "agenda_points",
      "label": "Points you would like to cover",
      "type": "long_text",
      "max_length": 1500
    },
    {
      "id": "meeting_length",
      "label": "How long do you need?",
      "type": "single_choice",
      "options": [
        "15 minutes",
        "30 minutes",
        "60 minutes"
      ]
    },
    {
      "id": "meeting_format",
      "label": "How would you like to meet?",
      "type": "single_choice",
      "options": [
        "Video call",
        "Phone call",
        "In person"
      ]
    },
    {
      "id": "first_choice_date",
      "label": "First choice of date",
      "type": "date",
      "required": true
    },
    {
      "id": "second_choice_date",
      "label": "Second choice of date",
      "type": "date"
    },
    {
      "id": "time_windows",
      "label": "Which parts of the day suit you?",
      "type": "multi_choice",
      "options": [
        "Morning",
        "Midday",
        "Afternoon",
        "Evening"
      ]
    },
    {
      "id": "requester_time_zone",
      "label": "Your time zone",
      "type": "short_text",
      "required": true,
      "max_length": 100
    },
    {
      "id": "people_joining",
      "label": "How many people will join?",
      "type": "number",
      "min": 1,
      "max": 20
    },
    {
      "id": "background_link",
      "label": "Link to background material",
      "type": "url"
    }
  ]
}