@whop/cli 0.17.0 → 0.18.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/dist/index.js CHANGED
@@ -14271,7 +14271,7 @@ var native_spec_default = {
14271
14271
  properties: {
14272
14272
  affiliate_code: {
14273
14273
  description: "The username, if any, of the partner who referred this account",
14274
- example: "random-username-48-xxxxxxxx",
14274
+ example: "random-username-38-xxxxxxxx",
14275
14275
  type: ["string", "null"]
14276
14276
  },
14277
14277
  blueprint_id: {
@@ -14426,6 +14426,85 @@ var native_spec_default = {
14426
14426
  ],
14427
14427
  type: "object"
14428
14428
  },
14429
+ ads_certifications: {
14430
+ description: "The account's advertising certifications, one entry per certification type Whop offers. Start an application by setting a type's `status` to `pending_information` via `PATCH`, then answer the fields it requests via `GET`/`PATCH /verifications/{id}`.",
14431
+ items: {
14432
+ properties: {
14433
+ approved_countries: {
14434
+ description: "Countries every approved application of this type covers, as ISO 3166-1 alpha-2 codes. Ads targeting only these countries are exempt from the category's restrictions.",
14435
+ items: {
14436
+ type: "string"
14437
+ },
14438
+ type: "array"
14439
+ },
14440
+ business_name: {
14441
+ description: "The business name on the latest application.",
14442
+ type: ["string", "null"]
14443
+ },
14444
+ business_type: {
14445
+ description: "The kind of business on the latest application. `null` until the account applies.",
14446
+ enum: [
14447
+ "online_pharmacy",
14448
+ "pharmaceutical_manufacturer",
14449
+ "telehealth_provider",
14450
+ null
14451
+ ],
14452
+ example: "online_pharmacy",
14453
+ type: ["string", "null"]
14454
+ },
14455
+ certification_type: {
14456
+ description: "The certification this entry describes.",
14457
+ enum: ["prescription_drug_ads"],
14458
+ example: "prescription_drug_ads",
14459
+ type: "string"
14460
+ },
14461
+ countries: {
14462
+ description: "Countries the latest application covers, as ISO 3166-1 alpha-2 codes.",
14463
+ items: {
14464
+ type: "string"
14465
+ },
14466
+ type: "array"
14467
+ },
14468
+ denial_reason: {
14469
+ description: "Why the latest application was denied. `null` unless `status` is `denied`.",
14470
+ type: ["string", "null"]
14471
+ },
14472
+ request_id: {
14473
+ description: "The latest application's request ID, prefixed `inrq_`. `null` until the account applies.",
14474
+ type: ["string", "null"]
14475
+ },
14476
+ status: {
14477
+ description: "`not_started` until the account applies; `pending_information` while an application waits for answers; `in_review` once submitted; then `approved` or `denied`.",
14478
+ enum: [
14479
+ "not_started",
14480
+ "pending_information",
14481
+ "in_review",
14482
+ "approved",
14483
+ "denied"
14484
+ ],
14485
+ example: "not_started",
14486
+ type: "string"
14487
+ },
14488
+ url: {
14489
+ description: "The website on the latest application.",
14490
+ type: ["string", "null"]
14491
+ }
14492
+ },
14493
+ required: [
14494
+ "certification_type",
14495
+ "status",
14496
+ "request_id",
14497
+ "business_name",
14498
+ "url",
14499
+ "business_type",
14500
+ "countries",
14501
+ "approved_countries",
14502
+ "denial_reason"
14503
+ ],
14504
+ type: "object"
14505
+ },
14506
+ type: "array"
14507
+ },
14429
14508
  ads_payment_methods: {
14430
14509
  description: "How the account pays for Whop Ads spend. `primary` is charged first; `backup` covers the charge when the primary fails. `null` until ads billing has been configured.",
14431
14510
  properties: {
@@ -14590,6 +14669,7 @@ var native_spec_default = {
14590
14669
  "ads_reporting_currency",
14591
14670
  "ads_scheduling_timezone",
14592
14671
  "ads_agreement",
14672
+ "ads_certifications",
14593
14673
  "ads_triple_whale_integration",
14594
14674
  "cards_auto_top_up",
14595
14675
  "cards_notifications",
@@ -14658,6 +14738,26 @@ var native_spec_default = {
14658
14738
  "application/json": {
14659
14739
  schema: {
14660
14740
  properties: {
14741
+ ads_certifications: {
14742
+ additionalProperties: {
14743
+ properties: {
14744
+ status: {
14745
+ description: "Must be `pending_information`.",
14746
+ enum: ["pending_information"],
14747
+ type: "string"
14748
+ }
14749
+ },
14750
+ required: ["status"],
14751
+ type: "object"
14752
+ },
14753
+ description: "Opens an advertising certification application. Keyed by certification type (`prescription_drug_ads`); set the entry's `status` to `pending_information` to start, then answer the requested fields via `PATCH /verifications/{id}`. Only one application per type can be open at a time; every other status is set by Whop's review.",
14754
+ example: {
14755
+ prescription_drug_ads: {
14756
+ status: "pending_information"
14757
+ }
14758
+ },
14759
+ type: "object"
14760
+ },
14661
14761
  ads_payment_methods: {
14662
14762
  description: "How the account pays for Whop Ads spend. `primary` is charged first; `backup` covers the charge when the primary fails.",
14663
14763
  properties: {
@@ -14797,6 +14897,86 @@ var native_spec_default = {
14797
14897
  ],
14798
14898
  type: "object"
14799
14899
  },
14900
+ ads_certifications: {
14901
+ description: "The account's advertising certifications, one entry per certification type Whop offers. Start an application by setting a type's `status` to `pending_information` via `PATCH`, then answer the fields it requests via `GET`/`PATCH /verifications/{id}`.",
14902
+ items: {
14903
+ properties: {
14904
+ approved_countries: {
14905
+ description: "Countries every approved application of this type covers, as ISO 3166-1 alpha-2 codes. Ads targeting only these countries are exempt from the category's restrictions.",
14906
+ items: {
14907
+ type: "string"
14908
+ },
14909
+ type: "array"
14910
+ },
14911
+ business_name: {
14912
+ description: "The business name on the latest application.",
14913
+ type: ["string", "null"]
14914
+ },
14915
+ business_type: {
14916
+ description: "The kind of business on the latest application. `null` until the account applies.",
14917
+ enum: [
14918
+ "online_pharmacy",
14919
+ "pharmaceutical_manufacturer",
14920
+ "telehealth_provider",
14921
+ null
14922
+ ],
14923
+ example: "online_pharmacy",
14924
+ type: ["string", "null"]
14925
+ },
14926
+ certification_type: {
14927
+ description: "The certification this entry describes.",
14928
+ enum: ["prescription_drug_ads"],
14929
+ example: "prescription_drug_ads",
14930
+ type: "string"
14931
+ },
14932
+ countries: {
14933
+ description: "Countries the latest application covers, as ISO 3166-1 alpha-2 codes.",
14934
+ items: {
14935
+ type: "string"
14936
+ },
14937
+ type: "array"
14938
+ },
14939
+ denial_reason: {
14940
+ description: "Why the latest application was denied. `null` unless `status` is `denied`.",
14941
+ type: ["string", "null"]
14942
+ },
14943
+ request_id: {
14944
+ description: "The latest application's request ID, prefixed `inrq_`. `null` until the account applies.",
14945
+ example: "inrq_xxxxxxxxxxxxxx",
14946
+ type: ["string", "null"]
14947
+ },
14948
+ status: {
14949
+ description: "`not_started` until the account applies; `pending_information` while an application waits for answers; `in_review` once submitted; then `approved` or `denied`.",
14950
+ enum: [
14951
+ "not_started",
14952
+ "pending_information",
14953
+ "in_review",
14954
+ "approved",
14955
+ "denied"
14956
+ ],
14957
+ example: "not_started",
14958
+ type: "string"
14959
+ },
14960
+ url: {
14961
+ description: "The website on the latest application.",
14962
+ type: ["string", "null"]
14963
+ }
14964
+ },
14965
+ required: [
14966
+ "certification_type",
14967
+ "status",
14968
+ "request_id",
14969
+ "business_name",
14970
+ "url",
14971
+ "business_type",
14972
+ "countries",
14973
+ "approved_countries",
14974
+ "denial_reason"
14975
+ ],
14976
+ type: "object"
14977
+ },
14978
+ type: "array"
14979
+ },
14800
14980
  ads_payment_methods: {
14801
14981
  description: "How the account pays for Whop Ads spend. `primary` is charged first; `backup` covers the charge when the primary fails. `null` until ads billing has been configured.",
14802
14982
  properties: {
@@ -14961,6 +15141,7 @@ var native_spec_default = {
14961
15141
  "ads_reporting_currency",
14962
15142
  "ads_scheduling_timezone",
14963
15143
  "ads_agreement",
15144
+ "ads_certifications",
14964
15145
  "ads_triple_whale_integration",
14965
15146
  "cards_auto_top_up",
14966
15147
  "cards_notifications",
@@ -14988,6 +15169,10 @@ var native_spec_default = {
14988
15169
  "404": {
14989
15170
  $ref: "#/components/responses/NotFound",
14990
15171
  description: "account not found"
15172
+ },
15173
+ "409": {
15174
+ $ref: "#/components/responses/Conflict",
15175
+ description: "an application for that certification is already open"
14991
15176
  }
14992
15177
  },
14993
15178
  security: [
@@ -27591,7 +27776,7 @@ var native_spec_default = {
27591
27776
  },
27592
27777
  "/deposits": {
27593
27778
  post: {
27594
- description: "Retrieve the deposit methods for an account, including crypto and bank transfer. Crypto deposits require a $10 minimum.",
27779
+ description: "Retrieve the deposit methods for an account, including crypto and bank transfer. Bitcoin deposits are converted by Relay directly to USDT on Plasma in the destination account's wallet. Crypto deposits require a $10 minimum.",
27595
27780
  operationId: "create",
27596
27781
  parameters: [
27597
27782
  {
@@ -27746,6 +27931,7 @@ var native_spec_default = {
27746
27931
  enum: [
27747
27932
  "Ethereum",
27748
27933
  "Solana",
27934
+ "Bitcoin",
27749
27935
  "Base",
27750
27936
  "BNB Smart Chain",
27751
27937
  "Hyperliquid",
@@ -27764,7 +27950,7 @@ var native_spec_default = {
27764
27950
  properties: {
27765
27951
  icon_url: {
27766
27952
  description: "Token icon URL. Null when no icon is available.",
27767
- example: "https://whop.com/_static/images/crypto/ethereum.svg",
27953
+ example: "https://whop.com/_static/images/crypto/pyusd.svg",
27768
27954
  type: ["string", "null"]
27769
27955
  },
27770
27956
  name: {
@@ -27772,6 +27958,7 @@ var native_spec_default = {
27772
27958
  enum: [
27773
27959
  "ARB",
27774
27960
  "BNB",
27961
+ "BTC",
27775
27962
  "ETH",
27776
27963
  "EURC",
27777
27964
  "HYPE",
@@ -27790,7 +27977,7 @@ var native_spec_default = {
27790
27977
  "pUSD",
27791
27978
  "wETH"
27792
27979
  ],
27793
- example: "wETH",
27980
+ example: "PYUSD",
27794
27981
  type: "string"
27795
27982
  }
27796
27983
  },
@@ -29480,7 +29667,7 @@ var native_spec_default = {
29480
29667
  }
29481
29668
  }
29482
29669
  },
29483
- description: "empty for a connected (child) account"
29670
+ description: "recommendations listed"
29484
29671
  },
29485
29672
  "400": {
29486
29673
  $ref: "#/components/responses/InvalidParameters",
@@ -33084,6 +33271,7 @@ var native_spec_default = {
33084
33271
  schema: {
33085
33272
  items: {
33086
33273
  enum: [
33274
+ "account_settlement",
33087
33275
  "ad_budget_release",
33088
33276
  "ad_campaign_budget",
33089
33277
  "ad_publisher_payout",
@@ -33511,6 +33699,7 @@ var native_spec_default = {
33511
33699
  schema: {
33512
33700
  items: {
33513
33701
  enum: [
33702
+ "account_settlement",
33514
33703
  "ad_budget_release",
33515
33704
  "ad_campaign_budget",
33516
33705
  "ad_publisher_payout",
@@ -36859,6 +37048,15 @@ var native_spec_default = {
36859
37048
  enum: ["first", "second", "blueprint"],
36860
37049
  type: "string"
36861
37050
  }
37051
+ },
37052
+ {
37053
+ description: "Case-insensitive business-name prefix, or an exact `biz_` account ID. Surrounding whitespace is ignored; blank values apply no filter.",
37054
+ in: "query",
37055
+ name: "business_prefix_query",
37056
+ required: false,
37057
+ schema: {
37058
+ type: "string"
37059
+ }
36862
37060
  }
36863
37061
  ],
36864
37062
  responses: {
@@ -37723,7 +37921,13 @@ var native_spec_default = {
37723
37921
  required: false,
37724
37922
  schema: {
37725
37923
  items: {
37726
- enum: ["sales", "ad_spend", "transfer", "card_interchange"],
37924
+ enum: [
37925
+ "sales",
37926
+ "ad_spend",
37927
+ "transfer",
37928
+ "card_interchange",
37929
+ "onboarding_reward"
37930
+ ],
37727
37931
  example: "sales",
37728
37932
  type: "string"
37729
37933
  },
@@ -37916,12 +38120,13 @@ var native_spec_default = {
37916
38120
  type: ["string", "null"]
37917
38121
  },
37918
38122
  income_source: {
37919
- description: "Which income source the commission is on: product-sales gross profit, Whop Ads spend billed to the business, platform balance transfer fees, or Whop Card interchange.",
38123
+ description: "Which income source the commission is on: product-sales gross profit, Whop Ads spend billed to the business, platform balance transfer fees, Whop Card interchange, or a fixed onboarding reward paid to the partner when a referred business qualifies.",
37920
38124
  enum: [
37921
38125
  "sales",
37922
38126
  "ad_spend",
37923
38127
  "transfer",
37924
- "card_interchange"
38128
+ "card_interchange",
38129
+ "onboarding_reward"
37925
38130
  ],
37926
38131
  example: "sales",
37927
38132
  type: "string"
@@ -38089,6 +38294,42 @@ var native_spec_default = {
38089
38294
  ],
38090
38295
  type: "object"
38091
38296
  },
38297
+ {
38298
+ properties: {
38299
+ business_id: {
38300
+ description: "The referred business that qualified.",
38301
+ type: "string"
38302
+ },
38303
+ created_at: {
38304
+ example: "2026-01-01T12:00:00.000Z",
38305
+ format: "date-time",
38306
+ type: "string"
38307
+ },
38308
+ id: {
38309
+ description: "The onboarding reward the referred business qualified for, prefixed `onbr_`.",
38310
+ example: "onbr_xxxxxxxxxxxxxx",
38311
+ type: ["string", "null"]
38312
+ },
38313
+ object: {
38314
+ enum: ["onboarding_reward"],
38315
+ example: "onboarding_reward",
38316
+ type: "string"
38317
+ },
38318
+ slug: {
38319
+ description: "The reward link slug.",
38320
+ example: "launch-reward",
38321
+ type: ["string", "null"]
38322
+ }
38323
+ },
38324
+ required: [
38325
+ "object",
38326
+ "id",
38327
+ "slug",
38328
+ "business_id",
38329
+ "created_at"
38330
+ ],
38331
+ type: "object"
38332
+ },
38092
38333
  {
38093
38334
  type: "null"
38094
38335
  }
@@ -41785,6 +42026,7 @@ var native_spec_default = {
41785
42026
  "kyc_completed",
41786
42027
  "rmi_clear",
41787
42028
  "identity_rfi_clear",
42029
+ "guardian_id_clear",
41788
42030
  "ecommerce_fulfillment_connected",
41789
42031
  "block_move_money_out",
41790
42032
  "block_move_money_out_set_by_parent",
@@ -45757,7 +45999,7 @@ var native_spec_default = {
45757
45999
  },
45758
46000
  "/plans/{id}": {
45759
46001
  delete: {
45760
- description: "Permanently delete a plan from a product. Existing memberships on this plan will not be affected.",
46002
+ description: "Delete a plan from a product. It stops selling immediately; existing memberships on this plan will not be affected.",
45761
46003
  operationId: "delete",
45762
46004
  responses: {
45763
46005
  "200": {
@@ -46765,6 +47007,26 @@ var native_spec_default = {
46765
47007
  example: "Full interior extraction, leather conditioning, and an ozone odor treatment.",
46766
47008
  type: ["string", "null"]
46767
47009
  },
47010
+ gallery_images: {
47011
+ description: "Images or videos displayed in the product gallery, in display order. Replaces the existing gallery. Send an empty array to clear it; omit or pass null to leave it unchanged. A banner image does not populate the gallery.",
47012
+ items: {
47013
+ properties: {
47014
+ direct_upload_id: {
47015
+ description: "The signed ID of a completed direct upload, as an alternative to id.",
47016
+ example: "eyJfcmFpbHMiOnsiZGF0YSI6MSwicHVyIjoiYmxvYl9pZCJ9fQ==--xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
47017
+ type: "string"
47018
+ },
47019
+ id: {
47020
+ description: "The tag of an already-uploaded attachment.",
47021
+ example: "file_xxxxxxxxxxxxxx",
47022
+ type: "string"
47023
+ }
47024
+ },
47025
+ type: "object"
47026
+ },
47027
+ maxItems: 8,
47028
+ type: ["array", "null"]
47029
+ },
46768
47030
  global_affiliate_percentage: {
46769
47031
  description: "The commission rate affiliates earn.",
46770
47032
  example: 10,
@@ -47046,6 +47308,26 @@ var native_spec_default = {
47046
47308
  example: "Full interior extraction, leather conditioning, and an ozone odor treatment.",
47047
47309
  type: ["string", "null"]
47048
47310
  },
47311
+ gallery_images: {
47312
+ description: "Images or videos displayed in the product gallery, in display order. Replaces the existing gallery. Send an empty array to clear it; omit or pass null to leave it unchanged. A banner image does not populate the gallery.",
47313
+ items: {
47314
+ properties: {
47315
+ direct_upload_id: {
47316
+ description: "The signed ID of a completed direct upload, as an alternative to id.",
47317
+ example: "eyJfcmFpbHMiOnsiZGF0YSI6MSwicHVyIjoiYmxvYl9pZCJ9fQ==--xxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxxx",
47318
+ type: "string"
47319
+ },
47320
+ id: {
47321
+ description: "The tag of an already-uploaded attachment.",
47322
+ example: "file_xxxxxxxxxxxxxx",
47323
+ type: "string"
47324
+ }
47325
+ },
47326
+ type: "object"
47327
+ },
47328
+ maxItems: 8,
47329
+ type: ["array", "null"]
47330
+ },
47049
47331
  headline: {
47050
47332
  description: "A short marketing headline for the product page.",
47051
47333
  example: "Steam, shampoo, and odor removal in one visit",
@@ -56954,6 +57236,13 @@ var native_spec_default = {
56954
57236
  enum: ["raw", "vault_token"],
56955
57237
  example: "raw",
56956
57238
  type: "string"
57239
+ },
57240
+ values: {
57241
+ description: "Every chosen option for a `select` item that accepts more than one answer, such as the countries an advertising certification covers. Use `value` for every other item.",
57242
+ items: {
57243
+ type: "string"
57244
+ },
57245
+ type: "array"
56957
57246
  }
56958
57247
  },
56959
57248
  required: ["id"],
@@ -57147,6 +57436,13 @@ var native_spec_default = {
57147
57436
  enum: ["raw", "vault_token"],
57148
57437
  example: "raw",
57149
57438
  type: "string"
57439
+ },
57440
+ values: {
57441
+ description: "Every chosen option for a `select` item that accepts more than one answer, such as the countries an advertising certification covers. Use `value` for every other item.",
57442
+ items: {
57443
+ type: "string"
57444
+ },
57445
+ type: "array"
57150
57446
  }
57151
57447
  },
57152
57448
  required: ["id"],
@@ -57639,6 +57935,7 @@ var native_spec_default = {
57639
57935
  "ledger_account.funds_available",
57640
57936
  "swap.completed",
57641
57937
  "deposit.succeeded",
57938
+ "financial_activity.funds_available",
57642
57939
  "transfer.created",
57643
57940
  "transfer.completed",
57644
57941
  "transfer.failed",
@@ -58011,6 +58308,7 @@ var native_spec_default = {
58011
58308
  "ledger_account.funds_available",
58012
58309
  "swap.completed",
58013
58310
  "deposit.succeeded",
58311
+ "financial_activity.funds_available",
58014
58312
  "transfer.created",
58015
58313
  "transfer.completed",
58016
58314
  "transfer.failed",
@@ -63878,6 +64176,143 @@ var native_spec_default = {
63878
64176
  tags: ["Exports"]
63879
64177
  }
63880
64178
  },
64179
+ "financial_activity.funds_available": {
64180
+ post: {
64181
+ description: "Sent when a settlement moves one release date's pending funds into the account's available balance \u2014 one event per release date that cleared, carrying that settlement's ledger line. Its posted_at is the release date at midnight UTC, the same value as settlement_time_at on every payment it clears\n\nRequired permissions:\n - `webhook_receive:financial_activity`",
64182
+ parameters: [
64183
+ {
64184
+ in: "header",
64185
+ name: "webhook-id",
64186
+ required: true,
64187
+ schema: {
64188
+ description: "A unique identifier for this webhook request",
64189
+ example: "msg_xxxxxxxxxxxxxxxxxxxxxxxx",
64190
+ type: "string"
64191
+ }
64192
+ },
64193
+ {
64194
+ in: "header",
64195
+ name: "webhook-signature",
64196
+ required: true,
64197
+ schema: {
64198
+ description: "The signature of the webhook request with the webhook version prepended",
64199
+ example: "v1,BASE64ENCODEDSIGNATURE",
64200
+ type: "string"
64201
+ }
64202
+ },
64203
+ {
64204
+ in: "header",
64205
+ name: "webhook-timestamp",
64206
+ required: true,
64207
+ schema: {
64208
+ description: "The timestamp in seconds since the Unix epoch that the webhook was sent at on the server",
64209
+ example: "1727606400",
64210
+ type: "string"
64211
+ }
64212
+ }
64213
+ ],
64214
+ requestBody: {
64215
+ content: {
64216
+ "application/json": {
64217
+ example: {
64218
+ account_id: "biz_xxxxxxxxxxxxxx",
64219
+ api_version: "v1",
64220
+ api_version_date: "2026-09-11-1",
64221
+ data: {
64222
+ amount: "512345000000",
64223
+ available_at: "2026-01-01T12:00:00.000Z",
64224
+ currency: {
64225
+ code: "usd",
64226
+ precision: "100000000"
64227
+ },
64228
+ id: "line_7",
64229
+ line_type: "account_settlement",
64230
+ object: "ledger_activity",
64231
+ posted_at: "2026-01-02T12:00:00.000Z",
64232
+ resource: null,
64233
+ source: {
64234
+ id: "wallet_release_date_settlement|ldgr_xxxxxxxxxxxxxx|2026-01-01|usd",
64235
+ object: "settlement",
64236
+ release_date: "2026-01-01",
64237
+ settled_at: "2026-01-01T12:00:00.000Z"
64238
+ },
64239
+ usd_amount: "5123.45"
64240
+ },
64241
+ id: "msg_xxxxxxxxxxxxxxxxxxxxxxxx",
64242
+ timestamp: "2025-01-01T00:00:00.000Z",
64243
+ type: "financial_activity.funds_available"
64244
+ },
64245
+ schema: {
64246
+ properties: {
64247
+ account_id: {
64248
+ description: "The account ID that this webhook event is associated with",
64249
+ example: "biz_xxxxxxxxxxxxxx",
64250
+ type: ["string", "null"]
64251
+ },
64252
+ api_version: {
64253
+ const: "v1",
64254
+ description: "The API version for this webhook",
64255
+ example: "v1",
64256
+ type: "string"
64257
+ },
64258
+ api_version_date: {
64259
+ description: "The dated API version (Api-Version-Date) the payload is serialized to",
64260
+ example: "2026-07-20",
64261
+ type: ["string", "null"]
64262
+ },
64263
+ data: {
64264
+ $ref: "#/components/schemas/LedgerActivity"
64265
+ },
64266
+ id: {
64267
+ description: "A unique ID for every single webhook request",
64268
+ example: "msg_xxxxxxxxxxxxxxxxxxxxxxxx",
64269
+ type: "string"
64270
+ },
64271
+ previous_attributes: {
64272
+ description: "For some `.updated` events, the old values of the payload fields that changed, keyed by field name. Omitted when no capture is available for the event",
64273
+ type: "object"
64274
+ },
64275
+ timestamp: {
64276
+ description: "The timestamp in ISO 8601 format that the webhook was sent at on the server",
64277
+ example: "2025-01-01T00:00:00.000Z",
64278
+ format: "date-time",
64279
+ type: "string"
64280
+ },
64281
+ type: {
64282
+ const: "financial_activity.funds_available",
64283
+ description: "The webhook event type",
64284
+ example: "financial_activity.funds_available",
64285
+ type: "string"
64286
+ }
64287
+ },
64288
+ required: [
64289
+ "id",
64290
+ "api_version",
64291
+ "api_version_date",
64292
+ "timestamp",
64293
+ "type",
64294
+ "data"
64295
+ ],
64296
+ type: "object"
64297
+ }
64298
+ }
64299
+ }
64300
+ },
64301
+ responses: {
64302
+ "200": {
64303
+ description: "Return a 200 status to indicate that the data was received successfully"
64304
+ }
64305
+ },
64306
+ summary: "Financial Activity Funds available",
64307
+ tags: ["Ledgers"],
64308
+ "x-mint": {
64309
+ metadata: {
64310
+ title: "Financial Activity Funds Available",
64311
+ sidebarTitle: "Financial Activity Funds Available"
64312
+ }
64313
+ }
64314
+ }
64315
+ },
63881
64316
  "identity_profile.updated": {
63882
64317
  post: {
63883
64318
  description: "Sent whenever an identity profile changes state \u2014 a verification is approved, needs action, or is rejected, or a Whop review opens or clears. Every other identity_profile event is also delivered as an identity_profile.updated, so you can subscribe to this single event and re-fetch the verification to read its current status.\n\nRequired permissions:\n - `identity:read`\n - `webhook_receive:identity_profiles`",
@@ -70318,6 +70753,7 @@ var native_spec_default = {
70318
70753
  claim_url: "https://whop.com/claim",
70319
70754
  created_at: "2026-01-01T12:00:00.000Z",
70320
70755
  estimated_arrival: "2026-01-01T12:00:00.000Z",
70756
+ fee_kind: "swap",
70321
70757
  from_amount: "502.51",
70322
70758
  from_currency: "usdt",
70323
70759
  id: "airdrp_xxxxxxxxxxxxxx",
@@ -74268,7 +74704,7 @@ var native_spec_default = {
74268
74704
  type: ["number", "null"]
74269
74705
  },
74270
74706
  budget_type: {
74271
- description: "Whether `budget_amount` is spent per day (`daily`) or over the ad group's full run (`lifetime`).",
74707
+ description: "Whether `budget_amount` is spent per day (`daily`) or over the ad group's full run (`lifetime`). A `lifetime` ad group also needs `ends_at`, at least 24 hours after it starts.",
74272
74708
  enum: ["daily", "lifetime", null],
74273
74709
  example: "daily",
74274
74710
  type: ["string", "null"]
@@ -78126,7 +78562,7 @@ var native_spec_default = {
78126
78562
  },
78127
78563
  id: {
78128
78564
  description: "Livestream feed ID.",
78129
- example: "lfeed_3",
78565
+ example: "lfeed_1",
78130
78566
  type: "string"
78131
78567
  },
78132
78568
  recording_status: {
@@ -79679,7 +80115,7 @@ var native_spec_default = {
79679
80115
  },
79680
80116
  action_type: {
79681
80117
  description: "The playbook action this card recommends, or `null` for an untyped card; new values may be added, so handle unknown types gracefully",
79682
- example: "scale_winning_ads",
80118
+ example: "improve_landing_page",
79683
80119
  type: ["string", "null"]
79684
80120
  },
79685
80121
  created_at: {
@@ -79692,12 +80128,6 @@ var native_spec_default = {
79692
80128
  example: "2026-01-01T12:00:00.000Z",
79693
80129
  type: ["string", "null"]
79694
80130
  },
79695
- execution_type: {
79696
- description: "How the card runs. `whop_ai` means `prompt` is sent to Whop AI, which carries out every step.",
79697
- enum: ["whop_ai"],
79698
- example: "whop_ai",
79699
- type: "string"
79700
- },
79701
80131
  id: {
79702
80132
  description: "Economic intelligence ID, prefixed `reca_`",
79703
80133
  example: "reca_xxxxxxxxxxxxxx",
@@ -79705,7 +80135,7 @@ var native_spec_default = {
79705
80135
  },
79706
80136
  input: {
79707
80137
  description: "What the owner asked for, in their own words, when this recommendation was requested, or `null` when the engine chose the action on its own",
79708
- example: "more sales from ads",
80138
+ example: "Grow revenue",
79709
80139
  type: ["string", "null"]
79710
80140
  },
79711
80141
  prompt: {
@@ -79715,7 +80145,7 @@ var native_spec_default = {
79715
80145
  },
79716
80146
  reasoning: {
79717
80147
  description: "The signal and number the recommendation rests on, or `null`",
79718
- example: "Capped 9 of 14 days.",
80148
+ example: "Revenue fell by 20%.",
79719
80149
  type: ["string", "null"]
79720
80150
  },
79721
80151
  status: {
@@ -79728,11 +80158,12 @@ var native_spec_default = {
79728
80158
  "superseded",
79729
80159
  "failed"
79730
80160
  ],
79731
- example: "ready",
80161
+ example: "superseded",
79732
80162
  type: "string"
79733
80163
  },
79734
80164
  superseded_at: {
79735
80165
  description: "When a newer card replaced this one, as an ISO 8601 timestamp, or `null`",
80166
+ example: "2026-01-01T12:00:00.000Z",
79736
80167
  type: ["string", "null"]
79737
80168
  },
79738
80169
  title: {
@@ -79745,7 +80176,6 @@ var native_spec_default = {
79745
80176
  "id",
79746
80177
  "account_id",
79747
80178
  "action_type",
79748
- "execution_type",
79749
80179
  "title",
79750
80180
  "prompt",
79751
80181
  "reasoning",
@@ -80437,6 +80867,7 @@ var native_spec_default = {
80437
80867
  line_type: {
80438
80868
  description: "The ledger line category this activity was posted under.",
80439
80869
  enum: [
80870
+ "account_settlement",
80440
80871
  "ad_budget_release",
80441
80872
  "ad_campaign_budget",
80442
80873
  "ad_publisher_payout",
@@ -81162,7 +81593,7 @@ var native_spec_default = {
81162
81593
  },
81163
81594
  source: {
81164
81595
  additionalProperties: true,
81165
- description: "Source of this ledger activity.",
81596
+ description: "Source of this ledger activity. Platform markup fees use object platform_fee and the ledger activity ID.",
81166
81597
  properties: {
81167
81598
  amount_float: {
81168
81599
  description: "Payout amount as a decimal number in the destination currency (payout sources only; requires payout:withdrawal:read).",
@@ -81195,6 +81626,19 @@ var native_spec_default = {
81195
81626
  format: "date-time",
81196
81627
  type: ["string", "null"]
81197
81628
  },
81629
+ fee_kind: {
81630
+ description: "Action that generated a platform markup fee: deposit, swap, transfer, card_spend, or payout. Present for platform_markup_fee and platform_markup_fee_payout, including when include_resource is false. Null when the originating action is unavailable; omitted on other source types.",
81631
+ enum: [
81632
+ "payout",
81633
+ "transfer",
81634
+ "deposit",
81635
+ "swap",
81636
+ "card_spend",
81637
+ null
81638
+ ],
81639
+ example: "swap",
81640
+ type: ["string", "null"]
81641
+ },
81198
81642
  from_amount: {
81199
81643
  description: "Amount converted out of from_currency as a decimal string (swap sources only).",
81200
81644
  example: "502.51",
@@ -82211,6 +82655,17 @@ var native_spec_default = {
82211
82655
  $ref: "#/components/schemas/UserSummary",
82212
82656
  description: "Partner whose link attributed this reward."
82213
82657
  },
82658
+ partner_reward_amount: {
82659
+ description: "What the partner earns when a referred business qualifies for this reward. Null when the reward pays the business only.",
82660
+ oneOf: [
82661
+ {
82662
+ $ref: "#/components/schemas/Money"
82663
+ },
82664
+ {
82665
+ type: "null"
82666
+ }
82667
+ ]
82668
+ },
82214
82669
  qualification_amount: {
82215
82670
  description: "Required qualifying volume. Null for an immediate reward.",
82216
82671
  oneOf: [
@@ -82274,6 +82729,7 @@ var native_spec_default = {
82274
82729
  "status",
82275
82730
  "reward_type",
82276
82731
  "reward_amount",
82732
+ "partner_reward_amount",
82277
82733
  "qualification_income_source",
82278
82734
  "qualification_amount",
82279
82735
  "qualification_progress",
@@ -82510,7 +82966,7 @@ var native_spec_default = {
82510
82966
  type: ["string", "null"]
82511
82967
  },
82512
82968
  recovery_url: {
82513
- description: "Whop-hosted URL where the buyer can sign in and complete 3D Secure for a failed subscription renewal. Null when recovery is unavailable, you lack `member:basic:read`, or in list responses. Retrieve the payment for it.",
82969
+ description: "Whop-hosted URL where the buyer can sign in and complete 3D Secure for an off-session charge the bank challenged \u2014 a subscription renewal or a saved-card payment. Null when recovery is unavailable, you lack `member:basic:read`, or in list responses. Retrieve the payment for it.",
82514
82970
  type: ["string", "null"]
82515
82971
  },
82516
82972
  refundable: {
@@ -82547,7 +83003,7 @@ var native_spec_default = {
82547
83003
  type: ["object", "null"]
82548
83004
  },
82549
83005
  settlement_time_at: {
82550
- description: "When the funds post to the account's available balance, at midnight UTC. The `ledger_account.funds_available` webhook carries the same value. Null until the payment is paid, and always null in list responses \u2014 retrieve the payment for it.",
83006
+ description: "When the funds post to the account's available balance, at midnight UTC. The `financial_activity.funds_available` webhook's `posted_at` carries the same value when the settlement that clears it posts. Null until the payment is paid, and always null in list responses \u2014 retrieve the payment for it.",
82551
83007
  type: ["string", "null"]
82552
83008
  },
82553
83009
  shipment_id: {
@@ -82809,10 +83265,14 @@ var native_spec_default = {
82809
83265
  type: "string"
82810
83266
  },
82811
83267
  bank_code: {
82812
- description: "The receiving bank's code in the local clearing system.",
83268
+ description: "The code that identifies the receiving bank \u2014 its code in the local clearing system, or its SWIFT/BIC on a transfer that crosses borders.",
82813
83269
  example: "684",
82814
83270
  type: "string"
82815
83271
  },
83272
+ bank_code_label: {
83273
+ description: "What to call `bank_code` when showing it, in the scheme's own terms \u2014 `SWIFT / BIC` on an international wire, for example.",
83274
+ type: "string"
83275
+ },
82816
83276
  bank_name: {
82817
83277
  description: "The receiving bank's name.",
82818
83278
  example: "Frost Bank",
@@ -84260,6 +84720,7 @@ var native_spec_default = {
84260
84720
  "webhook_receive:ledger_accounts",
84261
84721
  "webhook_receive:accounts",
84262
84722
  "webhook_receive:deposits",
84723
+ "webhook_receive:financial_activity",
84263
84724
  "webhook_receive:transfers",
84264
84725
  "webhook_receive:card_transactions",
84265
84726
  "webhook_receive:cards",
@@ -84525,6 +84986,7 @@ var native_spec_default = {
84525
84986
  "WebhookReceiveLedgerAccounts",
84526
84987
  "WebhookReceiveAccounts",
84527
84988
  "WebhookReceiveDeposits",
84989
+ "WebhookReceiveFinancialActivity",
84528
84990
  "WebhookReceiveTransfers",
84529
84991
  "WebhookReceiveCardTransactions",
84530
84992
  "WebhookReceiveCards",
@@ -85601,7 +86063,7 @@ var native_spec_default = {
85601
86063
  },
85602
86064
  description: {
85603
86065
  description: "Written description displayed on the product page. `null` if none is set.",
85604
- example: "evolve back-end solutions",
86066
+ example: "exploit end-to-end users",
85605
86067
  type: ["string", "null"]
85606
86068
  },
85607
86069
  external_identifier: {
@@ -85618,7 +86080,7 @@ var native_spec_default = {
85618
86080
  },
85619
86081
  headline: {
85620
86082
  description: "Short marketing headline displayed on product page.",
85621
- example: "impact map",
86083
+ example: "immersive experience",
85622
86084
  type: ["string", "null"]
85623
86085
  },
85624
86086
  id: {
@@ -88371,6 +88833,7 @@ var native_spec_default = {
88371
88833
  "ledger_account.funds_available",
88372
88834
  "swap.completed",
88373
88835
  "deposit.succeeded",
88836
+ "financial_activity.funds_available",
88374
88837
  "transfer.created",
88375
88838
  "transfer.completed",
88376
88839
  "transfer.failed",
@@ -88501,6 +88964,7 @@ var native_spec_default = {
88501
88964
  "ledger_account.funds_available",
88502
88965
  "swap.completed",
88503
88966
  "deposit.succeeded",
88967
+ "financial_activity.funds_available",
88504
88968
  "transfer.created",
88505
88969
  "transfer.completed",
88506
88970
  "transfer.failed",
@@ -88761,6 +89225,7 @@ var native_spec_default = {
88761
89225
  "ledger_account.funds_available",
88762
89226
  "swap.completed",
88763
89227
  "deposit.succeeded",
89228
+ "financial_activity.funds_available",
88764
89229
  "transfer.created",
88765
89230
  "transfer.completed",
88766
89231
  "transfer.failed",
@@ -91994,7 +92459,7 @@ async function announceActionUrl(url, {
91994
92459
  // package.json
91995
92460
  var package_default = {
91996
92461
  name: "@whop/cli",
91997
- version: "0.17.0",
92462
+ version: "0.18.1",
91998
92463
  description: "The Whop CLI \u2014 build and manage Whop apps from your terminal. Human and agent friendly.",
91999
92464
  keywords: [
92000
92465
  "agent",
@@ -92843,6 +93308,9 @@ var WHOP_SCOPES = [
92843
93308
  "audience:update",
92844
93309
  "bounty:basic:read",
92845
93310
  "bounty:create",
93311
+ "bounty:submission:create",
93312
+ "bounty:submission:delete",
93313
+ "bounty:update",
92846
93314
  "chat:message:create",
92847
93315
  "chat:moderate",
92848
93316
  "chat:read",
@@ -92865,6 +93333,7 @@ var WHOP_SCOPES = [
92865
93333
  "course_lesson_interaction:read",
92866
93334
  "courses:read",
92867
93335
  "courses:update",
93336
+ "crypto_wallet:swap",
92868
93337
  "custom_emoji:update",
92869
93338
  "developer:basic:read",
92870
93339
  "developer:create_app",
@@ -92882,6 +93351,8 @@ var WHOP_SCOPES = [
92882
93351
  "experience:detach",
92883
93352
  "experience:hidden_experience:read",
92884
93353
  "experience:update",
93354
+ "experiment:manage",
93355
+ "experiment:read",
92885
93356
  "forum:moderate",
92886
93357
  "forum:post:create",
92887
93358
  "forum:read",
@@ -92925,6 +93396,7 @@ var WHOP_SCOPES = [
92925
93396
  "payment:dispute_alert:read",
92926
93397
  "payment:manage",
92927
93398
  "payment:resolution_center",
93399
+ "payment:resolution_center_case:manage",
92928
93400
  "payment:resolution_center_case:read",
92929
93401
  "payment:setup_intent:read",
92930
93402
  "payout:account:read",
@@ -92972,6 +93444,8 @@ var WHOP_SCOPES = [
92972
93444
  "tracking_link:stats:read",
92973
93445
  "tracking_link:update",
92974
93446
  "user:balance:read",
93447
+ "user:notifications:read",
93448
+ "user:notifications:update",
92975
93449
  "user:profile:update"
92976
93450
  ];
92977
93451
 
@@ -93854,6 +94328,9 @@ function safeParse(text4) {
93854
94328
 
93855
94329
  // src/feedback.ts
93856
94330
  var feedbackOptions = external_exports.object({
94331
+ account_id: external_exports.string().regex(/^biz_[A-Za-z0-9]+$/).max(255).optional().describe(
94332
+ "Account ID (biz_...) for the affected resource. Defaults to your active account when available."
94333
+ ),
93857
94334
  content: external_exports.string().trim().min(1).max(12e3).describe(
93858
94335
  "Describe the problem or unanswered question and relevant context. Remove credentials, personal data, and payment details."
93859
94336
  )
@@ -93879,7 +94356,11 @@ function buildFeedbackCommand(kind) {
93879
94356
  "Content-Type": "application/json",
93880
94357
  "Idempotency-Key": crypto.randomUUID()
93881
94358
  },
93882
- body: JSON.stringify({ source: `cli_${kind}`, content })
94359
+ body: JSON.stringify({
94360
+ source: `cli_${kind}`,
94361
+ content,
94362
+ account_id: options.account_id ?? await resolveActiveAccountId()
94363
+ })
93883
94364
  })
93884
94365
  );
93885
94366
  if (!response.ok) throw await responseError(response);