Programmatic template import
Overview
The structured spreadsheet import allows you to create a Lumiform template by uploading an Excel file that follows a predefined format. Each row in the spreadsheet represents a template element (such as a page, section, or question), and each column defines how that element should be configured. The template is generated exactly as defined in the file. This method does not use AI and does not interpret or modify your content.
Use this option if you already manage your forms in Excel or export them from another system (such as SAP) and want full control over the structure and response types. Only .xls and .xlsx files are supported, and the spreadsheet must follow the required structure and keywords described in this article.
Prepare your spreadsheet
Before uploading your file, make sure it follows the required structure and uses the supported keywords exactly as specified. The import is rule-based, which means the spreadsheet must match the expected format for the template to be created successfully.
Start by downloading the example spreadsheet and use it as a reference when preparing your file. Only the first sheet in the Excel document is processed, any additional sheets are ignored. Each upload creates a new template and does not update existing templates.
If the structure or required columns are missing, the import will fail, and no template will be created.
Spreadsheet columns explained
Your spreadsheet must follow a predefined column structure. Each column controls a specific part of the template. Some columns are required, while others are optional or ignored.
Object
Defines what the row represents in the template structure. Supported values are:
Template, Page, Section, Subsection, Question.
Rows are processed from top to bottom, and the order determines the final structure.
Type
Defines how a question is answered. This column only applies when Object = Question.
If the row is a Template, Page, Section, or Subsection, this column is ignored.
Title
Used dynamically depending on the Object value:
- Template → template name
- Page → page title
- Section → section title
- Subsection → subsection title
- Question → query text
If the Title is empty, the element is created without a title.
Required
Only applies when Object = Question.
- Yes → the question is required
- No or empty → the question is optional
This column is ignored for all other objects.
Template structure
The structure of your template is defined by the Object column.
Rows are processed from top to bottom, and the order determines how the final template is built. Each element must be placed under the correct parent.
Structure rules:
- There must be exactly one Template row at the top.
- A Page must be placed under a Template.
- A Section must be placed under a Page.
- A Subsection must be placed under a Section.
- A Question can be placed under a Page, Section, or Subsection.
- A Subsection cannot exist without a Section above it.
If the structure is invalid, for example, if a Subsection appears without a Section, the import will fail, and the template will not be created.
The hierarchy must be clearly defined by the row order in the spreadsheet.
Supported form items
The Type column defines how a question is answered. This column only applies when Object = Question. If the Type value is not supported, the import will fail.
|
Keyword (Type value) |
Explanation |
|
Yes/No |
Creates a multiple-choice question with two predefined options: Yes and No. You can also define custom options by separating values with / (e.g., Pass/Fail/Not applicable). Each value becomes a selectable answer. |
|
Text |
Creates a free text input field for written responses. |
|
Number |
Creates a numeric input field for entering numbers. |
|
Photo |
Creates a photo upload field where users can take or upload images. |
|
Signature |
Creates a digital signature field for capturing handwritten signatures. |
|
Date |
Creates a date picker that allows selection of a date only (no time). |
|
Datetime |
Creates a date and time picker that allows selection of both date and time. |
|
Barcode |
Creates a barcode or QR code scanning field. |
|
Checkbox |
Creates a checkbox field that can be selected or left unselected. |
|
File |
Creates a file upload field for attaching documents or other files. |
|
Entity |
Creates an entity selection field that allows users to select from existing entities. |
|
No response required |
Creates an informational item that does not require a response. |
|
Location |
Creates a location field that captures geographic location data. |
What happens after import
If your spreadsheet passes validation, a new template is created automatically. You will see a preview of the generated template, where you can review the structure, pages, sections, and questions.
From there, you can:
- Start using the template immediately
- Open it in the template builder to customize or adjust it
- Share it with your team and begin conducting forms
Each spreadsheet upload creates a new template and does not update or overwrite existing templates.
To get started, download and use the example spreadsheet below as a reference when preparing your file.