List Promo Codes
Changed onLists an account's promo codes.
Request
- Base URL: https://api.whop.com/api/v1
- URL: https://api.whop.com/api/v1/promo_codes
- Auth: HTTP bearer
Query parameters
Account whose promo codes are listed (biz_ tag).
Promo-code status. expired groups inactive and archived codes.
Only promo codes scoped to these product IDs.
[ "prod_xxxxxxxxxxxxxx" ]
Only promo codes scoped to these variant IDs.
[ "plan_xxxxxxxxxxxxxx" ]
Only promo codes created before this ISO 8601 timestamp.
Only promo codes created after this ISO 8601 timestamp.
Sort field.
Sort direction.
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
promo codes listed
Example response
{
"data": [
{
"amount_off": 0.1,
"code": "welcome",
"created_at": "2026-01-01T12:00:00.000Z",
"currency": "usd",
"duration": "repeating",
"expires_at": "2026-01-01T12:00:00.000Z",
"id": "promo_xxxxxxxxxxxxxx",
"metadata": {},
"new_users_only": true,
"one_per_customer": true,
"product": {
"id": "prod_xxxxxxxxxxxxxx",
"title": "Ceramic Coating Package"
},
"promo_duration_months": 1,
"promo_type": "percentage",
"status": "active",
"stock": 25,
"updated_at": "2026-01-01T12:00:00.000Z",
"uses": 1
}
],
"page_info": {
"start_cursor": "WyJjdXJzb3IiLDFd"
}
}Changes
- info
added the optional property
/to the response with the status - info
added the optional property
/to the response with the status - info
added the optional property
/to the response with the status
- info
- breaking
added the new required
queryrequest parameteraccount_id - breaking
the
queryrequest parameterstatuswas restricted to a list of enum values - breaking
for the
queryrequest parameterfirst, default value20was added - breaking
added
subschema #2to the//response propertyoneOflist for the response status - breaking
the
//response's property format changed fromdate-timeto no format for status - breaking
the
//response's property type changed from no type tostringfor status - breaking
the
//response's property format changed fromdate-timeto no format for status - breaking
the
//response's property type changed fromobjectnullto no type for status - breaking
removed the required property
///from the response with the status - breaking
removed the required property
///from the response with the status - warning
for the
queryrequest parameterfirst, the max was set to100.00 - warning
for the
queryrequest parameterlast, the max was set to100.00 - warning
deleted the
queryrequest parametercompany_id - warning
removed the optional property
/from the response with the status - warning
removed the optional property
/from the response with the status - warning
removed the optional property
/from the response with the status - warning
removed the optional property
/from the response with the status - warning
removed the optional property
/from the response with the status - warning
removed the optional property
/from the response with the status - warning
added the new
foreverenum value to the//response property for the response status - warning
added the new
onceenum value to the//response property for the response status - warning
added the new
repeatingenum value to the//response property for the response status - info
api operation id
listPromoCoderemoved and replaced withlistPromoCodes - info
the security scope
access_pass:basic:readwas removed from the endpoint's security schemebearerAuth - info
api tag
Promo Codesadded - info
api tag
Promo codesremoved - info
added the new optional
headerrequest parameterApi-Version-Dateto all path's operations - info
added the new optional
queryrequest parameterdirection - info
added the new optional
queryrequest parameterorder - info
added the new enum value
activeto thequeryrequest parameterstatus - info
added the new enum value
archivedto thequeryrequest parameterstatus - info
added the new enum value
expiredto thequeryrequest parameterstatus - info
added the new enum value
inactiveto thequeryrequest parameterstatus - info
for the
queryrequest parameterstatus, the type was generalized from no type tostring - info
removed the non-success response with the status
- info
removed the non-success response with the status
- info
removed the non-success response with the status
- info
removed the non-success response with the status
- info
removed
subschema #2from the//response propertyoneOflist for the response status - info
added the required property
//to the response with the status - info
added the required property
//to the response with the status
- breaking