@whop/cli 0.14.1 → 0.14.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (40) hide show
  1. package/README.md +2 -2
  2. package/dist/index.js +20781 -7474
  3. package/dist/index.js.map +1 -1
  4. package/package.json +1 -1
  5. package/skills/whop-accounts/SKILL.md +195 -15
  6. package/skills/whop-ad-campaigns/SKILL.md +193 -15
  7. package/skills/whop-ad-groups/SKILL.md +258 -16
  8. package/skills/whop-ads/SKILL.md +190 -14
  9. package/skills/whop-api-keys/SKILL.md +113 -13
  10. package/skills/whop-app-builds/SKILL.md +68 -8
  11. package/skills/whop-apps/SKILL.md +135 -12
  12. package/skills/whop-audiences/SKILL.md +71 -8
  13. package/skills/whop-bounties/SKILL.md +104 -9
  14. package/skills/whop-bounty-submissions/SKILL.md +82 -9
  15. package/skills/whop-cards/SKILL.md +122 -12
  16. package/skills/whop-checkout-configurations/SKILL.md +64 -8
  17. package/skills/whop-deposits/SKILL.md +13 -5
  18. package/skills/whop-disputes/SKILL.md +86 -9
  19. package/skills/whop-events/SKILL.md +90 -8
  20. package/skills/whop-exports/SKILL.md +329 -7
  21. package/skills/whop-ledgers/SKILL.md +38 -6
  22. package/skills/whop-media/SKILL.md +28 -7
  23. package/skills/whop-members/SKILL.md +51 -6
  24. package/skills/whop-memberships/SKILL.md +137 -13
  25. package/skills/whop-notifications/SKILL.md +91 -12
  26. package/skills/whop-partners/SKILL.md +102 -12
  27. package/skills/whop-payouts/SKILL.md +130 -9
  28. package/skills/whop-people/SKILL.md +50 -6
  29. package/skills/whop-permissions/SKILL.md +8 -5
  30. package/skills/whop-plans/SKILL.md +152 -12
  31. package/skills/whop-products/SKILL.md +141 -13
  32. package/skills/whop-resolution-center-cases/SKILL.md +222 -17
  33. package/skills/whop-shipments/SKILL.md +66 -8
  34. package/skills/whop-social-accounts/SKILL.md +112 -11
  35. package/skills/whop-stats/SKILL.md +50 -6
  36. package/skills/whop-swaps/SKILL.md +63 -8
  37. package/skills/whop-team-members/SKILL.md +80 -9
  38. package/skills/whop-transfers/SKILL.md +67 -8
  39. package/skills/whop-users/SKILL.md +271 -18
  40. package/skills/whop-verifications/SKILL.md +51 -9
@@ -11,15 +11,94 @@ Every notification belongs to a topic: the category it falls under, such as new
11
11
 
12
12
  Use the Notifications API to list the authenticated user's feed, read per-experience unread badges, mark an experience (or everything) as read, send notifications from your app to an experience's users or an account's team, and list the topic catalog.
13
13
 
14
- ## Commands
15
-
16
- | Command | Description |
17
- |---------|-------------|
18
- | `whop notifications list` | List Notifications |
19
- | `whop notifications create` | Send Notification |
20
- | `whop notifications badges` | List Notification Badges |
21
- | `whop notifications mark_read` | Mark Notifications Read |
22
- | `whop notifications topics` | List Notification Topics |
23
- | `whop notifications get` | Retrieve Notification |
24
-
25
- Run `whop notifications <command> --help` for options, or `whop notifications <command> --schema` for full argument details.
14
+ # whop notifications badges
15
+
16
+ List Notification Badges
17
+
18
+ ## Options
19
+
20
+ | Flag | Type | Required | Default | Description |
21
+ |------|------|----------|---------|-------------|
22
+ | `--experience_ids` | `array` | no | | Only return badges for these experiences (`exp_` tags). |
23
+ | `--last_fetched_at` | `string` | no | | The client's last fetched-at ISO 8601 timestamp, used to partially refresh badges after a websocket message. |
24
+
25
+ ---
26
+
27
+ # whop notifications create
28
+
29
+ Send Notification
30
+
31
+ ## Options
32
+
33
+ | Flag | Type | Required | Default | Description |
34
+ |------|------|----------|---------|-------------|
35
+ | `--account_id` | `string` | no | | Account whose team members receive the notification (`biz_` tag). Exactly one of `experience_id` or `account_id` is required. |
36
+ | `--content` | `string` | yes | | Main body text of the notification. |
37
+ | `--experience_id` | `string` | no | | Experience whose users receive the notification (`exp_` tag). Exactly one of `experience_id` or `account_id` is required. |
38
+ | `--icon_user_id` | `unknown` | no | | User whose profile picture is used as the notification icon. Defaults to the experience or account avatar. |
39
+ | `--rest_path` | `unknown` | no | | Path segment appended to the generated deep link that opens your app, for example `/settings/billing`. |
40
+ | `--subtitle` | `unknown` | no | | Optional secondary line displayed below the title. |
41
+ | `--title` | `string` | yes | | Headline text of the notification. |
42
+ | `--user_ids` | `array` | no | | Optional `user_` tags narrowing the audience. When provided, only these users are notified (as a mention), provided they are in the targeted experience or account. |
43
+ | `--idempotency-key` | `string` | no | | A unique key that makes this request safe to retry. See [Idempotent requests](https://docs.whop.com/developer/api/idempotency). |
44
+
45
+ > Confirm with the user before executing this destructive command.
46
+
47
+ ---
48
+
49
+ # whop notifications get
50
+
51
+ Retrieve Notification
52
+
53
+ ## Arguments
54
+
55
+ | Name | Type | Required | Description |
56
+ |------|------|----------|-------------|
57
+ | `notification_id` | `string` | yes | A notification `id` from List Notifications, or the id delivered with a push/websocket event. |
58
+
59
+ ---
60
+
61
+ # whop notifications list
62
+
63
+ List Notifications
64
+
65
+ ## Options
66
+
67
+ | Flag | Type | Required | Default | Description |
68
+ |------|------|----------|---------|-------------|
69
+ | `--unread` | `boolean` | no | | Only return notifications created since the user last viewed their source. |
70
+ | `--experience_id` | `string` | no | | Only return notifications from this experience (`exp_` tag). |
71
+ | `--account_id` | `string` | no | | Only return team notifications for this account (`biz_` tag). |
72
+ | `--mentions` | `boolean` | no | | Only return notifications that mention the user directly. |
73
+ | `--first` | `number` | no | | The number of notifications to return (default 20, max 100). |
74
+ | `--after` | `string` | no | | A cursor (a notification `id` from a previous page); returns notifications older than it. |
75
+
76
+ ---
77
+
78
+ # whop notifications mark_read
79
+
80
+ Mark Notifications Read
81
+
82
+ ## Options
83
+
84
+ | Flag | Type | Required | Default | Description |
85
+ |------|------|----------|---------|-------------|
86
+ | `--all` | `boolean` | no | | Pass `true` to mark every notification read. Exactly one of `experience_id` or `all` is required. |
87
+ | `--experience_id` | `string` | no | | Experience to mark read (`exp_` tag). Exactly one of `experience_id` or `all` is required. |
88
+ | `--idempotency-key` | `string` | no | | A unique key that makes this request safe to retry. See [Idempotent requests](https://docs.whop.com/developer/api/idempotency). |
89
+
90
+ > Confirm with the user before executing this destructive command.
91
+
92
+ ---
93
+
94
+ # whop notifications topics
95
+
96
+ List Notification Topics
97
+
98
+ ## Options
99
+
100
+ | Flag | Type | Required | Default | Description |
101
+ |------|------|----------|---------|-------------|
102
+ | `--topic_type` | `string` | no | | Only return topics of this scope: `user` (member notifications) or `account_team` (team notifications). |
103
+ | `--first` | `number` | no | | The number of topics to return (default 20, max 100). |
104
+ | `--after` | `string` | no | | A cursor; returns topics after this position. |
@@ -9,15 +9,105 @@ The Partners API covers your Whop partner activity: the users you referred onto
9
9
 
10
10
  Use it to enroll as a Whop partner, list the users you referred, list your referred businesses and review their earnings, and see the partner leaderboard.
11
11
 
12
- ## Commands
13
-
14
- | Command | Description |
15
- |---------|-------------|
16
- | `whop partners create` | Enroll as a Whop partner |
17
- | `whop partners list` | List referred businesses |
18
- | `whop partners get` | Retrieve a referred business |
19
- | `whop partners earnings` | List referred business earnings |
20
- | `whop partners leaderboard` | Retrieve the leaderboard |
21
- | `whop partners referred_users` | List the users the caller referred |
22
-
23
- Run `whop partners <command> --help` for options, or `whop partners <command> --schema` for full argument details.
12
+ # whop partners create
13
+
14
+ Enroll as a Whop partner
15
+
16
+ ## Options
17
+
18
+ | Flag | Type | Required | Default | Description |
19
+ |------|------|----------|---------|-------------|
20
+ | `--idempotency-key` | `string` | no | | A unique key that makes this request safe to retry. See [Idempotent requests](https://docs.whop.com/developer/api/idempotency). |
21
+
22
+ > Confirm with the user before executing this destructive command.
23
+
24
+ ---
25
+
26
+ # whop partners earnings
27
+
28
+ List referred business earnings
29
+
30
+ ## Arguments
31
+
32
+ | Name | Type | Required | Description |
33
+ |------|------|----------|-------------|
34
+ | `id` | `string` | yes | The partner business ID (a coma_ identifier). |
35
+
36
+ ## Options
37
+
38
+ | Flag | Type | Required | Default | Description |
39
+ |------|------|----------|---------|-------------|
40
+ | `--status` | `string` | no | | Filter by earning status. |
41
+ | `--first` | `number` | no | `20` | |
42
+ | `--after` | `string` | no | | |
43
+ | `--last` | `number` | no | | |
44
+ | `--before` | `string` | no | | |
45
+ | `--order` | `string` | no | | The field to sort earnings by. |
46
+ | `--direction` | `string` | no | | Sort direction. |
47
+ | `--created_before` | `string` | no | | Only return earnings created before this timestamp. |
48
+ | `--created_after` | `string` | no | | Only return earnings created after this timestamp. |
49
+
50
+ ---
51
+
52
+ # whop partners get
53
+
54
+ Retrieve a referred business
55
+
56
+ ## Arguments
57
+
58
+ | Name | Type | Required | Description |
59
+ |------|------|----------|-------------|
60
+ | `id` | `string` | yes | The partner business ID (a coma_ identifier). |
61
+
62
+ ---
63
+
64
+ # whop partners leaderboard
65
+
66
+ Retrieve the leaderboard
67
+
68
+ ## Options
69
+
70
+ | Flag | Type | Required | Default | Description |
71
+ |------|------|----------|---------|-------------|
72
+ | `--period` | `string` | no | | Time window for the rankings. `day`, `month`, and `year` count earnings since the start of the current calendar day, month, or year; `last_30_days` counts earnings over the trailing 30 days; `all_time` ranks lifetime earnings. |
73
+
74
+ ---
75
+
76
+ # whop partners list
77
+
78
+ List referred businesses
79
+
80
+ ## Options
81
+
82
+ | Flag | Type | Required | Default | Description |
83
+ |------|------|----------|---------|-------------|
84
+ | `--status` | `string` | no | | Filter by referral status. |
85
+ | `--has_earnings` | `boolean` | no | | When true, only businesses with pending or completed earnings paid to the caller. |
86
+ | `--first` | `number` | no | `20` | Number of partner businesses to return from the start of the window. |
87
+ | `--after` | `string` | no | | Cursor to fetch the page after (from page_info.end_cursor). |
88
+ | `--last` | `number` | no | | Number of partner businesses to return from the end of the window. |
89
+ | `--before` | `string` | no | | Cursor to fetch the page before (from page_info.start_cursor). |
90
+ | `--order` | `string` | no | | The field to sort partner businesses by. |
91
+ | `--direction` | `string` | no | | Sort direction. |
92
+ | `--created_before` | `string` | no | | Only return partner businesses created before this timestamp. |
93
+ | `--created_after` | `string` | no | | Only return partner businesses created after this timestamp. |
94
+ | `--referred_user_id` | `string` | no | | Filter to referrals attributed to this user. For first-tier referrals, this is the referred account owner; for second-tier referrals, this is the partner you recruited. |
95
+ | `--referred_username` | `string` | no | | Filter by the referred user's exact username. Ignored when `referred_user_id` is present. |
96
+ | `--tier` | `string` | no | | Filter to only first-tier referrals or only second-tier referrals. |
97
+
98
+ ---
99
+
100
+ # whop partners referred_users
101
+
102
+ List the users the caller referred
103
+
104
+ ## Options
105
+
106
+ | Flag | Type | Required | Default | Description |
107
+ |------|------|----------|---------|-------------|
108
+ | `--has_businesses` | `boolean` | no | | When true, only referred users who brought at least one business onto Whop. |
109
+ | `--has_earning_businesses` | `boolean` | no | | When true, only referred users with at least one business that has generated earnings. |
110
+ | `--first` | `number` | no | `20` | Number of referred users to return from the start of the window. |
111
+ | `--after` | `string` | no | | Cursor to fetch the page after (from page_info.end_cursor). |
112
+ | `--last` | `number` | no | | Number of referred users to return from the end of the window. |
113
+ | `--before` | `string` | no | | Cursor to fetch the page before (from page_info.start_cursor). |
@@ -7,15 +7,136 @@ command: whop payouts
7
7
 
8
8
  Payouts represent money sent from an account or user balance to an external destination, such as a bank account, wallet, or other saved payout method.
9
9
 
10
- Use the Payouts API to create payouts from stablecoin accounts, list payout history for accounts or users, monitor payout statuses, and show expected arrival details for funds leaving Whop.
10
+ Use the Payouts API to create payouts from accounts, list payout history for accounts or users, monitor payout statuses, and show expected arrival details for funds leaving Whop.
11
11
 
12
- ## Commands
12
+ # whop payouts create
13
13
 
14
- | Command | Description |
15
- |---------|-------------|
16
- | `whop payouts list` | List Payouts |
17
- | `whop payouts create` | Create Payout |
18
- | `whop payouts methods` | List Payout Methods |
19
- | `whop payouts create-method` | Create Payout Method |
14
+ Create Payout
20
15
 
21
- Run `whop payouts <command> --help` for options, or `whop payouts <command> --schema` for full argument details.
16
+ ## Options
17
+
18
+ | Flag | Type | Required | Default | Description |
19
+ |------|------|----------|---------|-------------|
20
+ | `--account_id` | `string` | yes | | The account to pay out from (a biz_ identifier). |
21
+ | `--amount` | `number` | yes | | The amount to pay out in the specified currency. |
22
+ | `--currency` | `string` | no | | The payout currency. Defaults to usd. |
23
+ | `--payout_method_id` | `string` | yes | | The saved payout method to deliver to (a potk_ identifier). |
24
+ | `--idempotency-key` | `string` | no | | A unique key that makes this request safe to retry. See [Idempotent requests](https://docs.whop.com/developer/api/idempotency). |
25
+
26
+ > Confirm with the user before executing this destructive command.
27
+
28
+ ---
29
+
30
+ # whop payouts create-method
31
+
32
+ Create Saved Payout Method
33
+
34
+ ## Options
35
+
36
+ | Flag | Type | Required | Default | Description |
37
+ |------|------|----------|---------|-------------|
38
+ | `--account_id` | `string` | no | | The account to add the payout method for (a biz_ identifier). Provide this or user_id. |
39
+ | `--destination_currency` | `string` | no | `usd` | Currency the supported payout method delivers payouts in. |
40
+ | `--fields` | `object` | yes | | The supported payout method's required field values, keyed by field id — list them with `GET /payouts/supported_methods?supported_payout_method_id=...`. A Basis Theory token id may be passed in place of a raw value. A validation failure returns the method's full required_fields schema alongside the error. |
41
+ | `--is_default` | `boolean` | no | `false` | Whether to make this the account's default payout method. |
42
+ | `--nickname` | `string` | yes | | A label for the payout method, unique per destination. |
43
+ | `--supported_payout_method_id` | `string` | yes | | The supported payout method to save (a podst_ identifier from a previous listing). |
44
+ | `--user_id` | `string` | no | | The user to add the payout method for (a user_ identifier). Provide this or account_id. |
45
+ | `--idempotency-key` | `string` | no | | A unique key that makes this request safe to retry. See [Idempotent requests](https://docs.whop.com/developer/api/idempotency). |
46
+
47
+ > Confirm with the user before executing this destructive command.
48
+
49
+ ---
50
+
51
+ # whop payouts delete-method
52
+
53
+ Delete Saved Payout Method
54
+
55
+ ## Arguments
56
+
57
+ | Name | Type | Required | Description |
58
+ |------|------|----------|-------------|
59
+ | `payout_method_id` | `string` | yes | Payout method ID, prefixed `potk_`. |
60
+
61
+ > Confirm with the user before executing this destructive command.
62
+
63
+ ---
64
+
65
+ # whop payouts list
66
+
67
+ List Payouts
68
+
69
+ ## Options
70
+
71
+ | Flag | Type | Required | Default | Description |
72
+ |------|------|----------|---------|-------------|
73
+ | `--account_id` | `string` | no | | The owning account ID (a biz_ identifier). Provide this or user_id. |
74
+ | `--user_id` | `string` | no | | The owning user ID (a user_ identifier). Provide this or account_id. |
75
+ | `--currency` | `string` | no | | Optional currency code filter, for example `usd`. |
76
+ | `--first` | `number` | no | `20` | Number of payouts to return from the start of the window. |
77
+ | `--after` | `string` | no | | Cursor to fetch the page after (from page_info.end_cursor). |
78
+ | `--last` | `number` | no | | Number of payouts to return from the end of the window. |
79
+ | `--before` | `string` | no | | Cursor to fetch the page before (from page_info.start_cursor). |
80
+
81
+ ---
82
+
83
+ # whop payouts methods
84
+
85
+ List Saved Payout Methods
86
+
87
+ ## Options
88
+
89
+ | Flag | Type | Required | Default | Description |
90
+ |------|------|----------|---------|-------------|
91
+ | `--account_id` | `string` | no | | The owning account ID (a biz_ identifier). Provide this or user_id. |
92
+ | `--user_id` | `string` | no | | The owning user ID (a user_ identifier). Provide this or account_id. |
93
+ | `--status` | `string` | no | | Optional status filter. `created` means saved but unused, `active` means a payout through it succeeded, `broken` means the last payout failed and the method needs fixing. |
94
+ | `--amount` | `number` | no | | Optional withdrawal amount in whole currency units, for example `250.00`. When provided, each method includes a quote with the estimated fee, amount received, and delivery date for that amount. |
95
+ | `--currency` | `string` | no | `usd` | Currency code of the amount, for example `usd`. Only meaningful with amount or include_limits. |
96
+ | `--include_limits` | `boolean` | no | `false` | When true, the response also carries limits — the live per-speed payout caps the account's payout requests are validated against, in the requested currency. Requires the payout:withdrawal:read scope. |
97
+ | `--first` | `number` | no | `20` | Number of payout methods to return from the start of the window. |
98
+ | `--after` | `string` | no | | Cursor to fetch the page after (from page_info.end_cursor). |
99
+ | `--last` | `number` | no | | Number of payout methods to return from the end of the window. |
100
+ | `--before` | `string` | no | | Cursor to fetch the page before (from page_info.start_cursor). |
101
+
102
+ ---
103
+
104
+ # whop payouts supported-methods
105
+
106
+ List Supported Payout Methods
107
+
108
+ ## Options
109
+
110
+ | Flag | Type | Required | Default | Description |
111
+ |------|------|----------|---------|-------------|
112
+ | `--account_id` | `string` | no | | The owning account ID (a biz_ identifier). Provide this or user_id. |
113
+ | `--user_id` | `string` | no | | The owning user ID (a user_ identifier). Provide this or account_id. |
114
+ | `--country` | `string` | no | | ISO 3166-1 alpha-2 country code for the bank account or wallet, such as `US`. Defaults to the payout account's country. |
115
+ | `--amount` | `number` | no | | Optional withdrawal amount in whole currency units, for example `250.00`. When provided, each destination includes per-currency fee and delivery quotes. |
116
+ | `--currency` | `string` | no | `usd` | Currency code of the amount, for example `usd`. Only meaningful with amount. |
117
+ | `--supported_payout_method_id` | `string` | no | | Narrows the list to one supported payout method (a podst_ identifier) and includes the required_fields needed to save it as a payout method. |
118
+ | `--destination_currency` | `string` | no | `usd` | Currency the supported payout method would deliver payouts in. Only meaningful with supported_payout_method_id; required fields vary by destination currency. |
119
+ | `--first` | `number` | no | `20` | Number of supported payout methods to return from the start of the window. |
120
+ | `--after` | `string` | no | | Cursor to fetch the page after (from page_info.end_cursor). |
121
+ | `--last` | `number` | no | | Number of supported payout methods to return from the end of the window. |
122
+ | `--before` | `string` | no | | Cursor to fetch the page before (from page_info.start_cursor). |
123
+
124
+ ---
125
+
126
+ # whop payouts update-method
127
+
128
+ Rename Saved Payout Method
129
+
130
+ ## Arguments
131
+
132
+ | Name | Type | Required | Description |
133
+ |------|------|----------|-------------|
134
+ | `payout_method_id` | `string` | yes | Payout method ID, prefixed `potk_`. |
135
+
136
+ ## Options
137
+
138
+ | Flag | Type | Required | Default | Description |
139
+ |------|------|----------|---------|-------------|
140
+ | `--nickname` | `string` | yes | | New label for the payout method. |
141
+
142
+ > Confirm with the user before executing this destructive command.
@@ -9,11 +9,55 @@ A Person is an identity-linked profile of a visitor or customer of an account, a
9
9
 
10
10
  Use the People API to list and segment the people of an account — filter by activity, purchases, traffic source, location, or marketing touch, and sort by value — or retrieve one person by person ID, user ID, email address, or phone number.
11
11
 
12
- ## Commands
12
+ # whop people get
13
13
 
14
- | Command | Description |
15
- |---------|-------------|
16
- | `whop people list` | List People |
17
- | `whop people get` | Retrieve Person |
14
+ Retrieve Person
18
15
 
19
- Run `whop people <command> --help` for options, or `whop people <command> --schema` for full argument details.
16
+ ## Arguments
17
+
18
+ | Name | Type | Required | Description |
19
+ |------|------|----------|-------------|
20
+ | `person_id` | `string` | yes | The person ID, user ID, email address, or phone number to look up. |
21
+
22
+ ## Options
23
+
24
+ | Flag | Type | Required | Default | Description |
25
+ |------|------|----------|---------|-------------|
26
+ | `--account_id` | `string` | no | | Account ID, prefixed `biz_`. Optional for account API keys; required for credentials that can access multiple accounts. |
27
+
28
+ ---
29
+
30
+ # whop people list
31
+
32
+ List People
33
+
34
+ ## Options
35
+
36
+ | Flag | Type | Required | Default | Description |
37
+ |------|------|----------|---------|-------------|
38
+ | `--account_id` | `string` | no | | Account ID, prefixed `biz_`. Optional for account API keys; required for credentials that can access multiple accounts. |
39
+ | `--query` | `string` | no | | Search people by name, email, phone, or whop user ID (case-insensitive substring match). |
40
+ | `--source` | `array` | no | | Only include people acquired from any of these sources — canonical paths (whop:<campaign>:<group>:<ad>, ext:<platform>:..., referrer:<domain>, direct, other), exact or with a trailing :* prefix. The same vocabulary the events / people metrics use. |
41
+ | `--attribution_model` | `string` | no | | Attribution model the source filter matches against (defaults to last_touch). |
42
+ | `--event_name` | `array` | no | | Only include people who fired any of these events, e.g. payment.completed or page.checkout.view. |
43
+ | `--custom_event` | `string` | no | | Only include people who fired this custom pixel event. |
44
+ | `--event_from` | `string` | no | | With event_to plus an event or source filter, switches to exact-population mode: person ids are resolved and paginated on the events side within this window (the same query the people metric counts), then hydrated per page. |
45
+ | `--event_to` | `string` | no | | The inclusive end of the event window for exact-population mode. |
46
+ | `--audience_id` | `string` | no | | Only include people in this audience. An audience that keeps itself up to date resolves to the People filters that define it, so this always reflects who matches now; uploaded lists and point-in-time snapshots match their recorded members. |
47
+ | `--user_id` | `string` | no | | Only include the person linked to this whop user ID. |
48
+ | `--email` | `string` | no | | Only include the person linked to this email address. |
49
+ | `--phone` | `string` | no | | Only include the person linked to this phone number. |
50
+ | `--country` | `string` | no | | Only include people whose most recent visit came from this ISO 3166-1 alpha-2 country code. |
51
+ | `--has_purchased` | `boolean` | no | | true for customers only, false for people who have never purchased. |
52
+ | `--contactable` | `boolean` | no | | true for people who have an email address or phone number — the ones an ad platform can match. |
53
+ | `--first_seen_within_days` | `number` | no | | Only include people first seen within this many days, as a rolling window. |
54
+ | `--last_seen_within_days` | `number` | no | | Only include people last seen within this many days, as a rolling window. |
55
+ | `--first_seen_after` | `string` | no | | Only include people first seen at or after this ISO 8601 timestamp. |
56
+ | `--first_seen_before` | `string` | no | | Only include people first seen before this ISO 8601 timestamp. |
57
+ | `--last_seen_after` | `string` | no | | Only include people last seen at or after this ISO 8601 timestamp. |
58
+ | `--last_seen_before` | `string` | no | | Only include people last seen before this ISO 8601 timestamp. |
59
+ | `--first` | `number` | no | | The number of people to return (default 100, max 100). |
60
+ | `--after` | `string` | no | | A cursor for fetching people after a previous page. |
61
+ | `--before` | `string` | no | | A cursor for fetching people before a later page. |
62
+ | `--order` | `string` | no | | Column to sort by. Defaults to last_seen_at. |
63
+ | `--direction` | `string` | no | | Sort direction. Defaults to desc. |
@@ -9,10 +9,13 @@ A Permission is one action, such as `stats:read`, paired with whether your crede
9
9
 
10
10
  Use the Permissions API to check an account, product, experience, or app, narrowing to the actions you care about. It reports only your own access — to manage who else can reach an account, use the Team Members API.
11
11
 
12
- ## Commands
12
+ # whop permissions check
13
13
 
14
- | Command | Description |
15
- |---------|-------------|
16
- | `whop permissions check` | Check Permissions |
14
+ Check Permissions
17
15
 
18
- Run `whop permissions <command> --help` for options, or `whop permissions <command> --schema` for full argument details.
16
+ ## Options
17
+
18
+ | Flag | Type | Required | Default | Description |
19
+ |------|------|----------|---------|-------------|
20
+ | `--resource_id` | `string` | yes | | Tag of the resource to check against: an account (`biz_`), product (`prod_`), experience (`exp_`), or app (`app_`). A resource the credential cannot see is reported as granted nothing rather than as an error. |
21
+ | `--actions` | `string` | no | | Comma-separated permission actions to check, for example `stats:read,payment:basic:read`. Every action is returned when omitted. |
@@ -9,15 +9,155 @@ A Plan defines how customers buy a product. It controls pricing, billing cadence
9
9
 
10
10
  Use the Plans API to create plans for products, list existing plans, retrieve or update plan configuration, calculate tax for checkout, and delete plans that should no longer be offered.
11
11
 
12
- ## Commands
13
-
14
- | Command | Description |
15
- |---------|-------------|
16
- | `whop plans list` | List Plans |
17
- | `whop plans create` | Create Plan |
18
- | `whop plans delete` | Delete Plan |
19
- | `whop plans get` | Retrieve Plan |
20
- | `whop plans update` | Update Plan |
21
- | `whop plans calculate_tax` | Calculate Tax |
22
-
23
- Run `whop plans <command> --help` for options, or `whop plans <command> --schema` for full argument details.
12
+ # whop plans calculate_tax
13
+
14
+ Calculate Tax
15
+
16
+ ## Arguments
17
+
18
+ | Name | Type | Required | Description |
19
+ |------|------|----------|-------------|
20
+ | `id` | `string` | yes | Plan ID, prefixed `plan_`. |
21
+
22
+ ## Options
23
+
24
+ | Flag | Type | Required | Default | Description |
25
+ |------|------|----------|---------|-------------|
26
+ | `--address` | `unknown` | no | | Buyer billing address used for tax calculation. Provide either `address.country` or `ip_address`; include state and postal code when available for more accurate results. |
27
+ | `--ip_address` | `string` | no | | Buyer IP address used to infer location when no billing address is provided. |
28
+ | `--tax_ids` | `unknown` | no | | Optional buyer tax ID for B2B exemptions. At most one entry is supported. |
29
+ | `--idempotency-key` | `string` | no | | A unique key that makes this request safe to retry. See [Idempotent requests](https://docs.whop.com/developer/api/idempotency). |
30
+
31
+ > Confirm with the user before executing this destructive command.
32
+
33
+ ---
34
+
35
+ # whop plans create
36
+
37
+ Create Plan
38
+
39
+ ## Options
40
+
41
+ | Flag | Type | Required | Default | Description |
42
+ |------|------|----------|---------|-------------|
43
+ | `--account_id` | `string` | no | | The unique identifier of the account to create this plan for. Defaults to the caller's account. |
44
+ | `--adaptive_pricing_enabled` | `boolean` | no | | Whether this plan accepts local currency payments via adaptive pricing. |
45
+ | `--billing_period` | `number` | no | | Recurring billing interval in days, such as 30 for monthly or 365 for annual. |
46
+ | `--checkout_styling` | `unknown` | no | | Checkout styling overrides for this plan. |
47
+ | `--currency` | `string` | no | | The three-letter ISO currency code for the plan's pricing. Defaults to USD. |
48
+ | `--custom_fields` | `unknown` | no | | An array of custom field definitions to collect from customers at checkout. Omitting this field clears existing custom fields. |
49
+ | `--description` | `unknown` | no | | A text description of the plan displayed to customers on the product page. |
50
+ | `--expiration_days` | `number` | no | | Access duration in days before the membership expires. |
51
+ | `--image` | `unknown` | no | | An image displayed on the product page to represent this plan. |
52
+ | `--initial_price` | `number` | no | | Initial amount charged in the plan's currency, e.g. 10.43 for $10.43. |
53
+ | `--internal_notes` | `unknown` | no | | Private notes visible only to the account owner. Not shown to customers. |
54
+ | `--metadata` | `unknown` | no | | Custom key-value pairs to store on the plan. Included in webhook payloads for payment and membership events. Max 50 keys, 100 chars per key, 500 chars per string value. |
55
+ | `--override_tax_type` | `string` | no | | Override the default tax classification for this specific plan. |
56
+ | `--payment_method_configuration` | `unknown` | no | | Explicit payment method configuration for the plan. When not provided, the account's defaults apply. |
57
+ | `--plan_type` | `string` | no | | Plan billing type, such as `one_time` or `renewal`. |
58
+ | `--product_id` | `string` | no | | The unique identifier of the product to attach this plan to. |
59
+ | `--release_method` | `string` | no | | Sales method for this plan. |
60
+ | `--renewal_price` | `number` | no | | The amount charged each billing period for recurring plans, in the plan's currency. |
61
+ | `--split_pay_required_payments` | `number` | no | | Installment payments required before the subscription pauses. |
62
+ | `--stock` | `number` | no | | The maximum number of units available for purchase. Ignored when unlimited_stock is true. |
63
+ | `--three_ds_level` | `string` | no | | 3D Secure behavior for this plan. Send `null` to inherit the account default. |
64
+ | `--title` | `unknown` | no | | The display name of the plan shown to customers on the product page. |
65
+ | `--trial_period_days` | `number` | no | | Free trial duration before the first recurring charge. |
66
+ | `--unlimited_stock` | `boolean` | no | | Whether the plan has unlimited stock. When true, the stock field is ignored. |
67
+ | `--visibility` | `string` | no | | Whether the plan is visible to customers or hidden from public view. |
68
+ | `--idempotency-key` | `string` | no | | A unique key that makes this request safe to retry. See [Idempotent requests](https://docs.whop.com/developer/api/idempotency). |
69
+
70
+ > Confirm with the user before executing this destructive command.
71
+
72
+ ---
73
+
74
+ # whop plans delete
75
+
76
+ Delete Plan
77
+
78
+ ## Arguments
79
+
80
+ | Name | Type | Required | Description |
81
+ |------|------|----------|-------------|
82
+ | `id` | `string` | yes | Plan ID, prefixed `plan_`. |
83
+
84
+ > Confirm with the user before executing this destructive command.
85
+
86
+ ---
87
+
88
+ # whop plans get
89
+
90
+ Retrieve Plan
91
+
92
+ ## Arguments
93
+
94
+ | Name | Type | Required | Description |
95
+ |------|------|----------|-------------|
96
+ | `id` | `string` | yes | Plan ID, prefixed `plan_`. |
97
+
98
+ ---
99
+
100
+ # whop plans list
101
+
102
+ List Plans
103
+
104
+ ## Options
105
+
106
+ | Flag | Type | Required | Default | Description |
107
+ |------|------|----------|---------|-------------|
108
+ | `--account_id` | `string` | no | | The unique identifier of the account to list plans for. |
109
+ | `--direction` | `string` | no | | The sort direction for results. Defaults to descending. |
110
+ | `--order` | `string` | no | | The field to sort results by. Defaults to created_at. |
111
+ | `--release_methods` | `array` | no | | Filter to only plans matching these release methods. |
112
+ | `--visibilities` | `array` | no | | Filter to only plans matching these visibility states. |
113
+ | `--plan_types` | `array` | no | | Filter to only plans matching these billing types. |
114
+ | `--product_ids` | `array` | no | | Filter to only plans belonging to these product identifiers. |
115
+ | `--created_before` | `string` | no | | Only return plans created before this timestamp. |
116
+ | `--created_after` | `string` | no | | Only return plans created after this timestamp. |
117
+ | `--first` | `number` | no | | The number of plans to return (default and max 100). |
118
+ | `--after` | `string` | no | | A cursor; returns plans after this position. |
119
+ | `--last` | `number` | no | | The number of plans to return from the end of the range. |
120
+ | `--before` | `string` | no | | A cursor; returns plans before this position. |
121
+
122
+ ---
123
+
124
+ # whop plans update
125
+
126
+ Update Plan
127
+
128
+ ## Arguments
129
+
130
+ | Name | Type | Required | Description |
131
+ |------|------|----------|-------------|
132
+ | `id` | `string` | yes | Plan ID, prefixed `plan_`. |
133
+
134
+ ## Options
135
+
136
+ | Flag | Type | Required | Default | Description |
137
+ |------|------|----------|---------|-------------|
138
+ | `--adaptive_pricing_enabled` | `boolean` | no | | Whether this plan accepts local currency payments via adaptive pricing. |
139
+ | `--billing_period` | `number` | no | | Recurring billing interval in days, such as 30 for monthly or 365 for annual. |
140
+ | `--checkout_styling` | `unknown` | no | | Checkout styling overrides for this plan. |
141
+ | `--currency` | `string` | no | | The three-letter ISO currency code for the plan's pricing. Defaults to USD. |
142
+ | `--custom_fields` | `unknown` | no | | An array of custom field definitions to collect from customers at checkout. Omitting this field clears existing custom fields. |
143
+ | `--description` | `unknown` | no | | A text description of the plan displayed to customers on the product page. |
144
+ | `--expiration_days` | `number` | no | | Access duration in days before the membership expires. |
145
+ | `--image` | `unknown` | no | | An image displayed on the product page to represent this plan. |
146
+ | `--initial_price` | `number` | no | | Initial amount charged in the plan's currency, e.g. 10.43 for $10.43. |
147
+ | `--internal_notes` | `unknown` | no | | Private notes visible only to the account owner. Not shown to customers. |
148
+ | `--metadata` | `unknown` | no | | Custom key-value pairs to store on the plan. Included in webhook payloads for payment and membership events. Max 50 keys, 100 chars per key, 500 chars per string value. |
149
+ | `--offer_cancel_discount` | `boolean` | no | | Whether to offer a retention discount when a customer attempts to cancel. |
150
+ | `--override_tax_type` | `string` | no | | Override the default tax classification for this specific plan. |
151
+ | `--payment_method_configuration` | `unknown` | no | | Explicit payment method configuration for the plan. When not provided, the account's defaults apply. |
152
+ | `--release_method` | `string` | no | | Sales method for this plan. |
153
+ | `--renewal_price` | `number` | no | | The amount charged each billing period for recurring plans, in the plan's currency. |
154
+ | `--stock` | `number` | no | | The maximum number of units available for purchase. Ignored when unlimited_stock is true. |
155
+ | `--strike_through_initial_price` | `number` | no | | A comparison price displayed with a strikethrough for the initial price. |
156
+ | `--strike_through_renewal_price` | `number` | no | | A comparison price displayed with a strikethrough for the renewal price. |
157
+ | `--three_ds_level` | `string` | no | | 3D Secure behavior for this plan. Send `null` to inherit the account default. |
158
+ | `--title` | `unknown` | no | | The display name of the plan shown to customers on the product page. |
159
+ | `--trial_period_days` | `number` | no | | Free trial duration before the first recurring charge. |
160
+ | `--unlimited_stock` | `boolean` | no | | Whether the plan has unlimited stock. When true, the stock field is ignored. |
161
+ | `--visibility` | `string` | no | | Whether the plan is visible to customers or hidden from public view. |
162
+
163
+ > Confirm with the user before executing this destructive command.