API Reference / Endpoints

Create Landing Page

Creates the waitlist's hosted landing page from structured fields — headline, description, button text, theme, background, and SEO. The page is created as a draft: nothing goes live until you call Publish Landing Page.

Each waitlist has one landing page — if one already exists (created here or in the dashboard), this endpoint returns 409; use Update Landing Page instead.

Available on every plan with an account API key (wl_acct_…); per-waitlist keys work on Growth+.

You can also provision the page in the same request that creates the waitlist — pass a landing_page object to Create Waitlist.

Endpoint Details

  • URL: https://waitlister.me/api/v1/waitlist/{waitlistKey}/landing-page
  • Method: POST

Request

Headers

code
Content-Type: application/json
X-Api-Key: wl_acct_your-account-api-key

Body Parameters

All text fields are plain text — HTML is rejected. Unknown keys return 400 listing the allowed keys.

ParameterTypeRequiredDescription
headlineStringYesThe page's main title (3–120 characters)
descriptionStringNoSupporting copy under the headline (max 1000 characters)
button_textStringNoSubmit-button label (max 40 characters, default "Join the waitlist")
collect_nameBooleanNoAdd a name input to the signup form
collect_phoneBooleanNoAdd a phone input to the signup form
backgroundObjectNo{ "type": "color" | "gradient", "value": "…" } — hex color or CSS gradient string. Image backgrounds are dashboard-only
themeStringNolight (default) or dark
seoObjectNotitle (max 70), description (max 200), keywords (max 10 × 40 chars), og_title, og_description

Example Request

bash
curl -X POST "https://waitlister.me/api/v1/waitlist/WAITLIST_KEY/landing-page" \
  -H "Content-Type: application/json" \
  -H "X-Api-Key: wl_acct_your-account-api-key" \
  -d '{
    "headline": "Join the beta",
    "description": "Early access for the first 100 signups.",
    "button_text": "Get early access",
    "collect_name": true,
    "theme": "dark",
    "background": { "type": "color", "value": "#0F172A" }
  }'

Response

Success Response 201

json
{
  "success": true,
  "data": {
    "landing_page": {
      "id": "aBcDeFgH123",
      "status": "draft",
      "page_type": "standard",
      "preview": {
        "headline": "Join the beta",
        "description": "Early access for the first 100 signups.",
        "button_text": "Get early access"
      },
      "hosted_page_url": null,
      "draft_note": "Publish with POST /api/v1/waitlist/{waitlistKey}/landing-page/publish"
    }
  }
}

Error Responses

Status CodeDescription
400Missing/invalid headline, an unknown key (the message lists allowed keys), or a field over its length cap
401Missing or invalid API key / waitlist key
409The waitlist already has a landing page — update it instead
429Rate limit exceeded (5/min; 10/min on Growth+)
503The landing-page API is temporarily disabled

Next Steps

Get started for free

Start collecting sign ups for your product launch in minutes — no coding required.