API reference
The LaunchList REST API. Capture signups, manage your audience with tags, segments and imports, and send broadcasts, all on the same pipeline the dashboard uses, so nothing is skipped.
AuthenticationLaunchList API keys are bearer tokens prefixed llk_live_, or llk_test_ for a test key. They are workspace-owned, scoped, and can be pinned to a single project.ErrorsOne error envelope for the whole API: every status, every failure class, the same shape. Here is what each field means and what to do about each code.IdempotencySend an Idempotency-Key on every write and a retry can never create a duplicate, even when you have no idea whether the first attempt landed.PaginationEvery list endpoint is cursor-paginated, so paging stays correct and fast even when the list is changing underneath you.Rate limitsLimits are per workspace, per minute, and set by plan. Every response tells you where you stand, and a 429 tells you exactly how long to wait.OpenAPI, Postman and InsomniaThe LaunchList API publishes a machine-readable OpenAPI 3.1 document. Import the URL into Postman, Insomnia, Bruno or a code generator and you have every endpoint, ready to call.Versioning and deprecationv1 is stable. New endpoints, fields and values can arrive at any time, so ignore what you do not know. Anything we remove or change is announced at least six months ahead.Create a contactCapture a signup through the full LaunchList pipeline (deduplication, referral credit, trust scoring, the verification email when the form asks for it, webhooks and automations) in one call.POST /v1/contactsList contactsPage through your audience with cursor pagination and filters. Reads the same million-row-safe indexes the dashboard uses, so it stays fast at any size.GET /v1/contactsCount contactsGet the size of your audience without paging through it. Reads a maintained counter, so it answers in milliseconds however large your list grows.GET /v1/contacts/countRetrieve a contactFetch one contact by its handle, with the referral data, trust verdict and live queue position already resolved.GET /v1/contacts/{contact}Update a contactMove someone through your funnel, merge attributes, set your own id, or override a trust verdict.PATCH /v1/contacts/{contact}Delete a contactRemove a contact from your audience, or erase their personal data entirely for a GDPR request. These are different operations.DELETE /v1/contacts/{contact}Verification & subscriptionNewResend the verification email, resubscribe a contact you unsubscribed or imported as not subscribed, or unsubscribe one. The email-consent lifecycle, from your own backend.POST /v1/contacts/{contact}/unsubscribeGet a contact's positionThe live queue position, how far it is to the front, and how many referrals until the next jump, served straight from Redis so it stays fast even at a million contacts.GET /v1/contacts/{contact}/positionList a contact's referralsEveryone this person brought in, with the credit state of each referral and the reason when credit was skipped.GET /v1/contacts/{contact}/referralsList a contact's submissionsNewEvery form response this contact has left, newest first. The answers behind the identity, on the same append-only record the dashboard reads.GET /v1/contacts/{contact}/submissionsList a contact's emailsNewEvery email this contact was sent or is queued to get, newest first. Where each one came from, its subject, and whether it was delivered.GET /v1/contacts/{contact}/emailsSilent bulk importNewAdd an existing list to your audience without the signup pipeline. No verification email, no welcome email, no automation enrollment, and one event when the whole run finishes.POST /v1/importsTagsNewCreate tags, list them with live counts, and apply or remove one from up to a thousand contacts at once, by handle or by a saved segment.GET /v1/tagsSegmentsNewCount who an unsaved filter matches, save it as a reusable segment, and list every segment with its live count, the same dynamic filters the Signups bar uses.POST /v1/segments/previewBroadcastsNewDraft an email to your audience, send a test to your team, then prepare and send it, all at once or in batches, and read back who got it.POST /v1/broadcastsAutomationsNewList the canvas-authored flows in a project and see where one contact stands in them. Read-only, there is no manual enrollment.GET /v1/automationsEarly accessNewMint early-access codes, redeem them in one idempotent call, and reconcile who got in, all on the same pipeline the dashboard uses.POST /v1/invitationsProjects & formsNewRead-only discovery. Find the project handle your capture calls need and the forms they can target, without leaving code.GET /v1/projectsRetrieve the workspaceIntrospect the key: which workspace it belongs to, what it may do, its rate limit, and current usage.GET /v1/workspace