Memberships

List Memberships

Lists every membership the caller can read: an account API key its account's; a user credential their own plus those of every account they manage. account_id and user_id only narrow that list — values outside the caller's reach return fewer results, not an error.

get/memberships

Query parameters

account_idstring

Narrow to one account (biz_ tag). With read access to the account this lists all of its memberships; without, only the caller's own memberships in it.

user_idstring

Narrow to one user's memberships (user_ tag, or me for the caller). A user outside the caller's visible set returns an empty list.

status'active' | 'trialing' | 'past_due' | 'completed' | 'canceled' | 'expired' | 'canceling' | 'paused'

Filter by billing state. canceling matches active memberships set to cancel at period end; paused matches memberships with payment collection paused.

product_idstring

Filter to memberships of this product (prod_ tag). Repeat as product_ids[] for several.

plan_idstring

Filter to memberships of this plan (plan_ tag). Repeat as plan_ids[] for several.

created_afterstring

Only memberships created after this ISO 8601 timestamp.

created_beforestring

Only memberships created before this ISO 8601 timestamp.

order'created_at'

Sort field.

direction'asc' | 'desc'

Sort direction.

firstinteger

Number of results to return from the start of the range.

afterstring

Return results after this cursor. Use page_info.end_cursor from the previous response to fetch the next page.

lastinteger

Number of results to return from the end of the range.

beforestring

Return results before this cursor. Use page_info.start_cursor from the previous response to fetch the previous page.

Response

memberships listed

Example response

{
  "data": [
    {
      "account": {
        "id": "biz_xxxxxxxxxxxxxx",
        "logo_url": "https://whop-assets-example.s3.amazonaws.com/uploads/image/2026-01-01/xxxxxxxx-xxxx-xxxx-xxxx-xxxxxxxxxxxx",
        "route": "shine-time-auto-detailing",
        "title": "Shine Time Auto Detailing"
      },
      "cancel_at_period_end": true,
      "canceled_at": "2026-01-01T12:00:00.000Z",
      "cancellation_reason": "Too expensive",
      "created_at": "2026-01-01T12:00:00.000Z",
      "current_period_end": "2026-01-01T12:00:00.000Z",
      "current_period_start": "2026-01-01T12:00:00.000Z",
      "id": "mem_xxxxxxxxxxxxxx",
      "license_key": "WHOP-XXXX-XXXX-XXXX",
      "manage_url": "https://whop.com/billing/manage/mber_xxxxxxxxxxxxxx",
      "member": {
        "access_level": "customer",
        "last_accessed_at": "2026-01-01T12:00:00.000Z",
        "position": 1767268800000
      },
      "metadata": {},
      "phone_number": "+xxxxxxxxxxx",
      "plan_id": "plan_xxxxxxxxxxxxxx",
      "product_id": "prod_xxxxxxxxxxxxxx",
      "status": "active",
      "user_id": "user_xxxxxxxxxxxxxx"
    }
  ],
  "page_info": {
    "start_cursor": "WyJjdXJzb3IiLDFd"
  }
}

Changes

Changed in 4 of the 74 revisions of this API.251734

    • ○

      added the required property // to the response with the status

      response-required-property-added

    • ○

      added the required property // to the response with the status

      response-required-property-added

    • ○

      added the required property // to the response with the status

      response-required-property-added

    • ○

      added the required property // to the response with the status

      response-required-property-added

    • ○

      added the required property // to the response with the status

      response-required-property-added

    This revision also has 2 changes that name no endpoint, such as unreferenced schemas being removed. See the revision's changelog

    • ○

      added the optional property / to the response with the status

      response-optional-property-added

    • ○

      added the optional property / to the response with the status

      response-optional-property-added

    • ○

      added the optional property / to the response with the status

      response-optional-property-added

    • ○

      added the optional property / to the response with the status

      response-optional-property-added

    This revision also has 9 changes that name no endpoint, such as unreferenced schemas being removed. See the revision's changelog

  • 60bbb4a6ffbc251725See the full diff
    • ▲

      the query request parameter direction was restricted to a list of enum values

      request-parameter-became-enum

    • ▲

      the query request parameter order was restricted to a list of enum values

      request-parameter-became-enum

    • ▲

      for the query request parameter direction, default value desc was added

      request-parameter-default-value-added

    • ▲

      for the query request parameter first, default value 20 was added

      request-parameter-default-value-added

    • ▲

      for the query request parameter order, default value created_at was added

      request-parameter-default-value-added

    • ▲

      added subschema #2 to the // response property oneOf list for the response status

      response-property-one-of-added

    • ▲

      the // response's property format changed from date-time to no format for status

      response-property-type-changed

    • ▲

      the // response's property type changed from object null to no type for status

      response-property-type-changed

    • ▲

      removed the required property // from the response with the status

      response-required-property-removed

    • ▲

      removed the required property // from the response with the status

      response-required-property-removed

    • ▲

      removed the required property // from the response with the status

      response-required-property-removed

    • ▲

      removed the required property // from the response with the status

      response-required-property-removed

    • ▲

      removed the required property // from the response with the status

      response-required-property-removed

    • ▲

      removed the required property // from the response with the status

      response-required-property-removed

    • ▲

      removed the required property // from the response with the status

      response-required-property-removed

    • ▲

      removed the required property // from the response with the status

      response-required-property-removed

    • ▲

      removed the required property /// from the response with the status

      response-required-property-removed

    • ▲

      removed the required property // from the response with the status

      response-required-property-removed

    • ▲

      removed the required property // from the response with the status

      response-required-property-removed

    • ▲

      removed the required property // from the response with the status

      response-required-property-removed

    • ▲

      removed the required property // from the response with the status

      response-required-property-removed

    • ▲

      removed the required property // from the response with the status

      response-required-property-removed

    • ▲

      removed the required property // from the response with the status

      response-required-property-removed

    • ▲

      removed the required property // from the response with the status

      response-required-property-removed

    • ▲

      removed the required property // from the response with the status

      response-required-property-removed

    • ●

      for the query request parameter first, the max was set to 100.00

      request-parameter-max-set

    • ●

      for the query request parameter last, the max was set to 100.00

      request-parameter-max-set

    • ●

      deleted the query request parameter cancel_options

      request-parameter-removed

    • ●

      deleted the query request parameter company_id

      request-parameter-removed

    • ●

      deleted the query request parameter plan_ids

      request-parameter-removed

    • ●

      deleted the query request parameter product_ids

      request-parameter-removed

    • ●

      deleted the query request parameter promo_code_ids

      request-parameter-removed

    • ●

      deleted the query request parameter statuses

      request-parameter-removed

    • ●

      deleted the query request parameter user_ids

      request-parameter-removed

    • ●

      removed the optional property / from the response with the status

      response-optional-property-removed

    • ●

      removed the optional property / from the response with the status

      response-optional-property-removed

    • ●

      removed the optional property / from the response with the status

      response-optional-property-removed

    • ●

      removed the optional property / from the response with the status

      response-optional-property-removed

    • ●

      removed the optional property / from the response with the status

      response-optional-property-removed

    • ●

      removed the optional property / from the response with the status

      response-optional-property-removed

    • ●

      removed the optional property / from the response with the status

      response-optional-property-removed

    • ●

      removed the optional property / from the response with the status

      response-optional-property-removed

    • ○

      api operation id listMembership removed and replaced with listMemberships

      api-operation-id-removed

    • ○

      the security scope member:email:read was removed from the endpoint's security scheme bearerAuth

      api-security-scope-removed

    • ○

      added the new optional header request parameter Api-Version-Date to all path's operations

      new-optional-request-default-parameter-to-existing-path

    • ○

      added the new optional query request parameter account_id

      new-optional-request-parameter

    • ○

      added the new optional query request parameter plan_id

      new-optional-request-parameter

    • ○

      added the new optional query request parameter product_id

      new-optional-request-parameter

    • ○

      added the new optional query request parameter status

      new-optional-request-parameter

    • ○

      added the new optional query request parameter user_id

      new-optional-request-parameter

    • ○

      added the new enum value asc to the query request parameter direction

      request-parameter-enum-value-added

    • ○

      added the new enum value created_at to the query request parameter order

      request-parameter-enum-value-added

    • ○

      added the new enum value desc to the query request parameter direction

      request-parameter-enum-value-added

    • ○

      for the query request parameter created_after, the type was generalized from string null to string, and format from date-time to no format

      request-parameter-type-generalized

    • ○

      for the query request parameter created_before, the type was generalized from string null to string, and format from date-time to no format

      request-parameter-type-generalized

    • ○

      for the query request parameter direction, the type was generalized from no type to string

      request-parameter-type-generalized

    • ○

      for the query request parameter order, the type was generalized from no type to string

      request-parameter-type-generalized

    • ○

      removed the non-success response with the status

      response-non-success-status-removed

    • ○

      removed the non-success response with the status

      response-non-success-status-removed

    • ○

      removed the non-success response with the status

      response-non-success-status-removed

    • ○

      removed the canceling enum value from the // response property for the response status

      response-property-enum-value-removed

    • ○

      removed the drafted enum value from the // response property for the response status

      response-property-enum-value-removed

    • ○

      added the required property // to the response with the status

      response-required-property-added

    • ○

      added the required property // to the response with the status

      response-required-property-added

    • ○

      added the required property // to the response with the status

      response-required-property-added

    • ○

      added the required property // to the response with the status

      response-required-property-added

    • ○

      added the required property // to the response with the status

      response-required-property-added

    This revision also has 1 change that name no endpoint, such as unreferenced schemas being removed. See the revision's changelog

Of the 74 revisions, 1 has no diff computed.