Forms
Overview
Forms are reusable field collections belonging to a company. They are used by activations, ticket types, and other features. The API supports listing, creating, and updating forms and their fields. Subscription: All plans, including Free.Form field types
Fieldtype values fall into two categories:
Custom fields
General-purpose fields you can add freely to any form. Use thetype value in the API when creating or updating fields.
Common fields
Pre-defined field types that map to standard lead attributes (birthdate, phone, job title, etc.). Each common field type can appear at most once per form — adding a second field with the same commontype returns a validation error.
Field attributes by type
Options format
Foroption and select fields, options accepts:
- A plain string array (recommended):
["Option A", "Option B"] - An array of
{label, value}objects (also accepted)
Endpoints
List forms
- Method:
GET - Path:
/api/v1/{company}/forms - Scope:
forms:read - Subscription: All plans, including Free
Path parameters
Query parameters
Response 200
id (sqid) as form_id when attaching a form to a ticket type.
Form field fields
Show form
- Method:
GET - Path:
/api/v1/{company}/forms/{form} - Scope:
forms:read - Subscription: All plans, including Free
Response 200
Single FormResource with fields array.
Create form
- Method:
POST - Path:
/api/v1/{company}/forms/create - Scope:
forms:create - Subscription: All plans, including Free
Request body
See the request body table below for top-level field requirements. Individual form fields are validated when included in thefields array.
Response 201
Returns the created FormResource.
Update form
- Method:
PATCH - Path:
/api/v1/{company}/forms/{form} - Scope:
forms:update - Subscription: All plans, including Free
Request body
- Include
idon a field to update an existing field. - Omit
idto create a new field on the form. - Only
namecan be changed at the form level.
Response 200
Returns the updated FormResource.
Not implemented
DELETE /api/v1/{company}/forms/{form}— no route exists (forms:deletescope is registered but unused). Forms created via the API cannot be deleted through the API.
Related
- Authentication
- Conventions
- Activations
- Webhooks —
submissions:subscribescope