A list is a small table that lives in a workspace. Workflows read and write its rows as they run, and anyone in the workspace can open it and change a row by hand.
What a list is for
- Remembering what has been handled. A row per invoice number already processed, so the next run skips it. One column, marked unique.
- Looking something up. Customer to account manager: a step finds the row, and the rest of the workflow uses what it found.
- Collecting results a person will read or export later.
- Settings a person can change — the GST rate, or the amount above which a bill needs approval — changed in the list, not in a step.
What a list is not for
- Not a database for your business. Lists hold thousands of rows, not millions. Free has 2 lists and 1,000 rows, Starter 10 lists and 25,000 rows, counted across the whole company. A cell holds up to 32 KB and a row up to 256 KB.
- Not for linking lists together. There are no relationships between lists, and no joins. A step reads one list at a time.
- Not a file store. Keep documents and images where they already live, and put a link in the list.
- Not a trigger. Changing a row does not start a workflow.
- Not for code steps or other systems. Lists are reached through the six list steps and the Lists page; there is no API for them.
- Not a copy you can test against. A test run writes to the same list a live run does. The designer says so on every step that writes.
When you outgrow a list
Connect a PostgreSQL or Microsoft SQL Server database from Connections, and use its query step instead. Export the list as CSV first; the file imports into a database table as it is.
When a list fills up
At 80% of your plan's rows the company's owner and admins are told. At 100%, writes stop and reads keep working: a step that adds or changes a row fails with the reason, and a step that only finds rows carries on. Deleting rows always works, and makes room at once.