---
title: "List the caller tenant's members"
method: GET
path: "/members"
tags: ["Members"]
---

# List the caller tenant's members

`GET /members`

## Request

- Base URL: `https://api.customdomain.ai/v1`
- URL: `https://api.customdomain.ai/v1/members`
- Auth: HTTP bearer

Every member and pending invite of the caller's tenant, each with its `status`: `active` once accepted, `pending` while its invite link works, `expired` once the link has lapsed. Invite tokens never appear here.

## Response `200`

Members

- object
  - `members` Member[], required
    - `id` string, required
    - `tenant_id` string, required
    - `email` string, required
    - `role` 'owner' | 'admin' | 'member' | 'viewer', required
    - `status` 'active' | 'pending' | 'expired', required: `active` once accepted, `pending` while the invite link works, `expired` once it has lapsed.
    - `invited_by` string: The accepting user's id in the calling application, when one was supplied at accept.
    - `inviter_email` string: Who sent (or last re-sent) the invite, resolved from the sending credential.
    - `inviter_name` string: The sender's display name, when one was supplied.
    - `invite_sent_at` string, date-time: When the current invite link was issued.
    - `invite_expires_at` string, date-time: When the current invite link stops working. Absent for members never invited by link.
    - `invite_token` string: The single-use invite token. Present only in the invite, resend and get-invite responses, never in the roster.
    - `accepted_at` string, date-time
    - `created_at` string, date-time, required

## Other responses

- `401`: Error envelope: {code, title, details}.

---

[API](https://skmtc.dev/customdomain/apis/customdomain-control-plane-api.md) · [All operations](https://skmtc.dev/customdomain/apis/customdomain-control-plane-api/llms.txt) · [OpenAPI document](https://skmtc.dev/customdomain/apis/customdomain-control-plane-api/revisions/34d89cb7a7cd?raw)
