Products

List Products

Returns a paginated list of products. Omit account_id to search the public marketplace.

get/products

Query parameters

account_idstring

The unique identifier of the account to list products for. Omit to search the public marketplace.

querystring

Ranked search against product title and headline. Omit to browse by recency.

marketplace_category_routestring

Only return marketplace products assigned to this category route, such as trading.

plan_typesstring[]

Filter to products with a buyable plan of these billing models, such as one_time or renewal.

price_minimumnumber

Only return products whose advertised buyable plan has a displayed price of at least this amount. Recurring plans use renewal price.

price_maximumnumber

Only return products whose advertised buyable plan has a displayed price of at most this amount. Recurring plans use renewal price.

visibilitiesstring[]

Filter to only products matching these visibility states. Ignored on the public marketplace list, which only returns visible products.

[
  "visible"
]
access_pass_typesstring[]

Filter to only products matching these types.

[
  "regular"
]
labelsstring[]

Filter to only products carrying all of these labels. Labels are matched lowercased.

direction'asc' | 'desc'

The sort direction for results. Defaults to descending.

orderstring

The field to sort results by. Account lists default to created_at. Marketplace lists default to discoverable_at and accept created_at or discoverable_at. Cannot be combined with query.

firstinteger

The number of products to return (default and max 100).

afterstring

A cursor; returns products after this position.

lastinteger

The number of products to return from the end of the range.

beforestring

A cursor; returns products before this position.

created_afterstring

Only return products created after this ISO 8601 timestamp.

created_beforestring

Only return products created before this ISO 8601 timestamp.

Response

marketplace products listed without an account

Example response

{
  "data": [
    {
      "account": {
        "id": "biz_xxxxxxxxxxxxxx",
        "route": "biz_xxxxxxxxxxxxxx",
        "title": "Shine Time Auto Detailing"
      },
      "created_at": "2026-01-01T12:00:00.000Z",
      "default_plan": {
        "billing_period": 30,
        "id": "plan_xxxxxxxxxxxxxx",
        "initial_price": {
          "amount": "-2.50",
          "currency": "usd",
          "decimals": 2,
          "display_decimals": 2
        },
        "plan_type": "renewal",
        "renewal_price": {
          "amount": "-2.50",
          "currency": "usd",
          "decimals": 2,
          "display_decimals": 2
        },
        "unlimited_stock": true,
        "visibility": "visible"
      },
      "description": "Two-stage paint correction, a three-year ceramic coating, and sealed wheel faces.",
      "external_identifier": "SHINE-CERAMIC-01",
      "gallery_images": [
        {
          "content_type": "image/png",
          "id": "file_xxxxxxxxxxxxxx",
          "url": "https://whop-assets-example.s3.amazonaws.com/uploads/image/2026-01-01/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
        }
      ],
      "headline": "A showroom finish that lasts three years",
      "id": "prod_xxxxxxxxxxxxxx",
      "labels": [
        "courses"
      ],
      "metadata": {},
      "route": "ceramic-coating-package",
      "title": "Ceramic Coating Package",
      "updated_at": "2026-01-01T12:00:00.000Z",
      "visibility": "visible"
    }
  ],
  "page_info": {
    "end_cursor": "WyJjdXJzb3IiLDFd",
    "start_cursor": "WyJjdXJzb3IiLDFd"
  }
}

Changes