Summary
One metric row per tenant the caller may read: accounts, active accounts, KYC-verified accounts, groups, pending invites and last signup — the platform-console view that replaces a list-then-N-counts loop. Scoped by the SAME compiled row filter as GET /tenants, so a tenant admin sees exactly their own tenant's row and a platform admin sees their own tenant's row by default — all_tenants=true for one row per tenant on the platform, tenant_id for one other tenant; a non-admin caller simply gets one row (their own), never an error. unowned on each row means the workspace has no owner and so counts against nobody's workspace plan, and the top-level unowned counts those across the whole visible set (ignoring paging, like total) — the operator's answer to "how many live workspaces is nobody being billed for"; a tenant_admin can fix their own with claimWorkspace.
Request
- Base URL: https://api.instruxi.dev/api/v1/enforcer
- URL: https://api.instruxi.dev/api/v1/enforcer/tenants/summary
- Auth: one of:
- API key in header Authorization
- API key in header X-API-Key
Query parameters
page size (default 50, max 200)
page offset
list this tenant instead of your own (default: the caller's own tenant, platform admins included). Another tenant requires the cross_tenant grant — 403 otherwise
list EVERY tenant (platform-wide admin view). Requires the cross_tenant grant — 403 otherwise. Mutually exclusive with tenant_id (400 conflicting_tenant_scope)
Response
OK
Example response
{
"success": true
}Changes
No recorded changes to this operation across all 1 revision of this API.