# Whop

Making everyone an internet entrepreneur. Explore a playground for digital products, memberships & communities.

- **Category:** ecommerce
- **Auth:** API_KEY, OAUTH2
- **Composio Managed App Available?** No
- **Tools:** 19
- **Triggers:** 0
- **Slug:** `WHOP`
- **Version:** 00000000_00

## Tools

### Create Access Token

**Slug:** `WHOP_CREATE_ACCESS_TOKEN`

Tool to create a short-lived access token for authenticating API requests. Use when you need to generate temporary credentials for Whop's web and mobile embedded components.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `user_id` | string | No | User identifier. Required when using API key authentication. Cannot be used together with company_id. |
| `company_id` | string | No | Business identifier. Required when using API key authentication. Cannot be used together with user_id. |
| `expires_at` | string | No | Token expiration timestamp in ISO 8601 format (defaults to 1 hour, max 3 hours from now). |
| `scoped_actions` | array | No | Permission scopes to grant to the access token. If empty or omitted, all permissions from the authenticating credential are inherited. Must be a subset of the credential's permissions. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Create file

**Slug:** `WHOP_CREATE_FILE`

Tool to create a new file record and receive a presigned URL for uploading content to S3. Use when you need to upload files to Whop.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `filename` | string | Yes | The name of the file including its extension (e.g., 'photo.png' or 'document.pdf'). |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Delete Promo Code

**Slug:** `WHOP_DELETE_PROMO_CODE`

Tool to archive a promo code, preventing it from being used in future checkouts. Use when you need to deactivate or remove a promo code from circulation. Existing memberships created with this promo code are not affected by archiving. The operation changes the promo code status from 'active' to 'archived'.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier of the promo code to archive. Format: promo_xxxxxxxxxxxx |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Apps

**Slug:** `WHOP_LIST_APPS`

Tool to retrieve a paginated list of apps on the Whop platform. Use when you need to browse or search for apps with optional filtering by company, type, verification status, or view support. Supports cursor-based pagination.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `last` | integer | No | Returns the last n elements from the list |
| `after` | string | No | Returns the elements in the list that come after the specified cursor |
| `first` | integer | No | Returns the first n elements from the list |
| `order` | string ("discoverable_at" | "created_at" | "total_installs_last_30_days" | "total_installs_last_7_days" | "time_spent" | "time_spent_last_24_hours" | "daily_active_users" | "ai_prompt_count" | "total_ai_cost_usd" | "total_ai_tokens" | "last_ai_prompt_at" | "ai_average_rating") | No | Field to sort apps by. |
| `query` | string | No | A search string to filter apps by name |
| `before` | string | No | Returns the elements in the list that come before the specified cursor |
| `app_type` | string ("b2b_app" | "b2c_app" | "company_app" | "component") | No | Audience type for apps. |
| `direction` | string ("asc" | "desc") | No | Sort direction for results. |
| `view_type` | string ("hub" | "discover" | "dash" | "dashboard" | "analytics") | No | View types supported by apps. |
| `company_id` | string | No | Filter apps to only those created by this company (format: biz_*) |
| `verified_apps_only` | boolean | No | Whether to only return apps that have been verified by Whop |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Authorized Users

**Slug:** `WHOP_LIST_AUTHORIZED_USERS`

Tool to retrieve a paginated list of authorized team members for a company. Use when you need to view company team members, check user permissions, or audit team access. Supports filtering by company, user, role, and creation date with cursor-based pagination.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `last` | integer | No | Returns the last n elements from the list. Cannot be used with 'first' |
| `role` | string ("owner" | "admin" | "sales_manager" | "moderator" | "app_manager" | "support" | "manager") | No | Enum for authorized user roles within a company. |
| `after` | string | No | Returns the elements in the list that come after the specified cursor. Used for forward pagination |
| `first` | integer | No | Returns the first n elements from the list. Cannot be used with 'last' |
| `before` | string | No | Returns the elements in the list that come before the specified cursor. Used for backward pagination |
| `user_id` | string | No | Filter results to a specific user to check if they are an authorized team member |
| `company_id` | string | No | The unique identifier of the company to filter authorized users by (e.g., biz_xxxxxxxxxxxxxx) |
| `created_after` | string | No | Only return authorized users created after this timestamp (ISO 8601 date-time format) |
| `created_before` | string | No | Only return authorized users created before this timestamp (ISO 8601 date-time format) |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Members

**Slug:** `WHOP_LIST_MEMBERS`

Tool to retrieve a paginated list of members for a company. Use when you need to view company members with optional filtering by product, plan, status, access level, and more. Supports cursor-based pagination and searching by name, username, or email.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `last` | integer | No | Returns the last n elements from the list |
| `after` | string | No | Returns the elements in the list that come after the specified cursor |
| `first` | integer | No | Returns the first n elements from the list |
| `order` | string ("id" | "usd_total_spent" | "created_at" | "joined_at" | "most_recent_action") | No | Sort order field values. |
| `query` | string | No | Search members by name, username, or email |
| `before` | string | No | Returns the elements in the list that come before the specified cursor |
| `plan_ids` | array | No | Filter by specific plan identifiers |
| `statuses` | array | No | Filter by member status: drafted, joined, or left |
| `user_ids` | array | No | Filter by specific user identifiers |
| `direction` | string ("asc" | "desc") | No | Sort direction values. |
| `company_id` | string | No | Company identifier to list members for. If omitted, defaults to the company associated with the API key. |
| `product_ids` | array | No | Filter by specific product identifiers |
| `access_level` | string ("no_access" | "admin" | "customer") | No | Access level a user or company has to a product or company. |
| `created_after` | string | No | Filter members created after this timestamp (ISO 8601 date-time) |
| `created_before` | string | No | Filter members created before this timestamp (ISO 8601 date-time) |
| `promo_code_ids` | array | No | Filter by promo codes used |
| `most_recent_actions` | array | No | Filter by recent activity types |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List memberships

**Slug:** `WHOP_LIST_MEMBERSHIPS`

Tool to retrieve a paginated list of memberships with filtering options. Use when you need to list memberships by product, plan, status, user, or promo code.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `last` | integer | No | Returns the last n elements from the list. Use for backward pagination. |
| `after` | string | No | Pagination cursor that returns elements in the list after the specified cursor. Use this to fetch the next page of results. |
| `first` | integer | No | Returns the first n elements from the list. Use for forward pagination. |
| `order` | string ("id" | "created_at" | "status" | "canceled_at" | "date_joined" | "total_spend") | No | Order by field enum. |
| `before` | string | No | Pagination cursor that returns elements in the list before the specified cursor. Use this to fetch the previous page of results. |
| `plan_ids` | array | No | Filter to only include memberships belonging to these plan identifiers. Pass multiple plan IDs to filter by multiple plans. |
| `statuses` | array | No | Filter memberships by their current status. Can include multiple statuses to match any of them. |
| `user_ids` | array | No | Filter to only include memberships belonging to these user identifiers. Pass multiple user IDs to filter by multiple users. |
| `direction` | string ("asc" | "desc") | No | Sort direction enum. |
| `company_id` | string | No | The unique identifier of the company to list memberships for. Required when using an API key authentication. |
| `product_ids` | array | No | Filter to only include memberships belonging to these product identifiers. Pass multiple product IDs to filter by multiple products. |
| `created_after` | string | No | Only return memberships created after this timestamp. Use ISO 8601 format. |
| `cancel_options` | array | No | Filter to only include memberships matching these cancellation reasons. Only applicable to canceled memberships. |
| `created_before` | string | No | Only return memberships created before this timestamp. Use ISO 8601 format. |
| `promo_code_ids` | array | No | Filter to only include memberships that used these promo code identifiers during checkout. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Payment Methods

**Slug:** `WHOP_LIST_PAYMENT_METHODS`

Tool to retrieve a paginated list of payment methods for a member or company. Use when you need to view stored payment information such as cards, bank accounts, or digital wallets. Either member_id or company_id must be provided.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `last` | integer | No | Returns the last n elements from the list. Cannot be used with 'first' parameter. |
| `after` | string | No | Cursor for paginating forward through results. Use the end_cursor from the previous response. |
| `first` | integer | No | Returns the first n elements from the list. Cannot be used with 'last' parameter. |
| `before` | string | No | Cursor for paginating backward through results. Use the start_cursor from the previous response. |
| `direction` | string ("asc" | "desc") | No | Sort direction for pagination. |
| `member_id` | string | No | The unique identifier of the member. Either member_id or company_id must be provided. |
| `company_id` | string | No | The unique identifier of the company. Either member_id or company_id must be provided. |
| `created_after` | string | No | Filter to payment methods created after this ISO 8601 timestamp. |
| `created_before` | string | No | Filter to payment methods created before this ISO 8601 timestamp. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### List Payments

**Slug:** `WHOP_LIST_PAYMENTS`

Tool to retrieve a paginated list of payments for a company. Use when you need to view payment history with optional filtering by product, plan, status, billing reason, currency, and creation date. Supports cursor-based pagination.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `last` | integer | No | Returns the last n elements from the list |
| `after` | string | No | Returns the elements in the list that come after the specified cursor |
| `first` | integer | No | Returns the first n elements from the list |
| `order` | string ("final_amount" | "created_at" | "paid_at") | No | Sort order field values. |
| `before` | string | No | Returns the elements in the list that come before the specified cursor |
| `plan_ids` | array | No | Filter by specific plan identifiers |
| `statuses` | array | No | Filter by payment status |
| `direction` | string ("asc" | "desc") | No | Sort direction values. |
| `company_id` | string | No | The unique identifier of the company to list payments for. If omitted, defaults to the company associated with the API key. |
| `currencies` | array | No | Filter by currency code (usd, eur, gbp, etc.) |
| `product_ids` | array | No | Filter by specific product identifiers |
| `substatuses` | array | No | Filter by friendly status for granular filtering |
| `include_free` | boolean | No | Whether to include payments with a zero amount |
| `created_after` | string | No | Only return payments created after this timestamp (ISO 8601 date-time) |
| `created_before` | string | No | Only return payments created before this timestamp (ISO 8601 date-time) |
| `billing_reasons` | array | No | Filter by billing reason |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve App

**Slug:** `WHOP_RETRIEVE_APP`

Tool to retrieve the details of an existing app. Use when you need to get information about a specific Whop app by its ID.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier of the app to retrieve. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve Authorized User

**Slug:** `WHOP_RETRIEVE_AUTHORIZED_USER`

Tool to retrieve the details of an existing authorized user. Use when you need to get information about a specific authorized user by their ID.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier of the authorized user to retrieve. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve Company

**Slug:** `WHOP_RETRIEVE_COMPANY`

Tool to retrieve the details of an existing company. Use when you need to fetch company information including settings, team details, verification status, and social links.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | Company ID (e.g., 'biz_mq2nWbR4AjIBlZ') or use 'me' to retrieve the authenticated company's details |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve company token transaction

**Slug:** `WHOP_RETRIEVE_COMPANY_TOKEN_TRANSACTION`

Tool to retrieve the details of an existing company token transaction. Use when you need to view information about a specific token transaction including amount, type, and associated user/member/company details.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier of the token transaction to retrieve. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve File

**Slug:** `WHOP_RETRIEVE_FILE`

Tool to retrieve the details of an existing file from Whop. Use when you need to get information about a specific file by its ID.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier of the file |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve Member

**Slug:** `WHOP_RETRIEVE_MEMBER`

Tool to retrieve detailed information about an existing member by ID. Use when you need to get a specific member's details including their status, access level, spending history, and associated user information.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier of the member to retrieve. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve Plan

**Slug:** `WHOP_RETRIEVE_PLAN`

Tool to retrieve information about an existing plan. A plan defines pricing and billing terms for a product.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier of the plan to retrieve. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve Promo Code

**Slug:** `WHOP_RETRIEVE_PROMO_CODE`

Tool to retrieve the details of an existing promo code by its unique identifier. Use when you need to fetch information about a specific promo code's discount settings, usage limits, and restrictions.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier of the promo code. |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Retrieve User

**Slug:** `WHOP_RETRIEVE_USER`

Tool to retrieve the details of an existing user from Whop. Use when you need to get information about a specific user by their ID or username.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier or username of the user |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |

### Update Plan

**Slug:** `WHOP_UPDATE_PLAN`

Tool to update a plan's pricing, billing interval, visibility, stock, and other settings. Use when you need to modify an existing plan's configuration such as changing prices, adjusting billing periods, updating visibility status, or managing stock levels.

#### Input Parameters

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `id` | string | Yes | The unique identifier of the plan to update (e.g., plan_NNOponSLMOBYl) |
| `stock` | integer | No | The maximum number of units available for purchase (null for unlimited) |
| `title` | string | No | The display name of the plan shown to customers on the product page |
| `currency` | string ("usd" | "eur" | "gbp" | "jpy" | "aud" | "cad" | "sgd") | No | Supported currencies. |
| `visibility` | string ("visible" | "hidden" | "archived" | "quick_link") | No | Plan visibility options. |
| `description` | string | No | A text description of the plan displayed to customers on the product page |
| `custom_fields` | array | No | An array of custom field definitions to collect additional information from customers at checkout |
| `initial_price` | number | No | The amount charged on the first purchase, in the plan's currency (e.g., 1999 for $19.99) |
| `renewal_price` | number | No | The amount charged each billing period for recurring plans, in the plan's currency |
| `billing_period` | integer | No | The number of days between recurring charges (e.g., 30 for monthly, 365 for yearly) |
| `internal_notes` | string | No | Private notes visible only to the business owner, not shown to customers |
| `expiration_days` | integer | No | The number of days until the membership expires and access is revoked (null for no expiration) |
| `unlimited_stock` | boolean | No | When true, the stock field is ignored and the plan has unlimited availability |
| `override_tax_type` | string ("inclusive" | "exclusive" | "unspecified") | No | Tax calculation type. |
| `trial_period_days` | integer | No | The number of free trial days before the first charge on a recurring plan |
| `offer_cancel_discount` | boolean | No | Whether to offer a retention discount when a customer attempts to cancel their subscription |
| `payment_method_configuration` | object | No | Payment method configuration for the plan. |
| `strike_through_initial_price` | number | No | Comparison price with strikethrough for the initial charge, used to show discounts |
| `strike_through_renewal_price` | number | No | Comparison price with strikethrough for the renewal charge, used to show discounts |

#### Output

| Parameter | Type | Required | Description |
|-----------|------|----------|-------------|
| `data` | string | Yes | Data from the action execution |
| `error` | string | No | Error if any occurred during the execution of the action |
| `successful` | boolean | Yes | Whether or not the action execution was successful or not |
