Bullying report form for students and parents

Updated 2026-10-30

Some students will not say it out loud. A form lets them write it down in their own time and tell the school what happened. I would rather hear early. The form owner reads each report as a row in a sheet.

Use this when

You want a calm, written route for students, parents or staff to report bullying, including online, and someone reads the reports every school day.

Skip it when

Someone is in danger now. Tell a member of staff in person or call the emergency number. A form is read later, and nobody may be watching it at that moment.

What is asked and why

  • Role, name and email: so you know who can answer follow-up questions. Name and email are optional.
  • Who, when and where: a clear picture of one event.
  • Kind of behaviour and how often: helps you judge urgency.
  • What happened, and a link: the account in the reporter's own words.
  • Safe right now: the question to read first.

What a student's AI would ask

"Who was affected?" Then "Where did it happen?" Then "Does the student feel safe at school right now?" It shows every answer and sends only after a yes. Read about agent-fillable forms.

Before you share it

This is a form, not legal advice. Have your school or district check wording that has legal weight, and follow its reporting policy. See forms for schools. A progress report can track a student after an incident, and a volunteer application form helps you recruit more break-time helpers.

Questions

Can someone report without giving their name?

Yes. Name and email are optional in this template. Without contact details you cannot ask follow-up questions, so tell people what the trade-off is.

Who sees the reports?

Only you, the form owner, through the dashboard, the API or a CSV. Share the link widely, and keep the data with the few people who must act on it.

What about bullying that happens in online messages?

The form cannot take screenshots. Reporters can paste a link into evidence_link, or tell you they will show an adult in person.

Try the form

Live demo ยท nothing is saved

Tell us what happened

Thank you for telling us. Write only what you saw or were told. Your name and contact details are optional.

You are a (required)

Optional. Without a name or email, we cannot ask follow-up questions.

Names or descriptions. Stick to what you saw or were told.

Where did it happen?
What kind of behaviour was it?
How often has it happened?
Has anyone at school been told?
Does the student feel safe at school right now?
The school may contact me about this report

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 what happened",
  "description": "Thank you for telling us. Write only what you saw or were told. Your name and contact details are optional.",
  "fields": [
    {
      "id": "reporter_role",
      "label": "You are a",
      "type": "single_choice",
      "required": true,
      "options": [
        "Student",
        "Parent or guardian",
        "Teacher or staff member",
        "Another adult"
      ]
    },
    {
      "id": "reporter_name",
      "label": "Your name",
      "type": "short_text",
      "help": "Optional. Without a name or email, we cannot ask follow-up questions.",
      "max_length": 150
    },
    {
      "id": "reply_email",
      "label": "Email, if you would like us to reply",
      "type": "email"
    },
    {
      "id": "student_affected",
      "label": "Who was affected?",
      "type": "short_text",
      "required": true,
      "max_length": 200
    },
    {
      "id": "others_involved",
      "label": "Who else was involved?",
      "type": "long_text",
      "help": "Names or descriptions. Stick to what you saw or were told.",
      "max_length": 800
    },
    {
      "id": "incident_date",
      "label": "When did it happen?",
      "type": "date"
    },
    {
      "id": "incident_place",
      "label": "Where did it happen?",
      "type": "single_choice",
      "options": [
        "Classroom",
        "Corridor",
        "Playground",
        "Lunch hall",
        "Bus",
        "Changing rooms",
        "Online or messages",
        "Somewhere else"
      ]
    },
    {
      "id": "kind_of_behaviour",
      "label": "What kind of behaviour was it?",
      "type": "multi_choice",
      "options": [
        "Name-calling",
        "Pushing or hitting",
        "Leaving someone out",
        "Spreading rumours",
        "Online messages",
        "Taking belongings",
        "Threats",
        "Something else"
      ]
    },
    {
      "id": "how_often",
      "label": "How often has it happened?",
      "type": "single_choice",
      "options": [
        "Once",
        "A few times",
        "Often"
      ]
    },
    {
      "id": "what_happened",
      "label": "What happened?",
      "type": "long_text",
      "required": true,
      "max_length": 3000
    },
    {
      "id": "evidence_link",
      "label": "Link to any messages or posts",
      "type": "url"
    },
    {
      "id": "told_anyone",
      "label": "Has anyone at school been told?",
      "type": "single_choice",
      "options": [
        "No",
        "Yes, a teacher",
        "Yes, someone else"
      ]
    },
    {
      "id": "feels_safe_now",
      "label": "Does the student feel safe at school right now?",
      "type": "single_choice",
      "options": [
        "Yes",
        "Not sure",
        "No"
      ]
    },
    {
      "id": "follow_up_ok",
      "label": "The school may contact me about this report",
      "type": "checkbox"
    }
  ]
}

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 what happened","description":"Thank you for telling us. Write only what you saw or were told. Your name and contact details are optional.","fields":[{"id":"reporter_role","label":"You are a","type":"single_choice","required":true,"options":["Student","Parent or guardian","Teacher or staff member","Another adult"]},{"id":"reporter_name","label":"Your name","type":"short_text","help":"Optional. Without a name or email, we cannot ask follow-up questions.","max_length":150},{"id":"reply_email","label":"Email, if you would like us to reply","type":"email"},{"id":"student_affected","label":"Who was affected?","type":"short_text","required":true,"max_length":200},{"id":"others_involved","label":"Who else was involved?","type":"long_text","help":"Names or descriptions. Stick to what you saw or were told.","max_length":800},{"id":"incident_date","label":"When did it happen?","type":"date"},{"id":"incident_place","label":"Where did it happen?","type":"single_choice","options":["Classroom","Corridor","Playground","Lunch hall","Bus","Changing rooms","Online or messages","Somewhere else"]},{"id":"kind_of_behaviour","label":"What kind of behaviour was it?","type":"multi_choice","options":["Name-calling","Pushing or hitting","Leaving someone out","Spreading rumours","Online messages","Taking belongings","Threats","Something else"]},{"id":"how_often","label":"How often has it happened?","type":"single_choice","options":["Once","A few times","Often"]},{"id":"what_happened","label":"What happened?","type":"long_text","required":true,"max_length":3000},{"id":"evidence_link","label":"Link to any messages or posts","type":"url"},{"id":"told_anyone","label":"Has anyone at school been told?","type":"single_choice","options":["No","Yes, a teacher","Yes, someone else"]},{"id":"feels_safe_now","label":"Does the student feel safe at school right now?","type":"single_choice","options":["Yes","Not sure","No"]},{"id":"follow_up_ok","label":"The school may contact me about this report","type":"checkbox"}]}'

JSON definition

json
{
  "title": "Tell us what happened",
  "description": "Thank you for telling us. Write only what you saw or were told. Your name and contact details are optional.",
  "fields": [
    {
      "id": "reporter_role",
      "label": "You are a",
      "type": "single_choice",
      "required": true,
      "options": [
        "Student",
        "Parent or guardian",
        "Teacher or staff member",
        "Another adult"
      ]
    },
    {
      "id": "reporter_name",
      "label": "Your name",
      "type": "short_text",
      "help": "Optional. Without a name or email, we cannot ask follow-up questions.",
      "max_length": 150
    },
    {
      "id": "reply_email",
      "label": "Email, if you would like us to reply",
      "type": "email"
    },
    {
      "id": "student_affected",
      "label": "Who was affected?",
      "type": "short_text",
      "required": true,
      "max_length": 200
    },
    {
      "id": "others_involved",
      "label": "Who else was involved?",
      "type": "long_text",
      "help": "Names or descriptions. Stick to what you saw or were told.",
      "max_length": 800
    },
    {
      "id": "incident_date",
      "label": "When did it happen?",
      "type": "date"
    },
    {
      "id": "incident_place",
      "label": "Where did it happen?",
      "type": "single_choice",
      "options": [
        "Classroom",
        "Corridor",
        "Playground",
        "Lunch hall",
        "Bus",
        "Changing rooms",
        "Online or messages",
        "Somewhere else"
      ]
    },
    {
      "id": "kind_of_behaviour",
      "label": "What kind of behaviour was it?",
      "type": "multi_choice",
      "options": [
        "Name-calling",
        "Pushing or hitting",
        "Leaving someone out",
        "Spreading rumours",
        "Online messages",
        "Taking belongings",
        "Threats",
        "Something else"
      ]
    },
    {
      "id": "how_often",
      "label": "How often has it happened?",
      "type": "single_choice",
      "options": [
        "Once",
        "A few times",
        "Often"
      ]
    },
    {
      "id": "what_happened",
      "label": "What happened?",
      "type": "long_text",
      "required": true,
      "max_length": 3000
    },
    {
      "id": "evidence_link",
      "label": "Link to any messages or posts",
      "type": "url"
    },
    {
      "id": "told_anyone",
      "label": "Has anyone at school been told?",
      "type": "single_choice",
      "options": [
        "No",
        "Yes, a teacher",
        "Yes, someone else"
      ]
    },
    {
      "id": "feels_safe_now",
      "label": "Does the student feel safe at school right now?",
      "type": "single_choice",
      "options": [
        "Yes",
        "Not sure",
        "No"
      ]
    },
    {
      "id": "follow_up_ok",
      "label": "The school may contact me about this report",
      "type": "checkbox"
    }
  ]
}