Create From Template
Create a new form from a template. The templateβs fields, settings, and theme are cloned into a new draft form on your specified site β ready to customize and publish.
POST
/api/v1/templates/:id/useforms:create
Path Parameters
id*stringTemplate UUID (from the list templates response).
Request Body
siteId*stringUUID of the site to create the form on. Must belong to your organization.
Example Request
Create form from template
curl -X POST https://proforms.io/api/v1/templates/tmpl_abc123/use \
-H "Authorization: Bearer pf_your_api_key" \
-H "Content-Type: application/json" \
-d '{ "siteId": "site_xyz789" }'Response
200 OK
{
"success": true,
"data": {
"id": "form_new456",
"name": "Plumbing Service Request",
"status": "draft",
"createdAt": "2026-03-09T22:30:00.000Z"
}
}βΉοΈ
The form is created as a draft. Use the Publish endpoint or Update endpoint to customize fields and go live.
What Gets Cloned
βFields β all field types, labels, options, validation rules, and layout widths
βSettings β submit button text, success message, security settings, rate limits
βTheme β colors, fonts, border radius, spacing
βConditions β conditional logic rules between fields
βNotifications β email notification defaults configured for the target site
Errors
404NOT_FOUNDTemplate or site not found (or site doesn't belong to your organization).
403QUOTA_EXCEEDEDYour plan's form limit has been reached. Upgrade or archive existing forms.
400VALIDATION_ERRORMissing siteId in request body.
AI Agent Example
π‘
With MCP, your AI agent can browse templates and create forms in one conversation:
Agent Workflow
You: "Create a quote request form for Phoenix Plumbing"
Agent:
1. list_templates(category: "home-services", search: "plumbing")
β Found "Plumbing Service Request" (tmpl_abc123)
2. list_sites(search: "Phoenix Plumbing")
β Found site (site_xyz789)
3. create_from_template(templateId: "tmpl_abc123", siteId: "site_xyz789")
β Created form (form_new456) as draft
4. publish_form(formId: "form_new456", publish: true)
β Published β
5. get_embed_code(formId: "form_new456")
β <script src="https://proforms.io/embed/form_new456"></script>
"Done! Your plumbing quote form is live. Here's the embed code."