Summary
Aggregate counts over the SAME compiled row filter GET /accounts uses, so a tenant admin's summary counts only their tenant and a user's counts only themselves — never a number the list endpoint would refuse to show as rows. group_by buckets into a closed, documented dimension set (an unknown group_by is a 400, not a silent no-op); interval instead (or alongside) produces a time-bucketed data.series over the same since/until window GET /accounts filters on. Service accounts are excluded by default like GET /accounts; kind=service|all needs tenant admin.
Request
- Base URL: https://api.instruxi.dev/api/v1/enforcer
- URL: https://api.instruxi.dev/api/v1/enforcer/accounts/summary
- Auth: one of:
- API key in header Authorization
- API key in header X-API-Key
Query parameters
bucket dimension; every bucket has a matching GET /accounts filter
RFC3339 lower bound on created_at (inclusive)
RFC3339 upper bound on created_at (exclusive)
returns data.series bucketed at this interval
IANA time zone for bucketing (default UTC)
free-text search
exact email match
filter by active flag
true = verified emails only, false = unverified only; absent = no filter
true = the PERSON (canonical name record) is missing a first or last name, false = complete profiles only; absent = no filter. Same predicate as the summary profile_complete tile and gRPC ListProfileIncomplete; service accounts are never incomplete
admin-set provisioner flag (PATCH /accounts/:id/profile-completed): true = marked complete, false = awaiting review; absent = no filter. NOT the same as profile_incomplete, which derives from name data
accounts with a verified session from this provider (e.g. persona)
KYC rollup bucket
role slug
true = has at least one wallet, false = none
true = a phone on the linked person, false = none
true = invited by anyone, false = organic signup
only accounts invited by this account id
only accounts I invited
only members of this group; 404 group_not_found if the group is not visible to you
drop members of this group; 404 group_not_found if the group is not visible to you
last active at or after this instant (RFC3339)
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)
account kind: human (default, excludes service accounts), service, or all. service|all require tenant admin (403 otherwise)
Response
OK
Example response
{
"success": true
}Changes
No recorded changes to this operation across all 1 revision of this API.