---
title: "List the waitlist (admin)"
method: GET
path: "/api/admin/waitlist"
---

# List the waitlist (admin)

`GET /api/admin/waitlist`

## Request

- Base URL: `https://www.toma.com`
- URL: `https://www.toma.com/api/admin/waitlist`
- Auth: one of:
  - HTTP bearer
  - API key in cookie `better-auth.session_token`

Toma staff only (a verified @toma.so or @toma.com address). Newest first; filter with status. Pass nextOffset as offset for the next page; it is null on the last. Same as the list_waitlist MCP tool.

## Query parameters

- `offset` integer: Requests to skip: the nextOffset of the previous page. Default 0.
- `limit` integer: Requests to return. Default 50.
- `status` 'waiting' | 'invited' | 'joined': Only entries in this state: waiting (not invited yet), invited (sent a link), or joined (they accepted). Default: all.

## Response `200`

One page of the waitlist.

- object
  - `entries` WaitlistEntry[], required
    - `entryPreference` 'post' | 'work' | 'both', nullable, required: What you would like to do on Toma
    - `details` string, nullable, required
    - `category` string, nullable, required
    - `campaign` string, nullable, required
    - `submissions` WaitlistSubmission[], required
      - `id` string, required
      - `entryPreference` 'post' | 'work' | 'both', required
      - `details` string, required
      - `preview` object, nullable, required
        - `title` string, required
        - `budget` integer, required
      - `category` string, nullable, required
      - `campaign` string, nullable, required
      - `createdAt` string, date-time, required
      - `confirmedAt` string, date-time, nullable, required
      - `card` object, nullable, required
        - `brand` string, nullable, required
        - `last4` string, nullable, required
    - `hasMoreSubmissions` boolean, required
    - `id` string, required
    - `email` string, required
    - `status` 'waiting' | 'invited' | 'joined', required
    - `createdAt` string, date-time, required
    - `invitedAt` string, date-time, nullable, required
    - `invitedBy` object, nullable, required: The staff member whose link was sent; null until invited.
      - `id` string, required
      - `name` string, required
    - `memberId` string, nullable, required: The member this email became; null until they accept an invitation.
  - `nextOffset` integer, nullable, required: The next page's offset; null on the last page.
  - `invitationsEnabled` boolean, required

## Other responses

- `400`: offset, limit, or status is out of range.
- `401`: No valid session or API key.
- `403`: Not Toma staff.

---

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