API Reference / Endpoints

Get Account

The Get Account endpoint tells you whether an account API key (wl_acct_…) is live and what it can do: the account it belongs to, the plan, how many waitlists the account owns against its limit, and the remaining AI credits.

Make it the first call of any integration. A 200 means the key works; a 401 means it is missing, wrong, or revoked — you don't have to find out by attempting a real write.

It is read-only and works on every plan.

Endpoint Details

  • URL: https://waitlister.me/api/v1/me
  • Method: GET

Request

Headers

code
X-Api-Key: wl_acct_your-account-api-key

A per-waitlist API key (wl_…) is not accepted here — the endpoint is account-scoped, and per-waitlist keys return 401 with a message pointing at Settings → API keys.

Example Request

bash
curl "https://waitlister.me/api/v1/me" \
  -H "X-Api-Key: wl_acct_your-account-api-key"

Response

Success Response 200

json
{
  "success": true,
  "data": {
    "account": {
      "id": "aBcDeFgH123",
      "username": "janedoe"
    },
    "plan": {
      "name": "Growth",
      "api_access": true
    },
    "waitlists": {
      "count": 3,
      "max": 10,
      "can_create": true
    },
    "ai_credits": {
      "remaining": 42
    },
    "api_key": {
      "name": "agent key",
      "created_at": 1754006400000,
      "last_used_at": 1755500000000
    }
  }
}

Response Fields

FieldTypeDescription
account.idStringID of the account the key belongs to
account.usernameStringAccount username
plan.nameStringPlan display name, e.g. Growth
plan.api_accessBooleanWhether the plan includes the general API — see the note below
waitlists.countNumberWaitlists the account owns
waitlists.maxNumber | StringThe plan's waitlist limit — a number, or the string "unlimited"
waitlists.can_createBooleanWhether Create Waitlist would succeed right now
ai_credits.remainingNumberAI landing-page credits left. 0 on plans without AI access, null if it can't be resolved
api_key.nameStringThe label you gave the key when you created it
api_key.created_atNumberKey creation timestamp (Unix ms)
api_key.last_used_atNumberTimestamp of the previous call (Unix ms) — see the note below

The API key itself, its hash, and the account email are never returned.

api_key.last_used_at is one call behind. The "last used" timestamp is written asynchronously and races this response, so it reflects the call before this one, not this one. A null value means the key has never been used before now.

can_create is a dry-run, not an estimate

waitlists.can_create is computed by the same code that gates Create Waitlist, so the two can't disagree. If it's false, a POST /api/v1/waitlists right now returns 403; if it's true, the waitlist limit won't be the thing that stops you.

Note that the first waitlist is always allowed, whatever the plan's limit says.

api_access and free plans

plan.api_access describes the general API only. When it's false, an account key still works for this endpoint, creating and listing waitlists, adding subscribers, reading stats, and the landing page endpoints — at reduced rate limits. Managing subscriber data (list, get, update, delete) requires the Growth plan or higher.

Error Responses

Status CodeDescription
401Missing key, a per-waitlist key instead of an account key, or a key that is unknown or revoked
429Rate limit exceeded (20 RPM on Free/Launch/Pro, 60 RPM on Growth, 120 RPM on Business)
500Server error

A revoked key and a key that never existed both return the same Invalid API key message. That's deliberate — the response doesn't reveal which guesses were once real.

Next Steps

Get started for free

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