Submissions

Create a launch draft over HTTP. It cannot publish, pick a plan, pick a week, or pay.

POST /api/v1/submissions/

Requires a bearer token. Scrapes the URL, applies your overrides, validates against the same schema the browser form uses, and creates a product in draft status owned by your account.

An agent can open a draft. It can never publish a launch.

This endpoint selects no plan, reserves no week, creates no payment and makes nothing public. A human finishes at /submit/plan/, and an admin reviews the listing before it goes live.

Body

urlstringrequired

The product URL. Every other field is optional and defaults to what the site says about itself.

namestring

Overrides the scraped product name.

taglinestring

One line summary.

descriptionstring

The listing body.

categoriesstring[]

Up to three. More is a 400.

pricingstring

For example free, freemium or paid.

twitterUsernamestring

Your X handle.

targetKeywordstring

The phrase the listing should rank for.

Request

curl -X POST https://nicklaunches.com/api/v1/submissions/ \
  -H "Authorization: Bearer $NICKLAUNCHES_TOKEN" \
  -H "Content-Type: application/json" \
  -d '{
    "url": "https://example.com",
    "tagline": "Draft blog posts from a single outline",
    "categories": ["AI Writing", "Content"]
  }'

Response

slugstring

Slug of the created draft.

draftUrlstring

Where a human finishes.

warningsstring[]

Things that were accepted but adjusted, for example a description shortened to the listing limit.

{
    "slug": "example",
    "draftUrl": "https://nicklaunches.com/submit/?slug=example",
    "warnings": ["Description was shortened to the listing limit."]
}

Errors

StatusCodeMeaning
401UNAUTHORIZEDMissing, malformed or revoked bearer token.
400BAD_REQUESTValidation failed, for example more than three categories.
403FORBIDDENAlready listed, or inside the relaunch cooldown. The message carries the date.
429TOO_MANY_REQUESTSToo many submissions in a short window.

Run launch readiness first. Duplicates and a missing backlink badge are the two things that turn into a rejection later, and both are visible before you post anything.

MCP equivalent

submit_product, including the browser pairing flow for clients that have no token.

Was this page helpful?