---
title: "Invite summary"
method: GET
path: "/tenants/{id}/invites/summary"
tags: ["invites"]
---

# Invite summary

`GET /tenants/{id}/invites/summary`

## Request

- Base URL: `https://api.instruxi.dev/api/v1/enforcer`
- URL: `https://api.instruxi.dev/api/v1/enforcer/tenants/{id}/invites/summary`
- Auth: one of:
  - API key in header `Authorization`
  - API key in header `X-API-Key`

Visibility mirrors GET /tenants/{id}/invites EXACTLY: caller-scoped to invites they sent by default, tenant-wide only with all=true from a manage-role caller. That asymmetry is an email-PII boundary — a summary that counted tenant-wide rows for a self-scoped caller would disclose how many invites other people sent, and its total would contradict the list it drills into. status filters pending|accepted|expired|cancelled; email is a case-insensitive substring match.

## Path parameters

- `id` string, required

## Query parameters

- `all` boolean
- `status` string
- `email` string

## Response `200`

OK

- InternalDeliveryHttpHandlerInviteSummaryResponse
  - `data` EnforcerV3InternalDomainInviteSummary
    - `acceptance_rate` number: AcceptanceRate is Accepted / Resolved as a percentage, 1dp. Deliberately NOT accepted/total: a tenant that just sent 100 invites would otherwise show ~0% acceptance purely because they are all still pending, which reads as failure rather than as "too early to say". Zero when nothing has resolved yet.
    - `buckets` EnforcerV3InternalDomainSummaryBucket[]
      - `count` integer
      - `key` string
      - `label` string
      - `pct` number
    - `dimension` string
    - `multi_valued` boolean
    - `resolved` integer: Resolved is the count of invites that reached a terminal state (accepted + expired + cancelled), i.e. total minus still-pending.
    - `series` EnforcerV3InternalDomainSummaryPoint[]
      - `by` object
      - `count` integer
      - `ts` string
    - `total` integer
    - `truncated` boolean
  - `success` boolean

## Other responses

- `400`: Bad Request
- `401`: Unauthorized
- `403`: Forbidden

---

[API](https://skmtc.dev/instruxi/apis/enforcer-api.md) · [All operations](https://skmtc.dev/instruxi/apis/enforcer-api/llms.txt) · [OpenAPI document](https://skmtc.dev/instruxi/apis/enforcer-api/revisions/fa82bc1becc0?raw)
