tenants

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.

get/tenants/summary

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

limitinteger

page size (default 50, max 200)

offsetinteger

page offset

tenant_idstring uuid

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

all_tenantsboolean

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

successboolean

Example response

{
  "success": true
}

Changes

No recorded changes to this operation across all 1 revision of this API.