List Plans
Returns a paginated list of plans. Omit account_id and pass product_ids to list a product's public buyable plans.
Query parameters
The unique identifier of the account to list plans for. Required unless product_ids is provided for a public product-plan read.
The sort direction for results. Defaults to descending.
The field to sort results by. Defaults to created_at.
Filter to only plans matching these release methods.
[ "buy_now" ]
Filter to only plans matching these visibility states.
[ "visible" ]
Filter to only plans matching these billing types.
[ "renewal" ]
Filter to only plans belonging to these product identifiers. When account_id is omitted, this is required and the response is publicly readable: only visible, non-invoice plans are returned.
[ "prod_xxxxxxxxxxxxxx" ]
Only return plans created before this timestamp.
Only return plans created after this timestamp.
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.
Response
visible plans listed by product without authentication
Example response
{
"data": [
{
"account": {
"id": "biz_xxxxxxxxxxxxxx",
"title": "Shine Time Auto Detailing"
},
"adaptive_pricing_enabled": true,
"billing_period": 30,
"cancel_discount_intervals": 3,
"cancel_discount_percentage": 20,
"checkout_styling": {
"background_color": "#0f172a",
"border_style": "rounded",
"button_color": "#f59e0b",
"font_family": "roboto"
},
"created_at": "2026-01-01T12:00:00.000Z",
"currency": "usd",
"custom_fields": [
{
"field_type": "text",
"id": "field_xxxxxxxxxxxxxx",
"name": "Vehicle make and model",
"placeholder": "2021 Audi S5",
"required": true
}
],
"description": "Two hand washes a month, interior vacuum, and a quarterly sealant top-up.",
"expiration_days": 365,
"formatted_price": "$59.00 / month",
"id": "plan_xxxxxxxxxxxxxx",
"image": {
"blurhash": "LA6bDXT$E3b:R6i+RibEIWbp%ej1",
"url": "https://whop-assets-example.s3.amazonaws.com/uploads/image/2026-01-01/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx"
},
"initial_price_due": {
"amount": "-2.50",
"currency": "usd",
"decimals": 2,
"display_decimals": 2
},
"internal_notes": "Maintenance tier. Upsell the interior shampoo add-on at renewal.",
"invoice": {
"id": "inv_xxxxxxxxxxxxxx"
},
"metadata": {
"custom_cta": "subscribe",
"custom_cta_url": "https://shinetime.example/wash-club"
},
"offer_cancel_discount": true,
"payment_method_configuration": {
"disabled": [
"crypto"
],
"enabled": [
"card"
],
"include_platform_defaults": true
},
"plan_type": "renewal",
"product": {
"id": "prod_xxxxxxxxxxxxxx",
"title": "Ceramic Coating Package"
},
"purchase_url": "https://whop.com/checkout/plan_xxxxxxxxxxxxxx",
"release_method": "buy_now",
"renewal_price": 59,
"split_pay_required_payments": 4,
"strike_through_initial_price": 99,
"strike_through_renewal_price": 79,
"three_ds_level": "frictionless_if_required",
"title": "Unlimited Wash Club",
"trial_period_days": 7,
"updated_at": "2026-01-01T12:00:00.000Z",
"visibility": "visible"
}
],
"page_info": {
"start_cursor": "WyJjdXJzb3IiLDFd"
}
}