Bug report form: the five things a developer needs

Updated 2026-10-30

It asks for a summary, the steps, what you expected, what happened and how bad it is. Version, device and a screenshot link are optional.

Make it with my AI

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

text
Create a form with AI Form API called "Report a bug".
Description: Tell us what went wrong. Clear steps help us fix it faster.
Required: summary (short_text, max 150), steps_to_reproduce (long_text),
expected_result (long_text), actual_result (long_text),
severity (single_choice: Blocks my work, "Annoying, but I can work", Small cosmetic issue).
Optional: app_version (short_text), environment (short_text, "Device, operating system or browser"),
screenshot_url (url), reporter_email (email).
Turn agent_fill on, then give me the public link.

Tips

Questions

Can people attach screenshots?

Not as files. We have no upload field. The form asks for a link.

Can bug reports go straight into my issue tracker?

Add a webhook that calls a small script. There is no built-in tracker link.

Which fields should be required?

Summary, steps, expected result, actual result and severity. A developer needs those five.

Try the form

Live demo ยท nothing is saved

Report a bug

Tell us what went wrong. Clear steps help us fix it faster.

List what you did, one step per line.

How bad is it? (required)

Optional. Add it if we may ask follow-up questions.

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": "Report a bug",
  "description": "Tell us what went wrong. Clear steps help us fix it faster.",
  "fields": [
    {
      "id": "summary",
      "label": "Short summary",
      "type": "short_text",
      "required": true,
      "max_length": 150
    },
    {
      "id": "steps_to_reproduce",
      "label": "Steps to reproduce",
      "type": "long_text",
      "required": true,
      "help": "List what you did, one step per line.",
      "max_length": 3000
    },
    {
      "id": "expected_result",
      "label": "What did you expect to happen?",
      "type": "long_text",
      "required": true,
      "max_length": 1500
    },
    {
      "id": "actual_result",
      "label": "What happened instead?",
      "type": "long_text",
      "required": true,
      "max_length": 1500
    },
    {
      "id": "severity",
      "label": "How bad is it?",
      "type": "single_choice",
      "required": true,
      "options": [
        "Blocks my work",
        "Annoying, but I can work",
        "Small cosmetic issue"
      ]
    },
    {
      "id": "app_version",
      "label": "App or version",
      "type": "short_text",
      "max_length": 60
    },
    {
      "id": "environment",
      "label": "Device, operating system or browser",
      "type": "short_text",
      "max_length": 200
    },
    {
      "id": "screenshot_url",
      "label": "Link to a screenshot or recording",
      "type": "url"
    },
    {
      "id": "reporter_email",
      "label": "Email",
      "type": "email",
      "help": "Optional. Add it if we may ask follow-up questions."
    }
  ]
}

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":"Report a bug","description":"Tell us what went wrong. Clear steps help us fix it faster.","fields":[{"id":"summary","label":"Short summary","type":"short_text","required":true,"max_length":150},{"id":"steps_to_reproduce","label":"Steps to reproduce","type":"long_text","required":true,"help":"List what you did, one step per line.","max_length":3000},{"id":"expected_result","label":"What did you expect to happen?","type":"long_text","required":true,"max_length":1500},{"id":"actual_result","label":"What happened instead?","type":"long_text","required":true,"max_length":1500},{"id":"severity","label":"How bad is it?","type":"single_choice","required":true,"options":["Blocks my work","Annoying, but I can work","Small cosmetic issue"]},{"id":"app_version","label":"App or version","type":"short_text","max_length":60},{"id":"environment","label":"Device, operating system or browser","type":"short_text","max_length":200},{"id":"screenshot_url","label":"Link to a screenshot or recording","type":"url"},{"id":"reporter_email","label":"Email","type":"email","help":"Optional. Add it if we may ask follow-up questions."}]}'

JSON definition

json
{
  "title": "Report a bug",
  "description": "Tell us what went wrong. Clear steps help us fix it faster.",
  "fields": [
    {
      "id": "summary",
      "label": "Short summary",
      "type": "short_text",
      "required": true,
      "max_length": 150
    },
    {
      "id": "steps_to_reproduce",
      "label": "Steps to reproduce",
      "type": "long_text",
      "required": true,
      "help": "List what you did, one step per line.",
      "max_length": 3000
    },
    {
      "id": "expected_result",
      "label": "What did you expect to happen?",
      "type": "long_text",
      "required": true,
      "max_length": 1500
    },
    {
      "id": "actual_result",
      "label": "What happened instead?",
      "type": "long_text",
      "required": true,
      "max_length": 1500
    },
    {
      "id": "severity",
      "label": "How bad is it?",
      "type": "single_choice",
      "required": true,
      "options": [
        "Blocks my work",
        "Annoying, but I can work",
        "Small cosmetic issue"
      ]
    },
    {
      "id": "app_version",
      "label": "App or version",
      "type": "short_text",
      "max_length": 60
    },
    {
      "id": "environment",
      "label": "Device, operating system or browser",
      "type": "short_text",
      "max_length": 200
    },
    {
      "id": "screenshot_url",
      "label": "Link to a screenshot or recording",
      "type": "url"
    },
    {
      "id": "reporter_email",
      "label": "Email",
      "type": "email",
      "help": "Optional. Add it if we may ask follow-up questions."
    }
  ]
}