Products

Search the catalog and read a single listing over HTTP.

Two anonymous endpoints over live launches. Drafts and pending submissions are never returned, so these are safe to call from a browser and are served with Access-Control-Allow-Origin: *.

List products

GET /api/v1/products/

Query parameters

querystring

Free text, matched against name, tagline, description and categories.

categorystring

Restrict to one category slug.

limit1-50default: 10

How many results to return.

cursorstring

Opaque cursor from a previous response. Pass it back verbatim.

Request

curl "https://nicklaunches.com/api/v1/products/?query=ai%20writing&limit=5"

Response

{
    "results": [
        {
            "slug": "example-writer",
            "name": "Example Writer",
            "tagline": "Draft blog posts from a single outline",
            "url": "https://nicklaunches.com/products/example-writer/",
            "productUrl": "https://example.com",
            "categories": ["AI Writing", "Content"],
            "pricing": "freemium",
            "upvotes": 128,
            "launchDate": "2026-06-15"
        }
    ],
    "nextCursor": "eyJvIjoxMH0"
}
resultsobject[]

Matching products, newest and highest ranked first.

nextCursorstring | null

Pass as cursor to get the next page. null when there are no more.

Paging is cursor based so results stay stable while new launches arrive. Do not build a cursor by hand; treat it as opaque.

Get one product

GET /api/v1/products/{slug}/

Path parameters

slugstringrequired

The product slug. For https://nicklaunches.com/products/example-writer/ that is example-writer.

Request

curl https://nicklaunches.com/api/v1/products/example-writer/

Response

The list fields plus the full listing body, screenshots, the maker handle, and comment and changelog counts.

{
    "slug": "example-writer",
    "name": "Example Writer",
    "tagline": "Draft blog posts from a single outline",
    "description": "Example Writer turns an outline into a finished draft...",
    "url": "https://nicklaunches.com/products/example-writer/",
    "productUrl": "https://example.com",
    "categories": ["AI Writing", "Content"],
    "pricing": "freemium",
    "screenshots": ["https://nicklaunches.com/uploads/example-writer-1.png"],
    "maker": { "handle": "examplemaker" },
    "upvotes": 128,
    "commentCount": 14,
    "changelogCount": 3,
    "launchDate": "2026-06-15"
}

Errors

404 NOT_FOUND

No live product with that slug. A product that exists but has not launched answers the same way, on purpose, so this endpoint cannot be used to discover unpublished listings.

MCP equivalents

search_products and get_product call the same functions and return the same shapes.

Was this page helpful?