Docs

Forms

POST

Publish Form

POST /v1/forms/{formId}/publish

Publish a form to make it available for public use.

Use Cases:

  • Make a draft form live on your website
  • Deploy form updates to production
  • Roll back to a previous version by publishing an archived version
  • Release tested changes to users
  • Activate new form configuration

Behavior:

  • First Publish: Root form status changes to PUBLISHED
  • Subsequent Publishes: Previous published version becomes ARCHIVED
  • Rollback: Publish an archived version to revert changes
  • Published forms are immutable - cannot be edited
  • Form URL remains constant across versions
  • Embedded forms automatically use newly published version
  • PublishedAt timestamp is set
  • Root form's publishedVersionId points to this version

Required Scope: write:forms

Publishing Flow:

  1. Create form (DRAFT status)
  2. Configure and test form
  3. Publish form (becomes PUBLISHED)
  4. To Update: Create new version → Edit → Publish
  5. Previous version automatically becomes ARCHIVED
  6. Form URL stays the same (version transparent to users)

Version Management:

  • Only one PUBLISHED version exists at a time
  • Publishing archives the current PUBLISHED version
  • Can publish any version (DRAFT or ARCHIVED)
  • Publishing ARCHIVED version = rollback
  • Root form always tracks current PUBLISHED version

Important:

  • Cannot publish already PUBLISHED forms (no-op)
  • Previous published version auto-archived
  • Embedded forms switch instantly to new version
  • Test thoroughly before publishing
  • Form becomes immutable after publishing

Rollback Scenario:

  1. Form V1 is PUBLISHED
  2. Create V2, publish it (V1 → ARCHIVED)
  3. Issue found in V2
  4. Publish V1 again (V2 → ARCHIVED, V1 → PUBLISHED)

Note: Publishing is instant and affects all embedded instances immediately.

Path parameters

formIdstringrequired

Form ID to publish

Response

200Form published successfully. Status changed to PUBLISHED, publishedAt timestamp set. Previous published version (if any) is now ARCHIVED. Form is now live and immutable.
objectstringrequired
idstringrequired

Unique form identifier

Copyright © 2026 Kibamail.·Privacy Policy