Use Read spreadsheet and Create spreadsheet under File Manager in a server workflow. They work with XLSX files and simple typed cell values. For CSV text files, use Advanced file commands.
Choose File, containing its actual contents. Use an uploaded file, a previous command's file or Get File with Include bytes enabled. Choose Variable to select it. A file path alone is not enough.
Leave Worksheet empty to read the first sheet, or enter its exact name. Use first row as headers is true by default. Headers must be unique, nonempty text. With headers disabled, rows use column keys A, B, C and so on.

The output includes the chosen worksheet, worksheet summaries, headers, rows, row count, column count and date system. Rows are objects whose keys are the headers or generated column letters. Blank cells become empty values. Text identifiers such as 000123 keep their leading zeros; numbers and booleans keep their types. Dates become a standard date/time string, for example 2026-10-16T12:00:00.000Z.
Choose a Worksheet name and provide Columns and Rows with the usual variable controls. Each column has a unique name and one of these explicit types:
| Type | Use for |
|---|---|
| TEXT | Names, notes and identifiers that may contain leading zeros. |
| NUMBER | Numeric amounts and quantities. |
| BOOLEAN | True/false values. |
| DATE | A valid date/time string such as 2026-10-16T12:00:00.000Z. |
For example, Columns can contain {"name":"identifier","type":"TEXT"} and {"name":"amount","type":"NUMBER"}. A matching row can be {"identifier":"000123","amount":12.5}. Select a list variable or use the JSON entry option for these lists. Row field names must match the column names. Values are not silently converted between types.
Include header row is true by default. Save the new file with Return as. The result is a new XLSX file; upload it to storage or use it in another command when needed. It is not automatically saved or given a public URL. Formula-like TEXT, such as =literal text, stays ordinary text and is not evaluated.
Read simple value-based workbooks. Existing formulas, macros, external links, merged cells, comments, active content and unsupported workbook features are refused. This command does not calculate formulas or convert other office file formats. Export a values-only XLSX file when needed.
Limits include 4 MiB of input, 512 KiB for a new output file, 10 worksheets, 10,000 row positions, 100 columns and 50,000 cells across the workbook. Large gaps between cells count toward the limits. Cell text may be up to 32 KiB. More detailed size limits may reject a highly compressed or unusually complex workbook before those counts are reached.
Dates use the workbook's date system. A nonexistent calendar date is rejected rather than changed silently. Test with small samples and review important identifiers and dates before using an imported workbook.
These commands work in ordinary server tests, inactive event tests, background functions and supported endpoint suites. Busy capacity, unsupported files and exhausted limits show an error. See File processing limits and errors, Testing, Background jobs and Managing Files.
Send Message
Send SMS Command. With Twidget, you can send SMS messages to phones using the `Send SMS` command. This functionality varies depending on the provider. Currently, we support Twilio as the SMS provider. To use Twilio for SMS integrations, you will need: - A Twilio account ID - Twilio Auth Token - A Tw...
Local Storage
Twidget provides a set of local storage commands that enable interaction with the browser’s `localStorage` API through a no-code interface. These commands are useful for storing, retrieving, and managing key-value data persistently within the current domain context. Purpose. These commands abstract ...
Session Storage
Twidget includes a suite of session storage commands that enable no-code interaction with the browser’s `sessionStorage` API. These tools allow temporary storage of key-value data for the current page session. Purpose. Session storage commands allow developers to manage transient data tied to a sing...
Loops
In Twidget, loops allow you to execute commands multiple times, either based on a condition or through a set number of iterations. Loops can also be nested, meaning you can run loops within other loops, creating complex logic for your tasks. List Loop. The `List Loop` command enables you to loop thr...
Database
Twidget offers many commands to manage data in your database. Below is a list of the available commands and their functionalities: Get Data. Retrieve an entry from a table. Get Multiple Data. Retrieve multiple entries from a table. Save Data. Save an object to a database table. Save Multiple Data. S...