Skip to main content
A mini app is a small app of the dashboard, made of the platform’s blocks: what waits on you, what the agents are doing, the board, the week ahead, posts, spend. A template declares its mini apps as data, each with a name, an icon and one or more pages. A company with no template has none. Every number on a page is read by the platform when you ask for it. None is stored in the mini app.

List the mini apps

GET /v1/mini-apps — scope sessions:read The mini apps in the template’s order, each with its pages and what it reads: every source bound on any of its pages, media_library for the library block, and posts_waiting where it lists posts waiting on a person (who can decide them from it). reads is derived from the declaration by the platform, never written by the template.

Read a page

GET /v1/mini-apps/{slug}?page={page} — scopes sessions:read, agents:read and files:read A page shows agents, the board, routines, the setup’s answers, social handles and media, so a key needs the scopes that guard those on their own routes. Spend also needs billing:read. One page, read now on the company’s clock: the one page names, else the first. The answer is the mini app’s summary plus networks (the template’s networks, each { platform, connected }, where connected says whether a persona is connected to it and is null when that could not be read), page (the slug that was read), as_of, timezone and spec. spec is a flat map of elements under one Page: each element is { type, props, children? }, and each data slot is the source it names plus what was read, such as { "$source": "spend_total", "days": 14, "value": 4120000 }. Money is integer micro-USD. A block that could not be read is an Unread element in its place, with the reason:
Spend is read only for a caller holding billing:read. An unknown mini app or page is not_found.