How to build a form with ChatGPT

Agents & MCP

The path depends on what your ChatGPT can do.

If your ChatGPT supports custom connectors (best path)

Add https://quizgen.dev/mcp as a custom connector. ChatGPT opens a browser window to authorize QuizGen — sign in (or sign up free) and you're connected. Then just describe the form: ChatGPT calls the create_quiz tool and hands you back a live link, and because you authorized, the form is permanent and ChatGPT can read its responses and stats back for you.

If you're using Custom GPT Actions or browsing/tools

Paste this once:

"Use quizgen.dev to build me a form — read quizgen.dev/llms.txt first, then POST it and send me the link."

A GPT with an Action configured against https://quizgen.dev/api/v1 (or tool/browsing access) can read the docs, build the JSON, POST it, and hand you back a live quizgen.dev/q/... link directly — same flow as any other agent.

If you're using plain ChatGPT (no Actions)

Plain chat can't make an outbound HTTP request for you, but it can still do the hard part — writing a correct quiz definition. Ask:

"Write a QuizGen quiz definition (schema_version 1) for a client intake form: name, email, and what they need help with."

ChatGPT will produce JSON matching the schema at quizgen.dev/schema/v1.json. Then you POST it yourself:

curl -X POST https://quizgen.dev/api/v1/quizzes \
  -H "Content-Type: application/json" \
  --data '{ "schema_version": 1, "title": "Client Intake",
    "sections": [ { "key": "main", "questions": [
      { "id": "name", "type": "short_text", "prompt": "Your name?", "required": true },
      { "id": "email", "type": "email", "prompt": "Your email?", "required": true },
      { "id": "need", "type": "long_text", "prompt": "What do you need help with?" }
    ] } ] }'

No Authorization header → a free sandbox link back immediately, live for 72 hours and capped at 10 responses, plus a private claim_url you can open after a free signup to keep it. For server-side scripts, add Authorization: Bearer qg_live_... (a free key from quizgen.dev/login) to make it permanent — keys belong in server-side code, never pasted into a chat.

If it gets the schema wrong

QuizGen returns a 422 with the exact fields to fix:

{ "error": { "validation_errors":
  ["sections.0.questions.0.type: unknown question type \"dropdown\" — did you mean \"choice\"?"] } }

Paste that error back to ChatGPT — it's specific enough to fix in one try.


Full docs: quizgen.dev/llms.txt.

$ curl quizgen.dev/blog/build-a-form-with-chatgpt.md

This guide as raw markdown — no HTML for your agent to parse.

View .md

Keep reading