Import Table
Imports a table from a Lido table, Excel file, Google Sheet, or CSV file. Each row becomes a workflow item, or the table can be returned as a single 2D array.
Overview
The Import Table node loads tabular data from any supported source, supports filtering and pagination, and lets you choose between item-per-row output or a single 2D-array output.
It uses the same source picker as Smart Lookup, with the addition of CSV files.
Use it to:
- Pull a CSV from Google Drive or OneDrive into a workflow
- Read a Google Sheet without a Lido connection
- Iterate over a Lido table at the start of a workflow
- Hand a whole table to a node that takes a 2D array (JS Code, custom AI prompt)
Parameters
| Parameter | Description | Required |
|---|---|---|
| Source Type | Source: Lido Table (default), Excel File, CSV File, or Google Sheet | Yes |
| Table / File | The table or file to import | Yes |
| Columns to Include | Optional column filter — leave empty to include every column | No |
| Output Mode | One Item Per Row, Single 2D Array (with headers), or Single 2D Array (no headers) | Yes |
| Filter Conditions | Optional row filter — supports AND/OR with type-coercion and case-insensitivity options | No |
| Limit | Maximum number of rows to import. Leave empty for all rows | No |
| Offset | Number of rows to skip from the start | No |
Source Types
| Source | Configuration |
|---|---|
| Lido Table | Pick a named table from the workflow's (or another) Lido spreadsheet |
| Excel File | Pick an .xlsx/.xls file, optional sheet name, optional starting cell |
| CSV File | Pick a .csv/.tsv/.txt file, optional first-row-is-header and delimiter |
| Google Sheet | Pick a Google account, spreadsheet URL, optional worksheet, starting cell |
CSV Options
| Option | Description |
|---|---|
| First Row Is Header | When on (default), the first row becomes column names. When off, columns are named column_1, column_2, … |
| Delimiter | Override the field separator. Leave blank to auto-detect from comma, tab, semicolon, or pipe |
Output
The shape depends on Output Mode.
One Item Per Row (default)
Each row becomes a workflow item with row metadata:
{
"type": "tableRow",
"data": {
"Name": "Acme Corp",
"Status": "Active",
"Amount": 1500
},
"spreadsheetRow": 2,
"columnNameToPosition": {
"Name": { "wsName": "Sheet1", "row": 2, "column": 1 },
"Status": { "wsName": "Sheet1", "row": 2, "column": 2 },
"Amount": { "wsName": "Sheet1", "row": 2, "column": 3 }
}
}
| Field | Description |
|---|---|
type | Always "tableRow" |
data | Object with column names as keys and cell values |
spreadsheetRow | 1-indexed source row number — the actual sheet/file row containing the data row. |
columnNameToPosition | Cell positions per column ({ wsName, row, column }, all 1-indexed). For CSV the wsName is an empty string since CSVs have no worksheet; row and column still match the file. |
file | File info if a Lido table has a file-source subtable column |
Single 2D Array (with headers)
A single workflow item whose data is a 2D array. The first inner array is the header row:
{
"data": [
["Name", "Status", "Amount"],
["Acme Corp", "Active", 1500],
["Widget Co", "Pending", 800]
]
}
Single 2D Array (no headers)
A single workflow item whose data is a 2D array of values, with no header row:
{
"data": [
["Acme Corp", "Active", 1500],
["Widget Co", "Pending", 800]
]
}
Tips
- The source picker, dropdowns, and column suggestions are shared with Smart Lookup — sheet names and column lists are cached server-side and reused across both nodes.
- Lido tables are loaded client-side; Excel, Google Sheets, and CSV files are fetched server-side via a long-running job.
- For CSVs without a header row, set First Row Is Header to off and reference columns as
column_1,column_2, etc. - Auto-detected delimiters work well for typical CSVs. Set Delimiter explicitly for unusual formats (e.g., pipe-separated files).
- Choose One Item Per Row when downstream nodes process row-by-row (filters, AI prompts, lookups). Choose a 2D Array mode when you need the whole table as one value (custom JS Code, batch AI input).
- All source types include
columnNameToPositionwith 1-indexed cell positions. For Lido tables, this is what lets Edit Table Column write back to the source rows. For CSV thewsNameis empty (no worksheet) butrowandcolumnare still populated.