Docs

Forms

POST

Create Form

POST /v1/forms

Create a new form for lead capture and contact collection.

Behavior:

  • Form is created in DRAFT status (not yet public)
  • Content (HTML) is uploaded separately via the deploy endpoint
  • Form must be deployed and published to accept submissions

Required Scope: write:forms

Request Body:

  • name: Internal form name for identification
  • fieldMapping: Maps form input field names to contact properties
  • description: Form purpose/instructions (optional)
  • settings: Behavioral settings like success action, double opt-in (optional)

Form Lifecycle:

  1. Create form with name + fieldMapping (DRAFT status)
  2. Deploy site bundle via POST /v1/forms/{formId}/deploy (HTML + CSS + JS + assets)
  3. Publish form (PUBLISHED status)
  4. Form is live at /p/forms/{formId}
  5. Create versions for updates, deploy new content, publish

Note: Forms in DRAFT status cannot receive public submissions. Deploy content and publish to make the form live.

Bodyrequired

namestringrequired
Min length: 1Max length: 200
descriptionany
type"SIGN_UP" | "SURVEY"
display"POPUP" | "INLINE_EMBED"
fieldMappingobjectrequired
settingsobject
doubleOptInEmailIdany

Response

201Form created successfully. Returns the generated form ID.
objectstringrequired
idstringrequired

Unique form identifier

Copyright © 2026 Kibamail.·Privacy Policy