@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
@@ -9,12 +9,334 @@ An Export is an asynchronous CSV of one resource for one account — members, pa
9
9
 
10
10
  Use the Exports API to start an export, poll it until `download_url` is set, and list the exports already requested for an account. Finished CSVs are retained for 30 days, after which the file is deleted and the export moves to `expired`.
11
11
 
12
- ## Commands
12
+ # whop exports create
13
13
 
14
- | Command | Description |
15
- |---------|-------------|
16
- | `whop exports list` | List Exports |
17
- | `whop exports create` | Create Export |
18
- | `whop exports get` | Retrieve Export |
14
+ Create Export
19
15
 
20
- Run `whop exports <command> --help` for options, or `whop exports <command> --schema` for full argument details.
16
+ ## Options
17
+
18
+ | Flag | Type | Required | Default | Description |
19
+ |------|------|----------|---------|-------------|
20
+ | `--account_id` | `string` | no | | The account to export from, prefixed `biz_`. Defaults to the credential's account. |
21
+ | `--columns` | `array` | no | | Column keys to include. Empty means all columns for the resource. |
22
+ | `--filters` | `object` | no | | Resource-specific filters. For native REST resources (`payouts`, `transfers`, `memberships`) these are the resource's own list query params; for dashboard tables they mirror the dashboard table filters.
23
+
24
+ <details>
25
+ <summary>Filters by resource (22)</summary>
26
+
27
+ <details>
28
+ <summary>ad_campaigns (4)</summary>
29
+
30
+ Mirrors the filtering query params of `GET /api/v1/ad_campaigns`.
31
+
32
+ - `created_after` `string` — Only return campaigns created after this timestamp.
33
+ - `created_before` `string` — Only return campaigns created before this timestamp.
34
+ - `query` `string` — Filter campaigns by a title or ID substring.
35
+ - `status` `string` — Only return campaigns with this status. One of `draft`, `active`, `paused`, `payment_failed`.
36
+
37
+ </details>
38
+ <details>
39
+ <summary>ad_groups (6)</summary>
40
+
41
+ Mirrors the filtering query params of `GET /api/v1/ad_groups`.
42
+
43
+ - `ad_campaign_id` `string` — Filter to ad groups in this campaign.
44
+ - `ad_campaign_ids` `string[]` — Filter to ad groups in these campaigns (max 100). Repeat the parameter for each id (ad_campaign_ids=a&ad_campaign_ids=b).
45
+ - `created_after` `string` — Only return ad groups created after this timestamp.
46
+ - `created_before` `string` — Only return ad groups created before this timestamp.
47
+ - `query` `string` — Filter ad groups by a title or ID substring.
48
+ - `status` `string` — Filter to ad groups with this status. One of `active`, `paused`, `rejected`, `duplicating`.
49
+
50
+ </details>
51
+ <details>
52
+ <summary>ads (8)</summary>
53
+
54
+ Mirrors the filtering query params of `GET /api/v1/ads`.
55
+
56
+ - `ad_campaign_id` `string` — Only return ads in this ad campaign.
57
+ - `ad_campaign_ids` `string[]` — Only return ads in these ad campaigns (max 100). Repeat the parameter for each id (ad_campaign_ids=a&ad_campaign_ids=b).
58
+ - `ad_group_id` `string` — Only return ads in this ad group.
59
+ - `ad_group_ids` `string[]` — Only return ads in these ad groups (max 100). Repeat the parameter for each id (ad_group_ids=a&ad_group_ids=b).
60
+ - `created_after` `string` — Only return ads created after this timestamp.
61
+ - `created_before` `string` — Only return ads created before this timestamp.
62
+ - `query` `string` — Filter ads by a title or ID substring.
63
+ - `status` `string` — Only return ads with this status. One of `active`, `paused`, `in_review`, `rejected`.
64
+
65
+ </details>
66
+ <details>
67
+ <summary>audiences (3)</summary>
68
+
69
+ Mirrors the filtering query params of `GET /api/v1/audiences`.
70
+
71
+ - `audience_id` `string` — Audience ID, prefixed `adaud_`, used to filter the response to one audience.
72
+ - `audience_type` `string` — Filter by audience type: `custom` (uploaded lists) or `lookalike`. One of `custom`, `lookalike`.
73
+ - `source_type` `string` — Filter by member source: `csv_upload` (uploaded lists) or `people_filter` (automatic audiences built from saved People filters). One of `csv_upload`, `people_filter`.
74
+
75
+ </details>
76
+ <details>
77
+ <summary>bounties (5)</summary>
78
+
79
+ Mirrors the filtering query params of `GET /api/v1/bounties`.
80
+
81
+ - `created_after` `string` — Only bounties created after this ISO 8601 timestamp.
82
+ - `created_before` `string` — Only bounties created before this ISO 8601 timestamp.
83
+ - `query` `string` — Substring match on the bounty title or ID.
84
+ - `status` `string` — Filter by lifecycle state. One of `scheduled`, `open`, `closed`, `completed`, `canceled`.
85
+ - `user_id` `string` — List the bounties this user participated in (`user_` tag). Must be the authenticated user.
86
+
87
+ </details>
88
+ <details>
89
+ <summary>bounty_submissions (4)</summary>
90
+
91
+ Mirrors the filtering query params of `GET /api/v1/bounty_submissions`.
92
+
93
+ - `bounty_id` `string` — Only submissions on this bounty (`bnty_` tag).
94
+ - `created_after` `string` — Only submissions created after this ISO 8601 timestamp.
95
+ - `created_before` `string` — Only submissions created before this ISO 8601 timestamp.
96
+ - `status` `string` — Filter by lifecycle state. One of `in_progress`, `submitted`, `approved`, `denied`.
97
+
98
+ </details>
99
+ <details>
100
+ <summary>disputes (4)</summary>
101
+
102
+ Mirrors the filtering query params of `GET /api/v1/disputes`.
103
+
104
+ - `created_after` `string` — Only disputes opened after this ISO 8601 timestamp.
105
+ - `created_before` `string` — Only disputes opened before this ISO 8601 timestamp.
106
+ - `currency` `string` — Only disputes in this three-letter ISO currency.
107
+ - `status` `string[]` — Only disputes in these statuses. Repeat the parameter to pass several — one paginated list covers all of them. Covers both chargebacks and inquiries at each stage.
108
+
109
+ </details>
110
+ <details>
111
+ <summary>events (14)</summary>
112
+
113
+ Mirrors the filtering query params of `GET /api/v1/events`.
114
+
115
+ - `attribution_model` `string` — Attribution model for the source filter (defaults to last_touch). One of `last_touch`, `first_touch`.
116
+ - `browser` `string` — Browser families to filter by, comma-separated (e.g. Chrome, Mobile Safari).
117
+ - `city` `string` — Cities to filter by, comma-separated.
118
+ - `country` `string` — Country codes to filter by, comma-separated.
119
+ - `device` `string` — Device families to filter by, comma-separated (e.g. iPhone, Mac).
120
+ - `event` `string` — Full event names to filter by, comma-separated (payment.completed, pixel.lead, pixel.page, pixel.custom:<name>) — the same vocabulary the events / people metrics use.
121
+ - `from` `string` — Start of the time range as an ISO 8601 timestamp. Required when identifier is omitted.
122
+ - `hostname` `string` — Page hostnames to filter by, comma-separated.
123
+ - `identifier` `string` — Any hard identifier of the person: a person ID (prsn_*), user ID, email, phone number, or a tracking cookie value (wuid, anonymous ID, fbp/fbc/ttp/ga). Omit to list recent events for the account.
124
+ - `os` `string` — Operating system families to filter by, comma-separated (e.g. iOS, Windows).
125
+ - `page` `string` — Page paths to filter by, comma-separated.
126
+ - `source` `string` — Canonical source path, exact or with a trailing :* prefix (whop:<campaign>:*, ext:meta:*, referrer:<domain>, direct). Restricts the list to conversion targets attributed to that source — the debuggability twin of a metric cell's source parameter.
127
+ - `to` `string` — End of the time range as an ISO 8601 timestamp. Required when identifier is omitted; otherwise defaults to now.
128
+ - `utm_source` `string` — utm_source values to filter by, comma-separated.
129
+
130
+ </details>
131
+ <details>
132
+ <summary>financial-activity (8)</summary>
133
+
134
+ Mirrors the filtering query params of `GET /api/v1/financial-activity`.
135
+
136
+ - `available_after` `string` — Only include rows whose funds became withdrawable on or after this `YYYY-MM-DD` settlement date (UTC), distinct from posted_at. Requires currency.
137
+ - `available_before` `string` — Only include rows whose funds became withdrawable on or before this `YYYY-MM-DD` settlement date (UTC). Set equal to available_after for a single day. Requires currency.
138
+ - `currency` `string` — Optional currency code filter, for example `usd`.
139
+ - `include_owned_accounts` `boolean` — When true, aggregates the authenticated user's personal ledger with the businesses they own (owner role with balance read) into one feed. Requires user_id to be the authenticated user; cannot be combined with account_id or the settlement-date filters. Each returned row includes the owning `account`.
140
+ - `line_types` `string[]` — Optional ledger line categories to include. Some categories (for example `onchain_deposit`, which covers inbound crypto deposits such as MoonPay onramps) are only returned when explicitly requested here.
141
+ - `posted_after` `string` — Only include rows posted after this ISO 8601 timestamp.
142
+ - `posted_before` `string` — Only include rows posted before this ISO 8601 timestamp.
143
+ - `user_id` `string` — The owning user ID (a user_ identifier). Provide this or account_id.
144
+
145
+ </details>
146
+ <details>
147
+ <summary>members (5)</summary>
148
+
149
+ Mirrors the filtering query params of `GET /api/v1/members`.
150
+
151
+ - `access_level` `string` — Filter by what the member can reach on the account. One of `no_access`, `admin`, `customer`.
152
+ - `created_after` `string` — Only members who joined after this ISO 8601 timestamp.
153
+ - `created_before` `string` — Only members who joined before this ISO 8601 timestamp.
154
+ - `query` `string` — Search members by name or username. An exact email address also matches when the credential holds the member:email:read scope.
155
+ - `status` `string` — Filter by whether the member is still part of the account. One of `joined`, `left`.
156
+
157
+ </details>
158
+ <details>
159
+ <summary>memberships (6)</summary>
160
+
161
+ Mirrors the filtering query params of `GET /api/v1/memberships`.
162
+
163
+ - `created_after` `string` — Only memberships created after this ISO 8601 timestamp.
164
+ - `created_before` `string` — Only memberships created before this ISO 8601 timestamp.
165
+ - `plan_id` `string` — Filter to memberships of this plan (`plan_` tag). Repeat as plan_ids[] for several.
166
+ - `product_id` `string` — Filter to memberships of this product (`prod_` tag). Repeat as product_ids[] for several.
167
+ - `status` `string` — Filter by billing state. `canceling` matches active memberships set to cancel at period end; `paused` matches memberships with payment collection paused. One of `active`, `trialing`, `past_due`, `completed`, `canceled`, `expired`, `canceling`, `paused`.
168
+ - `user_id` `string` — 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.
169
+
170
+ </details>
171
+ <details>
172
+ <summary>payouts (2)</summary>
173
+
174
+ Mirrors the filtering query params of `GET /api/v1/payouts`.
175
+
176
+ - `currency` `string` — Optional currency code filter, for example `usd`.
177
+ - `user_id` `string` — The owning user ID (a user_ identifier). Provide this or account_id.
178
+
179
+ </details>
180
+ <details>
181
+ <summary>people (20)</summary>
182
+
183
+ Mirrors the filtering query params of `GET /api/v1/people`.
184
+
185
+ - `attribution_model` `string` — Attribution model the source filter matches against (defaults to last_touch). One of `last_touch`, `first_touch`.
186
+ - `audience_id` `string` — 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.
187
+ - `contactable` `boolean` — true for people who have an email address or phone number — the ones an ad platform can match.
188
+ - `country` `string` — Only include people whose most recent visit came from this ISO 3166-1 alpha-2 country code.
189
+ - `custom_event` `string` — Only include people who fired this custom pixel event.
190
+ - `email` `string` — Only include the person linked to this email address.
191
+ - `event_from` `string` — 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.
192
+ - `event_name` `string[]` — Only include people who fired any of these events, e.g. payment.completed or page.checkout.view.
193
+ - `event_to` `string` — The inclusive end of the event window for exact-population mode.
194
+ - `first_seen_after` `string` — Only include people first seen at or after this ISO 8601 timestamp.
195
+ - `first_seen_before` `string` — Only include people first seen before this ISO 8601 timestamp.
196
+ - `first_seen_within_days` `integer` — Only include people first seen within this many days, as a rolling window.
197
+ - `has_purchased` `boolean` — true for customers only, false for people who have never purchased.
198
+ - `last_seen_after` `string` — Only include people last seen at or after this ISO 8601 timestamp.
199
+ - `last_seen_before` `string` — Only include people last seen before this ISO 8601 timestamp.
200
+ - `last_seen_within_days` `integer` — Only include people last seen within this many days, as a rolling window.
201
+ - `phone` `string` — Only include the person linked to this phone number.
202
+ - `query` `string` — Search people by name, email, phone, or whop user ID (case-insensitive substring match).
203
+ - `source` `string[]` — 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.
204
+ - `user_id` `string` — Only include the person linked to this whop user ID.
205
+
206
+ </details>
207
+ <details>
208
+ <summary>plans (6)</summary>
209
+
210
+ Mirrors the filtering query params of `GET /api/v1/plans`.
211
+
212
+ - `created_after` `string` — Only return plans created after this timestamp.
213
+ - `created_before` `string` — Only return plans created before this timestamp.
214
+ - `plan_types` `string[]` — Filter to only plans matching these billing types.
215
+ - `product_ids` `string[]` — Filter to only plans belonging to these product identifiers.
216
+ - `release_methods` `string[]` — Filter to only plans matching these release methods.
217
+ - `visibilities` `string[]` — Filter to only plans matching these visibility states.
218
+
219
+ </details>
220
+ <details>
221
+ <summary>products (2)</summary>
222
+
223
+ Mirrors the filtering query params of `GET /api/v1/products`.
224
+
225
+ - `access_pass_types` `string[]` — Filter to only products matching these types.
226
+ - `visibilities` `string[]` — Filter to only products matching these visibility states.
227
+
228
+ </details>
229
+ <details>
230
+ <summary>promo_codes (5)</summary>
231
+
232
+ Mirrors the filtering query params of `GET /api/v1/promo_codes`.
233
+
234
+ - `created_after` `string` — Only promo codes created after this ISO 8601 timestamp.
235
+ - `created_before` `string` — Only promo codes created before this ISO 8601 timestamp.
236
+ - `plan_ids` `string[]` — Only promo codes scoped to these plan IDs.
237
+ - `product_ids` `string[]` — Only promo codes scoped to these product IDs.
238
+ - `status` `string` — Promo-code status. `expired` groups inactive and archived codes. One of `active`, `inactive`, `archived`, `expired`.
239
+
240
+ </details>
241
+ <details>
242
+ <summary>resolution_center_cases (6)</summary>
243
+
244
+ Mirrors the filtering query params of `GET /api/v1/resolution_center_cases`.
245
+
246
+ - `created_after` `string` — Only cases created after this ISO 8601 timestamp.
247
+ - `created_before` `string` — Only cases created before this ISO 8601 timestamp.
248
+ - `outcome` `string[]` — Only closed cases that ended these ways. Repeat the parameter to pass several.
249
+ - `reason` `string[]` — Only cases opened for these reasons. Repeat the parameter to pass several.
250
+ - `status` `string[]` — Only cases in these statuses. Repeat the parameter to pass several — one paginated list covers all of them.
251
+ - `user_id` `string` — Only cases opened by this customer — a `user_` tag, or `me` for the calling user. It narrows what you can already read, so `me` lists the cases you opened without the ones on accounts you are a team member of.
252
+
253
+ </details>
254
+ <details>
255
+ <summary>shipments (4)</summary>
256
+
257
+ Mirrors the filtering query params of `GET /api/v1/shipments`.
258
+
259
+ - `created_after` `string` — Return shipments created after this ISO 8601 timestamp.
260
+ - `created_before` `string` — Return shipments created before this ISO 8601 timestamp.
261
+ - `payment_id` `string[]` — Only shipments fulfilling these payments, each prefixed `pay_`. Repeat the parameter to pass several, up to 100 per request — one paginated list covers all of them.
262
+ - `status` `string` — Filter to shipments with this delivery status. One of `unknown`, `pre_transit`, `in_transit`, `out_for_delivery`, `delivered`, `available_for_pickup`, `return_to_sender`, `failure`, `cancelled`, `error`.
263
+
264
+ </details>
265
+ <details>
266
+ <summary>social_accounts (4)</summary>
267
+
268
+ Mirrors the filtering query params of `GET /api/v1/social_accounts`.
269
+
270
+ - `platform` `string` — Only return social accounts for the platform that is specified. One of `x`, `instagram`, `youtube`, `tiktok`, `facebook`, `discord`, `telegram`.
271
+ - `scopes` `string[]` — Only return social accounts that have these scopes.
272
+ - `user_id` `string` — The User that the social accounts are connected to. Provide either this or account_id.
273
+ - `verified` `boolean` — Only return social accounts that are verified on the platform.
274
+
275
+ </details>
276
+ <details>
277
+ <summary>team_members (5)</summary>
278
+
279
+ Mirrors the filtering query params of `GET /api/v1/team_members`.
280
+
281
+ - `created_after` `string` — Only return members added after this ISO 8601 timestamp.
282
+ - `created_before` `string` — Only return members added before this ISO 8601 timestamp.
283
+ - `role` `string` — Only return members with this role. `custom` matches members on a dashboard-managed custom role. One of `owner`, `admin`, `sales_manager`, `moderator`, `advertiser`, `app_manager`, `support`, `manager`, `custom`.
284
+ - `status` `string` — Only return members with this status: `joined` (accepted members) or `pending` (pending invites). Both are returned by default. One of `joined`, `pending`.
285
+ - `user_id` `string` — Only return the membership for this user ID, prefixed `user_`.
286
+
287
+ </details>
288
+ <details>
289
+ <summary>transfers (4)</summary>
290
+
291
+ Mirrors the filtering query params of `GET /api/v1/transfers`.
292
+
293
+ - `created_after` `string` — Only transfers created strictly after this ISO 8601 timestamp.
294
+ - `created_before` `string` — Only transfers created strictly before this ISO 8601 timestamp.
295
+ - `destination_id` `string` — Filter to transfers received by this account. Provide this or origin_id.
296
+ - `origin_id` `string` — Filter to transfers sent from this account. Provide this or destination_id.
297
+
298
+ </details>
299
+ <details>
300
+ <summary>webhooks (1)</summary>
301
+
302
+ Mirrors the filtering query params of `GET /api/v1/webhooks`.
303
+
304
+ - `app_id` `string` — Only return webhooks attached to this app. Omit to list the account's own webhooks.
305
+
306
+ </details>
307
+ </details> |
308
+ | `--resource` | `string` | yes | | The resource to export, e.g. `payouts`, `receipts`, or `members`. |
309
+ | `--timezone` | `string` | no | | IANA timezone for date columns, e.g. `America/New_York`. Defaults to `UTC`. |
310
+ | `--idempotency-key` | `string` | no | | A unique key that makes this request safe to retry. See [Idempotent requests](https://docs.whop.com/developer/api/idempotency). |
311
+
312
+ > Confirm with the user before executing this destructive command.
313
+
314
+ ---
315
+
316
+ # whop exports get
317
+
318
+ Retrieve Export
319
+
320
+ ## Arguments
321
+
322
+ | Name | Type | Required | Description |
323
+ |------|------|----------|-------------|
324
+ | `id` | `string` | yes | The export ID, prefixed `exprt_`. |
325
+
326
+ ---
327
+
328
+ # whop exports list
329
+
330
+ List Exports
331
+
332
+ ## Options
333
+
334
+ | Flag | Type | Required | Default | Description |
335
+ |------|------|----------|---------|-------------|
336
+ | `--account_id` | `string` | no | | The account to list exports for, prefixed `biz_`. Defaults to the credential's account. |
337
+ | `--resource` | `string` | no | | Only return exports of this resource. |
338
+ | `--status` | `string` | no | | Only return exports in this status. |
339
+ | `--created_after` | `string` | no | | Only return exports created at or after this ISO 8601 timestamp. |
340
+ | `--created_before` | `string` | no | | Only return exports created at or before this ISO 8601 timestamp. |
341
+ | `--order` | `string` | no | | The field to sort by. |
342
+ | `--direction` | `string` | no | | The sort direction. |
@@ -9,11 +9,43 @@ A Ledger Activity row is a single financial event on an account's ledger — a p
9
9
 
10
10
  Use Ledger Activity to build a statement or transaction feed for an account or user. Reconcile against your own records with `amount` (signed, in the currency's smallest precision units) and `posted_at`, and use `available_at` to know when inflows became withdrawable.
11
11
 
12
- ## Commands
12
+ # whop ledgers list
13
13
 
14
- | Command | Description |
15
- |---------|-------------|
16
- | `whop ledgers list` | List Financial Activity |
17
- | `whop ledgers report` | Get Financial Report |
14
+ List Financial Activity
18
15
 
19
- Run `whop ledgers <command> --help` for options, or `whop ledgers <command> --schema` for full argument details.
16
+ ## Options
17
+
18
+ | Flag | Type | Required | Default | Description |
19
+ |------|------|----------|---------|-------------|
20
+ | `--account_id` | `string` | no | | The owning account ID (a biz_ identifier). Provide this or user_id. |
21
+ | `--user_id` | `string` | no | | The owning user ID (a user_ identifier). Provide this or account_id. |
22
+ | `--include_owned_accounts` | `boolean` | no | | When true, aggregates the authenticated user's personal ledger with the businesses they own (owner role with balance read) into one feed. Requires user_id to be the authenticated user; cannot be combined with account_id or the settlement-date filters. Each returned row includes the owning `account`. |
23
+ | `--line_types` | `array` | no | | Optional ledger line categories to include. Some categories (for example `onchain_deposit`, which covers inbound crypto deposits such as MoonPay onramps) are only returned when explicitly requested here. |
24
+ | `--currency` | `string` | no | | Optional currency code filter, for example `usd`. |
25
+ | `--posted_after` | `string` | no | | Only include rows posted after this ISO 8601 timestamp. |
26
+ | `--posted_before` | `string` | no | | Only include rows posted before this ISO 8601 timestamp. |
27
+ | `--available_after` | `string` | no | | Only include rows whose funds became withdrawable on or after this `YYYY-MM-DD` settlement date (UTC), distinct from posted_at. Requires currency. |
28
+ | `--available_before` | `string` | no | | Only include rows whose funds became withdrawable on or before this `YYYY-MM-DD` settlement date (UTC). Set equal to available_after for a single day. Requires currency. |
29
+ | `--limit` | `number` | no | `20` | Maximum number of rows to return. |
30
+ | `--cursor` | `string` | no | | Cursor returned by the previous page. |
31
+
32
+ ---
33
+
34
+ # whop ledgers report
35
+
36
+ Get Financial Report
37
+
38
+ ## Options
39
+
40
+ | Flag | Type | Required | Default | Description |
41
+ |------|------|----------|---------|-------------|
42
+ | `--account_id` | `string` | no | | The owning account ID (a biz_ identifier), or `global` for a platform-wide report across all ledger accounts (requires internal admin access). |
43
+ | `--report_type` | `string` | yes | | The type of financial report to generate. |
44
+ | `--currency` | `string` | no | | Filter rows to this currency, for example `usd`. Defaults to `usd` unless `in_currency` is provided. |
45
+ | `--in_currency` | `string` | no | | Aggregate all activity into this display currency via FX conversion. |
46
+ | `--from_date` | `string` | no | | Start of the report window as an ISO 8601 timestamp (UTC). Required for platform-wide (global) reports. |
47
+ | `--to_date` | `string` | no | | End of the report window as an ISO 8601 timestamp (UTC). Required for platform-wide (global) reports. |
48
+ | `--group_by` | `string` | no | | Grouping granularity for report rows. |
49
+ | `--timezone` | `string` | no | | IANA timezone (for example `America/New_York`) used to bucket report periods and to interpret calendar-day boundaries for balance snapshots. Defaults to UTC. from_date/to_date remain exact instants regardless of this setting. |
50
+ | `--cumulative` | `boolean` | no | `false` | Platform-wide (global) reports only: when true, return cumulative balances as of to_date (all history, no lower bound) instead of activity within the period. |
51
+ | `--scope_account_id` | `string` | no | | Platform-wide (global) reports only: narrow the report to ledger lines on the ledger account owned by this account ID (a biz_ identifier). Ignored unless account_id is `global`. |
@@ -9,15 +9,36 @@ A Media Asset is an AI-generated image or video created from a prompt and billed
9
9
 
10
10
  Use the Media API to start a generation job and retrieve the asset while it processes or after it is ready.
11
11
 
12
- ## Commands
12
+ # whop media generate
13
13
 
14
- | Command | Description |
15
- |---------|-------------|
16
- | `whop media generate` | Generate Media Asset |
17
- | `whop media get` | Retrieve Media Asset |
14
+ Generate Media Asset
18
15
 
19
- Run `whop media <command> --help` for options, or `whop media <command> --schema` for full argument details.
16
+ ## Options
17
+
18
+ | Flag | Type | Required | Default | Description |
19
+ |------|------|----------|---------|-------------|
20
+ | `--account_id` | `string` | no | | Account ID, prefixed `biz_`. Defaults to the account the API key belongs to. |
21
+ | `--duration_seconds` | `unknown` | no | | Video length in seconds. Video only; defaults to 5. |
22
+ | `--prompt` | `string` | yes | | What to generate. Up to 2,000 characters. |
23
+ | `--reference_media` | `array` | no | | Optional reference image file IDs (`file_` prefixed), up to 4. For video, a single reference seeds the opening frame; multiple references guide subject and style instead. |
24
+ | `--resolution` | `string` | no | | Video resolution. Video only; defaults to `1080p`. `1080p` is not supported by Seedance 2.0 Fast or Mini; `4k` is only supported by Seedance 2.0. |
25
+ | `--type` | `string` | yes | | The kind of media to generate. |
26
+ | `--idempotency-key` | `string` | no | | A unique key that makes this request safe to retry. See [Idempotent requests](https://docs.whop.com/developer/api/idempotency). |
27
+
28
+ > Confirm with the user before executing this destructive command.
29
+
30
+ ---
31
+
32
+ # whop media get
33
+
34
+ Retrieve Media Asset
35
+
36
+ ## Arguments
37
+
38
+ | Name | Type | Required | Description |
39
+ |------|------|----------|-------------|
40
+ | `id` | `string` | yes | Media asset ID, prefixed `media_`. |
20
41
 
21
42
  ## Steps that finish in the browser
22
43
 
23
- Some commands respond with a URL the user must open in a browser to finish the flow (`authorize_url`, `session_url`, `deposit_url`) — the CLI cannot complete that step itself. When a response contains one of these fields, or the CLI prints "Action required: open this link in the user's browser", open that link in the user's browser for them, tell them what to complete there, then re-run the matching `get`/`list` command to confirm the step finished.
44
+ Some commands respond with a URL the user must open in a browser to finish the flow (`authorize_url`, `session_url`, `deposit_url`, `checkout_url`) — the CLI cannot complete that step itself. When a response contains one of these fields, or the CLI prints "Action required: open this link in the user's browser", open that link in the user's browser for them, tell them what to complete there, then re-run the matching `get`/`list` command to confirm the step finished.
@@ -9,11 +9,56 @@ A Member is one buyer's relationship with an account — one record per customer
9
9
 
10
10
  Use the Members API to list an account's members with filtering by access level, status, join date, and name or username search, and to retrieve a single member. Member rows are created and maintained by the membership lifecycle; to grant or revoke access, work with memberships instead.
11
11
 
12
- ## Commands
12
+ # whop members get
13
13
 
14
- | Command | Description |
15
- |---------|-------------|
16
- | `whop members list` | List Members |
17
- | `whop members get` | Retrieve Member |
14
+ Retrieve Member
18
15
 
19
- Run `whop members <command> --help` for options, or `whop members <command> --schema` for full argument details.
16
+ ## Arguments
17
+
18
+ | Name | Type | Required | Description |
19
+ |------|------|----------|-------------|
20
+ | `id` | `string` | yes | Member ID (`mber_` tag). |
21
+
22
+ ---
23
+
24
+ # whop members list
25
+
26
+ List Members
27
+
28
+ ## Options
29
+
30
+ | Flag | Type | Required | Default | Description |
31
+ |------|------|----------|---------|-------------|
32
+ | `--account_id` | `string` | no | | The account to list members for (`biz_` tag). Defaults to the account the credential acts as. |
33
+ | `--access_level` | `string` | no | | Filter by what the member can reach on the account. |
34
+ | `--status` | `string` | no | | Filter by whether the member is still part of the account. |
35
+ | `--query` | `string` | no | | Search members by name or username. An exact email address also matches when the credential holds the member:email:read scope. |
36
+ | `--created_after` | `string` | no | | Only members who joined after this ISO 8601 timestamp. |
37
+ | `--created_before` | `string` | no | | Only members who joined before this ISO 8601 timestamp. |
38
+ | `--order` | `string` | no | | Sort field. |
39
+ | `--direction` | `string` | no | | Sort direction. |
40
+ | `--first` | `number` | no | `20` | Number of members to return from the start of the window. |
41
+ | `--after` | `string` | no | | Cursor to paginate forwards from. |
42
+ | `--last` | `number` | no | | Number of members to return from the end of the window. |
43
+ | `--before` | `string` | no | | Cursor to paginate backwards from. |
44
+
45
+ ---
46
+
47
+ # whop members logs
48
+
49
+ List Member Logs
50
+
51
+ ## Arguments
52
+
53
+ | Name | Type | Required | Description |
54
+ |------|------|----------|-------------|
55
+ | `id` | `string` | yes | Member ID (`mber_` tag). |
56
+
57
+ ## Options
58
+
59
+ | Flag | Type | Required | Default | Description |
60
+ |------|------|----------|---------|-------------|
61
+ | `--first` | `number` | no | `20` | Number of log entries to return from the start of the window. |
62
+ | `--after` | `string` | no | | Cursor to paginate forwards from. |
63
+ | `--last` | `number` | no | | Number of log entries to return from the end of the window. |
64
+ | `--before` | `string` | no | | Cursor to paginate backwards from. |
@@ -9,16 +9,140 @@ A Membership is a customer's purchase of a plan: the subscription or one-time gr
9
9
 
10
10
  Use the Memberships API to list an account's memberships or the caller's own, retrieve one by ID or license key, and manage the lifecycle: cancel immediately or at period end, reverse a scheduled period-end cancellation, pause and resume payment collection, extend with free days, and update metadata.
11
11
 
12
- ## Commands
13
-
14
- | Command | Description |
15
- |---------|-------------|
16
- | `whop memberships list` | List Memberships |
17
- | `whop memberships get` | Retrieve Membership |
18
- | `whop memberships update` | Update Membership |
19
- | `whop memberships cancel` | Cancel Membership |
20
- | `whop memberships extend` | Extend Membership |
21
- | `whop memberships pause` | Pause Membership |
22
- | `whop memberships resume` | Resume Membership |
23
-
24
- Run `whop memberships <command> --help` for options, or `whop memberships <command> --schema` for full argument details.
12
+ # whop memberships cancel
13
+
14
+ Cancel Membership
15
+
16
+ ## Arguments
17
+
18
+ | Name | Type | Required | Description |
19
+ |------|------|----------|-------------|
20
+ | `id` | `string` | yes | Membership ID (`mem_` tag). |
21
+
22
+ ## Options
23
+
24
+ | Flag | Type | Required | Default | Description |
25
+ |------|------|----------|---------|-------------|
26
+ | `--reason` | `string` | no | | Free-form note recording why the membership was canceled. |
27
+ | `--idempotency-key` | `string` | no | | A unique key that makes this request safe to retry. See [Idempotent requests](https://docs.whop.com/developer/api/idempotency). |
28
+
29
+ > Confirm with the user before executing this destructive command.
30
+
31
+ ---
32
+
33
+ # whop memberships extend
34
+
35
+ Extend Membership
36
+
37
+ ## Arguments
38
+
39
+ | Name | Type | Required | Description |
40
+ |------|------|----------|-------------|
41
+ | `id` | `string` | yes | Membership ID (`mem_` tag). |
42
+
43
+ ## Options
44
+
45
+ | Flag | Type | Required | Default | Description |
46
+ |------|------|----------|---------|-------------|
47
+ | `--days` | `number` | yes | | Number of free days to add (1-1095). |
48
+ | `--idempotency-key` | `string` | no | | A unique key that makes this request safe to retry. See [Idempotent requests](https://docs.whop.com/developer/api/idempotency). |
49
+
50
+ > Confirm with the user before executing this destructive command.
51
+
52
+ ---
53
+
54
+ # whop memberships get
55
+
56
+ Retrieve Membership
57
+
58
+ ## Arguments
59
+
60
+ | Name | Type | Required | Description |
61
+ |------|------|----------|-------------|
62
+ | `id` | `string` | yes | Membership ID (`mem_` tag), or a software license key. |
63
+
64
+ ---
65
+
66
+ # whop memberships list
67
+
68
+ List Memberships
69
+
70
+ ## Options
71
+
72
+ | Flag | Type | Required | Default | Description |
73
+ |------|------|----------|---------|-------------|
74
+ | `--account_id` | `string` | no | | 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. |
75
+ | `--user_id` | `string` | no | | 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. |
76
+ | `--status` | `string` | no | | Filter by billing state. `canceling` matches active memberships set to cancel at period end; `paused` matches memberships with payment collection paused. |
77
+ | `--product_id` | `string` | no | | Filter to memberships of this product (`prod_` tag). Repeat as product_ids[] for several. |
78
+ | `--plan_id` | `string` | no | | Filter to memberships of this plan (`plan_` tag). Repeat as plan_ids[] for several. |
79
+ | `--created_after` | `string` | no | | Only memberships created after this ISO 8601 timestamp. |
80
+ | `--created_before` | `string` | no | | Only memberships created before this ISO 8601 timestamp. |
81
+ | `--order` | `string` | no | | Sort field. |
82
+ | `--direction` | `string` | no | | Sort direction. |
83
+ | `--first` | `number` | no | `20` | Number of memberships to return from the start of the window. |
84
+ | `--after` | `string` | no | | Cursor to paginate forwards from. |
85
+ | `--last` | `number` | no | | Number of memberships to return from the end of the window. |
86
+ | `--before` | `string` | no | | Cursor to paginate backwards from. |
87
+
88
+ ---
89
+
90
+ # whop memberships pause
91
+
92
+ Pause Membership
93
+
94
+ ## Arguments
95
+
96
+ | Name | Type | Required | Description |
97
+ |------|------|----------|-------------|
98
+ | `id` | `string` | yes | Membership ID (`mem_` tag). |
99
+
100
+ ## Options
101
+
102
+ | Flag | Type | Required | Default | Description |
103
+ |------|------|----------|---------|-------------|
104
+ | `--until` | `string` | no | | ISO 8601 time to automatically resume payment collection. Must be in the future; only supported for memberships billed by Whop. |
105
+ | `--idempotency-key` | `string` | no | | A unique key that makes this request safe to retry. See [Idempotent requests](https://docs.whop.com/developer/api/idempotency). |
106
+
107
+ > Confirm with the user before executing this destructive command.
108
+
109
+ ---
110
+
111
+ # whop memberships resume
112
+
113
+ Resume Membership
114
+
115
+ ## Arguments
116
+
117
+ | Name | Type | Required | Description |
118
+ |------|------|----------|-------------|
119
+ | `id` | `string` | yes | Membership ID (`mem_` tag). |
120
+
121
+ ## Options
122
+
123
+ | Flag | Type | Required | Default | Description |
124
+ |------|------|----------|---------|-------------|
125
+ | `--idempotency-key` | `string` | no | | A unique key that makes this request safe to retry. See [Idempotent requests](https://docs.whop.com/developer/api/idempotency). |
126
+
127
+ > Confirm with the user before executing this destructive command.
128
+
129
+ ---
130
+
131
+ # whop memberships update
132
+
133
+ Update Membership
134
+
135
+ ## Arguments
136
+
137
+ | Name | Type | Required | Description |
138
+ |------|------|----------|-------------|
139
+ | `id` | `string` | yes | Membership ID (`mem_` tag), or a software license key. |
140
+
141
+ ## Options
142
+
143
+ | Flag | Type | Required | Default | Description |
144
+ |------|------|----------|---------|-------------|
145
+ | `--cancel_at_period_end` | `boolean` | no | | `true` cancels at the end of the current billing period (the customer keeps access until then); `false` reverses a pending cancellation. |
146
+ | `--metadata` | `object` | no | | Key-value pairs to merge into the membership's metadata. Pass an empty object to clear it. |
147
+
148
+ > Confirm with the user before executing this destructive command.