List Products
Changed onLists an account's products, or searches the public marketplace when you omit account_id.
Request
- Base URL: https://api.whop.com/api/v1
- URL: https://api.whop.com/api/v1/products
- Auth: one of:
- none
- HTTP bearer
Query parameters
The unique identifier of the account to list products for. Omit to search the public marketplace.
Filters products by text. The public marketplace list searches product title, account name, headline and description, ranking products that match every word first and the closest partial matches after them; an account's own list is a plain substring match over title, headline and description. Omit to browse by recency.
Only return marketplace products assigned to this category route, such as trading.
Filter to products with a buyable variant of these billing models, such as one_time or renewal.
Only return products whose advertised buyable variant has a displayed price of at least this amount. Recurring variants use renewal price.
Only return products whose advertised buyable variant has a displayed price of at most this amount. Recurring variants use renewal price.
Filter to only products matching these visibility states. Ignored on the public marketplace list, which only returns visible products.
[ "visible" ]
Filter to only products matching these types.
[ "regular" ]
Filter to only products carrying all of these labels. Labels are matched lowercased.
The sort direction for results. Defaults to descending.
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.
Number of results to return from the start of the range.
Return results after this cursor. Use page_info.end_cursor from the previous response to fetch the next page.
Number of results to return from the end of the range.
Return results before this cursor. Use page_info.start_cursor from the previous response to fetch the previous page.
Only return products created after this ISO 8601 timestamp.
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": "-1234.56",
"currency": "usd",
"decimals": 2,
"display_decimals": 2
},
"plan_type": "renewal",
"renewal_price": {
"amount": "-1234.56",
"currency": "usd",
"decimals": 2,
"display_decimals": 2
},
"unlimited_stock": true,
"visibility": "visible"
},
"description": "empower rich infrastructures",
"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": "thought leadership",
"id": "prod_xxxxxxxxxxxxxx",
"labels": [
"courses"
],
"metadata": {},
"route": "xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
"title": "Wash Club Tee",
"updated_at": "2026-01-01T12:00:00.000Z",
"variant_attributes": {
"color": [
"Blue",
"Red"
],
"size": [
"L",
"S"
]
},
"visibility": "visible"
}
],
"page_info": {
"start_cursor": "WyJjdXJzb3IiLDFd"
}
}Changes
- info
added the required property
//to the response with the status
- info
- breaking
for the
queryrequest parameterfirst, default value20was added - warning
for the
queryrequest parameterfirst, the max was set to100.00 - warning
for the
queryrequest parameterlast, the max was set to100.00
- breaking