Create form
Here’s the general structure for requests to create a form:
title: Title to use for the form.type: Type of form.settings: Object that specifies form settings and metadata, including the language to use for the form, whether the form is publicly available, the basis for the progress bar, and search engine indexing settings.cui_settings: Object that specifies conversation settings, including the avatar and the typing emulation settings.theme: Theme to use for the form.workspace: Workspace that contains the form.hidden: Array of Hidden Fields to use in the form.variables: Object that keeps track of total score or price, if you use them in the form.welcome_screens: Array of objects that specify settings and properties for the form’s welcome screen.thankyou_screens: Array of objects that specify settings and properties for the form’s thank you screen.fields: Array of objects that specify the fields to use in the form and their properties, validations, and attachments.logic: Array of Logic Jump objects to use in the form.
Expand the schema below for details about each of these elements. For optional elements, if you don’t send a value and the element doesn’t have a default value, no attribute will be returned.
Any images you want to use in your form must already exist in your Typeform account. If you try to create a form that includes an image that isn’t already in your Typeform account, the response will include an “IMAGE_NOT_FOUND” error. Use the POST https://api.typeform.com/images endpoint to add images to your account.
NOTE: It is not possible to inject third-party content into a typeform using the Create API.
Authentication
A string representation of JWT containing at least two parameters:
ctx.user_id — user’s id
ctx.account_id — user’s default account id
ctx.account_uid — user’s default account uid
The usage of account_(u)id from JWT is discouraged, user can have access to multiple accounts, every endpoint has to be account aware if it’s needed.
This JWT must be signed by the appropriate authority.