Vibha's data and monitoring platform · vibha.org

Platform administration

Every other page in these docs is written for someone running oneorganization — a program, a state office, an NGO's own workspace. This page is different: it is for whoever runs the entire deployment underneath all of them, the way a building's management office is a different job from renting one of the apartments in it. It requires the super admin system role, which is separate from — and not granted by — being an Admin of any organization.

What is under Platform

Think of every organization on the deployment as a separate tenant in the same building. Platform is the building management office's toolkit — it can see and act on every tenant, but it does not live inside any one of their units day to day.

PageWhat it does
DashboardThe whole platform at a glance: how big it is and how fast it is growing, charts over time, and a "needs attention" list — see below.
OrganizationsEvery workspace, its limits and usage. Suspending one blocks its forms and apps from accepting responses without deleting anything.
UsersEvery account on the deployment. Grant or revoke the super admin role, review sessions, and see which organizations someone belongs to.
System healthWhether everything the app relies on is working — database, cache, file storage, background workers, email and the AI providers — plus a "what is wrong right now" list and the last 24 hours of history. See below.
FeaturesTurn a capability on globally, or for one organization specifically. This is how something like Apps gets rolled out gradually rather than to everyone at once.
Audit logsEvery organization’s audit trail, plus platform-level actions and sign-ins, with filters and a CSV download — see below.
Global dictionaryDropdown lists with no owning organization, shared by all of them — see below.
Assistant usageHow much the AI assistant is used and what it costs — by organization, then by team, person, model or day — see below.

The dashboard: what to look at first

Think of it as a car dashboard for the whole platform. Reading top to bottom:

PartWhat it tells you
Health stripOne line: are the database, cache and storage responding? Click it for the full System page.
Size cardsHow many organizations, users, forms and responses exist, with how many are new this month, how many people were active this week, and how much storage is in use.
Needs attentionThe most useful part. It lists, most serious first: organizations close to or over a limit (forms, members, responses, storage or assistant questions), suspended organizations, failing webhooks, failed exports, quarantined files, stale invitations, and security events such as repeated failed sign-ins.
ChartsResponses per day, people signing in, new users and organizations per week, and assistant activity and cost per day.
Top listsWhich organizations have the most responses this month, the most storage, and the highest assistant cost.

System health, in plain terms

The top of the page answers “is anything wrong right now?” in plain words, worst first — for example “No background workers are running” or “Email sending is failing”. Below it:

SectionWhat it shows
Background workersThe processes that handle new responses, webhooks, file checks and exports. If none are running, responses are saved but not processed.
EmailWhether a mail server is set up, whether we can log in to it, and how recent sends went.
AI providersThe assistant tries providers in order and falls back to the next if one is unavailable. This shows which are configured and how their real calls have been going — no paid test calls are made.
This releaseWhich version is live, and how far behind the database replica is (if there is one).
Server performanceHow fast requests are answered, how many fail, how long the server is briefly stuck, and whether queries are queueing for a database connection.
QueuesWaiting, active and failed jobs for each background queue — now including exports — and when each last finished a job.
HistoryOne reading a minute for the last 24 hours: was everything up, how fast each service was, job backlog, request speed and errors.

Feature flags, in plain terms

Say Vibha wants to try a new capability with two or three organizations before turning it on for everyone — the usual, careful way to ship something that touches a lot of real program data. A feature flag is the switch that makes that possible: it has one global default (off, say, while it is being tested) and any number of per-organization overrides (on, for just the two or three pilot organizations).

One more thing worth knowing: a flag only controls what is rendered — the menus and screens someone sees — never what is actually permitted. Turning a flag on in a browser reveals a page; it does not grant that browser's owner any access the server was not already going to check independently.

The global dictionary

This is the exact same dropdown list feature every organization already has — see Dropdown lists for the full explanation of how a list works, how CSVs are uploaded, and what cascading means — except lists created here at Platform → Global dictionaryhave no owning organization at all. Every organization can read them; none of them can edit them. India's states and districts ship this way, and anything else every tenant would otherwise have to type in separately — a national registry, standard job designations, country codes — belongs here for the same reason.

  1. 1Create and fill a global list exactly the way an organization would fill their own: create the list, download the template, upload a CSV, map the columns, choose Replace or Add and update.
  2. 2Any organization that needs a corrected or trimmed version of a global list creates their own list using the same id. Theirs then takes precedence for them alone — nobody else is affected, and nothing here has to change to accommodate it.

Finding and managing organizations and people

The Organizations and Users lists have filters (status; and for people, two-factor and platform role), sortable columns, and a Closest limitcolumn that shows which organizations are nearest a wall. An organization's own page shows its usage against every limit — responses, assistant questions, forms and members — its recent forms with the team and project each belongs to, and its quotas, including the monthly assistant allowance. A person's page shows when they were last seen.

Suspending an organization

Think of suspension like freezing a membership rather than cancelling it. An organization in a billing dispute or under investigation should stop being able to collect new responses — but nothing about their existing forms, apps or data should be destroyed while that gets sorted out, since the dispute might well be resolved in their favour.

Example Program TrustActive

Suspending an organization stops its public forms and apps from accepting new responses — a visitor is told the form is unavailable rather than seeing an error — and nothing is deleted. Lifting the suspension later restores service exactly as it was.

Audit logs

The audit log records who did what, and when, across every organization — and the platform itself: signing in, failed sign-ins, suspending an organization, changing a quota. Use the filters to narrow it: search text, an Area (such as Sign-in and security), a specific action, one organization or Platform-level only, and a date range. Download CSVsaves what you are looking at (up to 10,000 rows). Filters are part of the page address, so you can bookmark or share a view — and the dashboard's security alerts link straight to the right one.

On a person's page under Users, See everything this person has done opens the log filtered to them. Passwords, access tokens and invitation links are never written to the log.

Seeing what the AI assistant is costing

Every organization has access to the built-in AI assistant (see Ask the assistant), and every question it answers costs something in tokens. Rather than capping any organization's usage, Vibha chose visibility instead — Platform → Assistant usage shows, per organization and over a date range you choose, how many questions were asked, how many tokens that used, and roughly what it cost — so a spike is something to notice and understand, not something that silently stops working the moment a limit is hit.

Use View by to switch between Organization, Team, Person, Model and Day. Click an organization to see its teams, and a team to see the people in it. A chart shows questions and cost per day. Each organization row also shows how much of its monthly assistant allowance is used.

Organization Admins get the same report for their own organization under Organization → Assistant usage, showing which of their teams and people use the assistant most.