Currently in alpha. Sign up free. Expect a few rough edges.
Docs

Your fields on any table

A checkbox, an owner, a note on a Shopify order or an invoice, saved against the row, beside the source's own columns.

A synced table stays exactly what the source says. Beside it, you can keep your own fields on its rows: done, status, owner, called back, a note, whatever the team names. They feel like part of the table (a Shopify order with a "reviewed" column) but they never touch Shopify, and they survive every resync. There is no separate place to go for them: they show on the table in Warehouse, as a column on any dashboard, and to the assistant and any agent.

How it works

  • The table's page in Warehouse says the state of it under About this table, Your fields: "reviewed (212 ticked of 340), owner (41 set of 340) · last by Nina on 2026-09-27". Add a field there (Add one, while a table has none) opens its form beside the page: a name, its type, one line on what it means, and Define. When a page draws rows from a table with an id and no field beside them yet, the builder can suggest a checkbox column.
  • Every value records who set it and when, so "who cleared this and when" is a question you can ask. The name shown is the person signed in, or the agent's key; nothing a caller sends can put another name there.
  • After a mark saves on a dashboard, that page refreshes its tables, headline numbers and open lists of rows. A count of rows still to do changes along with the checkbox, without reopening the page.
  • Field names are yours. A field is defined before it is used, with its type (yes or no, text, a number, a date, one of a list) and one line on what it means, and the type stays fixed, so a later value can't put words where a number goes. A value for a field nobody defined is refused.
  • Nothing goes back to the source. Shopify never sees your checkbox. A full resync rewrites the table and leaves your fields alone. Pushing a value back into the source as a custom field is possible where a source allows writes; today it is not done.
  • Any table with a row id works: synced sources, uploads, webhook rows, and model output. A model that computes "customers at risk" can carry a called-back field the moment someone sets one.
  • The assistant and agents can read them ("has anyone called this customer?") and set them ("mark every order from that boutique reviewed") under their own name; a dashboard column can too.
  • Fields are notes on someone else's rows. For records of your own, each store visit or each call a row, use a table you fill in yourself.

What to say to it

Every invoice over 60 days with no note on it.
Add a reviewed checkbox to the orders table.
Mark everything from Acme reviewed.

All docs · Something wrong on this page? Tell us.