Dog training registration form for classes and puppy groups

Updated 2026-10-30

Class day goes smoother when you know the dogs. Without answers beforehand, a nervous puppy stands next to a dog that lunges, and you learn why at the door. I would rather ask before anyone arrives.

How it works

  1. The handler gives contact details and the dog's name, breed and age in months.
  2. They choose a class and the days that suit them.
  3. They confirm vaccines are up to date and add the date of the last booster.
  4. They tick the behaviours to work on, say what the dog wears on walks and share any bite history.
  5. They note food allergies, add their goals and agree to keep their dog under control.

A short chat with the handler's AI

"How old is your dog in months?" Then "Which class would you like?" Then "What do you want to work on?" The AI shows all answers, asks "Send it?" and submits only after a yes. See agent-fillable forms.

Good to know

Use the behaviour column to place each dog in the right class. The vaccine answer is what the handler says, so check records at the door. Browse forms for pet businesses and rescues. A pet sitter form suits trainers who also board dogs, and a lost pet report is handy when a dog slips its lead.

Questions

Can I keep a class small?

Yes. Make one form per class and set max_responses to the number of places. The link stops taking sign-ups at that cap, and you can point later handlers to another class.

How do I place dogs in the right class?

Download the CSV and read class_choice, behaviours_to_work_on and bite_history together. A dog that reacts to other dogs belongs in a reactive dog class, whatever its age.

Does the form check vaccine records?

No. It records what the handler says. Ask to see the vaccine record at the door, and use the last booster date to know whom to ask.

Try the form

Live demo ยท nothing is saved

Sign up for a dog training class

Tell us about you and your dog so we can place you in the right class.

Which class would you like? (required)
Which days suit you?
My dog's vaccinations are up to date (required)
What would you like to work on?
Has your dog ever bitten a person or a dog?
What does your dog wear on walks?
I understand dogs in a class can be unpredictable and I will keep mine under control (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": "Sign up for a dog training class",
  "description": "Tell us about you and your dog so we can place you in the right class.",
  "fields": [
    {
      "id": "handler_name",
      "label": "Your name",
      "type": "short_text",
      "required": true,
      "max_length": 150
    },
    {
      "id": "handler_email",
      "label": "Your email",
      "type": "email",
      "required": true
    },
    {
      "id": "handler_phone",
      "label": "Your phone",
      "type": "phone",
      "required": true
    },
    {
      "id": "dog_name",
      "label": "Your dog's name",
      "type": "short_text",
      "required": true,
      "max_length": 100
    },
    {
      "id": "dog_breed",
      "label": "Breed or mix",
      "type": "short_text",
      "max_length": 150
    },
    {
      "id": "dog_age_months",
      "label": "How old is your dog, in months?",
      "type": "number",
      "required": true,
      "min": 2,
      "max": 240
    },
    {
      "id": "class_choice",
      "label": "Which class would you like?",
      "type": "single_choice",
      "required": true,
      "options": [
        "Puppy basics",
        "Adolescent manners",
        "Adult obedience",
        "Reactive dog class",
        "Recall and lead skills",
        "Intro to agility"
      ]
    },
    {
      "id": "class_days",
      "label": "Which days suit you?",
      "type": "multi_choice",
      "options": [
        "Weekday evening",
        "Saturday morning",
        "Saturday afternoon",
        "Sunday morning"
      ]
    },
    {
      "id": "vaccines_up_to_date",
      "label": "My dog's vaccinations are up to date",
      "type": "checkbox",
      "required": true
    },
    {
      "id": "last_booster_date",
      "label": "Date of the last booster",
      "type": "date"
    },
    {
      "id": "behaviours_to_work_on",
      "label": "What would you like to work on?",
      "type": "multi_choice",
      "options": [
        "Pulling on the lead",
        "Jumping up",
        "Barking",
        "Coming when called",
        "Fear of strangers",
        "Reacting to other dogs",
        "Guarding food or toys",
        "Chewing"
      ]
    },
    {
      "id": "bite_history",
      "label": "Has your dog ever bitten a person or a dog?",
      "type": "single_choice",
      "options": [
        "Never",
        "Once",
        "More than once"
      ]
    },
    {
      "id": "equipment_used",
      "label": "What does your dog wear on walks?",
      "type": "single_choice",
      "options": [
        "Flat collar",
        "Harness",
        "Head halter",
        "Not sure"
      ]
    },
    {
      "id": "treat_allergies",
      "label": "Food allergies or treats to avoid",
      "type": "short_text",
      "max_length": 300
    },
    {
      "id": "training_goals",
      "label": "What would you like to achieve?",
      "type": "long_text",
      "max_length": 800
    },
    {
      "id": "control_dog_in_class",
      "label": "I understand dogs in a class can be unpredictable and I will keep mine under control",
      "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":"Sign up for a dog training class","description":"Tell us about you and your dog so we can place you in the right class.","fields":[{"id":"handler_name","label":"Your name","type":"short_text","required":true,"max_length":150},{"id":"handler_email","label":"Your email","type":"email","required":true},{"id":"handler_phone","label":"Your phone","type":"phone","required":true},{"id":"dog_name","label":"Your dog'\''s name","type":"short_text","required":true,"max_length":100},{"id":"dog_breed","label":"Breed or mix","type":"short_text","max_length":150},{"id":"dog_age_months","label":"How old is your dog, in months?","type":"number","required":true,"min":2,"max":240},{"id":"class_choice","label":"Which class would you like?","type":"single_choice","required":true,"options":["Puppy basics","Adolescent manners","Adult obedience","Reactive dog class","Recall and lead skills","Intro to agility"]},{"id":"class_days","label":"Which days suit you?","type":"multi_choice","options":["Weekday evening","Saturday morning","Saturday afternoon","Sunday morning"]},{"id":"vaccines_up_to_date","label":"My dog'\''s vaccinations are up to date","type":"checkbox","required":true},{"id":"last_booster_date","label":"Date of the last booster","type":"date"},{"id":"behaviours_to_work_on","label":"What would you like to work on?","type":"multi_choice","options":["Pulling on the lead","Jumping up","Barking","Coming when called","Fear of strangers","Reacting to other dogs","Guarding food or toys","Chewing"]},{"id":"bite_history","label":"Has your dog ever bitten a person or a dog?","type":"single_choice","options":["Never","Once","More than once"]},{"id":"equipment_used","label":"What does your dog wear on walks?","type":"single_choice","options":["Flat collar","Harness","Head halter","Not sure"]},{"id":"treat_allergies","label":"Food allergies or treats to avoid","type":"short_text","max_length":300},{"id":"training_goals","label":"What would you like to achieve?","type":"long_text","max_length":800},{"id":"control_dog_in_class","label":"I understand dogs in a class can be unpredictable and I will keep mine under control","type":"checkbox","required":true}]}'

JSON definition

json
{
  "title": "Sign up for a dog training class",
  "description": "Tell us about you and your dog so we can place you in the right class.",
  "fields": [
    {
      "id": "handler_name",
      "label": "Your name",
      "type": "short_text",
      "required": true,
      "max_length": 150
    },
    {
      "id": "handler_email",
      "label": "Your email",
      "type": "email",
      "required": true
    },
    {
      "id": "handler_phone",
      "label": "Your phone",
      "type": "phone",
      "required": true
    },
    {
      "id": "dog_name",
      "label": "Your dog's name",
      "type": "short_text",
      "required": true,
      "max_length": 100
    },
    {
      "id": "dog_breed",
      "label": "Breed or mix",
      "type": "short_text",
      "max_length": 150
    },
    {
      "id": "dog_age_months",
      "label": "How old is your dog, in months?",
      "type": "number",
      "required": true,
      "min": 2,
      "max": 240
    },
    {
      "id": "class_choice",
      "label": "Which class would you like?",
      "type": "single_choice",
      "required": true,
      "options": [
        "Puppy basics",
        "Adolescent manners",
        "Adult obedience",
        "Reactive dog class",
        "Recall and lead skills",
        "Intro to agility"
      ]
    },
    {
      "id": "class_days",
      "label": "Which days suit you?",
      "type": "multi_choice",
      "options": [
        "Weekday evening",
        "Saturday morning",
        "Saturday afternoon",
        "Sunday morning"
      ]
    },
    {
      "id": "vaccines_up_to_date",
      "label": "My dog's vaccinations are up to date",
      "type": "checkbox",
      "required": true
    },
    {
      "id": "last_booster_date",
      "label": "Date of the last booster",
      "type": "date"
    },
    {
      "id": "behaviours_to_work_on",
      "label": "What would you like to work on?",
      "type": "multi_choice",
      "options": [
        "Pulling on the lead",
        "Jumping up",
        "Barking",
        "Coming when called",
        "Fear of strangers",
        "Reacting to other dogs",
        "Guarding food or toys",
        "Chewing"
      ]
    },
    {
      "id": "bite_history",
      "label": "Has your dog ever bitten a person or a dog?",
      "type": "single_choice",
      "options": [
        "Never",
        "Once",
        "More than once"
      ]
    },
    {
      "id": "equipment_used",
      "label": "What does your dog wear on walks?",
      "type": "single_choice",
      "options": [
        "Flat collar",
        "Harness",
        "Head halter",
        "Not sure"
      ]
    },
    {
      "id": "treat_allergies",
      "label": "Food allergies or treats to avoid",
      "type": "short_text",
      "max_length": 300
    },
    {
      "id": "training_goals",
      "label": "What would you like to achieve?",
      "type": "long_text",
      "max_length": 800
    },
    {
      "id": "control_dog_in_class",
      "label": "I understand dogs in a class can be unpredictable and I will keep mine under control",
      "type": "checkbox",
      "required": true
    }
  ]
}