Design a form from a brief
A designer builds a new sign-up form from a written brief and saves it as a draft, as Create with AI does on the Forms page of the app.
Runs the real call on your workspace.
POST /forms/design
A designer builds a new sign-up form from a written brief and saves it as a draft, as Create with AI does on the Forms page of the app.
Example
Needs forms:write. brief says what the form must ask and say, up to 4,000 characters. name is optional, and the designer names the form when you leave it out.
curl -X POST "$OE/forms/design" -H "$AUTH" -H 'content-type: application/json' -d '{ "brief": "A waitlist for our beta: email, first name and company, with a line on what joining means. A dark green button that says Join the waitlist."}'{ "object": "form", "id": "frm_7d1f3b5a9c2e48f06b1d3f5a", "name": "Beta waitlist", "status": "draft", "design": { "notes": ["Made the company field optional, since the brief did not ask for it to be required."] }}The answer is the whole form, as GET /forms/{id} returns it, with design.notes on what the designer adjusted. Publish it with POST /forms/{id}/publish.
It spends one AI action and can take up to half a minute. A design that cannot be made valid is a 422 invalid_form, a workspace that already holds as many forms as it may a 422 workspace_limit_reached, a server with no model a 409 ai_not_configured, and a workspace out of AI actions a 429 ai_quota_exceeded. Nothing is created in any of them.