@whop/sdk 0.0.27 → 0.0.28

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 (459) hide show
  1. package/CHANGELOG.md +41 -0
  2. package/client.d.mts +4 -4
  3. package/client.d.mts.map +1 -1
  4. package/client.d.ts +4 -4
  5. package/client.d.ts.map +1 -1
  6. package/client.js +7 -0
  7. package/client.js.map +1 -1
  8. package/client.mjs +7 -0
  9. package/client.mjs.map +1 -1
  10. package/package.json +1 -1
  11. package/resources/access-tokens.d.mts +19 -20
  12. package/resources/access-tokens.d.mts.map +1 -1
  13. package/resources/access-tokens.d.ts +19 -20
  14. package/resources/access-tokens.d.ts.map +1 -1
  15. package/resources/access-tokens.js +4 -4
  16. package/resources/access-tokens.mjs +4 -4
  17. package/resources/account-links.d.mts +15 -13
  18. package/resources/account-links.d.mts.map +1 -1
  19. package/resources/account-links.d.ts +15 -13
  20. package/resources/account-links.d.ts.map +1 -1
  21. package/resources/account-links.js +2 -3
  22. package/resources/account-links.js.map +1 -1
  23. package/resources/account-links.mjs +2 -3
  24. package/resources/account-links.mjs.map +1 -1
  25. package/resources/ai-chats.d.mts +38 -26
  26. package/resources/ai-chats.d.mts.map +1 -1
  27. package/resources/ai-chats.d.ts +38 -26
  28. package/resources/ai-chats.d.ts.map +1 -1
  29. package/resources/ai-chats.js +5 -5
  30. package/resources/ai-chats.mjs +5 -5
  31. package/resources/app-builds.d.mts +35 -33
  32. package/resources/app-builds.d.mts.map +1 -1
  33. package/resources/app-builds.d.ts +35 -33
  34. package/resources/app-builds.d.ts.map +1 -1
  35. package/resources/app-builds.js +7 -4
  36. package/resources/app-builds.js.map +1 -1
  37. package/resources/app-builds.mjs +7 -4
  38. package/resources/app-builds.mjs.map +1 -1
  39. package/resources/apps.d.mts +81 -56
  40. package/resources/apps.d.mts.map +1 -1
  41. package/resources/apps.d.ts +81 -56
  42. package/resources/apps.d.ts.map +1 -1
  43. package/resources/apps.js +7 -4
  44. package/resources/apps.js.map +1 -1
  45. package/resources/apps.mjs +7 -4
  46. package/resources/apps.mjs.map +1 -1
  47. package/resources/authorized-users.d.mts +32 -26
  48. package/resources/authorized-users.d.mts.map +1 -1
  49. package/resources/authorized-users.d.ts +32 -26
  50. package/resources/authorized-users.d.ts.map +1 -1
  51. package/resources/authorized-users.js +3 -2
  52. package/resources/authorized-users.js.map +1 -1
  53. package/resources/authorized-users.mjs +3 -2
  54. package/resources/authorized-users.mjs.map +1 -1
  55. package/resources/chat-channels.d.mts +27 -19
  56. package/resources/chat-channels.d.mts.map +1 -1
  57. package/resources/chat-channels.d.ts +27 -19
  58. package/resources/chat-channels.d.ts.map +1 -1
  59. package/resources/chat-channels.js +5 -3
  60. package/resources/chat-channels.js.map +1 -1
  61. package/resources/chat-channels.mjs +5 -3
  62. package/resources/chat-channels.mjs.map +1 -1
  63. package/resources/checkout-configurations.d.mts +55 -46
  64. package/resources/checkout-configurations.d.mts.map +1 -1
  65. package/resources/checkout-configurations.d.ts +55 -46
  66. package/resources/checkout-configurations.d.ts.map +1 -1
  67. package/resources/checkout-configurations.js +3 -2
  68. package/resources/checkout-configurations.js.map +1 -1
  69. package/resources/checkout-configurations.mjs +3 -2
  70. package/resources/checkout-configurations.mjs.map +1 -1
  71. package/resources/companies.d.mts +65 -46
  72. package/resources/companies.d.mts.map +1 -1
  73. package/resources/companies.d.ts +65 -46
  74. package/resources/companies.d.ts.map +1 -1
  75. package/resources/companies.js +7 -8
  76. package/resources/companies.js.map +1 -1
  77. package/resources/companies.mjs +7 -8
  78. package/resources/companies.mjs.map +1 -1
  79. package/resources/company-token-transactions.d.mts +80 -57
  80. package/resources/company-token-transactions.d.mts.map +1 -1
  81. package/resources/company-token-transactions.d.ts +80 -57
  82. package/resources/company-token-transactions.d.ts.map +1 -1
  83. package/resources/company-token-transactions.js +6 -3
  84. package/resources/company-token-transactions.js.map +1 -1
  85. package/resources/company-token-transactions.mjs +6 -3
  86. package/resources/company-token-transactions.mjs.map +1 -1
  87. package/resources/course-chapters.d.mts +24 -19
  88. package/resources/course-chapters.d.mts.map +1 -1
  89. package/resources/course-chapters.d.ts +24 -19
  90. package/resources/course-chapters.d.ts.map +1 -1
  91. package/resources/course-chapters.js +5 -5
  92. package/resources/course-chapters.mjs +5 -5
  93. package/resources/course-lesson-interactions.d.mts +7 -6
  94. package/resources/course-lesson-interactions.d.mts.map +1 -1
  95. package/resources/course-lesson-interactions.d.ts +7 -6
  96. package/resources/course-lesson-interactions.d.ts.map +1 -1
  97. package/resources/course-lesson-interactions.js +3 -2
  98. package/resources/course-lesson-interactions.js.map +1 -1
  99. package/resources/course-lesson-interactions.mjs +3 -2
  100. package/resources/course-lesson-interactions.mjs.map +1 -1
  101. package/resources/course-lessons.d.mts +126 -84
  102. package/resources/course-lessons.d.mts.map +1 -1
  103. package/resources/course-lessons.d.ts +126 -84
  104. package/resources/course-lessons.d.ts.map +1 -1
  105. package/resources/course-lessons.js +12 -8
  106. package/resources/course-lessons.js.map +1 -1
  107. package/resources/course-lessons.mjs +12 -8
  108. package/resources/course-lessons.mjs.map +1 -1
  109. package/resources/course-students.d.mts +38 -29
  110. package/resources/course-students.d.mts.map +1 -1
  111. package/resources/course-students.d.ts +38 -29
  112. package/resources/course-students.d.ts.map +1 -1
  113. package/resources/course-students.js +3 -2
  114. package/resources/course-students.js.map +1 -1
  115. package/resources/course-students.mjs +3 -2
  116. package/resources/course-students.mjs.map +1 -1
  117. package/resources/courses.d.mts +132 -91
  118. package/resources/courses.d.mts.map +1 -1
  119. package/resources/courses.d.ts +132 -91
  120. package/resources/courses.d.ts.map +1 -1
  121. package/resources/courses.js +9 -5
  122. package/resources/courses.js.map +1 -1
  123. package/resources/courses.mjs +9 -5
  124. package/resources/courses.mjs.map +1 -1
  125. package/resources/disputes.d.mts +156 -102
  126. package/resources/disputes.d.mts.map +1 -1
  127. package/resources/disputes.d.ts +156 -102
  128. package/resources/disputes.d.ts.map +1 -1
  129. package/resources/disputes.js +4 -2
  130. package/resources/disputes.js.map +1 -1
  131. package/resources/disputes.mjs +4 -2
  132. package/resources/disputes.mjs.map +1 -1
  133. package/resources/dm-channels.d.mts +29 -16
  134. package/resources/dm-channels.d.mts.map +1 -1
  135. package/resources/dm-channels.d.ts +29 -16
  136. package/resources/dm-channels.d.ts.map +1 -1
  137. package/resources/dm-channels.js +9 -5
  138. package/resources/dm-channels.js.map +1 -1
  139. package/resources/dm-channels.mjs +9 -5
  140. package/resources/dm-channels.mjs.map +1 -1
  141. package/resources/dm-members.d.mts +30 -21
  142. package/resources/dm-members.d.mts.map +1 -1
  143. package/resources/dm-members.d.ts +30 -21
  144. package/resources/dm-members.d.ts.map +1 -1
  145. package/resources/dm-members.js +9 -5
  146. package/resources/dm-members.js.map +1 -1
  147. package/resources/dm-members.mjs +9 -5
  148. package/resources/dm-members.mjs.map +1 -1
  149. package/resources/entries.d.mts +29 -21
  150. package/resources/entries.d.mts.map +1 -1
  151. package/resources/entries.d.ts +29 -21
  152. package/resources/entries.d.ts.map +1 -1
  153. package/resources/entries.js +7 -4
  154. package/resources/entries.js.map +1 -1
  155. package/resources/entries.mjs +7 -4
  156. package/resources/entries.mjs.map +1 -1
  157. package/resources/experiences.d.mts +53 -45
  158. package/resources/experiences.d.mts.map +1 -1
  159. package/resources/experiences.d.ts +53 -45
  160. package/resources/experiences.d.ts.map +1 -1
  161. package/resources/experiences.js +6 -5
  162. package/resources/experiences.js.map +1 -1
  163. package/resources/experiences.mjs +6 -5
  164. package/resources/experiences.mjs.map +1 -1
  165. package/resources/fee-markups.d.mts +32 -21
  166. package/resources/fee-markups.d.mts.map +1 -1
  167. package/resources/fee-markups.d.ts +32 -21
  168. package/resources/fee-markups.d.ts.map +1 -1
  169. package/resources/fee-markups.js +6 -3
  170. package/resources/fee-markups.js.map +1 -1
  171. package/resources/fee-markups.mjs +6 -3
  172. package/resources/fee-markups.mjs.map +1 -1
  173. package/resources/files.d.mts +21 -17
  174. package/resources/files.d.mts.map +1 -1
  175. package/resources/files.d.ts +21 -17
  176. package/resources/files.d.ts.map +1 -1
  177. package/resources/files.js +3 -2
  178. package/resources/files.js.map +1 -1
  179. package/resources/files.mjs +3 -2
  180. package/resources/files.mjs.map +1 -1
  181. package/resources/forum-posts.d.mts +62 -43
  182. package/resources/forum-posts.d.mts.map +1 -1
  183. package/resources/forum-posts.d.ts +62 -43
  184. package/resources/forum-posts.d.ts.map +1 -1
  185. package/resources/forum-posts.js +8 -4
  186. package/resources/forum-posts.js.map +1 -1
  187. package/resources/forum-posts.mjs +8 -4
  188. package/resources/forum-posts.mjs.map +1 -1
  189. package/resources/forums.d.mts +20 -12
  190. package/resources/forums.d.mts.map +1 -1
  191. package/resources/forums.d.ts +20 -12
  192. package/resources/forums.d.ts.map +1 -1
  193. package/resources/forums.js +5 -3
  194. package/resources/forums.js.map +1 -1
  195. package/resources/forums.mjs +5 -3
  196. package/resources/forums.mjs.map +1 -1
  197. package/resources/index.d.mts +2 -2
  198. package/resources/index.d.mts.map +1 -1
  199. package/resources/index.d.ts +2 -2
  200. package/resources/index.d.ts.map +1 -1
  201. package/resources/index.js.map +1 -1
  202. package/resources/index.mjs.map +1 -1
  203. package/resources/invoices.d.mts +108 -80
  204. package/resources/invoices.d.mts.map +1 -1
  205. package/resources/invoices.d.ts +108 -80
  206. package/resources/invoices.d.ts.map +1 -1
  207. package/resources/invoices.js +7 -4
  208. package/resources/invoices.js.map +1 -1
  209. package/resources/invoices.mjs +7 -4
  210. package/resources/invoices.mjs.map +1 -1
  211. package/resources/leads.d.mts +64 -42
  212. package/resources/leads.d.mts.map +1 -1
  213. package/resources/leads.d.ts +64 -42
  214. package/resources/leads.d.ts.map +1 -1
  215. package/resources/leads.js +6 -4
  216. package/resources/leads.js.map +1 -1
  217. package/resources/leads.mjs +6 -4
  218. package/resources/leads.mjs.map +1 -1
  219. package/resources/ledger-accounts.d.mts +10 -8
  220. package/resources/ledger-accounts.d.mts.map +1 -1
  221. package/resources/ledger-accounts.d.ts +10 -8
  222. package/resources/ledger-accounts.d.ts.map +1 -1
  223. package/resources/ledger-accounts.js +1 -1
  224. package/resources/ledger-accounts.mjs +1 -1
  225. package/resources/members.d.mts +18 -19
  226. package/resources/members.d.mts.map +1 -1
  227. package/resources/members.d.ts +18 -19
  228. package/resources/members.d.ts.map +1 -1
  229. package/resources/members.js +3 -2
  230. package/resources/members.js.map +1 -1
  231. package/resources/members.mjs +3 -2
  232. package/resources/members.mjs.map +1 -1
  233. package/resources/memberships.d.mts +69 -51
  234. package/resources/memberships.d.mts.map +1 -1
  235. package/resources/memberships.d.ts +69 -51
  236. package/resources/memberships.d.ts.map +1 -1
  237. package/resources/memberships.js +12 -8
  238. package/resources/memberships.js.map +1 -1
  239. package/resources/memberships.mjs +12 -8
  240. package/resources/memberships.mjs.map +1 -1
  241. package/resources/messages.d.mts +46 -32
  242. package/resources/messages.d.mts.map +1 -1
  243. package/resources/messages.d.ts +46 -32
  244. package/resources/messages.d.ts.map +1 -1
  245. package/resources/messages.js +9 -5
  246. package/resources/messages.js.map +1 -1
  247. package/resources/messages.mjs +9 -5
  248. package/resources/messages.mjs.map +1 -1
  249. package/resources/notifications.d.mts +33 -25
  250. package/resources/notifications.d.mts.map +1 -1
  251. package/resources/notifications.d.ts +33 -25
  252. package/resources/notifications.d.ts.map +1 -1
  253. package/resources/notifications.js +2 -1
  254. package/resources/notifications.js.map +1 -1
  255. package/resources/notifications.mjs +2 -1
  256. package/resources/notifications.mjs.map +1 -1
  257. package/resources/payment-methods.d.mts +212 -114
  258. package/resources/payment-methods.d.mts.map +1 -1
  259. package/resources/payment-methods.d.ts +212 -114
  260. package/resources/payment-methods.d.ts.map +1 -1
  261. package/resources/payment-methods.js +5 -10
  262. package/resources/payment-methods.js.map +1 -1
  263. package/resources/payment-methods.mjs +5 -10
  264. package/resources/payment-methods.mjs.map +1 -1
  265. package/resources/payments.d.mts +73 -40
  266. package/resources/payments.d.mts.map +1 -1
  267. package/resources/payments.d.ts +73 -40
  268. package/resources/payments.d.ts.map +1 -1
  269. package/resources/payments.js +23 -10
  270. package/resources/payments.js.map +1 -1
  271. package/resources/payments.mjs +23 -10
  272. package/resources/payments.mjs.map +1 -1
  273. package/resources/payout-methods.d.mts +44 -29
  274. package/resources/payout-methods.d.mts.map +1 -1
  275. package/resources/payout-methods.d.ts +44 -29
  276. package/resources/payout-methods.d.ts.map +1 -1
  277. package/resources/payout-methods.js +3 -2
  278. package/resources/payout-methods.js.map +1 -1
  279. package/resources/payout-methods.mjs +3 -2
  280. package/resources/payout-methods.mjs.map +1 -1
  281. package/resources/plans.d.mts +121 -90
  282. package/resources/plans.d.mts.map +1 -1
  283. package/resources/plans.d.ts +121 -90
  284. package/resources/plans.d.ts.map +1 -1
  285. package/resources/plans.js +9 -5
  286. package/resources/plans.js.map +1 -1
  287. package/resources/plans.mjs +9 -5
  288. package/resources/plans.mjs.map +1 -1
  289. package/resources/products.d.mts +76 -65
  290. package/resources/products.d.mts.map +1 -1
  291. package/resources/products.d.ts +76 -65
  292. package/resources/products.d.ts.map +1 -1
  293. package/resources/products.js +7 -5
  294. package/resources/products.js.map +1 -1
  295. package/resources/products.mjs +7 -5
  296. package/resources/products.mjs.map +1 -1
  297. package/resources/promo-codes.d.mts +41 -31
  298. package/resources/promo-codes.d.mts.map +1 -1
  299. package/resources/promo-codes.d.ts +41 -31
  300. package/resources/promo-codes.d.ts.map +1 -1
  301. package/resources/promo-codes.js +7 -4
  302. package/resources/promo-codes.js.map +1 -1
  303. package/resources/promo-codes.mjs +7 -4
  304. package/resources/promo-codes.mjs.map +1 -1
  305. package/resources/reactions.d.mts +24 -18
  306. package/resources/reactions.d.mts.map +1 -1
  307. package/resources/reactions.d.ts +24 -18
  308. package/resources/reactions.d.ts.map +1 -1
  309. package/resources/reactions.js +7 -4
  310. package/resources/reactions.js.map +1 -1
  311. package/resources/reactions.mjs +7 -4
  312. package/resources/reactions.mjs.map +1 -1
  313. package/resources/refunds.d.mts +43 -29
  314. package/resources/refunds.d.mts.map +1 -1
  315. package/resources/refunds.d.ts +43 -29
  316. package/resources/refunds.d.ts.map +1 -1
  317. package/resources/refunds.js +3 -2
  318. package/resources/refunds.js.map +1 -1
  319. package/resources/refunds.mjs +3 -2
  320. package/resources/refunds.mjs.map +1 -1
  321. package/resources/reviews.d.mts +66 -50
  322. package/resources/reviews.d.mts.map +1 -1
  323. package/resources/reviews.d.ts +66 -50
  324. package/resources/reviews.d.ts.map +1 -1
  325. package/resources/reviews.js +3 -2
  326. package/resources/reviews.js.map +1 -1
  327. package/resources/reviews.mjs +3 -2
  328. package/resources/reviews.mjs.map +1 -1
  329. package/resources/setup-intents.d.mts +61 -43
  330. package/resources/setup-intents.d.mts.map +1 -1
  331. package/resources/setup-intents.d.ts +61 -43
  332. package/resources/setup-intents.d.ts.map +1 -1
  333. package/resources/setup-intents.js +4 -10
  334. package/resources/setup-intents.js.map +1 -1
  335. package/resources/setup-intents.mjs +4 -10
  336. package/resources/setup-intents.mjs.map +1 -1
  337. package/resources/shared.d.mts +695 -388
  338. package/resources/shared.d.mts.map +1 -1
  339. package/resources/shared.d.ts +695 -388
  340. package/resources/shared.d.ts.map +1 -1
  341. package/resources/shipments.d.mts +26 -17
  342. package/resources/shipments.d.mts.map +1 -1
  343. package/resources/shipments.d.ts +26 -17
  344. package/resources/shipments.d.ts.map +1 -1
  345. package/resources/shipments.js +5 -3
  346. package/resources/shipments.js.map +1 -1
  347. package/resources/shipments.mjs +5 -3
  348. package/resources/shipments.mjs.map +1 -1
  349. package/resources/support-channels.d.mts +27 -19
  350. package/resources/support-channels.d.mts.map +1 -1
  351. package/resources/support-channels.d.ts +27 -19
  352. package/resources/support-channels.d.ts.map +1 -1
  353. package/resources/support-channels.js +5 -4
  354. package/resources/support-channels.js.map +1 -1
  355. package/resources/support-channels.mjs +5 -4
  356. package/resources/support-channels.mjs.map +1 -1
  357. package/resources/topups.d.mts +11 -9
  358. package/resources/topups.d.mts.map +1 -1
  359. package/resources/topups.d.ts +11 -9
  360. package/resources/topups.d.ts.map +1 -1
  361. package/resources/topups.js +2 -1
  362. package/resources/topups.js.map +1 -1
  363. package/resources/topups.mjs +2 -1
  364. package/resources/topups.mjs.map +1 -1
  365. package/resources/transfers.d.mts +35 -29
  366. package/resources/transfers.d.mts.map +1 -1
  367. package/resources/transfers.d.ts +35 -29
  368. package/resources/transfers.d.ts.map +1 -1
  369. package/resources/transfers.js +5 -3
  370. package/resources/transfers.js.map +1 -1
  371. package/resources/transfers.mjs +5 -3
  372. package/resources/transfers.mjs.map +1 -1
  373. package/resources/users.d.mts +20 -16
  374. package/resources/users.d.mts.map +1 -1
  375. package/resources/users.d.ts +20 -16
  376. package/resources/users.d.ts.map +1 -1
  377. package/resources/users.js +4 -3
  378. package/resources/users.js.map +1 -1
  379. package/resources/users.mjs +4 -3
  380. package/resources/users.mjs.map +1 -1
  381. package/resources/verifications.d.mts +6 -4
  382. package/resources/verifications.d.mts.map +1 -1
  383. package/resources/verifications.d.ts +6 -4
  384. package/resources/verifications.d.ts.map +1 -1
  385. package/resources/verifications.js +1 -1
  386. package/resources/verifications.mjs +1 -1
  387. package/resources/webhooks.d.mts +136 -95
  388. package/resources/webhooks.d.mts.map +1 -1
  389. package/resources/webhooks.d.ts +136 -95
  390. package/resources/webhooks.d.ts.map +1 -1
  391. package/resources/webhooks.js +3 -2
  392. package/resources/webhooks.js.map +1 -1
  393. package/resources/webhooks.mjs +3 -2
  394. package/resources/webhooks.mjs.map +1 -1
  395. package/resources/withdrawals.d.mts +53 -44
  396. package/resources/withdrawals.d.mts.map +1 -1
  397. package/resources/withdrawals.d.ts +53 -44
  398. package/resources/withdrawals.d.ts.map +1 -1
  399. package/resources/withdrawals.js +3 -2
  400. package/resources/withdrawals.js.map +1 -1
  401. package/resources/withdrawals.mjs +3 -2
  402. package/resources/withdrawals.mjs.map +1 -1
  403. package/src/client.ts +13 -3
  404. package/src/resources/access-tokens.ts +19 -20
  405. package/src/resources/account-links.ts +15 -13
  406. package/src/resources/ai-chats.ts +39 -26
  407. package/src/resources/app-builds.ts +35 -33
  408. package/src/resources/apps.ts +84 -56
  409. package/src/resources/authorized-users.ts +32 -26
  410. package/src/resources/chat-channels.ts +27 -19
  411. package/src/resources/checkout-configurations.ts +56 -46
  412. package/src/resources/companies.ts +68 -46
  413. package/src/resources/company-token-transactions.ts +81 -58
  414. package/src/resources/course-chapters.ts +24 -19
  415. package/src/resources/course-lesson-interactions.ts +7 -6
  416. package/src/resources/course-lessons.ts +126 -84
  417. package/src/resources/course-students.ts +38 -29
  418. package/src/resources/courses.ts +132 -91
  419. package/src/resources/disputes.ts +156 -102
  420. package/src/resources/dm-channels.ts +29 -16
  421. package/src/resources/dm-members.ts +30 -21
  422. package/src/resources/entries.ts +29 -21
  423. package/src/resources/experiences.ts +53 -45
  424. package/src/resources/fee-markups.ts +32 -21
  425. package/src/resources/files.ts +21 -17
  426. package/src/resources/forum-posts.ts +63 -43
  427. package/src/resources/forums.ts +20 -12
  428. package/src/resources/index.ts +2 -1
  429. package/src/resources/invoices.ts +112 -80
  430. package/src/resources/leads.ts +64 -42
  431. package/src/resources/ledger-accounts.ts +10 -8
  432. package/src/resources/members.ts +18 -19
  433. package/src/resources/memberships.ts +69 -51
  434. package/src/resources/messages.ts +46 -32
  435. package/src/resources/notifications.ts +33 -25
  436. package/src/resources/payment-methods.ts +212 -114
  437. package/src/resources/payments.ts +77 -39
  438. package/src/resources/payout-methods.ts +44 -29
  439. package/src/resources/plans.ts +121 -90
  440. package/src/resources/products.ts +215 -68
  441. package/src/resources/promo-codes.ts +41 -31
  442. package/src/resources/reactions.ts +24 -18
  443. package/src/resources/refunds.ts +44 -29
  444. package/src/resources/reviews.ts +66 -50
  445. package/src/resources/setup-intents.ts +61 -43
  446. package/src/resources/shared.ts +2637 -387
  447. package/src/resources/shipments.ts +26 -17
  448. package/src/resources/support-channels.ts +27 -19
  449. package/src/resources/topups.ts +11 -9
  450. package/src/resources/transfers.ts +35 -29
  451. package/src/resources/users.ts +20 -16
  452. package/src/resources/verifications.ts +6 -4
  453. package/src/resources/webhooks.ts +136 -95
  454. package/src/resources/withdrawals.ts +53 -43
  455. package/src/version.ts +1 -1
  456. package/version.d.mts +1 -1
  457. package/version.d.ts +1 -1
  458. package/version.js +1 -1
  459. package/version.mjs +1 -1
@@ -1,6 +1,7 @@
1
1
  import * as Shared from "./shared.js";
2
2
  import * as AppsAPI from "./apps.js";
3
3
  import * as CheckoutConfigurationsAPI from "./checkout-configurations.js";
4
+ import * as DisputesAPI from "./disputes.js";
4
5
  import * as MembershipsAPI from "./memberships.js";
5
6
  import * as PaymentsAPI from "./payments.js";
6
7
  import { CursorPage } from "../core/pagination.js";
@@ -23,85 +24,97 @@ export interface App {
23
24
  */
24
25
  id: string;
25
26
  /**
26
- * The API key for the app
27
+ * The API key used to authenticate requests on behalf of this app. Null if no API
28
+ * key has been generated. Requires the 'developer:manage_api_key' permission.
27
29
  */
28
30
  api_key: App.APIKey | null;
29
31
  /**
30
- * The type of end-user an app is built for
32
+ * The target audience classification for this app (e.g., 'b2b_app', 'b2c_app',
33
+ * 'company_app', 'component').
31
34
  */
32
35
  app_type: AppsAPI.AppType;
33
36
  /**
34
- * The base url of the app
37
+ * The production base URL where the app is hosted. Null if no base URL is
38
+ * configured.
35
39
  */
36
40
  base_url: string | null;
37
41
  /**
38
- * The company that owns the app
42
+ * The company that owns and publishes this app.
39
43
  */
40
44
  company: App.Company;
41
45
  /**
42
- * The creator of the app
46
+ * The user who created and owns the company that published this app.
43
47
  */
44
48
  creator: App.Creator;
45
49
  /**
46
- * The path part for a specific view of the app. This is the template part of the
47
- * url after the base domain. Eg: /experiences/[experienceId]
50
+ * The URL path template for a specific view of this app, appended to the base
51
+ * domain (e.g., '/experiences/[experienceId]'). Null if the specified view type is
52
+ * not configured.
48
53
  */
49
54
  dashboard_path: string | null;
50
55
  /**
51
- * The description of the app
56
+ * A written description of what this app does, displayed on the app store listing
57
+ * page. Null if no description has been set.
52
58
  */
53
59
  description: string | null;
54
60
  /**
55
- * The path part for a specific view of the app. This is the template part of the
56
- * url after the base domain. Eg: /experiences/[experienceId]
61
+ * The URL path template for a specific view of this app, appended to the base
62
+ * domain (e.g., '/experiences/[experienceId]'). Null if the specified view type is
63
+ * not configured.
57
64
  */
58
65
  discover_path: string | null;
59
66
  /**
60
- * The unique part of the proxied domain for this app. Used to generate the base
61
- * url used to display the app inside the whop platform. Refers to the id part in
62
- * the final url: https://{domain_id}.apps.whop.com
67
+ * The unique subdomain identifier for this app's proxied URL on the Whop platform.
68
+ * Forms the URL pattern https://{domain_id}.apps.whop.com.
63
69
  */
64
70
  domain_id: string;
65
71
  /**
66
- * The path part for a specific view of the app. This is the template part of the
67
- * url after the base domain. Eg: /experiences/[experienceId]
72
+ * The URL path template for a specific view of this app, appended to the base
73
+ * domain (e.g., '/experiences/[experienceId]'). Null if the specified view type is
74
+ * not configured.
68
75
  */
69
76
  experience_path: string | null;
70
77
  /**
71
- * The icon for the app. This icon is shown on discovery, on the product page, on
72
- * checkout, and as a default icon for the experiences.
78
+ * The icon image for this app, displayed on the app store, product pages,
79
+ * checkout, and as the default icon for experiences using this app.
73
80
  */
74
81
  icon: App.Icon | null;
75
82
  /**
76
- * The name of the app
83
+ * The display name of this app shown on the app store and in experience
84
+ * navigation. Maximum 30 characters.
77
85
  */
78
86
  name: string;
79
87
  /**
80
- * The set of permissions that an app requests to be granted when a user installs
81
- * the app.
88
+ * The whitelisted OAuth callback URLs that users are redirected to after
89
+ * authorizing the app.
90
+ */
91
+ redirect_uris: Array<string>;
92
+ /**
93
+ * The list of permissions this app requests when installed, including both
94
+ * required and optional permissions with justifications.
82
95
  */
83
96
  requested_permissions: Array<App.RequestedPermission>;
84
97
  /**
85
- * A collection of stats for the app.
98
+ * Aggregate usage statistics for this app, including daily, weekly, and monthly
99
+ * active user counts.
86
100
  */
87
101
  stats: App.Stats | null;
88
102
  /**
89
- * If the status is live, the app is visible on Whop discovery. In order to be
90
- * live, you need to set the name, icon, and description. Being unlisted or hidden
91
- * means it's not visible on Whop but you can still install the app via direct
92
- * link. To remove the app from whop discovery, you should set the status to
93
- * unlisted.
103
+ * The current visibility status of this app on the Whop app store. 'live' means
104
+ * publicly discoverable, 'unlisted' means accessible only via direct link, and
105
+ * 'hidden' means not visible anywhere.
94
106
  */
95
107
  status: AppStatuses;
96
108
  /**
97
- * Whether this app has been verified by Whop. Verified apps are endorsed by whop
98
- * and are shown in the 'featured apps' section of the app store.
109
+ * Whether this app has been verified by Whop. Verified apps are endorsed by Whop
110
+ * and displayed in the featured apps section of the app store.
99
111
  */
100
112
  verified: boolean;
101
113
  }
102
114
  export declare namespace App {
103
115
  /**
104
- * The API key for the app
116
+ * The API key used to authenticate requests on behalf of this app. Null if no API
117
+ * key has been generated. Requires the 'developer:manage_api_key' permission.
105
118
  */
106
119
  interface APIKey {
107
120
  /**
@@ -118,7 +131,7 @@ export declare namespace App {
118
131
  created_at: string;
119
132
  }
120
133
  /**
121
- * The company that owns the app
134
+ * The company that owns and publishes this app.
122
135
  */
123
136
  interface Company {
124
137
  /**
@@ -126,12 +139,12 @@ export declare namespace App {
126
139
  */
127
140
  id: string;
128
141
  /**
129
- * The title of the company.
142
+ * The display name of the company shown to customers.
130
143
  */
131
144
  title: string;
132
145
  }
133
146
  /**
134
- * The creator of the app
147
+ * The user who created and owns the company that published this app.
135
148
  */
136
149
  interface Creator {
137
150
  /**
@@ -139,22 +152,22 @@ export declare namespace App {
139
152
  */
140
153
  id: string;
141
154
  /**
142
- * The name of the user from their Whop account.
155
+ * The user's display name shown on their public profile.
143
156
  */
144
157
  name: string | null;
145
158
  /**
146
- * The username of the user from their Whop account.
159
+ * The user's unique username shown on their public profile.
147
160
  */
148
161
  username: string;
149
162
  }
150
163
  /**
151
- * The icon for the app. This icon is shown on discovery, on the product page, on
152
- * checkout, and as a default icon for the experiences.
164
+ * The icon image for this app, displayed on the app store, product pages,
165
+ * checkout, and as the default icon for experiences using this app.
153
166
  */
154
167
  interface Icon {
155
168
  /**
156
- * This is the URL you use to render optimized attachments on the client. This
157
- * should be used for apps.
169
+ * A pre-optimized URL for rendering this attachment on the client. This should be
170
+ * used for displaying attachments in apps.
158
171
  */
159
172
  url: string | null;
160
173
  }
@@ -192,32 +205,35 @@ export declare namespace App {
192
205
  }
193
206
  }
194
207
  /**
195
- * A collection of stats for the app.
208
+ * Aggregate usage statistics for this app, including daily, weekly, and monthly
209
+ * active user counts.
196
210
  */
197
211
  interface Stats {
198
212
  /**
199
- * This is the number of users that have spent time in this app in the last 24
200
- * hours.
213
+ * The number of unique users who have spent time in this app in the last 24 hours.
214
+ * Returns 0 if no usage data is available.
201
215
  */
202
216
  dau: number;
203
217
  /**
204
- * This is the number of users that have spent time in this app in the last 28
205
- * days.
218
+ * The number of unique users who have spent time in this app in the last 28 days.
219
+ * Returns 0 if no usage data is available.
206
220
  */
207
221
  mau: number;
208
222
  /**
209
- * This how much time, in seconds, users have spent in this app in the last 24
210
- * hours.
223
+ * The total time, in seconds, that all users have spent in this app over the last
224
+ * 24 hours. Returns 0 if no usage data is available.
211
225
  */
212
226
  time_spent_last24_hours: number;
213
227
  /**
214
- * This is the number of users that have spent time in this app in the last 7 days.
228
+ * The number of unique users who have spent time in this app in the last 7 days.
229
+ * Returns 0 if no usage data is available.
215
230
  */
216
231
  wau: number;
217
232
  }
218
233
  }
219
234
  /**
220
- * An App Build object representing a build of an application
235
+ * A versioned build artifact for a Whop React Native App, submitted for review and
236
+ * deployment to a specific platform.
221
237
  */
222
238
  export interface AppBuild {
223
239
  /**
@@ -225,8 +241,8 @@ export interface AppBuild {
225
241
  */
226
242
  id: string;
227
243
  /**
228
- * This is generated by the client and used to verify the integrity of the file
229
- * that is submitted. It is a SHA256 hash of the app build file.
244
+ * A SHA-256 hash of the uploaded build file, generated by the client and used to
245
+ * verify file integrity.
230
246
  */
231
247
  checksum: string;
232
248
  /**
@@ -234,29 +250,28 @@ export interface AppBuild {
234
250
  */
235
251
  created_at: string;
236
252
  /**
237
- * The URL to download the app build .zip file.
253
+ * A URL to download the app build as a .zip archive.
238
254
  */
239
255
  file_url: string;
240
256
  /**
241
- * Whether this app build is currently being used in production.
257
+ * Whether this build is the currently active production build for its platform.
242
258
  */
243
259
  is_production: boolean;
244
260
  /**
245
- * The platform of the app build (ios, android, web)
261
+ * The target platform for this build.
246
262
  */
247
263
  platform: AppBuildPlatforms;
248
264
  /**
249
- * The review message for the app build, if any. This is populated when the build
250
- * is rejected and there is a reason specified by the reviewer.
265
+ * Feedback from the reviewer explaining why the build was rejected. Null if the
266
+ * build has not been reviewed or was approved.
251
267
  */
252
268
  review_message: string | null;
253
269
  /**
254
- * The status of the app build (draft, approved, rejected, pending, etc)
270
+ * The current review status of this build.
255
271
  */
256
272
  status: AppBuildStatuses;
257
273
  /**
258
- * The supported app view types for the app build. These are the views that the
259
- * developer has specified that this build supports.
274
+ * The list of view types this build supports, as declared by the developer.
260
275
  */
261
276
  supported_app_view_types: Array<AppViewType>;
262
277
  }
@@ -283,9 +298,10 @@ export type AuthorizedUserRoles = 'owner' | 'admin' | 'sales_manager' | 'moderat
283
298
  /**
284
299
  * The different business types a company can be.
285
300
  */
286
- export type BusinessTypes = 'education_program' | 'coaching' | 'software' | 'paid_group' | 'newsletter' | 'agency' | 'physical_products' | 'brick_and_mortar' | 'events' | 'coaching_and_courses' | 'other' | 'saas' | 'course' | 'community';
301
+ export type BusinessTypes = 'education_program' | 'coaching' | 'software' | 'paid_group' | 'newsletter' | 'agency' | 'physical_products' | 'brick_and_mortar' | 'events' | 'coaching_and_courses' | 'other' | 'services' | 'gig_economy' | 'marketplace' | 'telehealth' | 'class_action_settlement' | 'physical_product' | 'saas' | 'course' | 'community';
287
302
  /**
288
- * Represents a Chat feed
303
+ * A real-time chat feed attached to an experience, with configurable moderation
304
+ * and posting permissions.
289
305
  */
290
306
  export interface ChatChannel {
291
307
  /**
@@ -293,37 +309,38 @@ export interface ChatChannel {
293
309
  */
294
310
  id: string;
295
311
  /**
296
- * Whether or not media is banned in this chat
312
+ * Whether media uploads such as images and videos are blocked in this chat.
297
313
  */
298
314
  ban_media: boolean;
299
315
  /**
300
- * Whether or not URLs are banned in this chat
316
+ * Whether URL links are blocked from being posted in this chat.
301
317
  */
302
318
  ban_urls: boolean;
303
319
  /**
304
- * List of banned words in this chat
320
+ * A list of words that are automatically filtered from messages in this chat.
305
321
  */
306
322
  banned_words: Array<string>;
307
323
  /**
308
- * The experience for this chat
324
+ * The experience this chat feed is attached to.
309
325
  */
310
326
  experience: ChatChannel.Experience;
311
327
  /**
312
- * The number of seconds a user needs to wait before posting again, if any
328
+ * The minimum number of seconds a user must wait between consecutive messages.
329
+ * Null if no cooldown is enforced.
313
330
  */
314
331
  user_posts_cooldown_seconds: number | null;
315
332
  /**
316
- * Who can post on this chat
333
+ * The permission level controlling which users can send messages in this chat.
317
334
  */
318
335
  who_can_post: WhoCanPost;
319
336
  /**
320
- * Who can react on this chat
337
+ * The permission level controlling which users can add reactions in this chat.
321
338
  */
322
339
  who_can_react: WhoCanReact;
323
340
  }
324
341
  export declare namespace ChatChannel {
325
342
  /**
326
- * The experience for this chat
343
+ * The experience this chat feed is attached to.
327
344
  */
328
345
  interface Experience {
329
346
  /**
@@ -331,15 +348,16 @@ export declare namespace ChatChannel {
331
348
  */
332
349
  id: string;
333
350
  /**
334
- * The written name of the description.
351
+ * The display name of this experience shown to users in the product navigation.
352
+ * Maximum 255 characters.
335
353
  */
336
354
  name: string;
337
355
  }
338
356
  }
339
357
  /**
340
- * A checkout session is a reusable configuration for a checkout, including the
341
- * plan, affiliate, and custom metadata. Payments and memberships created from a
342
- * checkout session inherit its metadata.
358
+ * A checkout configuration is a reusable configuration for a checkout, including
359
+ * the plan, affiliate, and custom metadata. Payments and memberships created from
360
+ * a checkout session inherit its metadata.
343
361
  */
344
362
  export interface CheckoutConfiguration {
345
363
  /**
@@ -423,11 +441,13 @@ export declare namespace CheckoutConfiguration {
423
441
  */
424
442
  id: string;
425
443
  /**
426
- * The interval in days at which the plan charges (renewal plans).
444
+ * The number of days between each recurring charge. Null for one-time plans. For
445
+ * example, 30 for monthly or 365 for annual billing.
427
446
  */
428
447
  billing_period: number | null;
429
448
  /**
430
- * The respective currency identifier for the plan.
449
+ * The currency used for all prices on this plan (e.g., 'usd', 'eur'). All monetary
450
+ * amounts on the plan are denominated in this currency.
431
451
  */
432
452
  currency: Shared.Currency;
433
453
  /**
@@ -442,11 +462,13 @@ export declare namespace CheckoutConfiguration {
442
462
  */
443
463
  initial_price: number;
444
464
  /**
445
- * Indicates if the plan is a one time payment or recurring.
465
+ * The billing model for this plan: 'renewal' for recurring subscriptions or
466
+ * 'one_time' for single payments.
446
467
  */
447
468
  plan_type: Shared.PlanType;
448
469
  /**
449
- * This is the release method the business uses to sell this plan.
470
+ * The method used to sell this plan: 'buy_now' for immediate purchase or
471
+ * 'waitlist' for waitlist-based access.
450
472
  */
451
473
  release_method: Shared.ReleaseMethod;
452
474
  /**
@@ -455,11 +477,14 @@ export declare namespace CheckoutConfiguration {
455
477
  */
456
478
  renewal_price: number;
457
479
  /**
458
- * The number of free trial days added before a renewal plan.
480
+ * The number of free trial days before the first charge on a renewal plan. Null if
481
+ * no trial is configured or the current user has already used a trial for this
482
+ * plan.
459
483
  */
460
484
  trial_period_days: number | null;
461
485
  /**
462
- * Shows or hides the plan from public/business view.
486
+ * Controls whether the plan is visible to customers. When set to 'hidden', the
487
+ * plan is only accessible via direct link.
463
488
  */
464
489
  visibility: Shared.Visibility;
465
490
  }
@@ -486,7 +511,8 @@ export interface Company {
486
511
  */
487
512
  created_at: string;
488
513
  /**
489
- * The creator pitch for the company.
514
+ * A promotional pitch written by the company creator, displayed to potential
515
+ * customers on the store page.
490
516
  */
491
517
  description: string | null;
492
518
  /**
@@ -498,38 +524,42 @@ export interface Company {
498
524
  */
499
525
  logo: Company.Logo | null;
500
526
  /**
501
- * The number of members in the company.
527
+ * The total number of users who currently hold active memberships across all of
528
+ * this company's products.
502
529
  */
503
530
  member_count: number;
504
531
  /**
505
- * A key-value store of data for the account, created/updated by the platform that
506
- * made the account.
532
+ * A key-value JSON object of custom metadata for this company, managed by the
533
+ * platform that created the account.
507
534
  */
508
535
  metadata: {
509
536
  [key: string]: unknown;
510
537
  } | null;
511
538
  /**
512
- * The user who owns this company
539
+ * The user who owns and has full administrative control over this company.
513
540
  */
514
541
  owner_user: Company.OwnerUser;
515
542
  /**
516
- * The number of reviews that have been published for the company.
543
+ * The total number of published customer reviews across all products for this
544
+ * company.
517
545
  */
518
546
  published_reviews_count: number;
519
547
  /**
520
- * The slug/route of the company on the Whop site.
548
+ * The URL slug for the company's store page (e.g., 'pickaxe' in whop.com/pickaxe).
521
549
  */
522
550
  route: string;
523
551
  /**
524
- * Whether Whop sends transactional emails to customers on behalf of this company.
552
+ * Whether Whop sends transactional emails (receipts, updates) to customers on
553
+ * behalf of this company.
525
554
  */
526
555
  send_customer_emails: boolean;
527
556
  /**
528
- * The social media accounts of the company
557
+ * The list of social media accounts and external links associated with this
558
+ * company.
529
559
  */
530
560
  social_links: Array<Company.SocialLink>;
531
561
  /**
532
- * The title of the company.
562
+ * The display name of the company shown to customers.
533
563
  */
534
564
  title: string;
535
565
  /**
@@ -537,7 +567,7 @@ export interface Company {
537
567
  */
538
568
  updated_at: string;
539
569
  /**
540
- * If the company is Whop Verified
570
+ * Whether this company has been verified by Whop's trust and safety team.
541
571
  */
542
572
  verified: boolean;
543
573
  }
@@ -547,13 +577,13 @@ export declare namespace Company {
547
577
  */
548
578
  interface Logo {
549
579
  /**
550
- * This is the URL you use to render optimized attachments on the client. This
551
- * should be used for apps.
580
+ * A pre-optimized URL for rendering this attachment on the client. This should be
581
+ * used for displaying attachments in apps.
552
582
  */
553
583
  url: string | null;
554
584
  }
555
585
  /**
556
- * The user who owns this company
586
+ * The user who owns and has full administrative control over this company.
557
587
  */
558
588
  interface OwnerUser {
559
589
  /**
@@ -561,11 +591,11 @@ export declare namespace Company {
561
591
  */
562
592
  id: string;
563
593
  /**
564
- * The name of the user from their Whop account.
594
+ * The user's display name shown on their public profile.
565
595
  */
566
596
  name: string | null;
567
597
  /**
568
- * The username of the user from their Whop account.
598
+ * The user's unique username shown on their public profile.
569
599
  */
570
600
  username: string;
571
601
  }
@@ -578,7 +608,7 @@ export declare namespace Company {
578
608
  */
579
609
  id: string;
580
610
  /**
581
- * The URL
611
+ * The URL of the social media profile or external link.
582
612
  */
583
613
  url: string;
584
614
  /**
@@ -588,7 +618,8 @@ export declare namespace Company {
588
618
  }
589
619
  }
590
620
  /**
591
- * A lesson interaction tracking user progress in courses
621
+ * A record of a user's progress on a specific lesson, tracking whether they have
622
+ * completed it.
592
623
  */
593
624
  export interface CourseLessonInteraction {
594
625
  /**
@@ -596,11 +627,11 @@ export interface CourseLessonInteraction {
596
627
  */
597
628
  id: string;
598
629
  /**
599
- * Whether the lesson has been completed by the user
630
+ * Whether the user has finished this lesson.
600
631
  */
601
632
  completed: boolean;
602
633
  /**
603
- * The course for this lesson interaction
634
+ * The course that contains the tracked lesson.
604
635
  */
605
636
  course: CourseLessonInteraction.Course;
606
637
  /**
@@ -608,17 +639,17 @@ export interface CourseLessonInteraction {
608
639
  */
609
640
  created_at: string;
610
641
  /**
611
- * The lesson this interaction is for
642
+ * The lesson that this progress record belongs to.
612
643
  */
613
644
  lesson: CourseLessonInteraction.Lesson;
614
645
  /**
615
- * The user who interacted with the lesson
646
+ * The user whose progress is being tracked.
616
647
  */
617
648
  user: CourseLessonInteraction.User;
618
649
  }
619
650
  export declare namespace CourseLessonInteraction {
620
651
  /**
621
- * The course for this lesson interaction
652
+ * The course that contains the tracked lesson.
622
653
  */
623
654
  interface Course {
624
655
  /**
@@ -626,17 +657,17 @@ export declare namespace CourseLessonInteraction {
626
657
  */
627
658
  id: string;
628
659
  /**
629
- * The experience that the course belongs to
660
+ * The parent experience that this course belongs to.
630
661
  */
631
662
  experience: Course.Experience;
632
663
  /**
633
- * The title of the course
664
+ * The display name of the course shown to students. Null if no title has been set.
634
665
  */
635
666
  title: string | null;
636
667
  }
637
668
  namespace Course {
638
669
  /**
639
- * The experience that the course belongs to
670
+ * The parent experience that this course belongs to.
640
671
  */
641
672
  interface Experience {
642
673
  /**
@@ -646,7 +677,7 @@ export declare namespace CourseLessonInteraction {
646
677
  }
647
678
  }
648
679
  /**
649
- * The lesson this interaction is for
680
+ * The lesson that this progress record belongs to.
650
681
  */
651
682
  interface Lesson {
652
683
  /**
@@ -654,17 +685,17 @@ export declare namespace CourseLessonInteraction {
654
685
  */
655
686
  id: string;
656
687
  /**
657
- * The chapter this lesson belongs to
688
+ * The parent chapter that contains this lesson.
658
689
  */
659
690
  chapter: Lesson.Chapter;
660
691
  /**
661
- * The title of the lesson
692
+ * The display name of the lesson shown to students. Maximum 120 characters.
662
693
  */
663
694
  title: string;
664
695
  }
665
696
  namespace Lesson {
666
697
  /**
667
- * The chapter this lesson belongs to
698
+ * The parent chapter that contains this lesson.
668
699
  */
669
700
  interface Chapter {
670
701
  /**
@@ -674,7 +705,7 @@ export declare namespace CourseLessonInteraction {
674
705
  }
675
706
  }
676
707
  /**
677
- * The user who interacted with the lesson
708
+ * The user whose progress is being tracked.
678
709
  */
679
710
  interface User {
680
711
  /**
@@ -682,17 +713,18 @@ export declare namespace CourseLessonInteraction {
682
713
  */
683
714
  id: string;
684
715
  /**
685
- * The name of the user from their Whop account.
716
+ * The user's display name shown on their public profile.
686
717
  */
687
718
  name: string | null;
688
719
  /**
689
- * The username of the user from their Whop account.
720
+ * The user's unique username shown on their public profile.
690
721
  */
691
722
  username: string;
692
723
  }
693
724
  }
694
725
  /**
695
- * A lesson interaction tracking user progress in courses
726
+ * A record of a user's progress on a specific lesson, tracking whether they have
727
+ * completed it.
696
728
  */
697
729
  export interface CourseLessonInteractionListItem {
698
730
  /**
@@ -700,7 +732,7 @@ export interface CourseLessonInteractionListItem {
700
732
  */
701
733
  id: string;
702
734
  /**
703
- * Whether the lesson has been completed by the user
735
+ * Whether the user has finished this lesson.
704
736
  */
705
737
  completed: boolean;
706
738
  /**
@@ -708,17 +740,17 @@ export interface CourseLessonInteractionListItem {
708
740
  */
709
741
  created_at: string;
710
742
  /**
711
- * The lesson this interaction is for
743
+ * The lesson that this progress record belongs to.
712
744
  */
713
745
  lesson: CourseLessonInteractionListItem.Lesson;
714
746
  /**
715
- * The user who interacted with the lesson
747
+ * The user whose progress is being tracked.
716
748
  */
717
749
  user: CourseLessonInteractionListItem.User;
718
750
  }
719
751
  export declare namespace CourseLessonInteractionListItem {
720
752
  /**
721
- * The lesson this interaction is for
753
+ * The lesson that this progress record belongs to.
722
754
  */
723
755
  interface Lesson {
724
756
  /**
@@ -726,17 +758,17 @@ export declare namespace CourseLessonInteractionListItem {
726
758
  */
727
759
  id: string;
728
760
  /**
729
- * The chapter this lesson belongs to
761
+ * The parent chapter that contains this lesson.
730
762
  */
731
763
  chapter: Lesson.Chapter;
732
764
  /**
733
- * The title of the lesson
765
+ * The display name of the lesson shown to students. Maximum 120 characters.
734
766
  */
735
767
  title: string;
736
768
  }
737
769
  namespace Lesson {
738
770
  /**
739
- * The chapter this lesson belongs to
771
+ * The parent chapter that contains this lesson.
740
772
  */
741
773
  interface Chapter {
742
774
  /**
@@ -746,7 +778,7 @@ export declare namespace CourseLessonInteractionListItem {
746
778
  }
747
779
  }
748
780
  /**
749
- * The user who interacted with the lesson
781
+ * The user whose progress is being tracked.
750
782
  */
751
783
  interface User {
752
784
  /**
@@ -754,11 +786,11 @@ export declare namespace CourseLessonInteractionListItem {
754
786
  */
755
787
  id: string;
756
788
  /**
757
- * The name of the user from their Whop account.
789
+ * The user's display name shown on their public profile.
758
790
  */
759
791
  name: string | null;
760
792
  /**
761
- * The username of the user from their Whop account.
793
+ * The user's unique username shown on their public profile.
762
794
  */
763
795
  username: string;
764
796
  }
@@ -796,23 +828,26 @@ export interface Entry {
796
828
  */
797
829
  created_at: string | null;
798
830
  /**
799
- * Responses collected from the user when submitting their entry.
831
+ * The list of responses collected from the user when submitting their waitlist
832
+ * entry.
800
833
  */
801
834
  custom_field_responses: Array<Entry.CustomFieldResponse> | null;
802
835
  /**
803
- * The waitlist plan the entry if for.
836
+ * The waitlisted plan that this entry is a signup for.
804
837
  */
805
838
  plan: Entry.Plan | null;
806
839
  /**
807
- * The product tied to this entry, if there is one.
840
+ * The product associated with this entry's waitlisted plan. Null if the plan is
841
+ * not tied to a product.
808
842
  */
809
843
  product: Entry.Product | null;
810
844
  /**
811
- * The status of the entry.
845
+ * The current status of the waitlist entry (e.g., drafted, pending, approved,
846
+ * denied).
812
847
  */
813
848
  status: EntryStatus;
814
849
  /**
815
- * The user who created the entry.
850
+ * The user who submitted this waitlist entry.
816
851
  */
817
852
  user: Entry.User;
818
853
  }
@@ -835,7 +870,7 @@ export declare namespace Entry {
835
870
  question: string;
836
871
  }
837
872
  /**
838
- * The waitlist plan the entry if for.
873
+ * The waitlisted plan that this entry is a signup for.
839
874
  */
840
875
  interface Plan {
841
876
  /**
@@ -844,7 +879,8 @@ export declare namespace Entry {
844
879
  id: string;
845
880
  }
846
881
  /**
847
- * The product tied to this entry, if there is one.
882
+ * The product associated with this entry's waitlisted plan. Null if the plan is
883
+ * not tied to a product.
848
884
  */
849
885
  interface Product {
850
886
  /**
@@ -852,12 +888,13 @@ export declare namespace Entry {
852
888
  */
853
889
  id: string;
854
890
  /**
855
- * The title of the product. Use for Whop 4.0.
891
+ * The display name of the product shown to customers on the product page and in
892
+ * search results.
856
893
  */
857
894
  title: string;
858
895
  }
859
896
  /**
860
- * The user who created the entry.
897
+ * The user who submitted this waitlist entry.
861
898
  */
862
899
  interface User {
863
900
  /**
@@ -865,15 +902,16 @@ export declare namespace Entry {
865
902
  */
866
903
  id: string;
867
904
  /**
868
- * The email of the user
905
+ * The user's email address. Requires the member:email:read permission to access.
906
+ * Null if not authorized.
869
907
  */
870
908
  email: string | null;
871
909
  /**
872
- * The name of the user from their Whop account.
910
+ * The user's display name shown on their public profile.
873
911
  */
874
912
  name: string | null;
875
913
  /**
876
- * The username of the user from their Whop account.
914
+ * The user's unique username shown on their public profile.
877
915
  */
878
916
  username: string;
879
917
  }
@@ -884,7 +922,7 @@ export declare namespace Entry {
884
922
  export type EntryStatus = 'drafted' | 'pending' | 'approved' | 'denied' | 'any';
885
923
  /**
886
924
  * An experience is a feature or content module within a product, such as a chat,
887
- * course, or app.
925
+ * course, or custom app.
888
926
  */
889
927
  export interface Experience {
890
928
  /**
@@ -892,7 +930,7 @@ export interface Experience {
892
930
  */
893
931
  id: string;
894
932
  /**
895
- * The experience interface for this experience.
933
+ * The app that powers this experience, defining its interface and behavior.
896
934
  */
897
935
  app: Experience.App;
898
936
  /**
@@ -904,31 +942,35 @@ export interface Experience {
904
942
  */
905
943
  created_at: string;
906
944
  /**
907
- * The logo for the experience.
945
+ * The custom logo image for this experience. Null if no custom logo has been
946
+ * uploaded.
908
947
  */
909
948
  image: Experience.Image | null;
910
949
  /**
911
- * Whether the experience is visible to the public
950
+ * Whether this experience is publicly visible to all users, including those
951
+ * without a membership.
912
952
  */
913
953
  is_public: boolean;
914
954
  /**
915
- * The written name of the description.
955
+ * The display name of this experience shown to users in the product navigation.
956
+ * Maximum 255 characters.
916
957
  */
917
958
  name: string;
918
959
  /**
919
- * The order of the experience in the section
960
+ * The sort position of this experience within its section. Lower values appear
961
+ * first. Null if no position has been set.
920
962
  */
921
963
  order: string | null;
922
964
  /**
923
- * The products that this experience is attached to. This defines which set of
924
- * customers have access and can view this experience. If empty, this experience is
925
- * only visible to authorized users of the company
965
+ * The list of products this experience is attached to, which determines which
966
+ * customers have access. Empty if the experience is only visible to authorized
967
+ * company team members.
926
968
  */
927
969
  products: Array<Experience.Product>;
928
970
  }
929
971
  export declare namespace Experience {
930
972
  /**
931
- * The experience interface for this experience.
973
+ * The app that powers this experience, defining its interface and behavior.
932
974
  */
933
975
  interface App {
934
976
  /**
@@ -936,24 +978,25 @@ export declare namespace Experience {
936
978
  */
937
979
  id: string;
938
980
  /**
939
- * The icon for the app. This icon is shown on discovery, on the product page, on
940
- * checkout, and as a default icon for the experiences.
981
+ * The icon image for this app, displayed on the app store, product pages,
982
+ * checkout, and as the default icon for experiences using this app.
941
983
  */
942
984
  icon: App.Icon | null;
943
985
  /**
944
- * The name of the app
986
+ * The display name of this app shown on the app store and in experience
987
+ * navigation. Maximum 30 characters.
945
988
  */
946
989
  name: string;
947
990
  }
948
991
  namespace App {
949
992
  /**
950
- * The icon for the app. This icon is shown on discovery, on the product page, on
951
- * checkout, and as a default icon for the experiences.
993
+ * The icon image for this app, displayed on the app store, product pages,
994
+ * checkout, and as the default icon for experiences using this app.
952
995
  */
953
996
  interface Icon {
954
997
  /**
955
- * This is the URL you use to render optimized attachments on the client. This
956
- * should be used for apps.
998
+ * A pre-optimized URL for rendering this attachment on the client. This should be
999
+ * used for displaying attachments in apps.
957
1000
  */
958
1001
  url: string | null;
959
1002
  }
@@ -967,21 +1010,22 @@ export declare namespace Experience {
967
1010
  */
968
1011
  id: string;
969
1012
  /**
970
- * The slug/route of the company on the Whop site.
1013
+ * The URL slug for the company's store page (e.g., 'pickaxe' in whop.com/pickaxe).
971
1014
  */
972
1015
  route: string;
973
1016
  /**
974
- * The title of the company.
1017
+ * The display name of the company shown to customers.
975
1018
  */
976
1019
  title: string;
977
1020
  }
978
1021
  /**
979
- * The logo for the experience.
1022
+ * The custom logo image for this experience. Null if no custom logo has been
1023
+ * uploaded.
980
1024
  */
981
1025
  interface Image {
982
1026
  /**
983
- * This is the URL you use to render optimized attachments on the client. This
984
- * should be used for apps.
1027
+ * A pre-optimized URL for rendering this attachment on the client. This should be
1028
+ * used for displaying attachments in apps.
985
1029
  */
986
1030
  url: string | null;
987
1031
  }
@@ -995,17 +1039,20 @@ export declare namespace Experience {
995
1039
  */
996
1040
  id: string;
997
1041
  /**
998
- * The route of the product.
1042
+ * The URL slug used in the product's public link (e.g., 'my-product' in
1043
+ * whop.com/company/my-product).
999
1044
  */
1000
1045
  route: string;
1001
1046
  /**
1002
- * The title of the product. Use for Whop 4.0.
1047
+ * The display name of the product shown to customers on the product page and in
1048
+ * search results.
1003
1049
  */
1004
1050
  title: string;
1005
1051
  }
1006
1052
  }
1007
1053
  /**
1008
- * Represents a forum feed
1054
+ * A discussion forum where members can create posts, comment, and react, belonging
1055
+ * to an experience.
1009
1056
  */
1010
1057
  export interface Forum {
1011
1058
  /**
@@ -1013,25 +1060,28 @@ export interface Forum {
1013
1060
  */
1014
1061
  id: string;
1015
1062
  /**
1016
- * The email notification preference for this forum
1063
+ * The email notification setting that controls which posts trigger email alerts.
1064
+ * One of: all_admin_posts, only_weekly_summary, none.
1017
1065
  */
1018
1066
  email_notification_preference: EmailNotificationPreferences;
1019
1067
  /**
1020
- * The experience for this forum
1068
+ * The parent experience that this forum belongs to.
1021
1069
  */
1022
1070
  experience: Forum.Experience;
1023
1071
  /**
1024
- * Who can comment on this forum
1072
+ * The permission level controlling who can comment on posts. One of: everyone,
1073
+ * admins.
1025
1074
  */
1026
1075
  who_can_comment: WhoCanCommentTypes;
1027
1076
  /**
1028
- * Who can post on this forum
1077
+ * The permission level controlling who can create new posts. One of: everyone,
1078
+ * admins.
1029
1079
  */
1030
1080
  who_can_post: WhoCanPostTypes;
1031
1081
  }
1032
1082
  export declare namespace Forum {
1033
1083
  /**
1034
- * The experience for this forum
1084
+ * The parent experience that this forum belongs to.
1035
1085
  */
1036
1086
  interface Experience {
1037
1087
  /**
@@ -1039,13 +1089,15 @@ export declare namespace Forum {
1039
1089
  */
1040
1090
  id: string;
1041
1091
  /**
1042
- * The written name of the description.
1092
+ * The display name of this experience shown to users in the product navigation.
1093
+ * Maximum 255 characters.
1043
1094
  */
1044
1095
  name: string;
1045
1096
  }
1046
1097
  }
1047
1098
  /**
1048
- * Represents a post in forum
1099
+ * A post or comment in a forum feed, supporting rich text, attachments, polls, and
1100
+ * reactions.
1049
1101
  */
1050
1102
  export interface ForumPost {
1051
1103
  /**
@@ -1057,57 +1109,58 @@ export interface ForumPost {
1057
1109
  */
1058
1110
  id: string;
1059
1111
  /**
1060
- * The amount of comments on this post
1112
+ * The total number of direct comments on this post.
1061
1113
  */
1062
1114
  comment_count: number;
1063
1115
  /**
1064
- * The content of the forum post in Markdown format
1116
+ * The body of the forum post in Markdown format. Null if the post is paywalled and
1117
+ * the current user does not have access.
1065
1118
  */
1066
1119
  content: string | null;
1067
1120
  /**
1068
- * The timestamp when the post was created
1121
+ * The time this post was created, as a Unix timestamp.
1069
1122
  */
1070
1123
  created_at: string;
1071
1124
  /**
1072
- * Whether the forum post has been edited
1125
+ * Whether this post has been edited after its initial creation.
1073
1126
  */
1074
1127
  is_edited: boolean;
1075
1128
  /**
1076
- * Whether this forum post is pinned
1129
+ * Whether this post is pinned to the top of the forum feed.
1077
1130
  */
1078
1131
  is_pinned: boolean;
1079
1132
  /**
1080
- * Whether the user that sent the post is an admin of the company
1133
+ * Whether the author of this post is an admin of the company that owns the forum.
1081
1134
  */
1082
1135
  is_poster_admin: boolean;
1083
1136
  /**
1084
- * The number of likes this post has received
1137
+ * The total number of like reactions this post has received.
1085
1138
  */
1086
1139
  like_count: number | null;
1087
1140
  /**
1088
- * The ID of the parent forum post, if applicable
1141
+ * The unique identifier of the parent post. Null if this is a top-level post.
1089
1142
  */
1090
1143
  parent_id: string | null;
1091
1144
  /**
1092
- * The title of the forum post
1145
+ * The headline of the forum post. Null if the post has no title.
1093
1146
  */
1094
1147
  title: string | null;
1095
1148
  /**
1096
- * The timestamp when the post was last updated
1149
+ * The time this post was last updated, as a Unix timestamp.
1097
1150
  */
1098
1151
  updated_at: string;
1099
1152
  /**
1100
- * The user who created this forum post
1153
+ * The user who authored this forum post.
1101
1154
  */
1102
1155
  user: ForumPost.User;
1103
1156
  /**
1104
- * The number of times this message has been viewed
1157
+ * The total number of times this post has been viewed by users.
1105
1158
  */
1106
1159
  view_count: number | null;
1107
1160
  }
1108
1161
  export declare namespace ForumPost {
1109
1162
  /**
1110
- * The user who created this forum post
1163
+ * The user who authored this forum post.
1111
1164
  */
1112
1165
  interface User {
1113
1166
  /**
@@ -1115,11 +1168,11 @@ export declare namespace ForumPost {
1115
1168
  */
1116
1169
  id: string;
1117
1170
  /**
1118
- * The name of the user from their Whop account.
1171
+ * The user's display name shown on their public profile.
1119
1172
  */
1120
1173
  name: string | null;
1121
1174
  /**
1122
- * The username of the user from their Whop account.
1175
+ * The user's unique username shown on their public profile.
1123
1176
  */
1124
1177
  username: string;
1125
1178
  }
@@ -1137,9 +1190,11 @@ export type GlobalAffiliateStatus = 'enabled' | 'disabled';
1137
1190
  /**
1138
1191
  * The different industry types a company can be in.
1139
1192
  */
1140
- export type IndustryTypes = 'trading' | 'sports_betting' | 'reselling' | 'fitness' | 'amazon_fba' | 'real_estate' | 'kindle_book_publishing' | 'dating' | 'agencies' | 'health_and_wellness' | 'social_media' | 'sales' | 'business' | 'ecommerce' | 'video_games' | 'home_services' | 'ai' | 'public_speaking' | 'personal_finance' | 'careers' | 'travel' | 'clipping' | 'spirituality' | 'vas' | 'personal_development' | 'software' | 'other' | 'marketing_agency' | 'sales_agency' | 'ai_agency' | 'design_agency' | 'coaching_agency' | 'development_agency' | 'recruiting_agency' | 'customer_support_agency' | 'clipping_agency' | 'clothing' | 'supplements' | 'beauty_and_personal_care' | 'fitness_gear' | 'accessories' | 'home_goods' | 'electronics_and_gadgets' | 'food_and_beverages' | 'gym' | 'restaurant' | 'retail_store' | 'coffee_shop' | 'salon_spa' | 'medical_dentist_office' | 'hotel_lodging' | 'auto_repair_shop' | 'masterminds' | 'webinars' | 'bootcamps' | 'convention' | 'concerts' | 'meetups' | 'parties';
1193
+ export type IndustryTypes = 'trading' | 'sports_betting' | 'reselling' | 'fitness' | 'amazon_fba' | 'real_estate' | 'kindle_book_publishing' | 'dating' | 'agencies' | 'health_and_wellness' | 'social_media' | 'sales' | 'business' | 'ecommerce' | 'video_games' | 'home_services' | 'ai' | 'public_speaking' | 'personal_finance' | 'careers' | 'travel' | 'clipping' | 'spirituality' | 'vas' | 'personal_development' | 'software' | 'other' | 'marketing_agency' | 'sales_agency' | 'ai_agency' | 'design_agency' | 'coaching_agency' | 'development_agency' | 'recruiting_agency' | 'customer_support_agency' | 'clipping_agency' | 'clothing' | 'supplements' | 'beauty_and_personal_care' | 'fitness_gear' | 'accessories' | 'home_goods' | 'electronics_and_gadgets' | 'food_and_beverages' | 'gym' | 'restaurant' | 'retail_store' | 'coffee_shop' | 'salon_spa' | 'medical_dentist_office' | 'hotel_lodging' | 'auto_repair_shop' | 'masterminds' | 'webinars' | 'bootcamps' | 'convention' | 'concerts' | 'meetups' | 'parties' | 'forex_trading' | 'stock_trading' | 'options_trading' | 'crypto_trading' | 'futures_trading' | 'day_trading' | 'swing_trading' | 'algorithmic_trading' | 'prop_firm_trading' | 'value_investing' | 'real_estate_investing' | 'alternative_investments' | 'penny_stock_trading' | 'dividend_investing' | 'index_fund_investing' | 'gold_precious_metals' | 'venture_capital_education' | 'private_equity_education' | 'technical_analysis' | 'forex_scalping' | 'ict_smc_trading' | 'personalized_investment_advice' | 'sports_betting_picks' | 'fantasy_sports' | 'horse_racing' | 'poker_coaching' | 'esports_betting' | 'sports_analytics' | 'nfl_betting' | 'nba_betting' | 'mlb_betting' | 'soccer_betting' | 'mma_ufc_betting' | 'bodybuilding_coaching' | 'strength_training' | 'weight_loss_coaching' | 'athletic_performance' | 'yoga_instruction' | 'martial_arts_instruction' | 'running_coaching' | 'calisthenics' | 'flexibility_mobility' | 'nutrition_coaching' | 'swimming_coaching' | 'cycling_coaching' | 'boxing_coaching' | 'mma_coaching' | 'jiu_jitsu_coaching' | 'wrestling_coaching' | 'gymnastics_coaching' | 'pilates_instruction' | 'sports_nutrition' | 'body_recomposition' | 'golf_coaching' | 'tennis_coaching' | 'basketball_training' | 'soccer_training' | 'mental_health_coaching' | 'life_coaching' | 'biohacking' | 'holistic_health' | 'addiction_recovery_coaching' | 'breathwork' | 'meditation_mindfulness' | 'gut_health_coaching' | 'longevity_coaching' | 'womens_health_coaching' | 'mens_health_coaching' | 'fertility_wellness' | 'stress_management' | 'grief_coaching' | 'trauma_recovery_coaching' | 'adhd_coaching' | 'biomarker_health_coaching' | 'fitness_newsletter' | 'mental_health_newsletter' | 'longevity_newsletter' | 'medical_newsletter' | 'biohacking_newsletter' | 'womens_health_newsletter' | 'mens_health_newsletter' | 'pharma_biotech_newsletter' | 'ecommerce_education' | 'amazon_fba_coaching' | 'dropshipping_coaching' | 'print_on_demand_coaching' | 'retail_arbitrage' | 'wholesale_coaching' | 'startup_coaching' | 'business_strategy' | 'agency_building' | 'smma_coaching' | 'consulting_business' | 'saas_entrepreneurship' | 'local_business_coaching' | 'cleaning_business_coaching' | 'trucking_business_coaching' | 'vending_machine_business' | 'atm_business_coaching' | 'car_wash_business' | 'airbnb_business_coaching' | 'private_label_coaching' | 'etsy_coaching' | 'merch_business_coaching' | 'licensing_business' | 'business_acquisition' | 'women_entrepreneurship' | 'affiliate_marketing_education' | 'coaching_business_coaching' | 'dark_pattern_subscriptions' | 'income_guarantee_scheme' | 'lifetime_access_offers' | 'mlm_pyramid_scheme' | 'negative_option_billing' | 'startup_newsletter' | 'ecommerce_newsletter' | 'marketing_newsletter' | 'sales_newsletter' | 'small_business_newsletter' | 'leadership_newsletter' | 'agency_newsletter' | 'saas_newsletter' | 'hr_people_newsletter' | 'legal_business_newsletter' | 'real_estate_business_newsletter' | 'solopreneur_newsletter' | 'high_ticket_sales' | 'b2b_sales_coaching' | 'door_to_door_sales' | 'sales_funnel_coaching' | 'appointment_setting_coaching' | 'insurance_sales_coaching' | 'car_sales_coaching' | 'retail_sales_coaching' | 'solar_sales_coaching' | 'facebook_ads' | 'google_ads' | 'tiktok_marketing' | 'youtube_marketing' | 'instagram_growth' | 'seo_coaching' | 'email_marketing_coaching' | 'copywriting_coaching' | 'affiliate_marketing' | 'local_seo' | 'ai_marketing' | 'webinar_marketing' | 'event_marketing' | 'saas_marketing_coaching' | 'video_editing_education' | 'photography_coaching' | 'music_production' | 'ui_ux_design_education' | 'clipping_education' | 'ugc_creation' | '3d_modeling_education' | 'dj_education' | 'youtube_automation' | 'blog_monetization' | 'wedding_photography_education' | 'calligraphy_lettering' | 'illustration_education' | 'fashion_design_education' | 'interior_design_education' | 'influencer_education' | 'ai_content_creator_education' | 'web_development_education' | 'ai_ml_education' | 'data_science_education' | 'cybersecurity_education' | 'cloud_computing_education' | 'blockchain_education' | 'no_code_education' | 'automation_education' | 'game_development_education' | 'prompt_engineering' | 'python_programming' | 'javascript_programming' | 'react_development' | 'database_engineering' | 'aws_certification' | 'data_engineering' | 'robotics_education' | 'vr_ar_development' | 'linux_sysadmin' | 'wordpress_development' | 'ai_agent_building' | 'real_estate_wholesaling' | 'house_flipping' | 'property_development' | 'rental_property' | 'airbnb_str' | 'commercial_real_estate' | 'land_investing' | 'section_8_housing' | 'mobile_home_investing' | 'multifamily_investing' | 'self_storage_investing' | 'property_management_education' | 'vacation_rental_management' | 'credit_repair_education' | 'budgeting_coaching' | 'tax_strategy_education' | 'wealth_building' | 'student_loan_strategy' | 'credit_card_optimization' | 'career_coaching' | 'executive_coaching' | 'management_coaching' | 'tech_career_coaching' | 'medical_career_coaching' | 'trade_skills_education' | 'va_training' | 'bookkeeping_education' | 'data_career_coaching' | 'cybersecurity_career' | 'consulting_career' | 'investment_banking_career' | 'law_career_coaching' | 'nursing_career_coaching' | 'teaching_career_coaching' | 'personal_branding_career' | 'mens_dating_coaching' | 'womens_dating_coaching' | 'relationship_coaching' | 'marriage_coaching' | 'communication_coaching' | 'masculinity_coaching' | 'femininity_coaching' | 'breakup_recovery' | 'manifestation_coaching' | 'astrology_coaching' | 'energy_healing' | 'spiritual_coaching' | 'faith_based_coaching' | 'psychic_development' | 'numerology_coaching' | 'chakra_healing' | 'shamanic_healing' | 'biblical_coaching' | 'islamic_coaching' | 'productivity_coaching' | 'public_speaking_coaching' | 'mindset_coaching' | 'stoicism_philosophy' | 'mens_self_improvement' | 'womens_self_improvement' | 'leadership_development' | 'anger_management' | 'neurolinguistic_programming' | 'kindle_publishing' | 'amazon_kdp' | 'self_publishing' | 'audiobook_publishing' | 'course_creation' | 'digital_product_creation' | 'ghostwriting_business' | 'template_creation' | 'ai_book_publishing' | 'language_learning' | 'tutoring' | 'college_admissions_coaching' | 'cpa_exam_prep' | 'bar_exam_prep' | 'real_estate_exam_prep' | 'medical_board_prep' | 'pmp_certification_prep' | 'aws_certification_prep' | 'comptia_certification' | 'ap_exam_prep' | 'graduate_school_prep' | 'scholarship_coaching' | 'homeschool_education' | 'stem_education' | 'financial_certification' | 'coding_bootcamp_prep' | 'cooking_culinary' | 'travel_coaching' | 'parenting_coaching' | 'pet_training' | 'gardening_education' | 'diy_crafts' | 'survival_prepping' | 'baking_pastry' | 'wine_sommelier' | 'beer_brewing' | 'mixology_bartending' | 'woodworking' | 'pottery_ceramics' | 'knitting_crocheting' | 'jewelry_making' | 'aquarium_fishkeeping' | 'bird_watching' | 'astronomy_education' | 'magic_illusion' | 'car_restoration' | 'motorcycle_riding' | 'sailing_boating' | 'scuba_diving' | 'rock_climbing' | 'skiing_snowboarding' | 'surfing_education' | 'homesteading' | 'tiny_house_living' | 'van_life' | 'fashion_styling' | 'floral_design' | 'travel_planning_service' | 'esports_coaching' | 'game_specific_coaching' | 'legal_education' | 'music_theory' | 'music_business' | 'acting_coaching' | 'dance_instruction' | 'voice_acting' | 'english_coaching' | 'spanish_coaching' | 'mandarin_coaching' | 'french_coaching' | 'german_coaching' | 'japanese_coaching' | 'korean_coaching' | 'arabic_coaching' | 'sign_language_education' | 'accent_reduction' | 'business_english' | 'smma' | 'performance_marketing_agency' | 'seo_agency' | 'content_marketing_agency' | 'email_marketing_agency' | 'influencer_marketing_agency' | 'pr_agency' | 'branding_agency' | 'video_marketing_agency' | 'amazon_marketing_agency' | 'podcast_production_agency' | 'tiktok_agency' | 'linkedin_agency' | 'local_marketing_agency' | 'dental_marketing_agency' | 'real_estate_marketing_agency' | 'restaurant_marketing_agency' | 'ecommerce_marketing_agency' | 'b2b_marketing_agency' | 'growth_marketing_agency' | 'affiliate_management_agency' | 'conversion_optimization_agency' | 'event_marketing_agency' | 'click_farm_service' | 'data_scraping_service' | 'lead_list_sales' | 'social_media_bot_farm' | 'lead_generation_agency' | 'cold_email_agency' | 'cold_calling_agency' | 'sales_outsourcing' | 'crm_implementation' | 'appointment_setting_agency' | 'sales_training_agency' | 'revenue_operations_agency' | 'inbound_teleservices' | 'outbound_telemarketing' | 'ai_chatbot_agency' | 'ai_automation_agency' | 'ai_consulting' | 'workflow_automation_agency' | 'data_analytics_agency' | 'ai_voice_agent_agency' | 'ai_content_agency' | 'machine_learning_agency' | 'computer_vision_agency' | 'web_design_agency' | 'graphic_design_agency' | 'ui_ux_agency' | 'motion_design_agency' | 'product_design_agency' | 'logo_design_agency' | 'presentation_design_agency' | '3d_visualization_agency' | 'fashion_design_agency' | 'web_development_agency' | 'mobile_app_agency' | 'saas_development_agency' | 'ecommerce_development' | 'blockchain_development_agency' | 'game_development_agency' | 'devops_agency' | 'ai_development_agency' | 'wordpress_agency' | 'shopify_agency' | 'api_integration_agency' | 'cybersecurity_agency' | 'data_engineering_agency' | 'vr_ar_development_agency' | 'hacking_tools_malware' | 'stalkerware_monitoring' | 'tech_recruiting_agency' | 'executive_recruiting' | 'staffing_agency' | 'remote_staffing' | 'healthcare_recruiting' | 'va_placement_agency' | 'sales_recruiting' | 'creative_recruiting' | 'finance_recruiting' | 'legal_recruiting' | 'construction_staffing' | 'hospitality_staffing' | 'customer_support_outsourcing' | 'live_chat_agency' | 'technical_support_agency' | 'call_center_agency' | 'multilingual_support_agency' | 'community_management_agency' | 'video_clipping_agency' | 'ugc_agency' | 'content_writing_agency' | 'translation_agency' | 'social_media_management' | 'ghostwriting_agency' | 'podcast_editing_agency' | 'thumbnail_design_agency' | 'scriptwriting_agency' | 'seo_content_agency' | 'technical_writing_agency' | 'management_consulting' | 'financial_consulting' | 'hr_consulting' | 'operations_consulting' | 'it_consulting' | 'sustainability_consulting' | 'legal_consulting' | 'compliance_consulting' | 'supply_chain_consulting' | 'change_management_consulting' | 'digital_transformation_consulting' | 'healthcare_consulting' | 'real_estate_consulting' | 'franchise_consulting' | 'export_trade_consulting' | 'nonprofit_consulting' | 'education_consulting' | 'cannabis_consulting' | 'restaurant_consulting' | 'm_and_a_consulting' | 'pricing_strategy_consulting' | 'brand_strategy_consulting' | 'saas_marketing_consulting' | 'done_for_you_services' | 'prop_firm_passing_service' | 'trading_account_management' | 'done_for_you_trading' | 'accounting_bookkeeping' | 'tax_preparation' | 'legal_services' | 'notary_services' | 'insurance_brokerage' | 'financial_planning_service' | 'real_estate_services' | 'property_management' | 'mortgage_brokerage' | 'immigration_services' | 'patent_trademark_services' | 'business_formation_services' | 'shell_company_formation' | 'payroll_services' | 'audit_services' | 'forensic_accounting' | 'actuarial_services' | 'appraisal_services' | 'mediation_arbitration' | 'background_check_services' | 'bail_bond_services' | 'bnpl_service' | 'check_cashing_service' | 'cloud_mining_schemes' | 'consumer_lending' | 'credit_repair_service' | 'crowdfunding_platform' | 'crypto_exchange_brokerage' | 'debt_collection_agency' | 'debt_relief_settlement' | 'document_falsification' | 'escrow_service' | 'essay_mill_paper_mill' | 'fake_id_services' | 'fake_reference_services' | 'foreign_exchange_service' | 'government_service_facilitation' | 'immigration_services_unlicensed' | 'licensed_legal_services' | 'payment_facilitation' | 'personalized_tax_services' | 'prediction_market_exchange' | 'private_investigation' | 'repossession_services' | 'stablecoin_issuance' | 'standalone_tipping' | 'token_sales_ico' | 'tokenized_rwa' | 'unlicensed_legal_services' | 'yield_staking_products' | 'photography_service' | 'videography_service' | 'music_production_service' | 'voice_over_service' | 'event_photography' | 'drone_services' | 'commercial_photography' | 'portrait_photography_service' | 'real_estate_photography' | 'food_photography_service' | 'live_event_production' | 'podcast_production_service' | 'record_label' | 'book_publishing_house' | 'news_media_outlet' | 'radio_broadcasting' | 'tv_production_company' | 'film_studio' | 'magazine_publisher' | 'music_licensing_agency' | 'talent_management_agency' | 'advertising_network' | 'ad_tech_platform' | 'cleaning_service' | 'landscaping_service' | 'plumbing_service' | 'electrical_service' | 'hvac_service' | 'roofing_service' | 'painting_service' | 'moving_service' | 'handyman_service' | 'pest_control' | 'pool_service' | 'solar_installation' | 'home_renovation' | 'pressure_washing' | 'junk_removal' | 'garage_door_service' | 'fencing_service' | 'concrete_masonry' | 'tree_service' | 'window_cleaning' | 'gutter_service' | 'flooring_service' | 'cabinet_countertop' | 'home_inspection' | 'septic_service' | 'waterproofing_service' | 'insulation_service' | 'chimney_service' | 'locksmith_service' | 'glass_window_service' | 'epoxy_coating' | 'private_security_guard_service' | 'armored_car_transport' | 'executive_protection_bodyguard' | 'event_security_service' | 'alarm_system_installation' | 'cctv_installation' | 'private_investigation_agency' | 'background_check_provider' | 'locksmith_commercial' | 'bounty_hunter_bail_enforcement' | 'personal_styling' | 'personal_chef' | 'personal_assistant_service' | 'tutoring_service' | 'pet_services' | 'wedding_planning' | 'concierge_service' | 'personal_training_service' | 'nanny_service' | 'elder_care_service' | 'errand_service' | 'life_organization' | 'relocation_service' | 'adult_dating_services' | 'escort_services' | 'hotel_accommodation_bookings' | 'mail_order_spouse' | 'psychic_fortune_telling' | 'timeshare_sales' | 'freight_brokerage' | 'courier_service' | 'warehousing_service' | 'last_mile_delivery' | 'auto_transport' | 'international_shipping' | 'cold_chain_logistics' | 'commercial_airline_tickets' | 'cruise_line_bookings' | 'contract_manufacturing' | 'cnc_machining_service' | '3d_printing_service_commercial' | 'plastic_injection_molding' | 'metal_fabrication' | 'pcba_assembly' | 'chemical_manufacturing' | 'textile_manufacturing' | 'food_processing_facility' | 'packaging_manufacturing' | 'industrial_automation_integrator' | 'mining_and_extraction' | 'oil_and_gas_services' | 'renewable_energy_generation' | 'waste_management_recycling' | 'hazardous_waste_disposal' | 'aerospace_defense_contracting' | 'personal_training_studio' | 'nutrition_consulting' | 'mental_health_counseling' | 'physical_therapy_service' | 'occupational_therapy_service' | 'speech_therapy_service' | 'chiropractic_service' | 'acupuncture_service' | 'massage_therapy_service' | 'midwifery_doula' | 'lactation_consulting' | 'dietitian_service' | 'addiction_recovery_services' | 'dtc_lab_testing' | 'iv_therapy_infusion' | 'medspa_aesthetic_services' | 'prescription_delivery_services' | 'registered_dietitian_services' | 'unlicensed_therapy_counseling' | 'streetwear' | 'athleisure' | 'luxury_fashion' | 'kids_clothing' | 'custom_apparel' | 'workwear' | 'swimwear' | 'lingerie_intimates' | 'vintage_clothing' | 'plus_size_fashion' | 'maternity_clothing' | 'sleepwear_loungewear' | 'denim_brand' | 'outerwear_jackets' | 'socks_hosiery' | 'costumes_cosplay' | 'scrubs_medical_apparel' | 'dance_performance_wear' | 'hunting_camo_apparel' | 'protein_supplements' | 'vitamins_minerals' | 'pre_workout' | 'nootropics' | 'herbal_supplements' | 'weight_management_supplements' | 'gut_health' | 'cbd_products' | 'mushroom_supplements' | 'collagen_supplements' | 'testosterone_boosters' | 'sleep_supplements' | 'immune_support' | 'joint_bone_health' | 'greens_powder' | 'creatine_supplements' | 'electrolyte_hydration' | 'prenatal_supplements' | 'kids_supplements' | 'pet_supplements' | 'ayurvedic_supplements' | 'keto_supplements' | 'cannabis_thc_products' | 'cbd_hemp_products_compliant' | 'delta8_thc_products' | 'dietary_supplements' | 'drug_precursor_chemicals' | 'illegal_drugs' | 'kratom_kava_products' | 'medical_treatment_claims_product' | 'nutraceutical_products' | 'otc_medication_sales' | 'performance_enhancing_drugs' | 'research_chemicals_dangerous' | 'research_peptides' | 'sexual_enhancement_products' | 'tobacco_products' | 'unlicensed_rx_sales' | 'skincare' | 'haircare' | 'cosmetics_makeup' | 'mens_grooming' | 'fragrance' | 'oral_care' | 'sunscreen_spf' | 'hair_growth_products' | 'body_care' | 'deodorant' | 'lip_care' | 'acne_treatment' | 'men_skincare' | 'baby_skincare' | 'tattoo_aftercare' | 'intimate_care' | 'home_gym_equipment' | 'yoga_equipment' | 'combat_sports_gear' | 'outdoor_fitness_gear' | 'wearable_fitness' | 'recovery_equipment' | 'weightlifting_equipment' | 'cardio_equipment' | 'gymnastics_equipment' | 'swimming_gear' | 'jump_rope_equipment' | 'grip_strength_tools' | 'sauna_cold_plunge' | 'posture_correctors' | 'jewelry' | 'sunglasses_eyewear' | 'bags_wallets' | 'hats_headwear' | 'phone_accessories' | 'travel_accessories' | 'scarves_wraps' | 'belts' | 'hair_accessories' | 'tech_accessories' | 'keychains_charms' | 'custom_engraved_accessories' | 'cannabis_accessories_non_drug' | 'drug_paraphernalia' | 'high_value_goods_over_500' | 'precious_metals_stones' | 'replica_counterfeit_goods' | 'home_decor' | 'candles_scents' | 'kitchenware' | 'bedding_linens' | 'smart_home' | 'cleaning_products' | 'outdoor_furniture' | 'organization_storage' | 'wall_art_prints' | 'rugs_carpets' | 'lighting_fixtures' | 'planters_garden_decor' | 'bathroom_accessories' | 'luxury_home_goods' | 'seasonal_holiday_decor' | 'pet_home_products' | 'home_fragrance_diffusers' | 'hazardous_chemicals_b2c' | 'pre_orders_delayed_delivery' | 'audio_equipment' | 'camera_equipment' | 'gaming_hardware' | 'drones_robotics' | 'ev_accessories' | 'charging_power' | 'smart_wearables' | 'home_security_devices' | '3d_printers' | 'projectors_displays' | 'streaming_devices' | 'vr_headsets' | 'e_readers' | 'portable_tech' | 'hardware_wallets' | 'regulated_medical_devices' | 'signal_jamming_devices' | 'spy_cameras_hidden_recording' | 'specialty_coffee_tea' | 'health_food' | 'snacks_treats' | 'sauces_condiments' | 'alcohol_spirits' | 'meal_kits' | 'baked_goods' | 'beverages' | 'pet_food_treats' | 'protein_bars_snacks' | 'jerky_meat_snacks' | 'chocolate_confections' | 'honey_sweeteners' | 'olive_oil_vinegar' | 'hot_sauce' | 'dried_fruit_nuts' | 'baby_food' | 'plant_based_food' | 'gluten_free_food' | 'keto_food_products' | 'subscription_food_box' | 'kombucha_fermented' | 'alcohol_sales' | 'baby_products' | 'kids_toys' | 'kids_educational' | 'baby_clothing_accessories' | 'nursery_decor' | 'kids_outdoor_play' | 'kids_books' | 'baby_safety_products' | 'kids_arts_crafts' | 'camping_hiking' | 'fishing_gear' | 'hunting_gear' | 'cycling_gear' | 'water_sports_gear' | 'golf_equipment' | 'snow_sports_gear' | 'climbing_gear' | 'archery_equipment' | 'skateboarding_gear' | 'pickleball_equipment' | 'tennis_equipment' | 'equestrian_gear' | 'tactical_gear' | 'overlanding_gear' | 'explosives_fireworks' | 'firearms_sales' | 'self_defense_products' | 'weapon_components' | 'craft_kits' | 'sewing_textiles' | 'stationery' | 'scrapbooking_supplies' | 'beading_jewelry_supplies' | 'pottery_supplies' | 'printmaking_supplies' | 'car_accessories' | 'detailing_products' | 'motorcycle_gear' | 'truck_accessories' | 'off_road_parts' | 'car_audio_electronics' | 'performance_parts' | 'car_care_products' | 'ev_charging_accessories' | 'auto_repair_service' | 'auto_body_shop' | 'car_dealership' | 'car_wash' | 'tire_shop' | 'oil_change_shop' | 'auto_parts_store' | 'motorcycle_shop' | 'ev_charging_station' | 'transmission_shop' | 'muffler_exhaust_shop' | 'auto_glass_shop' | 'auto_upholstery_shop' | 'car_audio_shop' | 'smog_emissions_shop' | 'truck_repair_shop' | 'rv_repair_shop' | 'boat_repair_shop' | 'used_car_lot' | 'auto_auction' | 'dog_products' | 'cat_products' | 'aquarium_supplies' | 'bird_supplies' | 'reptile_supplies' | 'horse_supplies' | 'pet_apparel' | 'pet_tech' | 'pet_grooming_products' | 'hand_tools' | 'power_tools_and_accessories' | 'hardware_and_fasteners' | 'workshop_equipment_and_storage' | 'safety_and_work_gear' | 'painting_and_building_supplies' | 'office_supplies' | 'desk_accessories' | 'printing_supplies' | 'shipping_packaging' | 'reusable_products' | 'solar_powered_products' | 'handmade_goods_marketplace' | 'vintage_resale_marketplace' | 'electronics_marketplace' | 'auto_parts_marketplace' | 'luxury_goods_marketplace' | 'collectibles_marketplace' | 'nft_digital_marketplace' | 'wholesale_marketplace' | 'local_goods_marketplace' | 'sneaker_marketplace' | 'book_marketplace' | 'furniture_marketplace' | 'musical_instrument_marketplace' | 'art_marketplace' | 'ticket_marketplace' | 'industrial_equipment_marketplace' | 'craft_supply_marketplace' | 'baby_kids_marketplace' | 'outdoor_gear_marketplace' | 'pet_marketplace' | 'sustainable_goods_marketplace' | '3d_weapon_files' | 'cultural_artifacts_looted' | 'dropshipping_operations' | 'endangered_animal_products' | 'human_body_parts_tissue' | 'nft_marketplace' | 'penny_auction' | 'primary_event_ticketing' | 'freelancer_marketplace' | 'home_services_marketplace' | 'tutoring_marketplace' | 'legal_services_marketplace' | 'healthcare_marketplace' | 'wedding_services_marketplace' | 'creative_services_marketplace' | 'beauty_services_marketplace' | 'fitness_trainer_marketplace' | 'pet_services_marketplace' | 'childcare_marketplace' | 'elder_care_marketplace' | 'translation_marketplace' | 'coaching_marketplace' | 'therapy_marketplace' | 'photography_marketplace' | 'dj_entertainment_marketplace' | 'auto_services_marketplace' | 'freelance_marketplace_operator' | 'equipment_rental_marketplace' | 'vehicle_rental_marketplace' | 'space_rental_marketplace' | 'vacation_rental_marketplace' | 'clothing_rental_marketplace' | 'camera_gear_rental' | 'rv_camper_rental' | 'boat_rental_marketplace' | 'storage_rental_marketplace' | 'office_coworking_rental' | 'parking_rental_marketplace' | 'restaurant_marketplace' | 'grocery_marketplace' | 'catering_marketplace' | 'homemade_food_marketplace' | 'meal_prep_marketplace' | 'bakery_marketplace' | 'farm_produce_marketplace' | 'chef_booking_marketplace' | 'course_marketplace' | 'template_marketplace' | 'stock_media_marketplace' | 'music_beats_marketplace' | 'ebook_marketplace' | 'plugin_theme_marketplace' | '3d_model_marketplace' | 'prompt_marketplace' | 'code_snippet_marketplace' | 'game_account_selling' | 'game_cheats_hacks' | 'pirated_digital_content' | 'unauthorized_ingame_currency' | 'weapon_blueprint_distribution' | 'saas_marketplace' | 'agency_marketplace' | 'manufacturing_marketplace' | 'logistics_marketplace' | 'commercial_real_estate_marketplace' | 'business_for_sale_marketplace' | 'food_delivery' | 'grocery_delivery' | 'package_delivery' | 'moving_labor' | 'alcohol_delivery' | 'pharmacy_delivery' | 'flower_delivery_gig' | 'furniture_delivery_gig' | 'catering_delivery' | 'rideshare' | 'chauffeur_service' | 'bike_scooter_rental' | 'boat_charter_gig' | 'moving_truck_rental_gig' | 'assembly_installation' | 'waiting_line_service' | 'personal_shopping' | 'grocery_shopping_gig' | 'gift_wrapping_gig' | 'notary_gig' | 'laundry_gig' | 'car_wash_gig' | 'cleaning_gig' | 'lawn_care_gig' | 'handyman_gig' | 'pet_care_gig' | 'childcare_gig' | 'elder_care_gig' | 'painting_gig' | 'snow_removal_gig' | 'pool_cleaning_gig' | 'organizing_gig' | 'pressure_washing_gig' | 'junk_removal_gig' | 'freelance_design_gig' | 'freelance_writing_gig' | 'freelance_dev_gig' | 'music_performance_gig' | 'event_staffing_gig' | 'model_talent_gig' | 'photography_gig' | 'videography_gig' | 'voiceover_gig' | 'illustration_gig' | 'social_media_gig' | 'dj_gig' | 'face_painting_gig' | 'consulting_gig' | 'accounting_gig' | 'legal_gig' | 'healthcare_gig' | 'teaching_gig' | 'translation_gig' | 'data_entry_gig' | 'research_gig' | 'virtual_assistant_gig' | 'sales_gig' | 'recruiting_gig' | 'mystery_shopping' | 'focus_group_gig' | 'product_testing_gig' | 'drone_pilot_gig' | 'fitness_instruction_gig' | 'tour_guide_gig' | 'forex_signals_group' | 'stock_signals_group' | 'crypto_signals_group' | 'options_alerts_group' | 'futures_signals_group' | 'trading_education_group' | 'investing_community' | 'prediction_markets_group' | 'nft_alpha_group' | 'penny_stock_group' | 'dividend_investing_group' | 'real_estate_investing_group' | 'prop_firm_group' | 'sports_picks_group' | 'dfs_group' | 'horse_racing_group' | 'esports_picks_group' | 'nfl_picks_group' | 'nba_picks_group' | 'soccer_picks_group' | 'mlb_picks_group' | 'mma_picks_group' | 'prop_bets_group' | 'fantasy_sports_free_to_play' | 'licensed_gambling_operations' | 'unlicensed_gambling' | 'ecommerce_community' | 'agency_community' | 'saas_community' | 'saas_marketing_community' | 'real_estate_community' | 'sales_community' | 'affiliate_community' | 'reselling_community' | 'amazon_seller_community' | 'dropshipping_community' | 'freelancer_community' | 'startup_founder_community' | 'ceo_executive_community' | 'women_business_community' | 'marketing_community' | 'ai_business_community' | 'content_business_community' | 'local_business_community' | 'private_equity_community' | 'wholesaling_community' | 'coaching_business_community' | 'make_money_online_community' | 'fitness_accountability' | 'nutrition_community' | 'weight_loss_group' | 'bodybuilding_community' | 'running_community' | 'martial_arts_community' | 'mental_health_group' | 'biohacking_community' | 'addiction_support_group' | 'yoga_community' | 'crossfit_community' | 'longevity_community' | 'womens_fitness_community' | 'postpartum_fitness_group' | 'chronic_illness_support' | 'content_creator_community' | 'video_editing_community' | 'music_producer_community' | 'photography_community' | 'writing_community' | 'design_community' | 'youtube_creator_community' | 'tiktok_creator_community' | 'podcast_community' | 'filmmaker_community' | 'developer_community' | 'ai_community' | 'cybersecurity_community' | 'no_code_community' | 'indie_hacker_community' | 'devops_community' | 'data_science_community' | 'product_community' | 'open_source_community' | 'dating_community' | 'personal_development_community' | 'spirituality_community' | 'parenting_community' | 'travel_community' | 'networking_community' | 'faith_community' | 'mens_community' | 'womens_community' | 'expat_community' | 'adult_community_nsfw' | 'hate_violence_communities' | 'personal_fundraising' | 'political_fundraising' | 'political_organizations' | 'pornographic_content' | 'registered_501c3' | 'religious_organization' | 'unregistered_charities' | 'gaming_community' | 'car_enthusiast_community' | 'sneakerhead_community' | 'watch_collector_community' | 'wine_enthusiast_community' | 'cigar_community' | 'cooking_community' | 'gardening_community' | 'fishing_community' | 'hunting_community' | 'diy_maker_community' | 'golf_community' | 'sweepstakes_raffles' | 'forex_trading_bot' | 'stock_trading_platform' | 'crypto_trading_bot' | 'futures_trading_bot' | 'options_flow_tool' | 'portfolio_tracker' | 'financial_modeling_software' | 'accounting_software' | 'invoicing_software' | 'tax_software' | 'risk_management_software' | 'prop_trading_platform' | 'backtesting_software' | 'market_data_feed' | 'banking_software' | 'lending_platform' | 'insurance_software' | 'crypto_trading_tools_software' | 'non_custodial_wallet_tools' | 'ai_outreach_tool' | 'ai_chatbot_software' | 'ai_writing_tool' | 'ai_image_generator' | 'ai_video_tool' | 'ai_voice_tool' | 'ai_data_analysis' | 'ai_code_assistant' | 'ai_meeting_assistant' | 'workflow_automation_software' | 'ai_sales_tool' | 'ai_customer_support' | 'ai_recruiting_tool' | 'ai_translation_tool' | 'ai_music_tool' | 'ai_presentation_tool' | 'ai_research_tool' | 'ai_seo_tool' | 'ai_social_media_tool' | 'ai_phone_agent' | 'ai_legal_tool' | 'ai_healthcare_tool' | 'llm_api_platform' | 'ai_agent_platform' | 'generative_ai_platform' | 'celebrity_impersonation' | 'deepfake_service' | 'crm_software' | 'email_marketing_software' | 'sms_marketing_software' | 'seo_tool' | 'landing_page_builder' | 'ad_management_tool' | 'affiliate_tracking' | 'review_management' | 'analytics_dashboard' | 'lead_gen_software' | 'link_in_bio_tool' | 'influencer_platform' | 'webinar_platform' | 'ab_testing_tool' | 'chatbot_marketing' | 'video_sales_tool' | 'proposal_software' | 'competitive_intelligence' | 'social_listening_tool' | 'whatsapp_marketing_tool' | 'ecommerce_platform' | 'product_research_tool' | 'price_tracker' | 'shipping_software' | 'print_on_demand_software' | 'marketplace_seller_tool' | 'product_review_software' | 'returns_management' | 'product_feed_management' | 'checkout_optimization' | 'wholesale_ordering' | 'project_management_software' | 'team_communication' | 'video_conferencing' | 'document_collaboration' | 'time_tracking_software' | 'scheduling_software' | 'hr_software' | 'knowledge_base_software' | 'form_survey_builder' | 'note_taking_app' | 'task_management' | 'contract_management' | 'expense_management' | 'okr_goal_tracking' | 'employee_engagement' | 'onboarding_software' | 'applicant_tracking' | 'asset_management' | 'facility_management' | 'visitor_management' | 'api_management' | 'hosting_platform' | 'database_tool' | 'devops_tool' | 'monitoring_tool' | 'testing_tool' | 'code_editor' | 'no_code_builder' | 'cdn_platform' | 'error_tracking' | 'documentation_tool' | 'webhook_tool' | 'community_platform' | 'event_management_software' | 'webinar_software' | 'school_management' | 'newsletter_platform' | 'podcast_hosting' | 'forum_software' | 'virtual_classroom' | 'telehealth_platform' | 'ehr_software' | 'practice_management' | 'mental_health_app' | 'fitness_app' | 'nutrition_tracking_app' | 'wellness_app' | 'patient_engagement' | 'medical_billing_software' | 'pharmacy_management' | 'lab_management' | 'clinical_trial_software' | 'dental_software' | 'veterinary_software' | 'health_data_platform' | 'real_estate_crm' | 'property_management_software' | 'deal_analysis_tool' | 'mls_search_tool' | 'virtual_tour_software' | 'real_estate_marketing_software' | 'construction_management' | 'home_valuation_tool' | 'restaurant_pos' | 'salon_software' | 'gym_management_software' | 'auto_shop_software' | 'legal_practice_software' | 'church_management' | 'nonprofit_software' | 'logistics_software' | 'agriculture_software' | 'field_service_software' | 'marina_management' | 'hotel_pms' | 'childcare_management' | 'cleaning_business_software' | 'roofing_software' | 'landscaping_software' | 'pest_control_software' | 'tattoo_studio_software' | 'cannabis_software' | 'vpn_software' | 'password_manager' | 'cybersecurity_software' | 'identity_verification' | 'backup_recovery' | 'endpoint_protection' | 'email_security' | 'access_management' | 'compliance_software' | 'data_privacy_tool' | 'vpn_services' | 'game_mod_tool' | 'streaming_tool' | 'game_server_hosting' | 'music_software' | 'video_editing_software' | 'photo_editing_software' | 'animation_software' | 'audio_editing_software' | 'screen_recording_software' | 'fantasy_sports_paid_entry' | 'iptv_pirated_streaming' | 'loot_boxes_gacha' | 'skill_contests_free_entry' | 'skill_contests_paid_entry' | 'business_phone_system' | 'customer_messaging' | 'digital_key_reselling' | 'streaming_account_reselling' | 'primary_care_telehealth' | 'urgent_care_telehealth' | 'pediatric_telehealth' | 'geriatric_telehealth' | 'family_medicine_telehealth' | 'internal_medicine_telehealth' | 'preventive_care_telehealth' | 'licensed_online_pharmacy' | 'telemedicine_practitioner_services' | 'dermatology_telehealth' | 'acne_telehealth' | 'psoriasis_eczema_telehealth' | 'skin_cancer_screening_tele' | 'cosmetic_dermatology_tele' | 'therapy_telehealth' | 'psychiatry_telehealth' | 'addiction_telehealth' | 'couples_therapy_telehealth' | 'child_psychology_telehealth' | 'eating_disorder_telehealth' | 'ptsd_trauma_telehealth' | 'adhd_telehealth' | 'anxiety_depression_telehealth' | 'ocd_telehealth' | 'grief_counseling_telehealth' | 'anger_management_telehealth' | 'family_therapy_telehealth' | 'group_therapy_telehealth' | 'licensed_psychedelic_therapy' | 'womens_health_telehealth' | 'mens_health_telehealth' | 'sexual_health_telehealth' | 'fertility_telehealth' | 'hormone_therapy_telehealth' | 'menopause_telehealth' | 'prenatal_telehealth' | 'postpartum_telehealth' | 'erectile_dysfunction_tele' | 'hair_loss_telehealth' | 'birth_control_telehealth' | 'sti_testing_telehealth' | 'dental_telehealth' | 'orthodontics_telehealth' | 'optometry_telehealth' | 'oral_surgery_consultation' | 'vision_therapy_telehealth' | 'cardiology_telehealth' | 'endocrinology_telehealth' | 'neurology_telehealth' | 'orthopedic_telehealth' | 'allergy_telehealth' | 'ent_telehealth' | 'rheumatology_telehealth' | 'gastroenterology_telehealth' | 'infectious_disease_telehealth' | 'pulmonology_telehealth' | 'nephrology_telehealth' | 'oncology_telehealth' | 'hematology_telehealth' | 'urology_telehealth' | 'weight_management_telehealth' | 'glp1_weight_loss_tele' | 'diabetes_management_tele' | 'metabolic_health_tele' | 'bariatric_telehealth' | 'physical_therapy_telehealth' | 'occupational_therapy_tele' | 'speech_therapy_telehealth' | 'pain_management_telehealth' | 'cardiac_rehab_telehealth' | 'pelvic_floor_telehealth' | 'vestibular_telehealth' | 'sleep_medicine_telehealth' | 'chronic_disease_management' | 'chronic_pain_telehealth' | 'migraine_telehealth' | 'asthma_copd_telehealth' | 'nutrition_telehealth' | 'naturopathic_telehealth' | 'functional_medicine_telehealth' | 'acupuncture_telehealth' | 'health_coaching_telehealth' | 'integrative_medicine_tele' | 'ayurvedic_telehealth' | 'genetic_counseling_telehealth' | 'pharmacogenomics_tele' | 'rare_disease_telehealth' | 'second_opinion_telehealth' | 'vet_telehealth' | 'pet_behavior_telehealth' | 'exotic_pet_telehealth' | 'equine_telehealth' | 'veterinary_services' | 'class_action_settlement' | 'mastermind_event' | 'webinar_event' | 'bootcamp_event' | 'convention_expo' | 'conference_summit' | 'workshop_seminar' | 'hackathon' | 'pitch_competition' | 'training_certification_event' | 'product_launch_event' | 'investor_demo_day' | 'industry_awards_event' | 'panel_discussion_event' | 'virtual_summit' | 'corporate_training_event' | 'meetup_event' | 'dinner_event' | 'alumni_event' | 'community_gathering' | 'singles_event' | 'professional_happy_hour' | 'women_networking_event' | 'founders_dinner' | 'industry_mixer' | 'concert_event' | 'party_event' | 'comedy_show' | 'theater_performance' | 'film_screening' | 'art_exhibition' | 'food_festival' | 'music_festival' | 'cultural_festival' | 'fashion_show' | 'drag_show' | 'magic_show' | 'dance_performance' | 'poetry_spoken_word' | 'trivia_night' | 'wine_tasting_event' | 'beer_festival' | 'car_show' | 'fitness_challenge_event' | 'marathon_race' | 'tournament_event' | 'fight_event' | 'yoga_retreat_event' | 'outdoor_adventure_event' | 'esports_tournament' | 'obstacle_course_race' | 'cycling_event' | 'swim_meet' | 'golf_tournament' | 'pickleball_tournament' | 'crossfit_competition' | 'martial_arts_tournament' | 'surfing_competition' | 'wellness_retreat' | 'spiritual_retreat' | 'couples_retreat' | 'plant_medicine_retreat' | 'luxury_experience_event' | 'detox_retreat' | 'silent_retreat' | 'creative_retreat' | 'leadership_retreat' | 'mens_retreat' | 'womens_retreat' | 'digital_detox_retreat' | 'fundraiser_event' | 'awareness_event' | 'volunteer_event' | 'charity_auction' | 'benefit_concert' | 'charity_run_walk' | 'environmental_cleanup' | 'family_festival' | 'kids_event' | 'holiday_event' | 'farmers_market_event' | 'block_party' | 'graduation_ceremony' | 'memorial_event' | 'stock_market_newsletter' | 'crypto_newsletter' | 'personal_finance_newsletter' | 'real_estate_newsletter' | 'fintech_newsletter' | 'venture_capital_newsletter' | 'options_trading_newsletter' | 'forex_newsletter' | 'macro_economics_newsletter' | 'alternative_investing_newsletter' | 'tax_strategy_newsletter' | 'ai_newsletter' | 'tech_industry_newsletter' | 'cybersecurity_newsletter' | 'developer_newsletter' | 'product_newsletter' | 'devops_newsletter' | 'open_source_newsletter' | 'robotics_newsletter' | 'climate_tech_newsletter' | 'travel_newsletter' | 'fashion_newsletter' | 'parenting_newsletter' | 'sports_newsletter' | 'gaming_newsletter' | 'music_entertainment_newsletter' | 'book_reading_newsletter' | 'dating_relationships_newsletter' | 'home_design_newsletter' | 'pet_newsletter' | 'wine_spirits_newsletter' | 'automotive_newsletter' | 'political_newsletter' | 'geopolitics_newsletter' | 'media_journalism_newsletter' | 'defense_security_newsletter' | 'legal_policy_newsletter' | 'design_newsletter' | 'education_newsletter' | 'science_newsletter' | 'philosophy_newsletter' | 'sustainability_newsletter' | 'architecture_newsletter' | 'history_newsletter' | 'psychology_newsletter' | 'career_newsletter' | 'spirituality_newsletter' | 'self_improvement_newsletter' | 'productivity_newsletter' | 'faith_newsletter' | 'gym_facility' | 'crossfit_box' | 'yoga_studio' | 'pilates_studio' | 'martial_arts_gym' | 'boxing_gym' | 'climbing_gym' | 'dance_studio' | 'swimming_pool' | 'sports_facility' | 'golf_course' | 'bowling_alley' | 'skating_rink' | 'trampoline_park' | 'tennis_club' | 'pickleball_facility' | 'gymnastics_center' | 'spin_studio' | 'barre_studio' | 'personal_training_studio_bm' | 'recovery_studio' | 'indoor_soccer' | 'batting_cage' | 'shooting_range' | 'archery_range' | 'equestrian_center' | 'fine_dining' | 'fast_casual_restaurant' | 'fast_food' | 'food_truck' | 'bar_lounge' | 'brewery_taproom' | 'winery_tasting' | 'coffee_shop_cafe' | 'bakery' | 'juice_smoothie_bar' | 'pizza_shop' | 'sushi_restaurant' | 'ethnic_restaurant' | 'catering_kitchen' | 'ghost_kitchen' | 'ice_cream_shop' | 'donut_shop' | 'deli_sandwich_shop' | 'steakhouse' | 'seafood_restaurant' | 'bbq_restaurant' | 'mexican_restaurant' | 'italian_restaurant' | 'chinese_restaurant' | 'indian_restaurant' | 'thai_restaurant' | 'korean_restaurant' | 'mediterranean_restaurant' | 'vegan_vegetarian_restaurant' | 'brunch_restaurant' | 'ramen_noodle_shop' | 'poke_bowl_shop' | 'bubble_tea_shop' | 'wine_bar' | 'cocktail_bar' | 'sports_bar' | 'hookah_lounge' | 'distillery' | 'butcher_shop' | 'cheese_shop' | 'farmers_market_stall' | 'food_hall_vendor' | 'commercial_farming' | 'livestock_ranching' | 'hydroponic_vertical_farming' | 'forestry_logging' | 'aquaculture_fisheries' | 'vineyard_winery_production' | 'cannabis_cultivation' | 'hemp_farming' | 'grain_production' | 'agricultural_cooperative' | 'fertilizer_pesticide_sales' | 'farm_equipment_sales' | 'boutique_store' | 'clothing_store' | 'shoe_store' | 'jewelry_store' | 'electronics_store' | 'bookstore' | 'pet_store' | 'toy_store' | 'sporting_goods_store' | 'thrift_store' | 'smoke_shop' | 'cannabis_dispensary' | 'convenience_store' | 'grocery_store' | 'liquor_store' | 'florist' | 'gift_shop' | 'furniture_store' | 'home_improvement_store' | 'art_gallery_retail' | 'music_instrument_store' | 'outdoor_recreation_store' | 'phone_repair_store' | 'watch_store' | 'bridal_shop' | 'maternity_store' | 'kids_store' | 'sneaker_store' | 'vintage_store' | 'comic_book_store' | 'record_store' | 'craft_supply_store' | 'fabric_store' | 'health_food_store' | 'vitamin_supplement_store' | 'optical_store' | 'mattress_store' | 'appliance_store' | 'kitchen_bath_store' | 'tile_flooring_store' | 'paint_store' | 'garden_center' | 'gun_store' | 'pawn_shop' | 'dollar_store' | 'hair_salon' | 'nail_salon' | 'day_spa' | 'med_spa' | 'massage_studio' | 'tattoo_parlor' | 'tanning_salon' | 'beauty_supply_store' | 'lash_brow_studio' | 'waxing_studio' | 'sauna_bathhouse' | 'cryotherapy_studio' | 'float_sensory_studio' | 'iv_therapy_lounge' | 'teeth_whitening_studio' | 'microblading_studio' | 'spray_tan_studio' | 'blowout_bar' | 'mens_barbershop' | 'kids_salon' | 'medical_office' | 'dental_office' | 'chiropractic_office' | 'physical_therapy_clinic' | 'optometry_office' | 'dermatology_clinic' | 'urgent_care_clinic' | 'pharmacy' | 'veterinary_clinic' | 'mental_health_clinic' | 'fertility_clinic' | 'acupuncture_clinic' | 'hearing_aid_center' | 'orthopedic_clinic' | 'pediatric_clinic' | 'cosmetic_surgery_center' | 'allergy_clinic' | 'pain_management_clinic' | 'dialysis_center' | 'imaging_center' | 'lab_testing_center' | 'sleep_clinic' | 'weight_loss_clinic' | 'hormone_therapy_clinic' | 'addiction_treatment_center' | 'rehabilitation_center' | 'occupational_therapy_clinic' | 'speech_therapy_clinic' | 'wound_care_center' | 'funeral_home_mortuary' | 'crematory_service' | 'cemetery_memorial_park' | 'casket_urn_retailer' | 'pet_cremation_service' | 'biohazard_cleanup' | 'estate_liquidation' | 'hotel' | 'motel' | 'boutique_hotel' | 'bed_and_breakfast' | 'hostel' | 'resort' | 'campground_rv' | 'vacation_rental_property' | 'extended_stay' | 'glamping_site' | 'cabin_rental' | 'eco_lodge' | 'retreat_center' | 'tutoring_center' | 'daycare_center' | 'preschool' | 'learning_center' | 'music_school' | 'art_school' | 'driving_school' | 'language_school' | 'trade_school' | 'coding_bootcamp_location' | 'montessori_school' | 'after_school_program' | 'swim_school' | 'cooking_school' | 'test_prep_center' | 'special_needs_center' | 'adult_education_center' | 'flight_school' | 'cosmetology_school' | 'movie_theater' | 'escape_room' | 'arcade' | 'mini_golf' | 'laser_tag' | 'go_kart' | 'amusement_park' | 'museum' | 'zoo_aquarium' | 'theater_venue' | 'nightclub' | 'karaoke_bar' | 'comedy_club' | 'live_music_venue' | 'axe_throwing' | 'virtual_reality_arcade' | 'board_game_cafe' | 'cat_cafe' | 'haunted_house' | 'water_park' | 'indoor_playground' | 'trampoline_park_entertainment' | 'concert_venue' | 'drive_in_theater' | 'billiards_hall' | 'dart_bar' | 'batting_cage_entertainment' | 'indoor_skydiving' | 'law_office' | 'real_estate_office' | 'insurance_office' | 'accounting_office' | 'bank_credit_union' | 'printing_shop' | 'shipping_center' | 'dry_cleaner' | 'laundromat' | 'storage_facility' | 'coworking_space' | 'check_cashing' | 'title_company' | 'travel_agency_storefront' | 'staffing_office' | 'financial_advisor_office' | 'immigration_office' | 'bail_bonds_office' | 'pet_grooming' | 'dog_daycare' | 'pet_boarding' | 'dog_training_facility' | 'pet_spa' | 'aquatic_pet_store' | 'pet_bakery' | 'pet_photography_studio' | 'plumbing_showroom' | 'hvac_showroom' | 'solar_showroom' | 'kitchen_design_showroom' | 'bath_design_showroom' | 'window_door_showroom' | 'pool_spa_showroom' | 'fireplace_showroom' | 'countertop_showroom' | 'nonprofit_organization' | 'charity_foundation' | 'political_campaign' | 'community_organization' | 'environmental_nonprofit' | 'education_nonprofit' | 'health_nonprofit' | 'animal_welfare_nonprofit' | 'arts_culture_nonprofit' | 'social_justice_nonprofit' | 'veterans_nonprofit' | 'youth_nonprofit' | 'disaster_relief_nonprofit' | 'food_bank' | 'housing_nonprofit' | 'government_agency' | 'public_utility' | 'public_library' | 'public_school' | 'municipal_service' | 'military_installation' | 'embassy_consulate' | 'niche_service' | 'niche_product' | 'hybrid_business' | 'other_general' | 'holding_company' | 'family_office' | 'cooperative' | 'social_enterprise' | 'incubator_accelerator' | 'coworking_community' | 'media_company' | 'research_lab';
1141
1194
  /**
1142
- * A statement that defines an amount due by a customer.
1195
+ * An invoice represents an itemized bill sent by a company to a customer for a
1196
+ * specific product and plan, tracking the amount owed, due date, and payment
1197
+ * status.
1143
1198
  */
1144
1199
  export interface Invoice {
1145
1200
  /**
@@ -1151,38 +1206,41 @@ export interface Invoice {
1151
1206
  */
1152
1207
  created_at: string;
1153
1208
  /**
1154
- * The plan that the invoice was created for.
1209
+ * The plan that this invoice charges for.
1155
1210
  */
1156
1211
  current_plan: Invoice.CurrentPlan;
1157
1212
  /**
1158
- * The date the invoice is due.
1213
+ * The deadline by which payment is expected. Null if the invoice is collected
1214
+ * automatically.
1159
1215
  */
1160
1216
  due_date: string | null;
1161
1217
  /**
1162
- * The email address that the invoice was created for.
1218
+ * The email address of the customer this invoice is addressed to. Null if no email
1219
+ * is on file.
1163
1220
  */
1164
1221
  email_address: string | null;
1165
1222
  /**
1166
- * A signed token that allows fetching the invoice data publically without being
1167
- * authenticated.
1223
+ * A signed token that allows fetching invoice data publicly without
1224
+ * authentication.
1168
1225
  */
1169
1226
  fetch_invoice_token: string;
1170
1227
  /**
1171
- * The number of the invoice.
1228
+ * The sequential invoice number for display purposes.
1172
1229
  */
1173
1230
  number: string;
1174
1231
  /**
1175
- * The status of the invoice.
1232
+ * The current payment status of the invoice, such as draft, open, paid, or void.
1176
1233
  */
1177
1234
  status: InvoiceStatus;
1178
1235
  /**
1179
- * The user that the invoice was created for.
1236
+ * The user this invoice is addressed to. Null if the user account has been
1237
+ * removed.
1180
1238
  */
1181
1239
  user: Invoice.User | null;
1182
1240
  }
1183
1241
  export declare namespace Invoice {
1184
1242
  /**
1185
- * The plan that the invoice was created for.
1243
+ * The plan that this invoice charges for.
1186
1244
  */
1187
1245
  interface CurrentPlan {
1188
1246
  /**
@@ -1190,7 +1248,8 @@ export declare namespace Invoice {
1190
1248
  */
1191
1249
  id: string;
1192
1250
  /**
1193
- * The respective currency identifier for the plan.
1251
+ * The currency used for all prices on this plan (e.g., 'usd', 'eur'). All monetary
1252
+ * amounts on the plan are denominated in this currency.
1194
1253
  */
1195
1254
  currency: Shared.Currency;
1196
1255
  /**
@@ -1199,7 +1258,8 @@ export declare namespace Invoice {
1199
1258
  formatted_price: string;
1200
1259
  }
1201
1260
  /**
1202
- * The user that the invoice was created for.
1261
+ * The user this invoice is addressed to. Null if the user account has been
1262
+ * removed.
1203
1263
  */
1204
1264
  interface User {
1205
1265
  /**
@@ -1207,17 +1267,19 @@ export declare namespace Invoice {
1207
1267
  */
1208
1268
  id: string;
1209
1269
  /**
1210
- * The name of the user from their Whop account.
1270
+ * The user's display name shown on their public profile.
1211
1271
  */
1212
1272
  name: string | null;
1213
1273
  /**
1214
- * The username of the user from their Whop account.
1274
+ * The user's unique username shown on their public profile.
1215
1275
  */
1216
1276
  username: string;
1217
1277
  }
1218
1278
  }
1219
1279
  /**
1220
- * A statement that defines an amount due by a customer.
1280
+ * An invoice represents an itemized bill sent by a company to a customer for a
1281
+ * specific product and plan, tracking the amount owed, due date, and payment
1282
+ * status.
1221
1283
  */
1222
1284
  export interface InvoiceListItem {
1223
1285
  /**
@@ -1229,38 +1291,41 @@ export interface InvoiceListItem {
1229
1291
  */
1230
1292
  created_at: string;
1231
1293
  /**
1232
- * The plan that the invoice was created for.
1294
+ * The plan that this invoice charges for.
1233
1295
  */
1234
1296
  current_plan: InvoiceListItem.CurrentPlan;
1235
1297
  /**
1236
- * The date the invoice is due.
1298
+ * The deadline by which payment is expected. Null if the invoice is collected
1299
+ * automatically.
1237
1300
  */
1238
1301
  due_date: string | null;
1239
1302
  /**
1240
- * The email address that the invoice was created for.
1303
+ * The email address of the customer this invoice is addressed to. Null if no email
1304
+ * is on file.
1241
1305
  */
1242
1306
  email_address: string | null;
1243
1307
  /**
1244
- * A signed token that allows fetching the invoice data publically without being
1245
- * authenticated.
1308
+ * A signed token that allows fetching invoice data publicly without
1309
+ * authentication.
1246
1310
  */
1247
1311
  fetch_invoice_token: string;
1248
1312
  /**
1249
- * The number of the invoice.
1313
+ * The sequential invoice number for display purposes.
1250
1314
  */
1251
1315
  number: string;
1252
1316
  /**
1253
- * The status of the invoice.
1317
+ * The current payment status of the invoice, such as draft, open, paid, or void.
1254
1318
  */
1255
1319
  status: InvoiceStatus;
1256
1320
  /**
1257
- * The user that the invoice was created for.
1321
+ * The user this invoice is addressed to. Null if the user account has been
1322
+ * removed.
1258
1323
  */
1259
1324
  user: InvoiceListItem.User | null;
1260
1325
  }
1261
1326
  export declare namespace InvoiceListItem {
1262
1327
  /**
1263
- * The plan that the invoice was created for.
1328
+ * The plan that this invoice charges for.
1264
1329
  */
1265
1330
  interface CurrentPlan {
1266
1331
  /**
@@ -1268,7 +1333,8 @@ export declare namespace InvoiceListItem {
1268
1333
  */
1269
1334
  id: string;
1270
1335
  /**
1271
- * The respective currency identifier for the plan.
1336
+ * The currency used for all prices on this plan (e.g., 'usd', 'eur'). All monetary
1337
+ * amounts on the plan are denominated in this currency.
1272
1338
  */
1273
1339
  currency: Shared.Currency;
1274
1340
  /**
@@ -1277,7 +1343,8 @@ export declare namespace InvoiceListItem {
1277
1343
  formatted_price: string;
1278
1344
  }
1279
1345
  /**
1280
- * The user that the invoice was created for.
1346
+ * The user this invoice is addressed to. Null if the user account has been
1347
+ * removed.
1281
1348
  */
1282
1349
  interface User {
1283
1350
  /**
@@ -1285,11 +1352,11 @@ export declare namespace InvoiceListItem {
1285
1352
  */
1286
1353
  id: string;
1287
1354
  /**
1288
- * The name of the user from their Whop account.
1355
+ * The user's display name shown on their public profile.
1289
1356
  */
1290
1357
  name: string | null;
1291
1358
  /**
1292
- * The username of the user from their Whop account.
1359
+ * The user's unique username shown on their public profile.
1293
1360
  */
1294
1361
  username: string;
1295
1362
  }
@@ -1297,7 +1364,7 @@ export declare namespace InvoiceListItem {
1297
1364
  /**
1298
1365
  * The different statuses an invoice can be in
1299
1366
  */
1300
- export type InvoiceStatus = 'open' | 'paid' | 'past_due' | 'void';
1367
+ export type InvoiceStatus = 'draft' | 'open' | 'paid' | 'past_due' | 'void';
1301
1368
  /**
1302
1369
  * The different most recent actions a member can have.
1303
1370
  */
@@ -1316,8 +1383,8 @@ export interface Membership {
1316
1383
  */
1317
1384
  id: string;
1318
1385
  /**
1319
- * Whether this Membership is set to cancel at the end of the current billing
1320
- * cycle. Only applies for memberships that have a renewal plan.
1386
+ * Whether this membership is set to cancel at the end of the current billing
1387
+ * cycle. Only applies to memberships with a recurring plan.
1321
1388
  */
1322
1389
  cancel_at_period_end: boolean;
1323
1390
  /**
@@ -1326,15 +1393,17 @@ export interface Membership {
1326
1393
  */
1327
1394
  cancel_option: MembershipsAPI.CancelOptions | null;
1328
1395
  /**
1329
- * The epoch timestamp of when the customer initiated a cancellation.
1396
+ * The time the customer initiated cancellation of this membership. As a Unix
1397
+ * timestamp. Null if the membership has not been canceled.
1330
1398
  */
1331
1399
  canceled_at: string | null;
1332
1400
  /**
1333
- * The reason that the member canceled the membership (filled out by the member).
1401
+ * Free-text explanation provided by the customer when canceling. Null if the
1402
+ * customer did not provide a reason.
1334
1403
  */
1335
1404
  cancellation_reason: string | null;
1336
1405
  /**
1337
- * The Company this Membership belongs to.
1406
+ * The company this membership belongs to.
1338
1407
  */
1339
1408
  company: Membership.Company;
1340
1409
  /**
@@ -1346,24 +1415,28 @@ export interface Membership {
1346
1415
  */
1347
1416
  currency: Currency | null;
1348
1417
  /**
1349
- * The responses to custom checkout questions for this membership.
1418
+ * The customer's responses to custom checkout questions configured on the product
1419
+ * at the time of purchase.
1350
1420
  */
1351
1421
  custom_field_responses: Array<Membership.CustomFieldResponse>;
1352
1422
  /**
1353
- * When the member joined the company.
1423
+ * The time the user first joined the company associated with this membership. As a
1424
+ * Unix timestamp. Null if the member record does not exist.
1354
1425
  */
1355
1426
  joined_at: string | null;
1356
1427
  /**
1357
- * The license key for this Membership. This is only present if the membership
1358
- * grants access to an instance of the Whop Software app.
1428
+ * The software license key associated with this membership. Only present if the
1429
+ * product includes a Whop Software Licensing experience. Null otherwise.
1359
1430
  */
1360
1431
  license_key: string | null;
1361
1432
  /**
1362
- * The URL for the customer to manage their membership.
1433
+ * The URL where the customer can view and manage this membership, including
1434
+ * cancellation and plan changes. Null if no member record exists.
1363
1435
  */
1364
1436
  manage_url: string | null;
1365
1437
  /**
1366
- * The Member that this Membership belongs to.
1438
+ * The member record linking the user to the company for this membership. Null if
1439
+ * the member record has not been created yet.
1367
1440
  */
1368
1441
  member: Membership.Member | null;
1369
1442
  /**
@@ -1374,33 +1447,36 @@ export interface Membership {
1374
1447
  [key: string]: unknown;
1375
1448
  };
1376
1449
  /**
1377
- * Whether the membership's payments are currently paused.
1450
+ * Whether recurring payment collection for this membership is temporarily paused
1451
+ * by the company.
1378
1452
  */
1379
1453
  payment_collection_paused: boolean;
1380
1454
  /**
1381
- * The Plan this Membership is for.
1455
+ * The plan the customer purchased to create this membership.
1382
1456
  */
1383
1457
  plan: Membership.Plan;
1384
1458
  /**
1385
- * The Product this Membership grants access to.
1459
+ * The product this membership grants access to.
1386
1460
  */
1387
1461
  product: Membership.Product;
1388
1462
  /**
1389
- * The Promo Code that is currently applied to this Membership.
1463
+ * The promotional code currently applied to this membership's billing. Null if no
1464
+ * promo code is active.
1390
1465
  */
1391
1466
  promo_code: Membership.PromoCode | null;
1392
1467
  /**
1393
- * The timestamp in seconds at which the current billing cycle for this
1394
- * subscription ends. Only applies for memberships that have a renewal plan.
1468
+ * The end of the current billing period for this recurring membership. As a Unix
1469
+ * timestamp. Null if the membership is not recurring.
1395
1470
  */
1396
1471
  renewal_period_end: string | null;
1397
1472
  /**
1398
- * The timestamp in seconds at which the current billing cycle for this
1399
- * subscription start. Only applies for memberships that have a renewal plan.
1473
+ * The start of the current billing period for this recurring membership. As a Unix
1474
+ * timestamp. Null if the membership is not recurring.
1400
1475
  */
1401
1476
  renewal_period_start: string | null;
1402
1477
  /**
1403
- * The status of the membership.
1478
+ * The current lifecycle status of the membership (e.g., active, trialing,
1479
+ * past_due, canceled, expired, completed).
1404
1480
  */
1405
1481
  status: MembershipStatus;
1406
1482
  /**
@@ -1408,13 +1484,13 @@ export interface Membership {
1408
1484
  */
1409
1485
  updated_at: string;
1410
1486
  /**
1411
- * The user this membership belongs to
1487
+ * The user who owns this membership. Null if the user account has been deleted.
1412
1488
  */
1413
1489
  user: Membership.User | null;
1414
1490
  }
1415
1491
  export declare namespace Membership {
1416
1492
  /**
1417
- * The Company this Membership belongs to.
1493
+ * The company this membership belongs to.
1418
1494
  */
1419
1495
  interface Company {
1420
1496
  /**
@@ -1422,7 +1498,7 @@ export declare namespace Membership {
1422
1498
  */
1423
1499
  id: string;
1424
1500
  /**
1425
- * The title of the company.
1501
+ * The display name of the company shown to customers.
1426
1502
  */
1427
1503
  title: string;
1428
1504
  }
@@ -1444,7 +1520,8 @@ export declare namespace Membership {
1444
1520
  question: string;
1445
1521
  }
1446
1522
  /**
1447
- * The Member that this Membership belongs to.
1523
+ * The member record linking the user to the company for this membership. Null if
1524
+ * the member record has not been created yet.
1448
1525
  */
1449
1526
  interface Member {
1450
1527
  /**
@@ -1453,7 +1530,7 @@ export declare namespace Membership {
1453
1530
  id: string;
1454
1531
  }
1455
1532
  /**
1456
- * The Plan this Membership is for.
1533
+ * The plan the customer purchased to create this membership.
1457
1534
  */
1458
1535
  interface Plan {
1459
1536
  /**
@@ -1462,7 +1539,7 @@ export declare namespace Membership {
1462
1539
  id: string;
1463
1540
  }
1464
1541
  /**
1465
- * The Product this Membership grants access to.
1542
+ * The product this membership grants access to.
1466
1543
  */
1467
1544
  interface Product {
1468
1545
  /**
@@ -1470,12 +1547,14 @@ export declare namespace Membership {
1470
1547
  */
1471
1548
  id: string;
1472
1549
  /**
1473
- * The title of the product. Use for Whop 4.0.
1550
+ * The display name of the product shown to customers on the product page and in
1551
+ * search results.
1474
1552
  */
1475
1553
  title: string;
1476
1554
  }
1477
1555
  /**
1478
- * The Promo Code that is currently applied to this Membership.
1556
+ * The promotional code currently applied to this membership's billing. Null if no
1557
+ * promo code is active.
1479
1558
  */
1480
1559
  interface PromoCode {
1481
1560
  /**
@@ -1484,7 +1563,7 @@ export declare namespace Membership {
1484
1563
  id: string;
1485
1564
  }
1486
1565
  /**
1487
- * The user this membership belongs to
1566
+ * The user who owns this membership. Null if the user account has been deleted.
1488
1567
  */
1489
1568
  interface User {
1490
1569
  /**
@@ -1492,15 +1571,16 @@ export declare namespace Membership {
1492
1571
  */
1493
1572
  id: string;
1494
1573
  /**
1495
- * The email of the user
1574
+ * The user's email address. Requires the member:email:read permission to access.
1575
+ * Null if not authorized.
1496
1576
  */
1497
1577
  email: string | null;
1498
1578
  /**
1499
- * The name of the user from their Whop account.
1579
+ * The user's display name shown on their public profile.
1500
1580
  */
1501
1581
  name: string | null;
1502
1582
  /**
1503
- * The username of the user from their Whop account.
1583
+ * The user's unique username shown on their public profile.
1504
1584
  */
1505
1585
  username: string;
1506
1586
  }
@@ -1510,7 +1590,7 @@ export declare namespace Membership {
1510
1590
  */
1511
1591
  export type MembershipStatus = 'trialing' | 'active' | 'past_due' | 'completed' | 'canceled' | 'expired' | 'unresolved' | 'drafted' | 'canceling';
1512
1592
  /**
1513
- * Represents a message in a DM channel
1593
+ * A message sent within an experience chat, direct message, or group chat.
1514
1594
  */
1515
1595
  export interface Message {
1516
1596
  /**
@@ -1522,57 +1602,62 @@ export interface Message {
1522
1602
  */
1523
1603
  id: string;
1524
1604
  /**
1525
- * The content of the message in Markdown format
1605
+ * The message content formatted as Markdown. Null if the message has no text
1606
+ * content.
1526
1607
  */
1527
1608
  content: string | null;
1528
1609
  /**
1529
- * The timestamp when the post was created
1610
+ * The timestamp when this message was originally created.
1530
1611
  */
1531
1612
  created_at: string;
1532
1613
  /**
1533
- * Whether the message has been edited
1614
+ * Whether the message content has been edited after it was originally sent.
1534
1615
  */
1535
1616
  is_edited: boolean;
1536
1617
  /**
1537
- * Whether this message is pinned
1618
+ * Whether this message is pinned to the top of the channel for easy access.
1538
1619
  */
1539
1620
  is_pinned: boolean;
1540
1621
  /**
1541
- * The type of post
1622
+ * The classification of this message: regular, system, or automated.
1542
1623
  */
1543
1624
  message_type: DmsPostTypes;
1544
1625
  /**
1545
- * The poll for this message
1626
+ * A poll attached to this message. Null if the message does not contain a poll.
1546
1627
  */
1547
1628
  poll: Message.Poll | null;
1548
1629
  /**
1549
- * The reaction counts for this message
1630
+ * Aggregated reaction counts on this message, filtered to a specific reaction
1631
+ * type.
1550
1632
  */
1551
1633
  poll_votes: Array<Message.PollVote>;
1552
1634
  /**
1553
- * The reaction counts for this message
1635
+ * Aggregated reaction counts on this message, filtered to a specific reaction
1636
+ * type.
1554
1637
  */
1555
1638
  reaction_counts: Array<Message.ReactionCount>;
1556
1639
  /**
1557
- * The ID of the message this is replying to, if applicable
1640
+ * The unique identifier of the message this post is replying to. Null if this is
1641
+ * not a reply.
1558
1642
  */
1559
1643
  replying_to_message_id: string | null;
1560
1644
  /**
1561
- * The timestamp when the post was last updated
1645
+ * The timestamp when this message was last modified.
1562
1646
  */
1563
1647
  updated_at: string;
1564
1648
  /**
1565
- * The user who sent this message
1649
+ * The user who authored this message.
1566
1650
  */
1567
1651
  user: Message.User;
1568
1652
  /**
1569
- * The number of times this message has been viewed
1653
+ * The number of unique views this message has received. Null if view tracking is
1654
+ * not enabled for this channel.
1570
1655
  */
1571
1656
  view_count: number | null;
1572
1657
  }
1573
1658
  export declare namespace Message {
1574
1659
  /**
1575
- * The poll for this message
1660
+ * A poll attached to this message. Null if the message does not contain a poll.
1576
1661
  */
1577
1662
  interface Poll {
1578
1663
  /**
@@ -1622,7 +1707,7 @@ export declare namespace Message {
1622
1707
  emoji: string | null;
1623
1708
  }
1624
1709
  /**
1625
- * The user who sent this message
1710
+ * The user who authored this message.
1626
1711
  */
1627
1712
  interface User {
1628
1713
  /**
@@ -1630,11 +1715,11 @@ export declare namespace Message {
1630
1715
  */
1631
1716
  id: string;
1632
1717
  /**
1633
- * The name of the user from their Whop account.
1718
+ * The user's display name shown on their public profile.
1634
1719
  */
1635
1720
  name: string | null;
1636
1721
  /**
1637
- * The username of the user from their Whop account.
1722
+ * The user's unique username shown on their public profile.
1638
1723
  */
1639
1724
  username: string;
1640
1725
  }
@@ -1661,8 +1746,8 @@ export interface PageInfo {
1661
1746
  start_cursor: string | null;
1662
1747
  }
1663
1748
  /**
1664
- * A payment represents a completed or attempted charge for a membership. Payments
1665
- * track the amount, status, currency, and payment method used.
1749
+ * A payment represents a completed or attempted charge. Payments track the amount,
1750
+ * status, currency, and payment method used.
1666
1751
  */
1667
1752
  export interface Payment {
1668
1753
  /**
@@ -1694,7 +1779,8 @@ export interface Payment {
1694
1779
  */
1695
1780
  card_brand: PaymentsAPI.CardBrands | null;
1696
1781
  /**
1697
- * The last 4 digits of the card used to make the payment.
1782
+ * The last four digits of the card used to make this payment. Null if the payment
1783
+ * was not made with a card.
1698
1784
  */
1699
1785
  card_last4: string | null;
1700
1786
  /**
@@ -1713,10 +1799,25 @@ export interface Payment {
1713
1799
  * When an alert came in that this transaction will be disputed
1714
1800
  */
1715
1801
  dispute_alerted_at: string | null;
1802
+ /**
1803
+ * The disputes attached to this payment. Null if the actor in context does not
1804
+ * have the payment:dispute:read permission.
1805
+ */
1806
+ disputes: Array<Payment.Dispute> | null;
1716
1807
  /**
1717
1808
  * If the payment failed, the reason for the failure.
1718
1809
  */
1719
1810
  failure_message: string | null;
1811
+ /**
1812
+ * The number of financing installments for the payment. Present if the payment is
1813
+ * a financing payment (e.g. Splitit, Klarna, etc.).
1814
+ */
1815
+ financing_installments_count: number | null;
1816
+ /**
1817
+ * The financing transactions attached to this payment. Present if the payment is a
1818
+ * financing payment (e.g. Splitit, Klarna, etc.).
1819
+ */
1820
+ financing_transactions: Array<Payment.FinancingTransaction>;
1720
1821
  /**
1721
1822
  * The time of the last payment attempt.
1722
1823
  */
@@ -1741,11 +1842,13 @@ export interface Payment {
1741
1842
  */
1742
1843
  next_payment_attempt: string | null;
1743
1844
  /**
1744
- * The datetime the payment was paid
1845
+ * The time at which this payment was successfully collected. Null if the payment
1846
+ * has not yet succeeded. As a Unix timestamp.
1745
1847
  */
1746
1848
  paid_at: string | null;
1747
1849
  /**
1748
- * The payment method used for the payment, if available.
1850
+ * The tokenized payment method reference used for this payment. Null if no token
1851
+ * was used.
1749
1852
  */
1750
1853
  payment_method: Payment.PaymentMethod | null;
1751
1854
  /**
@@ -1781,6 +1884,12 @@ export interface Payment {
1781
1884
  * When the payment was refunded (if applicable).
1782
1885
  */
1783
1886
  refunded_at: string | null;
1887
+ /**
1888
+ * The resolution center cases opened by the customer on this payment. Null if the
1889
+ * actor in context does not have the payment:resolution_center_case:read
1890
+ * permission.
1891
+ */
1892
+ resolutions: Array<Payment.Resolution> | null;
1784
1893
  /**
1785
1894
  * True when the payment status is `open` and its membership is in one of the
1786
1895
  * retry-eligible states (`active`, `trialing`, `completed`, or `past_due`);
@@ -1897,6 +2006,73 @@ export declare namespace Payment {
1897
2006
  */
1898
2007
  title: string;
1899
2008
  }
2009
+ /**
2010
+ * A dispute is a chargeback or payment challenge filed against a company,
2011
+ * including evidence and response status.
2012
+ */
2013
+ interface Dispute {
2014
+ /**
2015
+ * The unique identifier for the dispute.
2016
+ */
2017
+ id: string;
2018
+ /**
2019
+ * The disputed amount in the specified currency, formatted as a decimal.
2020
+ */
2021
+ amount: number;
2022
+ /**
2023
+ * The three-letter ISO currency code for the disputed amount.
2024
+ */
2025
+ currency: Shared.Currency;
2026
+ /**
2027
+ * Whether the dispute evidence can still be edited and submitted. Returns true
2028
+ * only when the dispute status requires a response.
2029
+ */
2030
+ editable: boolean | null;
2031
+ /**
2032
+ * The deadline by which dispute evidence must be submitted. Null if no response
2033
+ * deadline is set.
2034
+ */
2035
+ needs_response_by: string | null;
2036
+ /**
2037
+ * Additional freeform notes submitted by the company as part of the dispute
2038
+ * evidence.
2039
+ */
2040
+ notes: string | null;
2041
+ /**
2042
+ * A human-readable reason for the dispute.
2043
+ */
2044
+ reason: string | null;
2045
+ /**
2046
+ * The current status of the dispute lifecycle, such as needs_response,
2047
+ * under_review, won, or lost.
2048
+ */
2049
+ status: DisputesAPI.DisputeStatuses;
2050
+ }
2051
+ /**
2052
+ * A payment transaction.
2053
+ */
2054
+ interface FinancingTransaction {
2055
+ /**
2056
+ * The unique identifier for the payment transaction.
2057
+ */
2058
+ id: string;
2059
+ /**
2060
+ * The amount of the payment transaction.
2061
+ */
2062
+ amount: number;
2063
+ /**
2064
+ * The date and time the payment transaction was created.
2065
+ */
2066
+ created_at: string;
2067
+ /**
2068
+ * The status of the payment transaction.
2069
+ */
2070
+ status: 'succeeded' | 'declined' | 'error' | 'pending' | 'created' | 'expired' | 'won' | 'rejected' | 'lost' | 'prevented';
2071
+ /**
2072
+ * The type of the payment transaction.
2073
+ */
2074
+ transaction_type: 'purchase' | 'authorize' | 'capture' | 'refund' | 'cancel' | 'verify' | 'chargeback' | 'three_d_secure' | 'fraud_screening' | 'authorization' | 'installment';
2075
+ }
1900
2076
  /**
1901
2077
  * The member attached to this payment.
1902
2078
  */
@@ -1924,7 +2100,8 @@ export declare namespace Payment {
1924
2100
  status: Shared.MembershipStatus;
1925
2101
  }
1926
2102
  /**
1927
- * The payment method used for the payment, if available.
2103
+ * The tokenized payment method reference used for this payment. Null if no token
2104
+ * was used.
1928
2105
  */
1929
2106
  interface PaymentMethod {
1930
2107
  /**
@@ -1954,15 +2131,16 @@ export declare namespace Payment {
1954
2131
  */
1955
2132
  brand: PaymentsAPI.CardBrands | null;
1956
2133
  /**
1957
- * Card expiration month, like 03 for March.
2134
+ * The two-digit expiration month of the card (1-12). Null if not available.
1958
2135
  */
1959
2136
  exp_month: number | null;
1960
2137
  /**
1961
- * Card expiration year, like 27 for 2027.
2138
+ * The two-digit expiration year of the card (e.g., 27 for 2027). Null if not
2139
+ * available.
1962
2140
  */
1963
2141
  exp_year: number | null;
1964
2142
  /**
1965
- * Last four digits of the card.
2143
+ * The last four digits of the card number. Null if not available.
1966
2144
  */
1967
2145
  last4: string | null;
1968
2146
  }
@@ -1985,11 +2163,13 @@ export declare namespace Payment {
1985
2163
  */
1986
2164
  id: string;
1987
2165
  /**
1988
- * The route of the product.
2166
+ * The URL slug used in the product's public link (e.g., 'my-product' in
2167
+ * whop.com/company/my-product).
1989
2168
  */
1990
2169
  route: string;
1991
2170
  /**
1992
- * The title of the product. Use for Whop 4.0.
2171
+ * The display name of the product shown to customers on the product page and in
2172
+ * search results.
1993
2173
  */
1994
2174
  title: string;
1995
2175
  }
@@ -2024,6 +2204,51 @@ export declare namespace Payment {
2024
2204
  */
2025
2205
  promo_type: Shared.PromoType;
2026
2206
  }
2207
+ /**
2208
+ * A resolution is a dispute or support case between a buyer and seller, tracking
2209
+ * the issue, status, and outcome.
2210
+ */
2211
+ interface Resolution {
2212
+ /**
2213
+ * The unique identifier for the resolution.
2214
+ */
2215
+ id: string;
2216
+ /**
2217
+ * Whether the customer has filed an appeal after the initial resolution decision.
2218
+ */
2219
+ customer_appealed: boolean;
2220
+ /**
2221
+ * The list of actions currently available to the customer.
2222
+ */
2223
+ customer_response_actions: Array<'respond' | 'appeal' | 'withdraw'>;
2224
+ /**
2225
+ * The deadline by which the next response is required. Null if no deadline is
2226
+ * currently active. As a Unix timestamp.
2227
+ */
2228
+ due_date: string | null;
2229
+ /**
2230
+ * The category of the dispute.
2231
+ */
2232
+ issue: 'forgot_to_cancel' | 'item_not_received' | 'significantly_not_as_described' | 'unauthorized_transaction' | 'product_unacceptable';
2233
+ /**
2234
+ * Whether the merchant has filed an appeal after the initial resolution decision.
2235
+ */
2236
+ merchant_appealed: boolean;
2237
+ /**
2238
+ * The list of actions currently available to the merchant.
2239
+ */
2240
+ merchant_response_actions: Array<'accept' | 'deny' | 'request_more_info' | 'appeal' | 'respond'>;
2241
+ /**
2242
+ * The list of actions currently available to the Whop platform for moderating this
2243
+ * resolution.
2244
+ */
2245
+ platform_response_actions: Array<'request_buyer_info' | 'request_merchant_info' | 'merchant_wins' | 'platform_refund' | 'merchant_refund'>;
2246
+ /**
2247
+ * The current status of the resolution case, indicating which party needs to
2248
+ * respond or if the case is closed.
2249
+ */
2250
+ status: 'merchant_response_needed' | 'customer_response_needed' | 'merchant_info_needed' | 'customer_info_needed' | 'under_platform_review' | 'customer_won' | 'merchant_won' | 'customer_withdrew';
2251
+ }
2027
2252
  /**
2028
2253
  * The user that made this payment.
2029
2254
  */
@@ -2033,23 +2258,24 @@ export declare namespace Payment {
2033
2258
  */
2034
2259
  id: string;
2035
2260
  /**
2036
- * The email of the user
2261
+ * The user's email address. Requires the member:email:read permission to access.
2262
+ * Null if not authorized.
2037
2263
  */
2038
2264
  email: string | null;
2039
2265
  /**
2040
- * The name of the user from their Whop account.
2266
+ * The user's display name shown on their public profile.
2041
2267
  */
2042
2268
  name: string | null;
2043
2269
  /**
2044
- * The username of the user from their Whop account.
2270
+ * The user's unique username shown on their public profile.
2045
2271
  */
2046
2272
  username: string;
2047
2273
  }
2048
2274
  }
2049
2275
  /**
2050
- * A plan defines pricing and billing terms for a product. Each product can have
2051
- * multiple plans representing different pricing options, such as one-time
2052
- * payments, recurring subscriptions, or free trials.
2276
+ * A plan defines pricing and billing terms for a checkout. Plans can optionally
2277
+ * belong to a product, where they represent different pricing options such as
2278
+ * one-time payments, recurring subscriptions, or free trials.
2053
2279
  */
2054
2280
  export interface Plan {
2055
2281
  /**
@@ -2057,15 +2283,18 @@ export interface Plan {
2057
2283
  */
2058
2284
  id: string;
2059
2285
  /**
2060
- * The interval in days at which the plan charges (renewal plans).
2286
+ * The number of days between each recurring charge. Null for one-time plans. For
2287
+ * example, 30 for monthly or 365 for annual billing.
2061
2288
  */
2062
2289
  billing_period: number | null;
2063
2290
  /**
2064
- * Whether or not the plan collects tax.
2291
+ * Whether tax is collected on purchases of this plan, based on the company's tax
2292
+ * configuration.
2065
2293
  */
2066
2294
  collect_tax: boolean;
2067
2295
  /**
2068
- * The company for the plan.
2296
+ * The company that sells this plan. Null for standalone invoice plans not linked
2297
+ * to a company.
2069
2298
  */
2070
2299
  company: Plan.Company | null;
2071
2300
  /**
@@ -2073,15 +2302,18 @@ export interface Plan {
2073
2302
  */
2074
2303
  created_at: string;
2075
2304
  /**
2076
- * The respective currency identifier for the plan.
2305
+ * The currency used for all prices on this plan (e.g., 'usd', 'eur'). All monetary
2306
+ * amounts on the plan are denominated in this currency.
2077
2307
  */
2078
2308
  currency: Currency;
2079
2309
  /**
2080
- * The custom fields for the plan.
2310
+ * Custom input fields displayed on the checkout form that collect additional
2311
+ * information from the buyer.
2081
2312
  */
2082
2313
  custom_fields: Array<Plan.CustomField>;
2083
2314
  /**
2084
- * The description of the plan.
2315
+ * A text description of the plan visible to customers. Maximum 500 characters.
2316
+ * Null if no description is set.
2085
2317
  */
2086
2318
  description: string | null;
2087
2319
  /**
@@ -2096,35 +2328,43 @@ export interface Plan {
2096
2328
  */
2097
2329
  initial_price: number;
2098
2330
  /**
2099
- * A personal description or notes section for the business.
2331
+ * Private notes visible only to the company owner and team members. Not shown to
2332
+ * customers. Null if no notes have been added.
2100
2333
  */
2101
2334
  internal_notes: string | null;
2102
2335
  /**
2103
- * The invoice associated with this plan.
2336
+ * The invoice this plan was generated for. Null if the plan was not created for a
2337
+ * specific invoice.
2104
2338
  */
2105
2339
  invoice: Plan.Invoice | null;
2106
2340
  /**
2107
- * The number of members for the plan.
2341
+ * The number of users who currently hold an active membership through this plan.
2342
+ * Only visible to authorized team members.
2108
2343
  */
2109
2344
  member_count: number | null;
2110
2345
  /**
2111
- * The explicit payment method configuration for the plan, if any.
2346
+ * The explicit payment method configuration specifying which payment methods are
2347
+ * enabled or disabled for this plan. Null if the plan uses default settings.
2112
2348
  */
2113
2349
  payment_method_configuration: Plan.PaymentMethodConfiguration | null;
2114
2350
  /**
2115
- * Indicates if the plan is a one time payment or recurring.
2351
+ * The billing model for this plan: 'renewal' for recurring subscriptions or
2352
+ * 'one_time' for single payments.
2116
2353
  */
2117
2354
  plan_type: PlanType;
2118
2355
  /**
2119
- * The product that this plan belongs to.
2356
+ * The product that this plan belongs to. Null for standalone one-off purchases not
2357
+ * linked to a product.
2120
2358
  */
2121
2359
  product: Plan.Product | null;
2122
2360
  /**
2123
- * The direct link to purchase the product.
2361
+ * The full URL where customers can purchase this plan directly, bypassing the
2362
+ * product page.
2124
2363
  */
2125
2364
  purchase_url: string;
2126
2365
  /**
2127
- * This is the release method the business uses to sell this plan.
2366
+ * The method used to sell this plan: 'buy_now' for immediate purchase or
2367
+ * 'waitlist' for waitlist-based access.
2128
2368
  */
2129
2369
  release_method: ReleaseMethod;
2130
2370
  /**
@@ -2133,23 +2373,29 @@ export interface Plan {
2133
2373
  */
2134
2374
  renewal_price: number;
2135
2375
  /**
2136
- * The number of payments required before pausing the subscription.
2376
+ * The total number of installment payments required before the subscription
2377
+ * pauses. Null if split pay is not configured. Must be greater than 1.
2137
2378
  */
2138
2379
  split_pay_required_payments: number | null;
2139
2380
  /**
2140
- * The number of units available for purchase. Only displayed to authorized actors
2381
+ * The number of units available for purchase. Only visible to authorized team
2382
+ * members. Null if the requester lacks permission.
2141
2383
  */
2142
2384
  stock: number | null;
2143
2385
  /**
2144
- * The tax type for the plan.
2386
+ * How tax is handled for this plan: 'inclusive' (tax included in price),
2387
+ * 'exclusive' (tax added at checkout), or 'unspecified' (tax not configured).
2145
2388
  */
2146
2389
  tax_type: TaxType;
2147
2390
  /**
2148
- * The title of the plan. This will be visible on the product page to customers.
2391
+ * The display name of the plan shown to customers on the product page and at
2392
+ * checkout. Maximum 30 characters. Null if no title has been set.
2149
2393
  */
2150
2394
  title: string | null;
2151
2395
  /**
2152
- * The number of free trial days added before a renewal plan.
2396
+ * The number of free trial days before the first charge on a renewal plan. Null if
2397
+ * no trial is configured or the current user has already used a trial for this
2398
+ * plan.
2153
2399
  */
2154
2400
  trial_period_days: number | null;
2155
2401
  /**
@@ -2162,13 +2408,15 @@ export interface Plan {
2162
2408
  */
2163
2409
  updated_at: string;
2164
2410
  /**
2165
- * Shows or hides the plan from public/business view.
2411
+ * Controls whether the plan is visible to customers. When set to 'hidden', the
2412
+ * plan is only accessible via direct link.
2166
2413
  */
2167
2414
  visibility: Visibility;
2168
2415
  }
2169
2416
  export declare namespace Plan {
2170
2417
  /**
2171
- * The company for the plan.
2418
+ * The company that sells this plan. Null for standalone invoice plans not linked
2419
+ * to a company.
2172
2420
  */
2173
2421
  interface Company {
2174
2422
  /**
@@ -2176,7 +2424,7 @@ export declare namespace Plan {
2176
2424
  */
2177
2425
  id: string;
2178
2426
  /**
2179
- * The title of the company.
2427
+ * The display name of the company shown to customers.
2180
2428
  */
2181
2429
  title: string;
2182
2430
  }
@@ -2210,7 +2458,8 @@ export declare namespace Plan {
2210
2458
  required: boolean;
2211
2459
  }
2212
2460
  /**
2213
- * The invoice associated with this plan.
2461
+ * The invoice this plan was generated for. Null if the plan was not created for a
2462
+ * specific invoice.
2214
2463
  */
2215
2464
  interface Invoice {
2216
2465
  /**
@@ -2219,7 +2468,8 @@ export declare namespace Plan {
2219
2468
  id: string;
2220
2469
  }
2221
2470
  /**
2222
- * The explicit payment method configuration for the plan, if any.
2471
+ * The explicit payment method configuration specifying which payment methods are
2472
+ * enabled or disabled for this plan. Null if the plan uses default settings.
2223
2473
  */
2224
2474
  interface PaymentMethodConfiguration {
2225
2475
  /**
@@ -2242,7 +2492,8 @@ export declare namespace Plan {
2242
2492
  include_platform_defaults: boolean;
2243
2493
  }
2244
2494
  /**
2245
- * The product that this plan belongs to.
2495
+ * The product that this plan belongs to. Null for standalone one-off purchases not
2496
+ * linked to a product.
2246
2497
  */
2247
2498
  interface Product {
2248
2499
  /**
@@ -2250,7 +2501,8 @@ export declare namespace Plan {
2250
2501
  */
2251
2502
  id: string;
2252
2503
  /**
2253
- * The title of the product. Use for Whop 4.0.
2504
+ * The display name of the product shown to customers on the product page and in
2505
+ * search results.
2254
2506
  */
2255
2507
  title: string;
2256
2508
  }
@@ -2273,7 +2525,7 @@ export interface Product {
2273
2525
  */
2274
2526
  business_type: BusinessTypes | null;
2275
2527
  /**
2276
- * A short type of the company that this product belongs to.
2528
+ * The company this product belongs to.
2277
2529
  */
2278
2530
  company: Product.Company;
2279
2531
  /**
@@ -2281,38 +2533,48 @@ export interface Product {
2281
2533
  */
2282
2534
  created_at: string;
2283
2535
  /**
2284
- * The custom call to action for the product.
2536
+ * The call-to-action button label displayed on the product's purchase page (e.g.,
2537
+ * 'join', 'buy', 'subscribe').
2285
2538
  */
2286
2539
  custom_cta: CustomCta;
2287
2540
  /**
2288
- * The custom call to action URL for the product, if any.
2541
+ * An optional URL that the call-to-action button links to instead of the default
2542
+ * checkout flow. Null if no custom URL is set.
2289
2543
  */
2290
2544
  custom_cta_url: string | null;
2291
2545
  /**
2292
- * The custom statement descriptor for the product.
2546
+ * A custom text label that appears on the customer's bank or credit card statement
2547
+ * for purchases of this product. Maximum 22 characters, including the required
2548
+ * prefix WHOP\*.
2293
2549
  */
2294
2550
  custom_statement_descriptor: string | null;
2295
2551
  /**
2296
- * A short description of what the company offers or does.
2552
+ * A brief summary of what the product offers, displayed on product pages and
2553
+ * search results.
2297
2554
  */
2298
2555
  description: string | null;
2299
2556
  /**
2300
- * A unique identifier used to create or update products. When provided on product
2301
- * creation endpoints, we’ll look up an existing product by this identifier if it
2302
- * exists, we’ll update it; if not, we’ll create a new one.
2557
+ * A unique identifier used to create or update products via the API. When provided
2558
+ * on product creation endpoints, an existing product with this identifier will be
2559
+ * updated instead of creating a new one.
2303
2560
  */
2304
2561
  external_identifier: string | null;
2305
2562
  /**
2306
- * The percentage of a transaction a user is eligible to earn from the whop
2307
- * marketplace global affiliate program.
2563
+ * The gallery images for this product, ordered by position.
2564
+ */
2565
+ gallery_images: Array<Product.GalleryImage>;
2566
+ /**
2567
+ * The commission rate (as a percentage) that affiliates earn on sales through the
2568
+ * Whop marketplace global affiliate program. Null if the program is not active.
2308
2569
  */
2309
2570
  global_affiliate_percentage: number | null;
2310
2571
  /**
2311
- * The status of the global affiliate program for this product.
2572
+ * The enrollment status of this product in the Whop marketplace global affiliate
2573
+ * program.
2312
2574
  */
2313
2575
  global_affiliate_status: GlobalAffiliateStatus;
2314
2576
  /**
2315
- * The headline of the product.
2577
+ * A short marketing headline displayed prominently on the product's product page.
2316
2578
  */
2317
2579
  headline: string | null;
2318
2580
  /**
@@ -2320,36 +2582,41 @@ export interface Product {
2320
2582
  */
2321
2583
  industry_type: IndustryTypes | null;
2322
2584
  /**
2323
- * The percentage of a transaction a user is eligible to earn from the whop
2324
- * marketplace member affiliate program.
2585
+ * The commission rate (as a percentage) that existing members earn when referring
2586
+ * new customers through the member affiliate program. Null if the program is not
2587
+ * active.
2325
2588
  */
2326
2589
  member_affiliate_percentage: number | null;
2327
2590
  /**
2328
- * The status of the member affiliate program for this product.
2591
+ * The enrollment status of this product in the member affiliate program.
2329
2592
  */
2330
2593
  member_affiliate_status: GlobalAffiliateStatus;
2331
2594
  /**
2332
- * The number of active users for this product.
2595
+ * The number of users who currently hold an active membership to this product.
2596
+ * Returns 0 if the company has disabled public member counts.
2333
2597
  */
2334
2598
  member_count: number;
2335
2599
  /**
2336
- * The user that owns the product (company owner).
2600
+ * The user who owns the company that sells this product.
2337
2601
  */
2338
2602
  owner_user: Product.OwnerUser;
2339
2603
  /**
2340
- * The product tax code for the product, if any.
2604
+ * The tax classification code applied to purchases of this product for sales tax
2605
+ * calculation. Null if no tax code is assigned.
2341
2606
  */
2342
2607
  product_tax_code: Product.ProductTaxCode | null;
2343
2608
  /**
2344
- * The number of reviews that have been published for the product.
2609
+ * The total number of published customer reviews for this product's company.
2345
2610
  */
2346
2611
  published_reviews_count: number;
2347
2612
  /**
2348
- * The route of the product.
2613
+ * The URL slug used in the product's public link (e.g., 'my-product' in
2614
+ * whop.com/company/my-product).
2349
2615
  */
2350
2616
  route: string;
2351
2617
  /**
2352
- * The title of the product. Use for Whop 4.0.
2618
+ * The display name of the product shown to customers on the product page and in
2619
+ * search results.
2353
2620
  */
2354
2621
  title: string;
2355
2622
  /**
@@ -2357,17 +2624,18 @@ export interface Product {
2357
2624
  */
2358
2625
  updated_at: string;
2359
2626
  /**
2360
- * Whether this product is Whop verified.
2627
+ * Whether this company has been verified by Whop's trust and safety team.
2361
2628
  */
2362
2629
  verified: boolean;
2363
2630
  /**
2364
- * This product will/will not be displayed publicly.
2631
+ * Controls whether the product is visible to customers. When set to 'hidden', the
2632
+ * product is only accessible via direct link.
2365
2633
  */
2366
2634
  visibility: Visibility;
2367
2635
  }
2368
2636
  export declare namespace Product {
2369
2637
  /**
2370
- * A short type of the company that this product belongs to.
2638
+ * The company this product belongs to.
2371
2639
  */
2372
2640
  interface Company {
2373
2641
  /**
@@ -2375,16 +2643,34 @@ export declare namespace Product {
2375
2643
  */
2376
2644
  id: string;
2377
2645
  /**
2378
- * The slug/route of the company on the Whop site.
2646
+ * The URL slug for the company's store page (e.g., 'pickaxe' in whop.com/pickaxe).
2379
2647
  */
2380
2648
  route: string;
2381
2649
  /**
2382
- * The title of the company.
2650
+ * The display name of the company shown to customers.
2383
2651
  */
2384
2652
  title: string;
2385
2653
  }
2386
2654
  /**
2387
- * The user that owns the product (company owner).
2655
+ * Represents an image attachment
2656
+ */
2657
+ interface GalleryImage {
2658
+ /**
2659
+ * Represents a unique identifier that is Base64 obfuscated. It is often used to
2660
+ * refetch an object or as key for a cache. The ID type appears in a JSON response
2661
+ * as a String; however, it is not intended to be human-readable. When expected as
2662
+ * an input type, any string (such as `"VXNlci0xMA=="`) or integer (such as `4`)
2663
+ * input value will be accepted as an ID.
2664
+ */
2665
+ id: string;
2666
+ /**
2667
+ * A pre-optimized URL for rendering this attachment on the client. This should be
2668
+ * used for displaying attachments in apps.
2669
+ */
2670
+ url: string | null;
2671
+ }
2672
+ /**
2673
+ * The user who owns the company that sells this product.
2388
2674
  */
2389
2675
  interface OwnerUser {
2390
2676
  /**
@@ -2392,16 +2678,17 @@ export declare namespace Product {
2392
2678
  */
2393
2679
  id: string;
2394
2680
  /**
2395
- * The name of the user from their Whop account.
2681
+ * The user's display name shown on their public profile.
2396
2682
  */
2397
2683
  name: string | null;
2398
2684
  /**
2399
- * The username of the user from their Whop account.
2685
+ * The user's unique username shown on their public profile.
2400
2686
  */
2401
2687
  username: string;
2402
2688
  }
2403
2689
  /**
2404
- * The product tax code for the product, if any.
2690
+ * The tax classification code applied to purchases of this product for sales tax
2691
+ * calculation. Null if no tax code is assigned.
2405
2692
  */
2406
2693
  interface ProductTaxCode {
2407
2694
  /**
@@ -2409,11 +2696,12 @@ export declare namespace Product {
2409
2696
  */
2410
2697
  id: string;
2411
2698
  /**
2412
- * The name of the product tax code.
2699
+ * The human-readable name of this tax classification (e.g., 'Digital - SaaS').
2413
2700
  */
2414
2701
  name: string;
2415
2702
  /**
2416
- * The type of product this tax code applies to.
2703
+ * The broad product category this tax code covers (e.g., physical goods, digital
2704
+ * services).
2417
2705
  */
2418
2706
  product_type: 'physical' | 'digital' | 'services';
2419
2707
  }
@@ -2436,13 +2724,13 @@ export interface ProductListItem {
2436
2724
  */
2437
2725
  created_at: string;
2438
2726
  /**
2439
- * A unique identifier used to create or update products. When provided on product
2440
- * creation endpoints, we’ll look up an existing product by this identifier if it
2441
- * exists, we’ll update it; if not, we’ll create a new one.
2727
+ * A unique identifier used to create or update products via the API. When provided
2728
+ * on product creation endpoints, an existing product with this identifier will be
2729
+ * updated instead of creating a new one.
2442
2730
  */
2443
2731
  external_identifier: string | null;
2444
2732
  /**
2445
- * The headline of the product.
2733
+ * A short marketing headline displayed prominently on the product's product page.
2446
2734
  */
2447
2735
  headline: string | null;
2448
2736
  /**
@@ -2450,19 +2738,22 @@ export interface ProductListItem {
2450
2738
  */
2451
2739
  industry_type: IndustryTypes | null;
2452
2740
  /**
2453
- * The number of active users for this product.
2741
+ * The number of users who currently hold an active membership to this product.
2742
+ * Returns 0 if the company has disabled public member counts.
2454
2743
  */
2455
2744
  member_count: number;
2456
2745
  /**
2457
- * The number of reviews that have been published for the product.
2746
+ * The total number of published customer reviews for this product's company.
2458
2747
  */
2459
2748
  published_reviews_count: number;
2460
2749
  /**
2461
- * The route of the product.
2750
+ * The URL slug used in the product's public link (e.g., 'my-product' in
2751
+ * whop.com/company/my-product).
2462
2752
  */
2463
2753
  route: string;
2464
2754
  /**
2465
- * The title of the product. Use for Whop 4.0.
2755
+ * The display name of the product shown to customers on the product page and in
2756
+ * search results.
2466
2757
  */
2467
2758
  title: string;
2468
2759
  /**
@@ -2470,11 +2761,12 @@ export interface ProductListItem {
2470
2761
  */
2471
2762
  updated_at: string;
2472
2763
  /**
2473
- * Whether this product is Whop verified.
2764
+ * Whether this company has been verified by Whop's trust and safety team.
2474
2765
  */
2475
2766
  verified: boolean;
2476
2767
  /**
2477
- * This product will/will not be displayed publicly.
2768
+ * Controls whether the product is visible to customers. When set to 'hidden', the
2769
+ * product is only accessible via direct link.
2478
2770
  */
2479
2771
  visibility: Visibility;
2480
2772
  }
@@ -2483,7 +2775,7 @@ export interface ProductListItem {
2483
2775
  */
2484
2776
  export type PromoType = 'percentage' | 'flat_amount';
2485
2777
  /**
2486
- * Represents a reaction to a feed post
2778
+ * A single reaction left by a user on a feed post, such as a like or emoji.
2487
2779
  */
2488
2780
  export interface Reaction {
2489
2781
  /**
@@ -2491,21 +2783,22 @@ export interface Reaction {
2491
2783
  */
2492
2784
  id: string;
2493
2785
  /**
2494
- * The emoji that was used in shortcode format (:heart:)
2786
+ * The emoji used for this reaction in shortcode format. Null if the reaction type
2787
+ * is not emoji.
2495
2788
  */
2496
2789
  emoji: string | null;
2497
2790
  /**
2498
- * The ID of the post this reaction belongs to
2791
+ * The unique identifier of the post this reaction was left on.
2499
2792
  */
2500
2793
  resource_id: string;
2501
2794
  /**
2502
- * The user who reacted to the post
2795
+ * The user who left this reaction on the post.
2503
2796
  */
2504
2797
  user: Reaction.User;
2505
2798
  }
2506
2799
  export declare namespace Reaction {
2507
2800
  /**
2508
- * The user who reacted to the post
2801
+ * The user who left this reaction on the post.
2509
2802
  */
2510
2803
  interface User {
2511
2804
  /**
@@ -2513,11 +2806,11 @@ export declare namespace Reaction {
2513
2806
  */
2514
2807
  id: string;
2515
2808
  /**
2516
- * The name of the user from their Whop account.
2809
+ * The user's display name shown on their public profile.
2517
2810
  */
2518
2811
  name: string | null;
2519
2812
  /**
2520
- * The username of the user from their Whop account.
2813
+ * The user's unique username shown on their public profile.
2521
2814
  */
2522
2815
  username: string;
2523
2816
  }
@@ -2531,7 +2824,8 @@ export type ReceiptStatus = 'draft' | 'open' | 'paid' | 'pending' | 'uncollectib
2531
2824
  */
2532
2825
  export type ReleaseMethod = 'buy_now' | 'waitlist';
2533
2826
  /**
2534
- * A shipment
2827
+ * A physical shipment associated with a payment, including carrier details and
2828
+ * tracking information.
2535
2829
  */
2536
2830
  export interface Shipment {
2537
2831
  /**
@@ -2539,7 +2833,7 @@ export interface Shipment {
2539
2833
  */
2540
2834
  id: string;
2541
2835
  /**
2542
- * The carrier of the shipment
2836
+ * The shipping carrier responsible for delivering this shipment.
2543
2837
  */
2544
2838
  carrier: ShipmentCarrier;
2545
2839
  /**
@@ -2547,19 +2841,22 @@ export interface Shipment {
2547
2841
  */
2548
2842
  created_at: string;
2549
2843
  /**
2550
- * The delivery estimate of the shipment
2844
+ * The estimated delivery date for this shipment. Null if the carrier has not
2845
+ * provided an estimate.
2551
2846
  */
2552
2847
  delivery_estimate: string | null;
2553
2848
  /**
2554
- * The payment of the shipment
2849
+ * The payment associated with this shipment. Null if the payment has been deleted
2850
+ * or is inaccessible.
2555
2851
  */
2556
2852
  payment: Shipment.Payment | null;
2557
2853
  /**
2558
- * The service of the shipment
2854
+ * The shipping service level used for this shipment. Null if the carrier does not
2855
+ * specify a service tier.
2559
2856
  */
2560
2857
  service: string | null;
2561
2858
  /**
2562
- * The status of the shipment
2859
+ * The current delivery status of this shipment.
2563
2860
  */
2564
2861
  status: ShipmentStatus;
2565
2862
  /**
@@ -2567,7 +2864,7 @@ export interface Shipment {
2567
2864
  */
2568
2865
  substatus: ShipmentSubstatus | null;
2569
2866
  /**
2570
- * The tracking code of the shipment
2867
+ * The carrier-assigned tracking number used to look up shipment progress.
2571
2868
  */
2572
2869
  tracking_code: string;
2573
2870
  /**
@@ -2577,7 +2874,8 @@ export interface Shipment {
2577
2874
  }
2578
2875
  export declare namespace Shipment {
2579
2876
  /**
2580
- * The payment of the shipment
2877
+ * The payment associated with this shipment. Null if the payment has been deleted
2878
+ * or is inaccessible.
2581
2879
  */
2582
2880
  interface Payment {
2583
2881
  /**
@@ -2599,7 +2897,8 @@ export type ShipmentStatus = 'unknown' | 'pre_transit' | 'in_transit' | 'out_for
2599
2897
  */
2600
2898
  export type ShipmentSubstatus = 'address_correction' | 'arrived_at_destination' | 'arrived_at_facility' | 'arrived_at_pickup_location' | 'awaiting_information' | 'substatus_cancelled' | 'damaged' | 'delayed' | 'delivery_exception' | 'departed_facility' | 'departed_origin_facility' | 'expired' | 'substatus_failure' | 'held' | 'substatus_in_transit' | 'label_created' | 'lost' | 'missorted' | 'substatus_out_for_delivery' | 'received_at_destination_facility' | 'received_at_origin_facility' | 'refused' | 'return' | 'status_update' | 'transferred_to_destination_carrier' | 'transit_exception' | 'substatus_unknown' | 'weather_delay';
2601
2899
  /**
2602
- * Represents a DM channel
2900
+ * A messaging channel that can be a one-on-one DM, group chat, company support
2901
+ * conversation, or platform-level direct message.
2603
2902
  */
2604
2903
  export interface SupportChannel {
2605
2904
  /**
@@ -2607,29 +2906,35 @@ export interface SupportChannel {
2607
2906
  */
2608
2907
  id: string;
2609
2908
  /**
2610
- * The bot ID if this is a support chat
2909
+ * The unique identifier of the company associated with this channel. Null if this
2910
+ * is not a support or company-scoped conversation.
2611
2911
  */
2612
2912
  company_id: string | null;
2613
2913
  /**
2614
- * The custom name of the DM channel, if any
2914
+ * A custom display name assigned to this channel by the user. Null if no custom
2915
+ * name has been set.
2615
2916
  */
2616
2917
  custom_name: string | null;
2617
2918
  /**
2618
- * The customer user if this is a support chat
2919
+ * The customer who initiated this support conversation. Null if this is not a
2920
+ * support chat.
2619
2921
  */
2620
2922
  customer_user: SupportChannel.CustomerUser | null;
2621
2923
  /**
2622
- * When the last message was sent
2924
+ * The timestamp when the most recent message was sent in this channel. Null if no
2925
+ * messages have been sent.
2623
2926
  */
2624
2927
  last_message_at: string | null;
2625
2928
  /**
2626
- * When the support ticket was resolved (null if unresolved)
2929
+ * The timestamp when the linked support ticket was marked as resolved. Null if
2930
+ * unresolved or not a support chat.
2627
2931
  */
2628
2932
  resolved_at: string | null;
2629
2933
  }
2630
2934
  export declare namespace SupportChannel {
2631
2935
  /**
2632
- * The customer user if this is a support chat
2936
+ * The customer who initiated this support conversation. Null if this is not a
2937
+ * support chat.
2633
2938
  */
2634
2939
  interface CustomerUser {
2635
2940
  /**
@@ -2637,11 +2942,11 @@ export declare namespace SupportChannel {
2637
2942
  */
2638
2943
  id: string;
2639
2944
  /**
2640
- * The name of the user from their Whop account.
2945
+ * The user's display name shown on their public profile.
2641
2946
  */
2642
2947
  name: string | null;
2643
2948
  /**
2644
- * The username of the user from their Whop account.
2949
+ * The user's unique username shown on their public profile.
2645
2950
  */
2646
2951
  username: string;
2647
2952
  }
@@ -2652,7 +2957,7 @@ export declare namespace SupportChannel {
2652
2957
  */
2653
2958
  export type TaxType = 'inclusive' | 'exclusive' | 'unspecified';
2654
2959
  /**
2655
- * Credit Transaction Transfer
2960
+ * A transfer of credit between two ledger accounts.
2656
2961
  */
2657
2962
  export interface Transfer {
2658
2963
  /**
@@ -2660,8 +2965,8 @@ export interface Transfer {
2660
2965
  */
2661
2966
  id: string;
2662
2967
  /**
2663
- * The amount of the transfer. Provided as a number in the specified currency. Eg:
2664
- * 10.43 for $10.43 USD.
2968
+ * The transfer amount in the currency specified by the currency field. For
2969
+ * example, 10.43 represents $10.43 USD.
2665
2970
  */
2666
2971
  amount: number;
2667
2972
  /**
@@ -2669,38 +2974,40 @@ export interface Transfer {
2669
2974
  */
2670
2975
  created_at: string;
2671
2976
  /**
2672
- * The currency of the credit transaction transfer
2977
+ * The currency in which this transfer amount is denominated.
2673
2978
  */
2674
2979
  currency: Currency;
2675
2980
  /**
2676
- * The recipient of the credit transaction transfer
2981
+ * The entity receiving the transferred funds.
2677
2982
  */
2678
2983
  destination: Transfer.User | null | Transfer.Company | null;
2679
2984
  /**
2680
- * The ID of the destination ledger account
2985
+ * The unique identifier of the ledger account receiving the funds.
2681
2986
  */
2682
2987
  destination_ledger_account_id: string;
2683
2988
  /**
2684
- * The decimal fee of the credit transaction transfer
2989
+ * The flat fee amount deducted from this transfer, in the transfer's currency.
2990
+ * Null if no flat fee was applied.
2685
2991
  */
2686
2992
  fee_amount: number | null;
2687
2993
  /**
2688
- * Custom key-value pairs attached to the transfer. Max 50 keys, 500 chars per key,
2689
- * 5000 chars per value.
2994
+ * Custom key-value pairs attached to this transfer. Maximum 50 keys, 500
2995
+ * characters per key, 5000 characters per value.
2690
2996
  */
2691
2997
  metadata: {
2692
2998
  [key: string]: unknown;
2693
2999
  } | null;
2694
3000
  /**
2695
- * The notes of the credit transaction transfer
3001
+ * A free-text note attached to this transfer by the sender. Null if no note was
3002
+ * provided.
2696
3003
  */
2697
3004
  notes: string | null;
2698
3005
  /**
2699
- * The sender of the credit transaction transfer
3006
+ * The entity that sent the transferred funds.
2700
3007
  */
2701
3008
  origin: Transfer.User | null | Transfer.Company | null;
2702
3009
  /**
2703
- * The ID of the origin ledger account
3010
+ * The unique identifier of the ledger account that sent the funds.
2704
3011
  */
2705
3012
  origin_ledger_account_id: string;
2706
3013
  }
@@ -2715,7 +3022,7 @@ export declare namespace Transfer {
2715
3022
  */
2716
3023
  id: string;
2717
3024
  /**
2718
- * The name of the user from their Whop account.
3025
+ * The user's display name shown on their public profile.
2719
3026
  */
2720
3027
  name: string | null;
2721
3028
  /**
@@ -2723,7 +3030,7 @@ export declare namespace Transfer {
2723
3030
  */
2724
3031
  typename: 'User';
2725
3032
  /**
2726
- * The username of the user from their Whop account.
3033
+ * The user's unique username shown on their public profile.
2727
3034
  */
2728
3035
  username: string;
2729
3036
  }
@@ -2737,11 +3044,11 @@ export declare namespace Transfer {
2737
3044
  */
2738
3045
  id: string;
2739
3046
  /**
2740
- * The slug/route of the company on the Whop site.
3047
+ * The URL slug for the company's store page (e.g., 'pickaxe' in whop.com/pickaxe).
2741
3048
  */
2742
3049
  route: string;
2743
3050
  /**
2744
- * The title of the company.
3051
+ * The display name of the company shown to customers.
2745
3052
  */
2746
3053
  title: string;
2747
3054
  /**
@@ -2759,7 +3066,7 @@ export declare namespace Transfer {
2759
3066
  */
2760
3067
  id: string;
2761
3068
  /**
2762
- * The name of the user from their Whop account.
3069
+ * The user's display name shown on their public profile.
2763
3070
  */
2764
3071
  name: string | null;
2765
3072
  /**
@@ -2767,7 +3074,7 @@ export declare namespace Transfer {
2767
3074
  */
2768
3075
  typename: 'User';
2769
3076
  /**
2770
- * The username of the user from their Whop account.
3077
+ * The user's unique username shown on their public profile.
2771
3078
  */
2772
3079
  username: string;
2773
3080
  }
@@ -2781,11 +3088,11 @@ export declare namespace Transfer {
2781
3088
  */
2782
3089
  id: string;
2783
3090
  /**
2784
- * The slug/route of the company on the Whop site.
3091
+ * The URL slug for the company's store page (e.g., 'pickaxe' in whop.com/pickaxe).
2785
3092
  */
2786
3093
  route: string;
2787
3094
  /**
2788
- * The title of the company.
3095
+ * The display name of the company shown to customers.
2789
3096
  */
2790
3097
  title: string;
2791
3098
  /**