Using your app
Opening a live app is like turning on a TV that was already recording. The last picture appears instantly, and a moment later it catches up to live. You never wait on a blank screen, and you never look at yesterday's numbers without knowing it.
Open, and it catches up
- The app paints straight away using the last saved copy of your data — instant, even on a slow connection.
- In the background it goes and asks your tools again.
- Fresh numbers slide in. While that's happening you'll see Updating… and a gently dimmed app — never an empty one.
The freshness stamp in the header (Updated 12m ago) always tells you which of the two you're looking at.
The controls
- Refresh — re-fetches everything in the app at once. Use it when you know something just changed.
- Filters and time ranges — these aren't just hiding rows. Changing "30 days" to "90 days" sends the app back to your tools for the wider window, so the numbers are genuinely recomputed.
- Charts and rows you can click — clicking a bar can narrow the list under it, and clicking a row can open the full record. When something is filtering the view, the app shows a chip saying so, with an ✕ to clear it.
- ↗ links — take you to where that record actually lives: the row in your database, the order in your store, the agent's own page.
Refreshing with the app's normal settings updates the saved copy that everyone else opens too. Filtered views are just for you — they never overwrite it.
Where did this number come from?
Click the info icon in the header for How this app works. It lists:
- Data sources — every service, table or Nirvai area the app reads, and which parts of the app each one feeds.
- Refresh steps — the saved instructions that fetch each piece, when each last ran, how long it took, and a ✅ or ⚠️ for whether it worked.
It closes with the important promise: values recompute on every refresh — this app holds no frozen data.
When something's wrong
An app that can't refresh keeps showing the last good data with a banner explaining the problem, rather than going blank. If you see a Needs attention badge on the app — in the list or in its header — one of its refresh steps is failing. Open How this app works to see which one, and what it said.
| What you see | What it means | What to do |
|---|---|---|
| A banner asking you to reconnect | A connected service's sign-in expired or was rejected | Reconnect it in Credentials — the app recovers on the next refresh |
| Needs attention, or a step marked ⚠️ | A refresh step is failing | Open How this app works to see the reason |
| "A tool this app uses is missing" | A tool or table the app was built on was deleted or renamed | Edit with AI and ask it to reconnect that source |
| The app is taking too long / times out | The request is bigger than one refresh can handle | Narrow the time range, then ask the AI to summarise more before displaying |
| "A refresh is already in progress" | You (or a teammate) refreshed a moment ago | Wait for it to land — one refresh per section at a time |
| A section says there's no data yet | It's never been refreshed | Hit Refresh once to fill it |
| A section is genuinely empty | There really is nothing in that period | Widen the time range to check |
The AI builds the app once. After that, opening and refreshing it runs the saved steps directly — that's why it's fast, and why the numbers are the same for everyone looking at it.
Managing your apps
The Live Apps page keeps everything in one place: your saved apps as cards (each showing which sources it uses, how many refresh steps it has and when it last updated), any unfinished builds under In progress that you can resume or discard, and anything a teammate has shared under Shared with you.
From a card you can Share, Edit or delete it. Deleting removes the app and its saved data for good.