---
title: "Create a waitlist"
method: POST
path: "/api/v1/waitlists"
tags: ["Waitlists"]
---

# Create a waitlist

`POST /api/v1/waitlists`

## Request

- Base URL: `https://usewait.com`
- URL: `https://usewait.com/api/v1/waitlists`
- Auth: HTTP bearer

Creates a waitlist and publishes it at /w/{slug} immediately. Omit reactCode to get the default template and iterate with updateWaitlist.

## Request body

- WaitlistCreate
  - `name` string, required
  - `slug` string: Lowercase letters, digits and hyphens. Generated from the name when omitted.
  - `description` string
  - `reactCode` string: The page itself: a single function GeneratedWaitlist(props) built with React.createElement (no JSX), rendered in a sandbox with React in scope. Call props.onSubmit({ email, name }) to submit a signup. Omit to get the default template.
  - `seoTitle` string
  - `seoDescription` string
  - `seoKeywords` string
  - `ogImage` string, uri: Social preview image. Use a PNG or JPG at 1200x630; SVG is rejected here.
  - `referralEnabled` boolean
  - `referralBoost` integer
  - `referralMessage` string

## Response `201`

The created waitlist.

- object
  - `waitlist` Waitlist
    - `id` string, uuid
    - `slug` string: URL segment; the page is live at /w/{slug}.
    - `name` string
    - `description` string, nullable
    - `licensed` boolean: Whether this waitlist has been licensed with the one-time payment.
    - `seoTitle` string, nullable
    - `seoDescription` string, nullable
    - `seoKeywords` string, nullable
    - `ogImage` string, uri, nullable
    - `referralEnabled` boolean
    - `referralBoost` integer: Positions gained per successful referral.
    - `referralMessage` string, nullable
    - `createdAt` string, date-time

## Other responses

- `400`: Validation failed. `details` names the offending fields.
- `401`: Missing, malformed or revoked API key.
- `403`: The key is valid but lacks the scope this operation requires.
- `404`: No such resource, or it belongs to another account.
- `429`: Rate limit exceeded (120 requests/minute per account).
- `500`: Unexpected server error.

---

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