Database Binding
Show new rows and status changes from a database directly in your chat channel.
Database binding connects a chat channel to a database so the team sees row activity in real time, without anyone having to check the database. New rows post as cards in the channel. Status changes edit those cards in place. Your #bugs channel actually shows new bugs.
Why Use Database Binding?
- One place to look - Discussion and status updates live next to each other
- No manual updates - The channel reflects the database automatically
- Quiet by design - Only the events that matter post; non-status edits stay out of the channel
- Per-row threads - Discuss a specific row in its own thread without cluttering the main feed
- Free in every workspace - No add-ons, no integration fees
Getting Started
Open the channel you want to connect, click the actions menu in the channel header, and pick Bind to database…. Choose a database from the picker. The channel will show a confirmation from LumifyBot, and a small pill with the database name will appear in the channel header.
You can also bind from the database side. Open the database, click Bind to channel… in the breadcrumb row, and pick a channel.
What Posts in the Channel
Three things create cards from LumifyBot in your bound channel:
New rows appear as a card with the row's title, current status, and the database name.
Status changes edit the existing card in place. The card now shows Status: Todo → In Progress and a threaded reply posts under it with the same information.
Completed rows get a checkmark prefix on the card and a Completed by <name> reply in the thread.
Cards come from a system bot, not a real user, so they do not trigger @mention notifications. The channel's unread count will reflect the activity, but nobody gets pinged for every row event.
What Does NOT Post
We're intentionally selective about what reaches the channel:
- Edits to non-status fields (number, text, date, file, person)
- Title edits after the initial card
- Comments on rows
- Rows whose title is still empty (we wait until the row is "real")
- Rows marked private
- Rows in linked data sources
The goal is a channel your team actually stays subscribed to. Everything else lives in the database itself.
Discussing Rows
Each row card has its own thread. Click the reply icon on a card to discuss that specific row without cluttering the main channel feed. Thread replies are normal chat messages — they stay in the channel and do not sync back to the database as row comments.
Unbinding
Click the binding pill in the channel header (or database header) and choose Unbind from the popover. A confirmation dialog will ask you to confirm — once you do, a system message notes the channel is no longer bound. Past row cards stay in the channel as historical records, but they stop receiving updates.
Re-binding the same channel to the same database does not resume editing the old cards. New events post as new cards.
Requirements
The database must have at least one single-select property — usually a Status column with options like Todo, In Progress, and Done. That's the column we watch for status changes. If your database has no single-select property, binding is blocked with a message asking you to add one first.
Each channel can be bound to one database, and each database to one channel. Direct messages can't be bound — only standard channels.
Tips
- Add a Status column first - Databases without a single-select property can't be bound. Add one before connecting.
- Use threads for discussion - The row's thread is the right place to debate a bug, not the main channel feed.
- One pair at a time - Pick the canonical channel-database pair and stick with it. You can unbind and re-bind whenever you want.
- Edit the row, not the card - The card is a reflection of the row. Edit the row in the database and the card updates automatically.
- Open either side from the pill - Click the pill in the channel header to jump to the bound database, and vice versa.
