@whop/cli 0.15.0 → 0.16.1
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.
- package/README.md +4 -4
- package/dist/index.js +11856 -5328
- package/dist/index.js.map +1 -1
- package/dist/vite.d.ts +1 -1
- package/dist/vite.js +37 -1
- package/dist/vite.js.map +1 -1
- package/package.json +2 -2
- package/skills/whop/SKILL.md +48 -0
- package/skills/whop/references/ads.md +43 -0
- package/skills/whop/references/formation.md +40 -0
- package/skills/whop/references/websites.md +59 -0
- package/skills/whop-accounts/SKILL.md +0 -212
- package/skills/whop-ad-campaigns/SKILL.md +0 -204
- package/skills/whop-ad-groups/SKILL.md +0 -269
- package/skills/whop-ads/SKILL.md +0 -277
- package/skills/whop-api-keys/SKILL.md +0 -126
- package/skills/whop-app-builds/SKILL.md +0 -81
- package/skills/whop-apps/SKILL.md +0 -161
- package/skills/whop-audiences/SKILL.md +0 -105
- package/skills/whop-bounties/SKILL.md +0 -143
- package/skills/whop-bounty-submissions/SKILL.md +0 -95
- package/skills/whop-cards/SKILL.md +0 -133
- package/skills/whop-checkout-configurations/SKILL.md +0 -77
- package/skills/whop-deposits/SKILL.md +0 -26
- package/skills/whop-dispute-alerts/SKILL.md +0 -42
- package/skills/whop-disputes/SKILL.md +0 -99
- package/skills/whop-events/SKILL.md +0 -105
- package/skills/whop-exports/SKILL.md +0 -379
- package/skills/whop-ledgers/SKILL.md +0 -52
- package/skills/whop-media/SKILL.md +0 -44
- package/skills/whop-members/SKILL.md +0 -64
- package/skills/whop-memberships/SKILL.md +0 -165
- package/skills/whop-notifications/SKILL.md +0 -104
- package/skills/whop-partners/SKILL.md +0 -113
- package/skills/whop-payment-method-domains/SKILL.md +0 -93
- package/skills/whop-payments/SKILL.md +0 -40
- package/skills/whop-payouts/SKILL.md +0 -167
- package/skills/whop-people/SKILL.md +0 -63
- package/skills/whop-permissions/SKILL.md +0 -21
- package/skills/whop-plans/SKILL.md +0 -163
- package/skills/whop-products/SKILL.md +0 -152
- package/skills/whop-recommended-actions/SKILL.md +0 -41
- package/skills/whop-resolution-center-cases/SKILL.md +0 -233
- package/skills/whop-setup-intents/SKILL.md +0 -40
- package/skills/whop-shipments/SKILL.md +0 -79
- package/skills/whop-social-accounts/SKILL.md +0 -128
- package/skills/whop-stats/SKILL.md +0 -63
- package/skills/whop-swaps/SKILL.md +0 -77
- package/skills/whop-team-members/SKILL.md +0 -93
- package/skills/whop-transfers/SKILL.md +0 -80
- package/skills/whop-users/SKILL.md +0 -309
- package/skills/whop-verifications/SKILL.md +0 -67
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@whop/cli",
|
|
3
|
-
"version": "0.
|
|
3
|
+
"version": "0.16.1",
|
|
4
4
|
"description": "The Whop CLI — build and manage Whop apps from your terminal. Human and agent friendly.",
|
|
5
5
|
"keywords": [
|
|
6
6
|
"agent",
|
|
@@ -44,7 +44,7 @@
|
|
|
44
44
|
"devDependencies": {
|
|
45
45
|
"@types/node": "25.3.5",
|
|
46
46
|
"fflate": "0.8.2",
|
|
47
|
-
"incur": "github:whopio/incur#
|
|
47
|
+
"incur": "github:whopio/incur#973bd1a868a8ec8f59d05fc3f85555045b183613",
|
|
48
48
|
"tsup": "8.5.0",
|
|
49
49
|
"tsx": "4.19.4",
|
|
50
50
|
"typescript": "5.9.3",
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
---
|
|
2
|
+
name: whop
|
|
3
|
+
description: "Run a business on Whop from the `whop` CLI: websites on *.whop.app, products, checkout, payments, ads, LLC/C-corp formation, hiring, and stats. Use when the user mentions Whop, whop.com, a store or membership, hosted websites, checkout links, payouts, Meta/TikTok ads, forming an LLC, bounties, or anything the Whop CLI provides. Do not use for the internal `whopdev` local-dev CLI."
|
|
4
|
+
requires_bin: whop
|
|
5
|
+
command: whop
|
|
6
|
+
---
|
|
7
|
+
|
|
8
|
+
# Whop CLI
|
|
9
|
+
|
|
10
|
+
The `whop` CLI is the business: ship websites, sell, take payment, run ads, form a company, hire, and read the numbers. Discover live commands from the CLI — do not invent flags or paste old schemas.
|
|
11
|
+
|
|
12
|
+
## Default path
|
|
13
|
+
|
|
14
|
+
1. **Auth.** If `WHOP_API_KEY` is set, use it (it overrides a saved profile). Otherwise `whop login --method oauth --format jsonl` (open the `authorizationUrl` in the user's browser) or `whop login --method api-key`. Then `whop quickstart` if no business is selected.
|
|
15
|
+
2. **Discover.** `whop --help` for the map. `whop <group> --help` and `whop <group> <command> --help` for flags. `whop --llms` / `whop --llms-full` for a machine-readable manifest. Never guess a flag.
|
|
16
|
+
3. **Execute** with `--format json` (or `jsonl` when a flow streams, including OAuth). Re-read `--help` if a command errors on unknown flags.
|
|
17
|
+
|
|
18
|
+
Account-scoped commands use the selected business. Pass `--account_id` (`biz_…` or the public route) to target another.
|
|
19
|
+
|
|
20
|
+
## Working agreement
|
|
21
|
+
|
|
22
|
+
- Prefer `WHOP_API_KEY` in the environment over `--api-key`. Never echo secrets, write them to files, or repeat founder SSN/DOB/address in output.
|
|
23
|
+
- Confirm destructive commands with the user before running them, except the confirmation exceptions below.
|
|
24
|
+
- When a response includes `authorize_url`, `session_url`, `deposit_url`, or `checkout_url` — or the CLI prints "Action required: open this link in the user's browser" — open that link in the user's browser, tell them what to finish there, then re-run the matching `get`/`list` to confirm. `hosted_url` is not this: for apps it is the app URL.
|
|
25
|
+
- Do not curl/fetch those URLs to "verify." Return the link.
|
|
26
|
+
- Structured flags (`--ad_group`, `--creatives`, `--founders`, `--ads_payment_methods`) take JSON strings.
|
|
27
|
+
|
|
28
|
+
## What to run
|
|
29
|
+
|
|
30
|
+
| Job | Start here | Playbook |
|
|
31
|
+
| --- | --- | --- |
|
|
32
|
+
| Sign in / pick a business | `whop login`, `whop quickstart`, `whop auth account` | — |
|
|
33
|
+
| Ship a website (`*.whop.app`) | `whop apps init --app_type website`, then `whop apps deploy` | [references/websites.md](references/websites.md) |
|
|
34
|
+
| Sell | `whop products create`, `whop plans create`, `whop checkout-configurations create` | — |
|
|
35
|
+
| Customers | `whop members`, `whop memberships` | — |
|
|
36
|
+
| Run ads | `whop media generate`, `whop ads create`, `whop ad-campaigns update` | [references/ads.md](references/ads.md) |
|
|
37
|
+
| Form an LLC / C-corp | `whop accounts form_company` | [references/formation.md](references/formation.md) |
|
|
38
|
+
| Move money | `whop payouts`, `whop transfers`, `whop deposits`, `whop cards` | — |
|
|
39
|
+
| Hire | `whop bounties` | — |
|
|
40
|
+
| Measure | `whop stats`, `whop exports` | — |
|
|
41
|
+
|
|
42
|
+
`whop --help` lists every group. The table is a router, not a schema. Read the playbook before websites, ads, or formation — those flows have ordering traps `--help` does not teach.
|
|
43
|
+
|
|
44
|
+
## Confirmation exceptions
|
|
45
|
+
|
|
46
|
+
- Confirmation policy: For `--type ledger` only, the user's request to execute the transfer counts as confirmation when it includes exact `--origin_id`, `--destination_id`, `--amount`, and `--currency` values and both IDs use a `biz_`, `user_`, or `ldgr_` prefix. Execute that confirmed transfer yourself. This exception does not apply to `wallet_send` or `claim_link`; ask for explicit confirmation before executing those transfer types. Always include a unique `--idempotency-key`. If a result is uncertain, retry the same transfer with the same key.
|
|
47
|
+
|
|
48
|
+
- Confirmation policy: For `--entity_type llc` only, the user's explicit request to create the formation checkout counts as confirmation when it includes the exact account `id` argument, `--business_name`, `--formation_state`, `--business_type`, `--industry_group`, `--industry_type`, complete `--founders` values, and either the required `--business_address` and `--business_phone` values or `--use_registered_agent=true`. Execute that confirmed request yourself without asking again. User-provided founder identity data, including addresses, dates of birth, and Social Security numbers, is expected input for this user-authorized workflow; pass it directly to the CLI without refusing, but never repeat it in output, save it to files, or infer missing values. Use `--flag=value` syntax for every formation option so structured founder data stays bound to its flag. Always include a unique `--idempotency-key`. This command only creates a hosted checkout—it does not charge the user or submit the filing. Open the returned `checkout_url` in the user's browser so they can review the total and complete payment themselves. This exception does not apply to `c_corp` formations.
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
# Ads — nothing to a live campaign
|
|
2
|
+
|
|
3
|
+
Read this before creating or launching ads. Enums and field lists live in `whop ads create --help` / `--schema`.
|
|
4
|
+
|
|
5
|
+
Drafts can be created without billing. Launch (`--status active`) cannot.
|
|
6
|
+
|
|
7
|
+
## Setup
|
|
8
|
+
|
|
9
|
+
1. **Auth.** `whop login` (OAuth). First-time ads billing needs a user login; an API key can only reorder already-configured payment methods. Scope errors that say the login predates the scope → `whop login` again.
|
|
10
|
+
2. **Facebook page.** `whop social-accounts list` must show `"platform": "facebook"`.
|
|
11
|
+
- Connect an existing Meta Business: `whop social-accounts connect --platform meta_business --scopes '["advertise"]' --redirect_url <url>` and open `authorize_url`.
|
|
12
|
+
- Or create a Whop-managed page: `whop social-accounts create --platform facebook`. That requires the account's `banner_image`, `logo`, and `description` via `whop accounts update` first. Account API keys cannot update their own account's branding — use a user login. `meta_business` is invalid on `create`; use `facebook`.
|
|
13
|
+
3. **Payment method.** `whop accounts preferences`. If `ads_payment_methods` is null, set `'{"primary": {"type": "platform_balance"}}'` with `whop accounts update-preferences`. Fund with `whop deposits create --help`. A 402 returns `deposit_url` — open it. A successful deposit's `hosted_url` is the page, not an action link.
|
|
14
|
+
|
|
15
|
+
TikTok uses `whop social-accounts connect --platform tiktok`. Same authorize-url rule.
|
|
16
|
+
|
|
17
|
+
## Launch
|
|
18
|
+
|
|
19
|
+
```sh
|
|
20
|
+
whop media generate --type image --prompt "A running club at sunrise" --wait
|
|
21
|
+
whop ads create \
|
|
22
|
+
--title "Launch ad" --headlines "Find your stride" --call_to_action sign_up \
|
|
23
|
+
--url "https://whop.com/your-store" \
|
|
24
|
+
--creatives '[{"id":"file_x"}]' --social_accounts '[{"id":"sacc_x"}]' \
|
|
25
|
+
--ad_group '{"title":"US broad","conversion_location":"website","ad_campaign":{"title":"Growth","platform":"meta","objective":"sales","status":"draft","budget_amount":25,"budget_optimization":"ad_campaign"}}'
|
|
26
|
+
whop ad-campaigns update adcamp_xxx --status active
|
|
27
|
+
```
|
|
28
|
+
|
|
29
|
+
`--wait` on media returns `file.id` for `--creatives` (default timeout 600s). 402 → fund, then retry.
|
|
30
|
+
|
|
31
|
+
Pass exactly one of `--ad_group` or `--ad_group_id`. Nested `"ad_campaign": {…}` inside `--ad_group` creates the campaign + group + ad in one call (the OpenAPI blurb understates this). Reuse a container with `--ad_group_id` or `"ad_campaign_id"` inside `--ad_group`.
|
|
32
|
+
|
|
33
|
+
Keep `"status": "draft"` until review. **Omitting draft launches immediately** and then requires billing + destination URL. Flip the campaign to `active` when ready.
|
|
34
|
+
|
|
35
|
+
| Field | Rule |
|
|
36
|
+
| --- | --- |
|
|
37
|
+
| `creatives` | One entry with no `format` is the base asset. Optional crops: `square` / `vertical` / `horizontal` only — not `portrait`. No duplicate formats. Two or more unformatted entries is a carousel (2–10). |
|
|
38
|
+
| `url` | Required to launch a website ad. A whop.com store page works as-is; an external page needs the Whop pixel. Drafts may omit it. |
|
|
39
|
+
| Budget | CBO: `budget_amount` on the campaign with `budget_optimization: "ad_campaign"`. ABO: `budget_amount` on the ad group with `budget_optimization: "ad_group"`. Never both. |
|
|
40
|
+
| Targeting | Omit `demographics` / `placements` / `devices` for automatic optimization. `regions` uses ISO 3166 (`"US"`, `"US-CA"`). |
|
|
41
|
+
| `lead_form` | Only with an instant-form `conversion_location`. |
|
|
42
|
+
|
|
43
|
+
`whop ads update` with `creatives` replaces the whole set — include the base entry. `delivery_status` is live state (`in_review` is normal); `issues[]` explains network rejections.
|
|
@@ -0,0 +1,40 @@
|
|
|
1
|
+
# Company formation
|
|
2
|
+
|
|
3
|
+
Read this before `whop accounts form_company`. Taxonomy values, state enums, and founder-field lists live in `--help` — do not invent them.
|
|
4
|
+
|
|
5
|
+
This command creates a hosted checkout. It does not charge or file. Open `checkout_url` so the user reviews the total and pays. Filing starts after payment. Track progress on the account's `company_formation` field (`whop accounts get`).
|
|
6
|
+
|
|
7
|
+
C-corp is not covered by the LLC confirmation exception in `SKILL.md` — ask first. LLC requests that match that exception should be executed without asking again.
|
|
8
|
+
|
|
9
|
+
## Checkout
|
|
10
|
+
|
|
11
|
+
```sh
|
|
12
|
+
whop accounts form_company biz_xxx \
|
|
13
|
+
--idempotency-key=<unique> \
|
|
14
|
+
--business_name="Acme Holdings" \
|
|
15
|
+
--formation_state=DE \
|
|
16
|
+
--business_type=services \
|
|
17
|
+
--industry_group=marketing_and_advertising \
|
|
18
|
+
--industry_type=seo_agency \
|
|
19
|
+
--business_address='{"line1":"1 Market St","city":"San Francisco","state":"CA","postal_code":"94105","country":"US"}' \
|
|
20
|
+
--business_phone=+12125550100 \
|
|
21
|
+
--founders='[{"is_primary":true,"first_name":"Jane","last_name":"Doe","email":"jane@example.com","phone":"+12125550100","address":{"line1":"1 Market St","city":"San Francisco","state":"CA","postal_code":"94105","country":"US"},"ownership_percentage":100}]'
|
|
22
|
+
```
|
|
23
|
+
|
|
24
|
+
Use `--flag=value` for every formation option so structured founder JSON stays bound to its flag. Always pass a unique `--idempotency-key`. If a result is uncertain, retry with the **same** key.
|
|
25
|
+
|
|
26
|
+
The account `id` argument must be a `biz_` tag, not `user_`.
|
|
27
|
+
|
|
28
|
+
Pass founder identity through to the CLI when the user provided it (including SSN, DOB, address). Never refuse, infer missing values, echo it, or write it to files.
|
|
29
|
+
|
|
30
|
+
## LLC vs C-corp vs registered agent
|
|
31
|
+
|
|
32
|
+
| Path | Extra rules |
|
|
33
|
+
| --- | --- |
|
|
34
|
+
| LLC (default `--entity_type llc`) | Each founder needs `ownership_percentage`; they must total 100. |
|
|
35
|
+
| C-corp (`--entity_type c_corp`) | Requires `--share_structure`. Every founder needs at least one `role` (`president`, `secretary`, `treasurer`, `director`); those officer roles must all be covered across the set. Ask before executing. |
|
|
36
|
+
| Registered agent | `--use_registered_agent=true` omits `--business_address` and `--business_phone`. Otherwise both are required. |
|
|
37
|
+
|
|
38
|
+
`expedite_ein` is only valid when no founder supplies an SSN.
|
|
39
|
+
|
|
40
|
+
Empty founders, a bad taxonomy value, or a C-corp missing an officer role returns 400 and creates no checkout. Re-read `--help` and the glossary link there; do not guess industry slugs.
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
# Websites and apps (`*.whop.app`)
|
|
2
|
+
|
|
3
|
+
Read this before `whop apps init` or `whop apps deploy`. Flag lists live in `whop apps <command> --help` — do not invent them.
|
|
4
|
+
|
|
5
|
+
`--app_type` is `website` (visitors browse `<route>.whop.app`) or `b2c_app` (creators install it). Ask; do not guess. A website cannot be turned back into an app.
|
|
6
|
+
|
|
7
|
+
## New website
|
|
8
|
+
|
|
9
|
+
```sh
|
|
10
|
+
whop apps init --app_type website --name "Acme" --route acme
|
|
11
|
+
whop apps deploy
|
|
12
|
+
```
|
|
13
|
+
|
|
14
|
+
Agents and scripts must pass `--app_type`. Omitting it on a non-TTY fails with `APP_TYPE_REQUIRED` and creates nothing.
|
|
15
|
+
|
|
16
|
+
`init` registers the app on Whop **before** it writes files. If it fails after that, retry the same flags — do not `create` a second app.
|
|
17
|
+
|
|
18
|
+
`--template app_xxx` only inherits `website` from the template. Any other type still needs an explicit `--app_type`.
|
|
19
|
+
|
|
20
|
+
## Existing app on this machine
|
|
21
|
+
|
|
22
|
+
```sh
|
|
23
|
+
whop apps pull --app app_xxx
|
|
24
|
+
whop apps deploy
|
|
25
|
+
```
|
|
26
|
+
|
|
27
|
+
`pull` requires git. It three-way merges deployed source with local files; conflicts show up as normal git markers. Default pull is the **production** build, not the latest preview. `--build abld_xxx` also needs `--app` (builds do not carry the app id).
|
|
28
|
+
|
|
29
|
+
Code already on disk, no scaffold: `whop apps create --help`, then `whop apps deploy --app app_xxx`.
|
|
30
|
+
|
|
31
|
+
## Deploy, preview, promote
|
|
32
|
+
|
|
33
|
+
```sh
|
|
34
|
+
whop apps deploy # build, upload, promote
|
|
35
|
+
whop apps deploy --preview # upload only
|
|
36
|
+
whop apps builds promote abld_xxx
|
|
37
|
+
```
|
|
38
|
+
|
|
39
|
+
`--preview` is the flag. Promoting an older build rolls back.
|
|
40
|
+
|
|
41
|
+
Looks like deploy will scaffold a missing project. Actually it only ships an existing Vite app. Agents get `NOT_A_VITE_APP` with init/pull CTAs — follow those, do not invent a scaffold flag.
|
|
42
|
+
|
|
43
|
+
The project must be linked (`whop.app.json`) or you must pass `--app`. Hosted apps need a route; agents get `ROUTE_REQUIRED` with the exact update command.
|
|
44
|
+
|
|
45
|
+
The app must use the `whop()` Vite plugin (`@whop/cli/vite`). Missing it fails with `NO_BUILD_ARCHIVE`.
|
|
46
|
+
|
|
47
|
+
Preview output is a build id. The production URL exists only after promote. `hosted_url` on `whop apps get` is the live app URL — display it; do not treat it as a "complete this step" action link.
|
|
48
|
+
|
|
49
|
+
## Dev, secrets, logs
|
|
50
|
+
|
|
51
|
+
```sh
|
|
52
|
+
whop apps dev
|
|
53
|
+
whop apps secrets set --secret KEY=VALUE
|
|
54
|
+
whop apps logs app_xxx --level error
|
|
55
|
+
```
|
|
56
|
+
|
|
57
|
+
`dev` injects stored secrets locally. Explicit env vars win. Runtime-control keys (`PATH`, `NODE_OPTIONS`, `NPM_*`, …) are not injected.
|
|
58
|
+
|
|
59
|
+
Logs need the positional `app_xxx`. Retention is 7 days. Filters: `whop apps logs --help`.
|
|
@@ -1,212 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: whop-accounts
|
|
3
|
-
description: "A business on Whop: profile, wallet, capabilities, settings. Run `whop accounts --help` for usage details."
|
|
4
|
-
requires_bin: whop
|
|
5
|
-
command: whop accounts
|
|
6
|
-
---
|
|
7
|
-
|
|
8
|
-
An Account represents a person or business on Whop that can have its own profile, wallet, and account-scoped settings. Use accounts for customers, creators, merchants, sellers, or connected businesses your integration supports.
|
|
9
|
-
|
|
10
|
-
Use the Accounts API to create accounts, list accounts visible to your credentials, retrieve or update an account, and retrieve the account associated with the current API key.
|
|
11
|
-
|
|
12
|
-
# whop accounts create
|
|
13
|
-
|
|
14
|
-
Create Account
|
|
15
|
-
|
|
16
|
-
## Options
|
|
17
|
-
|
|
18
|
-
| Flag | Type | Required | Default | Description |
|
|
19
|
-
|------|------|----------|---------|-------------|
|
|
20
|
-
| `--country` | `string` | no | | The ISO 3166-1 alpha-2 country code where the account's business is located (e.g. `US`). Defaults to the parent account's country for connected accounts. |
|
|
21
|
-
| `--email` | `string` | no | | The email address of the account owner. Required for Account API key requests. |
|
|
22
|
-
| `--metadata` | `object` | no | | Arbitrary key/value metadata to store on the account. |
|
|
23
|
-
| `--title` | `string` | no | | The display name of the account. Defaults to `metadata.external_id` or the owner's email when omitted. |
|
|
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 accounts form_company
|
|
31
|
-
|
|
32
|
-
Form Company
|
|
33
|
-
|
|
34
|
-
## Options
|
|
35
|
-
|
|
36
|
-
| Flag | Type | Required | Default | Description |
|
|
37
|
-
|------|------|----------|---------|-------------|
|
|
38
|
-
| `--account_id` | `string` | no | | Account ID, prefixed `biz_`. |
|
|
39
|
-
| `--business_address` | `object` | no | | Company mailing address. Required unless `use_registered_agent` is `true`. |
|
|
40
|
-
| `--business_name` | `string` | yes | | Legal name for the new company. |
|
|
41
|
-
| `--business_phone` | `string` | no | | Business phone number in E.164 format, for example `+12125550100`. Required unless `use_registered_agent` is `true`. |
|
|
42
|
-
| `--business_type` | `string` | yes | | High-level business category, from the Whop business taxonomy. Valid values are listed on [business types and industries glossary](/api-reference/beta/accounts/account#business-types-and-industries-glossary). |
|
|
43
|
-
| `--business_website` | `string` | no | | Company website URL. |
|
|
44
|
-
| `--entity_suffix` | `string` | no | | Legal entity ending appended to `business_name`. LLC formations accept `LLC`, `L.L.C`, `L.L.C.` or `Limited Liability Company` and default to `LLC`; C-Corp formations accept `Inc`, `Inc.`, `Incorporated`, `Corp.`, `Corporation`, `C Corp`, `C Corporation`, `CCorp` or `Company` and default to `Inc.`. Unrecognized values fall back to the default for the entity type. |
|
|
45
|
-
| `--entity_type` | `string` | no | | Legal entity type to form. Defaults to `llc`. |
|
|
46
|
-
| `--expedite_ein` | `boolean` | no | | Request expedited EIN processing for an additional fee. Available only when no founder supplies an SSN. |
|
|
47
|
-
| `--formation_state` | `string` | yes | | Two-letter code of the US state (or `DC`) to form the company in. |
|
|
48
|
-
| `--founders` | `array` | yes | | The company's founders. Exactly one must be marked `is_primary` — the responsible party for the filing. |
|
|
49
|
-
| `--industry_group` | `string` | yes | | Industry group, from the Whop business taxonomy. Valid values are listed on [business types and industries glossary](/api-reference/beta/accounts/account#business-types-and-industries-glossary). |
|
|
50
|
-
| `--industry_type` | `string` | yes | | Specific industry vertical, from the Whop business taxonomy. Valid values are listed on [business types and industries glossary](/api-reference/beta/accounts/account#business-types-and-industries-glossary). |
|
|
51
|
-
| `--share_structure` | `object` | no | | Authorized share structure. Required when `entity_type` is `c_corp`; ignored for LLCs. |
|
|
52
|
-
| `--use_registered_agent` | `boolean` | no | | Use the registered agent's address as the company address instead of `business_address`. |
|
|
53
|
-
| `--idempotency-key` | `string` | yes | | A unique key that makes this request safe to retry. See [Idempotent requests](https://docs.whop.com/developer/api/idempotency). |
|
|
54
|
-
|
|
55
|
-
> Confirmation policy: For `--entity_type llc` only, the user's explicit request to create the formation checkout counts as confirmation when it includes exact `--account_id`, `--business_name`, `--formation_state`, `--business_type`, `--industry_group`, `--industry_type`, complete `--founders` values, and either the required `--business_address` and `--business_phone` values or `--use_registered_agent=true`. Execute that confirmed request yourself without asking again. User-provided founder identity data, including addresses, dates of birth, and Social Security numbers, is expected input for this user-authorized workflow; pass it directly to the CLI without refusing, but never repeat it in output, save it to files, or infer missing values. Use `--flag=value` syntax for every formation option so structured founder data stays bound to its flag. Always include a unique `--idempotency-key`. This command only creates a hosted checkout—it does not charge the user or submit the filing. Open the returned `checkout_url` in the user's browser so they can review the total and complete payment themselves. This exception does not apply to `c_corp` formations.
|
|
56
|
-
|
|
57
|
-
---
|
|
58
|
-
|
|
59
|
-
# whop accounts get
|
|
60
|
-
|
|
61
|
-
Retrieve Account
|
|
62
|
-
|
|
63
|
-
## Options
|
|
64
|
-
|
|
65
|
-
| Flag | Type | Required | Default | Description |
|
|
66
|
-
|------|------|----------|---------|-------------|
|
|
67
|
-
| `--account_id` | `string` | no | | Account ID, prefixed `biz_`, or its public route. |
|
|
68
|
-
|
|
69
|
-
---
|
|
70
|
-
|
|
71
|
-
# whop accounts list
|
|
72
|
-
|
|
73
|
-
List Accounts
|
|
74
|
-
|
|
75
|
-
## Options
|
|
76
|
-
|
|
77
|
-
| Flag | Type | Required | Default | Description |
|
|
78
|
-
|------|------|----------|---------|-------------|
|
|
79
|
-
| `--first` | `number` | no | | The number of accounts to return (default 10, max 50). |
|
|
80
|
-
| `--after` | `string` | no | | A cursor; returns accounts after this position. |
|
|
81
|
-
| `--last` | `number` | no | | The number of accounts to return from the end of the range. |
|
|
82
|
-
| `--before` | `string` | no | | A cursor; returns accounts before this position. |
|
|
83
|
-
| `--order` | `string` | no | | The field to sort accounts by. `volume` requires `stats:read` on the parent account. |
|
|
84
|
-
| `--direction` | `string` | no | | Sort direction. |
|
|
85
|
-
| `--status` | `string` | no | | Return only accounts with this status: `active` (includes accounts that have not entered payments review) or `suspended`. |
|
|
86
|
-
| `--query` | `string` | no | | Free-text filter on account title or ID. `%` and `_` match literally. |
|
|
87
|
-
| `--created_after` | `string` | no | | Return only accounts created after this ISO 8601 timestamp. |
|
|
88
|
-
| `--created_before` | `string` | no | | Return only accounts created before this ISO 8601 timestamp. |
|
|
89
|
-
| `--volume_min` | `number` | no | | Return only accounts whose lifetime USD volume is at least this value. Requires `stats:read` on the parent account. |
|
|
90
|
-
| `--volume_max` | `number` | no | | Return only accounts whose lifetime USD volume is at most this value. Requires `stats:read` on the parent account. |
|
|
91
|
-
| `--parent_account_id` | `string` | no | | For platforms: the parent account ID whose direct connected accounts to return. Requires `payout:account:read` on the parent account. |
|
|
92
|
-
|
|
93
|
-
---
|
|
94
|
-
|
|
95
|
-
# whop accounts me
|
|
96
|
-
|
|
97
|
-
Retrieve Requesting Account
|
|
98
|
-
|
|
99
|
-
---
|
|
100
|
-
|
|
101
|
-
# whop accounts preferences
|
|
102
|
-
|
|
103
|
-
Retrieve Account Preferences
|
|
104
|
-
|
|
105
|
-
## Options
|
|
106
|
-
|
|
107
|
-
| Flag | Type | Required | Default | Description |
|
|
108
|
-
|------|------|----------|---------|-------------|
|
|
109
|
-
| `--account_id` | `string` | no | | Account ID, prefixed `biz_`. |
|
|
110
|
-
|
|
111
|
-
---
|
|
112
|
-
|
|
113
|
-
# whop accounts reserves
|
|
114
|
-
|
|
115
|
-
List Account Reserves
|
|
116
|
-
|
|
117
|
-
## Options
|
|
118
|
-
|
|
119
|
-
| Flag | Type | Required | Default | Description |
|
|
120
|
-
|------|------|----------|---------|-------------|
|
|
121
|
-
| `--account_id` | `string` | no | | Account ID, prefixed `biz_`. |
|
|
122
|
-
|
|
123
|
-
---
|
|
124
|
-
|
|
125
|
-
# whop accounts transfer_ownership
|
|
126
|
-
|
|
127
|
-
Transfer Account Ownership
|
|
128
|
-
|
|
129
|
-
## Options
|
|
130
|
-
|
|
131
|
-
| Flag | Type | Required | Default | Description |
|
|
132
|
-
|------|------|----------|---------|-------------|
|
|
133
|
-
| `--account_id` | `string` | no | | Account ID, prefixed `biz_`. |
|
|
134
|
-
| `--as_partner` | `boolean` | no | | If true, the current owner is credited as the account's Whop partner, earning partner commission on its sales. Requires the current owner to already be an enrolled Whop partner. Skipped if the account already has an active partner. |
|
|
135
|
-
| `--identifier` | `string` | yes | | The user to transfer ownership to: a user ID (`user_*`) or an email address. An email address with no Whop account yet is sent an invite to create one. |
|
|
136
|
-
| `--idempotency-key` | `string` | no | | A unique key that makes this request safe to retry. See [Idempotent requests](https://docs.whop.com/developer/api/idempotency). |
|
|
137
|
-
|
|
138
|
-
> Confirm with the user before executing this destructive command.
|
|
139
|
-
|
|
140
|
-
---
|
|
141
|
-
|
|
142
|
-
# whop accounts update
|
|
143
|
-
|
|
144
|
-
Update Account
|
|
145
|
-
|
|
146
|
-
## Options
|
|
147
|
-
|
|
148
|
-
| Flag | Type | Required | Default | Description |
|
|
149
|
-
|------|------|----------|---------|-------------|
|
|
150
|
-
| `--account_id` | `string` | no | | Account ID, prefixed `biz_`. |
|
|
151
|
-
| `--affiliate_application_required` | `boolean` | no | | Whether prospective affiliates must submit an application before promoting this account. |
|
|
152
|
-
| `--affiliate_instructions` | `unknown` | no | | Guidelines shown to affiliates promoting this account. |
|
|
153
|
-
| `--banner_image` | `unknown` | no | | Account banner image, used as the cover photo when creating a Whop-managed Facebook page. Image files up to 10 MB, except `image/gif`. Pass a JSON object containing an `id` from [Create File](/api-reference/files/create-file). |
|
|
154
|
-
| `--business_address` | `object` | no | | Account business address used to calculate tax. A complete address in a supported country is required when `tax_remitted_by` is `self`. |
|
|
155
|
-
| `--business_type` | `unknown` | no | | High-level business category for the account. See the [business types and industries glossary](/api-reference/beta/accounts/account#business-types-and-industries-glossary) for valid values. |
|
|
156
|
-
| `--collect_vat_id` | `boolean` | no | | Whether checkout shows a VAT/tax ID field for buyers to optionally enter. Does not require a VAT ID to purchase. |
|
|
157
|
-
| `--country` | `unknown` | no | | Country where the account is located. |
|
|
158
|
-
| `--description` | `unknown` | no | | Account promotional description. When creating a Whop-managed Facebook page, it is truncated to 155 characters and used as the About text. |
|
|
159
|
-
| `--featured_affiliate_product_id` | `unknown` | no | | The ID of the product to feature for affiliates. Pass `null` to clear. |
|
|
160
|
-
| `--home_preferences` | `array` | no | | Public account home page preferences. |
|
|
161
|
-
| `--industry_group` | `unknown` | no | | Account industry group. See the [business types and industries glossary](/api-reference/beta/accounts/account#business-types-and-industries-glossary) for valid values. |
|
|
162
|
-
| `--industry_type` | `unknown` | no | | Specific industry vertical for the account. See the [business types and industries glossary](/api-reference/beta/accounts/account#business-types-and-industries-glossary) for valid values. |
|
|
163
|
-
| `--invoice_prefix` | `unknown` | no | | Prefix used for account invoices. |
|
|
164
|
-
| `--logo` | `unknown` | no | | Account logo, used as the profile picture when creating a Whop-managed Facebook page. Image files up to 5 MB. Pass a JSON object containing an `id` from [Create File](/api-reference/files/create-file). |
|
|
165
|
-
| `--metadata` | `object` | no | | Arbitrary key/value metadata to store on the account. |
|
|
166
|
-
| `--onboarding_type` | `unknown` | no | | The type of onboarding the account has completed. |
|
|
167
|
-
| `--opengraph_image` | `unknown` | no | | Open Graph preview media used when the account is shared. Image and video files up to 5 MB. Pass a JSON object containing an `id` from [Create File](/api-reference/files/create-file). |
|
|
168
|
-
| `--opengraph_image_variant` | `unknown` | no | | The account Open Graph image variant. |
|
|
169
|
-
| `--other_business_description` | `unknown` | no | | The description of the business type when business_type is other. |
|
|
170
|
-
| `--other_industry_description` | `unknown` | no | | The description of the industry type when industry_type is other. |
|
|
171
|
-
| `--product_tax_code_id` | `unknown` | no | | ID of the tax classification code applied by default to the account's products. See the available [product categories](https://docs.numeral.com/essentials/product-categories). |
|
|
172
|
-
| `--require_2fa` | `boolean` | no | | Whether the account requires authorized users to have two-factor authentication enabled. |
|
|
173
|
-
| `--route` | `unknown` | no | | The unique URL slug for the account. |
|
|
174
|
-
| `--send_customer_emails` | `boolean` | no | | Whether Whop sends transactional emails to customers on behalf of this account. |
|
|
175
|
-
| `--show_joined_whops` | `boolean` | no | | Whether the account appears in joined whops on other accounts. |
|
|
176
|
-
| `--show_reviews_dtc` | `boolean` | no | | Whether reviews are displayed on direct-to-consumer product pages. |
|
|
177
|
-
| `--show_user_directory` | `boolean` | no | | Whether the account shows users in the user directory. |
|
|
178
|
-
| `--social_links` | `array` | no | | The full list of social links to display for the account. |
|
|
179
|
-
| `--store_page_config` | `unknown` | no | | Account store page display configuration. |
|
|
180
|
-
| `--target_audience` | `unknown` | no | | The target audience for this account. |
|
|
181
|
-
| `--tax_collection_enabled_states` | `array` | no | | US state codes (50 states plus `DC`) where the account collects tax. Replaces the full set on update. Only settable when `tax_remitted_by` is `self`. |
|
|
182
|
-
| `--tax_identifiers` | `array` | no | | Account tax/VAT registrations to add or update. When `tax_remitted_by` is `self`, tax is calculated and collected only in the countries where the account holds a registration. |
|
|
183
|
-
| `--tax_remitted_by` | `string` | no | | Determines whether Whop or the account calculates and remits tax. The account must provide a supported-country business address when it self-remits. |
|
|
184
|
-
| `--tax_type` | `string` | no | | Determines whether tax is included in the listed price or added at checkout. |
|
|
185
|
-
| `--three_ds_level` | `string` | no | | Account-level 3D Secure behavior. Set `mandate_challenge` to require cardholder verification on supported card payments, or `null` to use the standard checkout flow. |
|
|
186
|
-
| `--title` | `unknown` | no | | The display name of the account. |
|
|
187
|
-
| `--use_logo_as_opengraph_image_fallback` | `boolean` | no | | Whether the account uses its logo as the fallback Open Graph image. |
|
|
188
|
-
|
|
189
|
-
> Confirm with the user before executing this destructive command.
|
|
190
|
-
|
|
191
|
-
---
|
|
192
|
-
|
|
193
|
-
# whop accounts update-preferences
|
|
194
|
-
|
|
195
|
-
Update Account Preferences
|
|
196
|
-
|
|
197
|
-
## Options
|
|
198
|
-
|
|
199
|
-
| Flag | Type | Required | Default | Description |
|
|
200
|
-
|------|------|----------|---------|-------------|
|
|
201
|
-
| `--account_id` | `string` | no | | Account ID, prefixed `biz_`. |
|
|
202
|
-
| `--ads_payment_methods` | `object` | no | | How the account pays for Whop Ads spend. `primary` is charged first; `backup` covers the charge when the primary fails. |
|
|
203
|
-
| `--ads_reporting_currency` | `string` | no | | Lowercase ISO currency code, such as `usd` or `eur`, used to display ad spend and stats. Defaults to `usd`. |
|
|
204
|
-
| `--ads_scheduling_timezone` | `string` | no | | IANA timezone (e.g. `America/New_York`) used to interpret campaign start/end times and to bucket reports. Cannot be cleared once set — pass a new value to change it. |
|
|
205
|
-
| `--ads_triple_whale_integration` | `object` | no | | Connects or disconnects the Triple Whale integration. Requires a connected Shopify store, since Triple Whale keys spend records by Shopify shop. |
|
|
206
|
-
| `--cards_auto_top_up` | `boolean` | no | | Whether incoming funds are automatically moved to the account's cards balance. Requires a cards balance on the account. |
|
|
207
|
-
|
|
208
|
-
> Confirm with the user before executing this destructive command.
|
|
209
|
-
|
|
210
|
-
## Steps that finish in the browser
|
|
211
|
-
|
|
212
|
-
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.
|
|
@@ -1,204 +0,0 @@
|
|
|
1
|
-
---
|
|
2
|
-
name: whop-ad-campaigns
|
|
3
|
-
description: Platform, objective, and budget for a set of ads. Run `whop ad-campaigns --help` for usage details.
|
|
4
|
-
requires_bin: whop
|
|
5
|
-
command: whop ad-campaigns
|
|
6
|
-
---
|
|
7
|
-
|
|
8
|
-
An Ad Campaign is the top-level container for paid ads on an ad network. It sets the platform, objective, and budget strategy shared by its [ad groups](https://docs.whop.com/api-reference/beta/ad-groups/ad-group) and ads.
|
|
9
|
-
|
|
10
|
-
Use the Ad Campaigns API to create campaigns, list campaigns for an account, retrieve or update campaign settings, and pause or resume campaign delivery.
|
|
11
|
-
|
|
12
|
-
# whop ad-campaigns create
|
|
13
|
-
|
|
14
|
-
Create an Ad Campaign
|
|
15
|
-
|
|
16
|
-
## Options
|
|
17
|
-
|
|
18
|
-
| Flag | Type | Required | Default | Description |
|
|
19
|
-
|------|------|----------|---------|-------------|
|
|
20
|
-
| `--account_id` | `string` | no | | The account to create the campaign under. Defaults to the account-scoped key's own account. |
|
|
21
|
-
| `--bid_type` | `string` | no | | How delivery bids in the ad auction: `minimum_cost` gets the most results for the budget, `average_target` holds an average cost per result, `maximum_target` never bids above a cap. Only for campaigns that own the budget. |
|
|
22
|
-
| `--budget_amount` | `number` | no | | The campaign's budget, in the ad account's currency. Required when budget_optimization is `ad_campaign`; omit when each ad group sets its own budget. |
|
|
23
|
-
| `--budget_optimization` | `string` | no | | Which level owns the budget: the whole campaign (`ad_campaign`) or each ad group individually (`ad_group`). Defaults to `ad_group`. |
|
|
24
|
-
| `--budget_type` | `string` | no | | Whether the budget is spent per day (`daily`) or over the campaign's full run (`lifetime`). Defaults to `daily`. |
|
|
25
|
-
| `--desired_cost_per_result` | `number` | no | | Cost per result to aim for (`average_target`) or never exceed (`maximum_target`). Only for campaigns that own the budget. |
|
|
26
|
-
| `--ends_at` | `string` | no | | When the campaign stops delivering, as an ISO 8601 timestamp. Only for campaigns that own the budget. |
|
|
27
|
-
| `--objective` | `string` | yes | | The goal the campaign optimizes toward. |
|
|
28
|
-
| `--platform` | `string` | yes | | The ad network the campaign runs on. |
|
|
29
|
-
| `--special_ad_categories` | `array` | no | | Regulated categories the campaign falls under. Ads in these categories are subject to extra targeting restrictions. |
|
|
30
|
-
| `--starts_at` | `string` | no | | When the campaign starts delivering, as an ISO 8601 timestamp. Only for campaigns that own the budget. |
|
|
31
|
-
| `--title` | `string` | yes | | The title of the campaign. |
|
|
32
|
-
| `--idempotency-key` | `string` | no | | A unique key that makes this request safe to retry. See [Idempotent requests](https://docs.whop.com/developer/api/idempotency). |
|
|
33
|
-
|
|
34
|
-
> Confirm with the user before executing this destructive command.
|
|
35
|
-
|
|
36
|
-
---
|
|
37
|
-
|
|
38
|
-
# whop ad-campaigns delete
|
|
39
|
-
|
|
40
|
-
Delete an Ad Campaign
|
|
41
|
-
|
|
42
|
-
## Arguments
|
|
43
|
-
|
|
44
|
-
| Name | Type | Required | Description |
|
|
45
|
-
|------|------|----------|-------------|
|
|
46
|
-
| `id` | `string` | yes | The ad campaign ID. |
|
|
47
|
-
|
|
48
|
-
> Confirm with the user before executing this destructive command.
|
|
49
|
-
|
|
50
|
-
---
|
|
51
|
-
|
|
52
|
-
# whop ad-campaigns duplicate
|
|
53
|
-
|
|
54
|
-
Duplicate an Ad Campaign
|
|
55
|
-
|
|
56
|
-
## Arguments
|
|
57
|
-
|
|
58
|
-
| Name | Type | Required | Description |
|
|
59
|
-
|------|------|----------|-------------|
|
|
60
|
-
| `id` | `string` | yes | The ad campaign ID. |
|
|
61
|
-
|
|
62
|
-
## Options
|
|
63
|
-
|
|
64
|
-
| Flag | Type | Required | Default | Description |
|
|
65
|
-
|------|------|----------|---------|-------------|
|
|
66
|
-
| `--count` | `number` | no | | Number of copies to create (1-10). Defaults to 1. |
|
|
67
|
-
| `--preserve_engagement` | `boolean` | no | | Whether the copied ads keep the original posts' engagement (likes, comments, shares). Defaults to false. |
|
|
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 ad-campaigns get
|
|
75
|
-
|
|
76
|
-
Retrieve an Ad Campaign
|
|
77
|
-
|
|
78
|
-
## Arguments
|
|
79
|
-
|
|
80
|
-
| Name | Type | Required | Description |
|
|
81
|
-
|------|------|----------|-------------|
|
|
82
|
-
| `id` | `string` | yes | The ad campaign ID. |
|
|
83
|
-
|
|
84
|
-
## Options
|
|
85
|
-
|
|
86
|
-
| Flag | Type | Required | Default | Description |
|
|
87
|
-
|------|------|----------|---------|-------------|
|
|
88
|
-
| `--stats_from` | `string` | no | | Start of the stats window. |
|
|
89
|
-
| `--stats_to` | `string` | no | | End of the stats window. |
|
|
90
|
-
| `--time_zone` | `string` | no | | IANA timezone the stats window is interpreted in. Defaults to UTC. |
|
|
91
|
-
| `--attribution_model` | `string` | no | | Attribution model the conversion stats count under (defaults to last_touch). Under both models a journey with any whop ad touch attributes to whop; the model picks which whop touch credits the entity and which non-whop source wins otherwise. |
|
|
92
|
-
|
|
93
|
-
---
|
|
94
|
-
|
|
95
|
-
# whop ad-campaigns list
|
|
96
|
-
|
|
97
|
-
List Ad Campaigns
|
|
98
|
-
|
|
99
|
-
## Options
|
|
100
|
-
|
|
101
|
-
| Flag | Type | Required | Default | Description |
|
|
102
|
-
|------|------|----------|---------|-------------|
|
|
103
|
-
| `--account_id` | `string` | no | | The account the campaigns belong to. Defaults to the account-scoped key's own account. |
|
|
104
|
-
| `--status` | `string` | no | | Only return campaigns with this status. |
|
|
105
|
-
| `--query` | `string` | no | | Filter campaigns by a title or ID substring. |
|
|
106
|
-
| `--order` | `string` | no | | The field to sort by. Defaults to created_at. Stat columns (spend, impressions, …) rank over the stats_from/stats_to window across the whole list, not just the current page. results, cost_per_result and return_on_ad_spend rank by the same Whop pixel-attributed values the response reports. |
|
|
107
|
-
| `--direction` | `string` | no | | The sort direction. Defaults to desc. |
|
|
108
|
-
| `--created_before` | `string` | no | | Only return campaigns created before this timestamp. |
|
|
109
|
-
| `--created_after` | `string` | no | | Only return campaigns created after this timestamp. |
|
|
110
|
-
| `--stats_from` | `string` | no | | Start of the stats window. Defaults to all-time. |
|
|
111
|
-
| `--stats_to` | `string` | no | | End of the stats window. Defaults to now. |
|
|
112
|
-
| `--time_zone` | `string` | no | | IANA timezone (e.g. America/New_York) the stats window is interpreted in. Bare stats_from/stats_to dates resolve to day boundaries on this clock. Defaults to UTC. |
|
|
113
|
-
| `--attribution_model` | `string` | no | | Attribution model the conversion stats count under (defaults to last_touch). Under both models a journey with any whop ad touch attributes to whop; the model picks which whop touch credits the entity and which non-whop source wins otherwise. |
|
|
114
|
-
| `--first` | `number` | no | `20` | The number of campaigns to return. |
|
|
115
|
-
| `--after` | `string` | no | | Cursor to fetch the page after (from page_info.end_cursor). |
|
|
116
|
-
| `--last` | `number` | no | | The number of campaigns to return from the end of the range. |
|
|
117
|
-
| `--before` | `string` | no | | Cursor to fetch the page before (from page_info.start_cursor). |
|
|
118
|
-
|
|
119
|
-
---
|
|
120
|
-
|
|
121
|
-
# whop ad-campaigns pause
|
|
122
|
-
|
|
123
|
-
Pause an Ad Campaign
|
|
124
|
-
|
|
125
|
-
## Arguments
|
|
126
|
-
|
|
127
|
-
| Name | Type | Required | Description |
|
|
128
|
-
|------|------|----------|-------------|
|
|
129
|
-
| `id` | `string` | yes | The ad campaign ID. |
|
|
130
|
-
|
|
131
|
-
## Options
|
|
132
|
-
|
|
133
|
-
| Flag | Type | Required | Default | Description |
|
|
134
|
-
|------|------|----------|---------|-------------|
|
|
135
|
-
| `--idempotency-key` | `string` | no | | A unique key that makes this request safe to retry. See [Idempotent requests](https://docs.whop.com/developer/api/idempotency). |
|
|
136
|
-
|
|
137
|
-
> Confirm with the user before executing this destructive command.
|
|
138
|
-
|
|
139
|
-
---
|
|
140
|
-
|
|
141
|
-
# whop ad-campaigns retry_payment
|
|
142
|
-
|
|
143
|
-
Retry a Failed Ad Campaign Payment
|
|
144
|
-
|
|
145
|
-
## Arguments
|
|
146
|
-
|
|
147
|
-
| Name | Type | Required | Description |
|
|
148
|
-
|------|------|----------|-------------|
|
|
149
|
-
| `id` | `string` | yes | The ad campaign ID. |
|
|
150
|
-
|
|
151
|
-
## Options
|
|
152
|
-
|
|
153
|
-
| Flag | Type | Required | Default | Description |
|
|
154
|
-
|------|------|----------|---------|-------------|
|
|
155
|
-
| `--idempotency-key` | `string` | no | | A unique key that makes this request safe to retry. See [Idempotent requests](https://docs.whop.com/developer/api/idempotency). |
|
|
156
|
-
|
|
157
|
-
> Confirm with the user before executing this destructive command.
|
|
158
|
-
|
|
159
|
-
---
|
|
160
|
-
|
|
161
|
-
# whop ad-campaigns unpause
|
|
162
|
-
|
|
163
|
-
Unpause an Ad Campaign
|
|
164
|
-
|
|
165
|
-
## Arguments
|
|
166
|
-
|
|
167
|
-
| Name | Type | Required | Description |
|
|
168
|
-
|------|------|----------|-------------|
|
|
169
|
-
| `id` | `string` | yes | The ad campaign ID. |
|
|
170
|
-
|
|
171
|
-
## Options
|
|
172
|
-
|
|
173
|
-
| Flag | Type | Required | Default | Description |
|
|
174
|
-
|------|------|----------|---------|-------------|
|
|
175
|
-
| `--idempotency-key` | `string` | no | | A unique key that makes this request safe to retry. See [Idempotent requests](https://docs.whop.com/developer/api/idempotency). |
|
|
176
|
-
|
|
177
|
-
> Confirm with the user before executing this destructive command.
|
|
178
|
-
|
|
179
|
-
---
|
|
180
|
-
|
|
181
|
-
# whop ad-campaigns update
|
|
182
|
-
|
|
183
|
-
Update an Ad Campaign
|
|
184
|
-
|
|
185
|
-
## Arguments
|
|
186
|
-
|
|
187
|
-
| Name | Type | Required | Description |
|
|
188
|
-
|------|------|----------|-------------|
|
|
189
|
-
| `id` | `string` | yes | The ad campaign ID. |
|
|
190
|
-
|
|
191
|
-
## Options
|
|
192
|
-
|
|
193
|
-
| Flag | Type | Required | Default | Description |
|
|
194
|
-
|------|------|----------|---------|-------------|
|
|
195
|
-
| `--bid_type` | `string` | no | | How delivery bids in the ad auction: `minimum_cost` gets the most results for the budget, `average_target` holds an average cost per result, `maximum_target` never bids above a cap. Switching to `minimum_cost` clears the cap amounts stored on the campaign's ad groups. Only for campaigns that own the budget. |
|
|
196
|
-
| `--budget_amount` | `number` | no | | The campaign budget, in the account's currency. Interpreted as daily or lifetime per the campaign's existing budget type. |
|
|
197
|
-
| `--budget_optimization` | `string` | no | | Which level owns the budget: the whole campaign (`ad_campaign`) or each ad group individually (`ad_group`). Only changeable before the campaign is live on the ad network; switching to `ad_campaign` requires budget_amount in the same request, and switching to `ad_group` clears the campaign budget. |
|
|
198
|
-
| `--ends_at` | `string` | no | | When the campaign stops delivering, as an ISO 8601 timestamp. Only for campaigns that own the budget. |
|
|
199
|
-
| `--special_ad_categories` | `array` | no | | Regulated categories the campaign falls under. Editable on any campaign, draft or launched; pass an empty array to clear. |
|
|
200
|
-
| `--starts_at` | `string` | no | | When the campaign starts delivering, as an ISO 8601 timestamp. Only for campaigns that own the budget. |
|
|
201
|
-
| `--status` | `string` | no | | Set to active to launch a draft campaign (moderates and pushes it live). Live-campaign pause and resume use the pause and unpause actions. |
|
|
202
|
-
| `--title` | `string` | no | | The name of the campaign. |
|
|
203
|
-
|
|
204
|
-
> Confirm with the user before executing this destructive command.
|