Create Templates

How to build valid JSON templates for import.

Written by Exportlab · Updated January 2026

Template Structure

Import expects a template object with a questions array.

  • name (string) – template name.
  • description (string) – short description.
  • questions (array) – list of questions.
  • version (string, optional) – version number.

Required Fields by Question Type

Most types only need the base fields. Selection and file questions require extra fields.

TypeRequired extra fieldsFormat
selectoptions["Option 1", "Option 2"]
multiselectoptions["Option 1", "Option 2"]
filefileConfig{"allowedFileTypes": ["image/*"], "maxFileSizeMB": 25, "maxFiles": 3}
All othersNoneBase fields only.

JSON Examples

These examples show how finished JSON files must look.

JSON
Copied
{
"name": "Project Name",
"description": "Short text input",
"questions": [
  {
    "questionText": "What is the project name?",
    "questionType": "text",
    "required": true
  }
]
}