@whop/sdk 0.0.27 → 0.0.29

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 (470) hide show
  1. package/CHANGELOG.md +75 -0
  2. package/client.d.mts +9 -6
  3. package/client.d.mts.map +1 -1
  4. package/client.d.ts +9 -6
  5. package/client.d.ts.map +1 -1
  6. package/client.js +10 -0
  7. package/client.js.map +1 -1
  8. package/client.mjs +10 -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 +71 -46
  72. package/resources/companies.d.mts.map +1 -1
  73. package/resources/companies.d.ts +71 -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/dispute-alerts.d.mts +325 -0
  126. package/resources/dispute-alerts.d.mts.map +1 -0
  127. package/resources/dispute-alerts.d.ts +325 -0
  128. package/resources/dispute-alerts.d.ts.map +1 -0
  129. package/resources/dispute-alerts.js +42 -0
  130. package/resources/dispute-alerts.js.map +1 -0
  131. package/resources/dispute-alerts.mjs +38 -0
  132. package/resources/dispute-alerts.mjs.map +1 -0
  133. package/resources/disputes.d.mts +156 -102
  134. package/resources/disputes.d.mts.map +1 -1
  135. package/resources/disputes.d.ts +156 -102
  136. package/resources/disputes.d.ts.map +1 -1
  137. package/resources/disputes.js +4 -2
  138. package/resources/disputes.js.map +1 -1
  139. package/resources/disputes.mjs +4 -2
  140. package/resources/disputes.mjs.map +1 -1
  141. package/resources/dm-channels.d.mts +29 -16
  142. package/resources/dm-channels.d.mts.map +1 -1
  143. package/resources/dm-channels.d.ts +29 -16
  144. package/resources/dm-channels.d.ts.map +1 -1
  145. package/resources/dm-channels.js +9 -5
  146. package/resources/dm-channels.js.map +1 -1
  147. package/resources/dm-channels.mjs +9 -5
  148. package/resources/dm-channels.mjs.map +1 -1
  149. package/resources/dm-members.d.mts +30 -21
  150. package/resources/dm-members.d.mts.map +1 -1
  151. package/resources/dm-members.d.ts +30 -21
  152. package/resources/dm-members.d.ts.map +1 -1
  153. package/resources/dm-members.js +9 -5
  154. package/resources/dm-members.js.map +1 -1
  155. package/resources/dm-members.mjs +9 -5
  156. package/resources/dm-members.mjs.map +1 -1
  157. package/resources/entries.d.mts +29 -21
  158. package/resources/entries.d.mts.map +1 -1
  159. package/resources/entries.d.ts +29 -21
  160. package/resources/entries.d.ts.map +1 -1
  161. package/resources/entries.js +7 -4
  162. package/resources/entries.js.map +1 -1
  163. package/resources/entries.mjs +7 -4
  164. package/resources/entries.mjs.map +1 -1
  165. package/resources/experiences.d.mts +53 -49
  166. package/resources/experiences.d.mts.map +1 -1
  167. package/resources/experiences.d.ts +53 -49
  168. package/resources/experiences.d.ts.map +1 -1
  169. package/resources/experiences.js +6 -9
  170. package/resources/experiences.js.map +1 -1
  171. package/resources/experiences.mjs +6 -9
  172. package/resources/experiences.mjs.map +1 -1
  173. package/resources/fee-markups.d.mts +32 -21
  174. package/resources/fee-markups.d.mts.map +1 -1
  175. package/resources/fee-markups.d.ts +32 -21
  176. package/resources/fee-markups.d.ts.map +1 -1
  177. package/resources/fee-markups.js +6 -3
  178. package/resources/fee-markups.js.map +1 -1
  179. package/resources/fee-markups.mjs +6 -3
  180. package/resources/fee-markups.mjs.map +1 -1
  181. package/resources/files.d.mts +21 -17
  182. package/resources/files.d.mts.map +1 -1
  183. package/resources/files.d.ts +21 -17
  184. package/resources/files.d.ts.map +1 -1
  185. package/resources/files.js +3 -2
  186. package/resources/files.js.map +1 -1
  187. package/resources/files.mjs +3 -2
  188. package/resources/files.mjs.map +1 -1
  189. package/resources/forum-posts.d.mts +62 -43
  190. package/resources/forum-posts.d.mts.map +1 -1
  191. package/resources/forum-posts.d.ts +62 -43
  192. package/resources/forum-posts.d.ts.map +1 -1
  193. package/resources/forum-posts.js +8 -4
  194. package/resources/forum-posts.js.map +1 -1
  195. package/resources/forum-posts.mjs +8 -4
  196. package/resources/forum-posts.mjs.map +1 -1
  197. package/resources/forums.d.mts +20 -12
  198. package/resources/forums.d.mts.map +1 -1
  199. package/resources/forums.d.ts +20 -12
  200. package/resources/forums.d.ts.map +1 -1
  201. package/resources/forums.js +5 -3
  202. package/resources/forums.js.map +1 -1
  203. package/resources/forums.mjs +5 -3
  204. package/resources/forums.mjs.map +1 -1
  205. package/resources/index.d.mts +4 -3
  206. package/resources/index.d.mts.map +1 -1
  207. package/resources/index.d.ts +4 -3
  208. package/resources/index.d.ts.map +1 -1
  209. package/resources/index.js +3 -1
  210. package/resources/index.js.map +1 -1
  211. package/resources/index.mjs +1 -0
  212. package/resources/index.mjs.map +1 -1
  213. package/resources/invoices.d.mts +108 -80
  214. package/resources/invoices.d.mts.map +1 -1
  215. package/resources/invoices.d.ts +108 -80
  216. package/resources/invoices.d.ts.map +1 -1
  217. package/resources/invoices.js +7 -4
  218. package/resources/invoices.js.map +1 -1
  219. package/resources/invoices.mjs +7 -4
  220. package/resources/invoices.mjs.map +1 -1
  221. package/resources/leads.d.mts +64 -42
  222. package/resources/leads.d.mts.map +1 -1
  223. package/resources/leads.d.ts +64 -42
  224. package/resources/leads.d.ts.map +1 -1
  225. package/resources/leads.js +6 -4
  226. package/resources/leads.js.map +1 -1
  227. package/resources/leads.mjs +6 -4
  228. package/resources/leads.mjs.map +1 -1
  229. package/resources/ledger-accounts.d.mts +10 -8
  230. package/resources/ledger-accounts.d.mts.map +1 -1
  231. package/resources/ledger-accounts.d.ts +10 -8
  232. package/resources/ledger-accounts.d.ts.map +1 -1
  233. package/resources/ledger-accounts.js +1 -1
  234. package/resources/ledger-accounts.mjs +1 -1
  235. package/resources/members.d.mts +18 -19
  236. package/resources/members.d.mts.map +1 -1
  237. package/resources/members.d.ts +18 -19
  238. package/resources/members.d.ts.map +1 -1
  239. package/resources/members.js +3 -2
  240. package/resources/members.js.map +1 -1
  241. package/resources/members.mjs +3 -2
  242. package/resources/members.mjs.map +1 -1
  243. package/resources/memberships.d.mts +69 -51
  244. package/resources/memberships.d.mts.map +1 -1
  245. package/resources/memberships.d.ts +69 -51
  246. package/resources/memberships.d.ts.map +1 -1
  247. package/resources/memberships.js +12 -8
  248. package/resources/memberships.js.map +1 -1
  249. package/resources/memberships.mjs +12 -8
  250. package/resources/memberships.mjs.map +1 -1
  251. package/resources/messages.d.mts +50 -32
  252. package/resources/messages.d.mts.map +1 -1
  253. package/resources/messages.d.ts +50 -32
  254. package/resources/messages.d.ts.map +1 -1
  255. package/resources/messages.js +9 -5
  256. package/resources/messages.js.map +1 -1
  257. package/resources/messages.mjs +9 -5
  258. package/resources/messages.mjs.map +1 -1
  259. package/resources/notifications.d.mts +33 -25
  260. package/resources/notifications.d.mts.map +1 -1
  261. package/resources/notifications.d.ts +33 -25
  262. package/resources/notifications.d.ts.map +1 -1
  263. package/resources/notifications.js +2 -1
  264. package/resources/notifications.js.map +1 -1
  265. package/resources/notifications.mjs +2 -1
  266. package/resources/notifications.mjs.map +1 -1
  267. package/resources/payment-methods.d.mts +212 -114
  268. package/resources/payment-methods.d.mts.map +1 -1
  269. package/resources/payment-methods.d.ts +212 -114
  270. package/resources/payment-methods.d.ts.map +1 -1
  271. package/resources/payment-methods.js +5 -10
  272. package/resources/payment-methods.js.map +1 -1
  273. package/resources/payment-methods.mjs +5 -10
  274. package/resources/payment-methods.mjs.map +1 -1
  275. package/resources/payments.d.mts +73 -40
  276. package/resources/payments.d.mts.map +1 -1
  277. package/resources/payments.d.ts +73 -40
  278. package/resources/payments.d.ts.map +1 -1
  279. package/resources/payments.js +23 -10
  280. package/resources/payments.js.map +1 -1
  281. package/resources/payments.mjs +23 -10
  282. package/resources/payments.mjs.map +1 -1
  283. package/resources/payout-methods.d.mts +44 -29
  284. package/resources/payout-methods.d.mts.map +1 -1
  285. package/resources/payout-methods.d.ts +44 -29
  286. package/resources/payout-methods.d.ts.map +1 -1
  287. package/resources/payout-methods.js +3 -2
  288. package/resources/payout-methods.js.map +1 -1
  289. package/resources/payout-methods.mjs +3 -2
  290. package/resources/payout-methods.mjs.map +1 -1
  291. package/resources/plans.d.mts +121 -90
  292. package/resources/plans.d.mts.map +1 -1
  293. package/resources/plans.d.ts +121 -90
  294. package/resources/plans.d.ts.map +1 -1
  295. package/resources/plans.js +9 -5
  296. package/resources/plans.js.map +1 -1
  297. package/resources/plans.mjs +9 -5
  298. package/resources/plans.mjs.map +1 -1
  299. package/resources/products.d.mts +76 -65
  300. package/resources/products.d.mts.map +1 -1
  301. package/resources/products.d.ts +76 -65
  302. package/resources/products.d.ts.map +1 -1
  303. package/resources/products.js +7 -5
  304. package/resources/products.js.map +1 -1
  305. package/resources/products.mjs +7 -5
  306. package/resources/products.mjs.map +1 -1
  307. package/resources/promo-codes.d.mts +41 -31
  308. package/resources/promo-codes.d.mts.map +1 -1
  309. package/resources/promo-codes.d.ts +41 -31
  310. package/resources/promo-codes.d.ts.map +1 -1
  311. package/resources/promo-codes.js +7 -4
  312. package/resources/promo-codes.js.map +1 -1
  313. package/resources/promo-codes.mjs +7 -4
  314. package/resources/promo-codes.mjs.map +1 -1
  315. package/resources/reactions.d.mts +24 -18
  316. package/resources/reactions.d.mts.map +1 -1
  317. package/resources/reactions.d.ts +24 -18
  318. package/resources/reactions.d.ts.map +1 -1
  319. package/resources/reactions.js +7 -4
  320. package/resources/reactions.js.map +1 -1
  321. package/resources/reactions.mjs +7 -4
  322. package/resources/reactions.mjs.map +1 -1
  323. package/resources/refunds.d.mts +43 -29
  324. package/resources/refunds.d.mts.map +1 -1
  325. package/resources/refunds.d.ts +43 -29
  326. package/resources/refunds.d.ts.map +1 -1
  327. package/resources/refunds.js +3 -2
  328. package/resources/refunds.js.map +1 -1
  329. package/resources/refunds.mjs +3 -2
  330. package/resources/refunds.mjs.map +1 -1
  331. package/resources/reviews.d.mts +66 -50
  332. package/resources/reviews.d.mts.map +1 -1
  333. package/resources/reviews.d.ts +66 -50
  334. package/resources/reviews.d.ts.map +1 -1
  335. package/resources/reviews.js +3 -2
  336. package/resources/reviews.js.map +1 -1
  337. package/resources/reviews.mjs +3 -2
  338. package/resources/reviews.mjs.map +1 -1
  339. package/resources/setup-intents.d.mts +61 -43
  340. package/resources/setup-intents.d.mts.map +1 -1
  341. package/resources/setup-intents.d.ts +61 -43
  342. package/resources/setup-intents.d.ts.map +1 -1
  343. package/resources/setup-intents.js +4 -10
  344. package/resources/setup-intents.js.map +1 -1
  345. package/resources/setup-intents.mjs +4 -10
  346. package/resources/setup-intents.mjs.map +1 -1
  347. package/resources/shared.d.mts +696 -389
  348. package/resources/shared.d.mts.map +1 -1
  349. package/resources/shared.d.ts +696 -389
  350. package/resources/shared.d.ts.map +1 -1
  351. package/resources/shipments.d.mts +26 -17
  352. package/resources/shipments.d.mts.map +1 -1
  353. package/resources/shipments.d.ts +26 -17
  354. package/resources/shipments.d.ts.map +1 -1
  355. package/resources/shipments.js +5 -3
  356. package/resources/shipments.js.map +1 -1
  357. package/resources/shipments.mjs +5 -3
  358. package/resources/shipments.mjs.map +1 -1
  359. package/resources/support-channels.d.mts +31 -19
  360. package/resources/support-channels.d.mts.map +1 -1
  361. package/resources/support-channels.d.ts +31 -19
  362. package/resources/support-channels.d.ts.map +1 -1
  363. package/resources/support-channels.js +5 -4
  364. package/resources/support-channels.js.map +1 -1
  365. package/resources/support-channels.mjs +5 -4
  366. package/resources/support-channels.mjs.map +1 -1
  367. package/resources/topups.d.mts +11 -9
  368. package/resources/topups.d.mts.map +1 -1
  369. package/resources/topups.d.ts +11 -9
  370. package/resources/topups.d.ts.map +1 -1
  371. package/resources/topups.js +2 -1
  372. package/resources/topups.js.map +1 -1
  373. package/resources/topups.mjs +2 -1
  374. package/resources/topups.mjs.map +1 -1
  375. package/resources/transfers.d.mts +35 -29
  376. package/resources/transfers.d.mts.map +1 -1
  377. package/resources/transfers.d.ts +35 -29
  378. package/resources/transfers.d.ts.map +1 -1
  379. package/resources/transfers.js +5 -3
  380. package/resources/transfers.js.map +1 -1
  381. package/resources/transfers.mjs +5 -3
  382. package/resources/transfers.mjs.map +1 -1
  383. package/resources/users.d.mts +20 -16
  384. package/resources/users.d.mts.map +1 -1
  385. package/resources/users.d.ts +20 -16
  386. package/resources/users.d.ts.map +1 -1
  387. package/resources/users.js +4 -3
  388. package/resources/users.js.map +1 -1
  389. package/resources/users.mjs +4 -3
  390. package/resources/users.mjs.map +1 -1
  391. package/resources/verifications.d.mts +6 -4
  392. package/resources/verifications.d.mts.map +1 -1
  393. package/resources/verifications.d.ts +6 -4
  394. package/resources/verifications.d.ts.map +1 -1
  395. package/resources/verifications.js +1 -1
  396. package/resources/verifications.mjs +1 -1
  397. package/resources/webhooks.d.mts +360 -98
  398. package/resources/webhooks.d.mts.map +1 -1
  399. package/resources/webhooks.d.ts +360 -98
  400. package/resources/webhooks.d.ts.map +1 -1
  401. package/resources/webhooks.js +3 -2
  402. package/resources/webhooks.js.map +1 -1
  403. package/resources/webhooks.mjs +3 -2
  404. package/resources/webhooks.mjs.map +1 -1
  405. package/resources/withdrawals.d.mts +53 -44
  406. package/resources/withdrawals.d.mts.map +1 -1
  407. package/resources/withdrawals.d.ts +53 -44
  408. package/resources/withdrawals.d.ts.map +1 -1
  409. package/resources/withdrawals.js +3 -2
  410. package/resources/withdrawals.js.map +1 -1
  411. package/resources/withdrawals.mjs +3 -2
  412. package/resources/withdrawals.mjs.map +1 -1
  413. package/src/client.ts +34 -3
  414. package/src/resources/access-tokens.ts +19 -20
  415. package/src/resources/account-links.ts +15 -13
  416. package/src/resources/ai-chats.ts +39 -26
  417. package/src/resources/app-builds.ts +35 -33
  418. package/src/resources/apps.ts +84 -56
  419. package/src/resources/authorized-users.ts +32 -26
  420. package/src/resources/chat-channels.ts +27 -19
  421. package/src/resources/checkout-configurations.ts +56 -46
  422. package/src/resources/companies.ts +75 -46
  423. package/src/resources/company-token-transactions.ts +81 -58
  424. package/src/resources/course-chapters.ts +24 -19
  425. package/src/resources/course-lesson-interactions.ts +7 -6
  426. package/src/resources/course-lessons.ts +126 -84
  427. package/src/resources/course-students.ts +38 -29
  428. package/src/resources/courses.ts +132 -91
  429. package/src/resources/dispute-alerts.ts +404 -0
  430. package/src/resources/disputes.ts +156 -102
  431. package/src/resources/dm-channels.ts +29 -16
  432. package/src/resources/dm-members.ts +30 -21
  433. package/src/resources/entries.ts +29 -21
  434. package/src/resources/experiences.ts +53 -49
  435. package/src/resources/fee-markups.ts +32 -21
  436. package/src/resources/files.ts +21 -17
  437. package/src/resources/forum-posts.ts +63 -43
  438. package/src/resources/forums.ts +20 -12
  439. package/src/resources/index.ts +11 -1
  440. package/src/resources/invoices.ts +112 -80
  441. package/src/resources/leads.ts +64 -42
  442. package/src/resources/ledger-accounts.ts +10 -8
  443. package/src/resources/members.ts +18 -19
  444. package/src/resources/memberships.ts +69 -51
  445. package/src/resources/messages.ts +51 -32
  446. package/src/resources/notifications.ts +33 -25
  447. package/src/resources/payment-methods.ts +212 -114
  448. package/src/resources/payments.ts +78 -39
  449. package/src/resources/payout-methods.ts +44 -29
  450. package/src/resources/plans.ts +121 -90
  451. package/src/resources/products.ts +219 -68
  452. package/src/resources/promo-codes.ts +41 -31
  453. package/src/resources/reactions.ts +24 -18
  454. package/src/resources/refunds.ts +45 -29
  455. package/src/resources/reviews.ts +66 -50
  456. package/src/resources/setup-intents.ts +61 -43
  457. package/src/resources/shared.ts +2649 -388
  458. package/src/resources/shipments.ts +26 -17
  459. package/src/resources/support-channels.ts +32 -19
  460. package/src/resources/topups.ts +11 -9
  461. package/src/resources/transfers.ts +35 -29
  462. package/src/resources/users.ts +20 -16
  463. package/src/resources/verifications.ts +6 -4
  464. package/src/resources/webhooks.ts +404 -95
  465. package/src/resources/withdrawals.ts +53 -43
  466. package/src/version.ts +1 -1
  467. package/version.d.mts +1 -1
  468. package/version.d.ts +1 -1
  469. package/version.js +1 -1
  470. package/version.mjs +1 -1
@@ -3,6 +3,7 @@
3
3
  import * as Shared from './shared';
4
4
  import * as AppsAPI from './apps';
5
5
  import * as CheckoutConfigurationsAPI from './checkout-configurations';
6
+ import * as DisputesAPI from './disputes';
6
7
  import * as MembershipsAPI from './memberships';
7
8
  import * as PaymentsAPI from './payments';
8
9
  import { CursorPage } from '../core/pagination';
@@ -29,101 +30,114 @@ export interface App {
29
30
  id: string;
30
31
 
31
32
  /**
32
- * The API key for the app
33
+ * The API key used to authenticate requests on behalf of this app. Null if no API
34
+ * key has been generated. Requires the 'developer:manage_api_key' permission.
33
35
  */
34
36
  api_key: App.APIKey | null;
35
37
 
36
38
  /**
37
- * The type of end-user an app is built for
39
+ * The target audience classification for this app (e.g., 'b2b_app', 'b2c_app',
40
+ * 'company_app', 'component').
38
41
  */
39
42
  app_type: AppsAPI.AppType;
40
43
 
41
44
  /**
42
- * The base url of the app
45
+ * The production base URL where the app is hosted. Null if no base URL is
46
+ * configured.
43
47
  */
44
48
  base_url: string | null;
45
49
 
46
50
  /**
47
- * The company that owns the app
51
+ * The company that owns and publishes this app.
48
52
  */
49
53
  company: App.Company;
50
54
 
51
55
  /**
52
- * The creator of the app
56
+ * The user who created and owns the company that published this app.
53
57
  */
54
58
  creator: App.Creator;
55
59
 
56
60
  /**
57
- * The path part for a specific view of the app. This is the template part of the
58
- * 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.
59
64
  */
60
65
  dashboard_path: string | null;
61
66
 
62
67
  /**
63
- * The description of the app
68
+ * A written description of what this app does, displayed on the app store listing
69
+ * page. Null if no description has been set.
64
70
  */
65
71
  description: string | null;
66
72
 
67
73
  /**
68
- * The path part for a specific view of the app. This is the template part of the
69
- * url after the base domain. Eg: /experiences/[experienceId]
74
+ * The URL path template for a specific view of this app, appended to the base
75
+ * domain (e.g., '/experiences/[experienceId]'). Null if the specified view type is
76
+ * not configured.
70
77
  */
71
78
  discover_path: string | null;
72
79
 
73
80
  /**
74
- * The unique part of the proxied domain for this app. Used to generate the base
75
- * url used to display the app inside the whop platform. Refers to the id part in
76
- * the final url: https://{domain_id}.apps.whop.com
81
+ * The unique subdomain identifier for this app's proxied URL on the Whop platform.
82
+ * Forms the URL pattern https://{domain_id}.apps.whop.com.
77
83
  */
78
84
  domain_id: string;
79
85
 
80
86
  /**
81
- * The path part for a specific view of the app. This is the template part of the
82
- * url after the base domain. Eg: /experiences/[experienceId]
87
+ * The URL path template for a specific view of this app, appended to the base
88
+ * domain (e.g., '/experiences/[experienceId]'). Null if the specified view type is
89
+ * not configured.
83
90
  */
84
91
  experience_path: string | null;
85
92
 
86
93
  /**
87
- * The icon for the app. This icon is shown on discovery, on the product page, on
88
- * checkout, and as a default icon for the experiences.
94
+ * The icon image for this app, displayed on the app store, product pages,
95
+ * checkout, and as the default icon for experiences using this app.
89
96
  */
90
97
  icon: App.Icon | null;
91
98
 
92
99
  /**
93
- * The name of the app
100
+ * The display name of this app shown on the app store and in experience
101
+ * navigation. Maximum 30 characters.
94
102
  */
95
103
  name: string;
96
104
 
97
105
  /**
98
- * The set of permissions that an app requests to be granted when a user installs
99
- * the app.
106
+ * The whitelisted OAuth callback URLs that users are redirected to after
107
+ * authorizing the app.
108
+ */
109
+ redirect_uris: Array<string>;
110
+
111
+ /**
112
+ * The list of permissions this app requests when installed, including both
113
+ * required and optional permissions with justifications.
100
114
  */
101
115
  requested_permissions: Array<App.RequestedPermission>;
102
116
 
103
117
  /**
104
- * A collection of stats for the app.
118
+ * Aggregate usage statistics for this app, including daily, weekly, and monthly
119
+ * active user counts.
105
120
  */
106
121
  stats: App.Stats | null;
107
122
 
108
123
  /**
109
- * If the status is live, the app is visible on Whop discovery. In order to be
110
- * live, you need to set the name, icon, and description. Being unlisted or hidden
111
- * means it's not visible on Whop but you can still install the app via direct
112
- * link. To remove the app from whop discovery, you should set the status to
113
- * unlisted.
124
+ * The current visibility status of this app on the Whop app store. 'live' means
125
+ * publicly discoverable, 'unlisted' means accessible only via direct link, and
126
+ * 'hidden' means not visible anywhere.
114
127
  */
115
128
  status: AppStatuses;
116
129
 
117
130
  /**
118
- * Whether this app has been verified by Whop. Verified apps are endorsed by whop
119
- * and are shown in the 'featured apps' section of the app store.
131
+ * Whether this app has been verified by Whop. Verified apps are endorsed by Whop
132
+ * and displayed in the featured apps section of the app store.
120
133
  */
121
134
  verified: boolean;
122
135
  }
123
136
 
124
137
  export namespace App {
125
138
  /**
126
- * The API key for the app
139
+ * The API key used to authenticate requests on behalf of this app. Null if no API
140
+ * key has been generated. Requires the 'developer:manage_api_key' permission.
127
141
  */
128
142
  export interface APIKey {
129
143
  /**
@@ -143,7 +157,7 @@ export namespace App {
143
157
  }
144
158
 
145
159
  /**
146
- * The company that owns the app
160
+ * The company that owns and publishes this app.
147
161
  */
148
162
  export interface Company {
149
163
  /**
@@ -152,13 +166,13 @@ export namespace App {
152
166
  id: string;
153
167
 
154
168
  /**
155
- * The title of the company.
169
+ * The display name of the company shown to customers.
156
170
  */
157
171
  title: string;
158
172
  }
159
173
 
160
174
  /**
161
- * The creator of the app
175
+ * The user who created and owns the company that published this app.
162
176
  */
163
177
  export interface Creator {
164
178
  /**
@@ -167,24 +181,24 @@ export namespace App {
167
181
  id: string;
168
182
 
169
183
  /**
170
- * The name of the user from their Whop account.
184
+ * The user's display name shown on their public profile.
171
185
  */
172
186
  name: string | null;
173
187
 
174
188
  /**
175
- * The username of the user from their Whop account.
189
+ * The user's unique username shown on their public profile.
176
190
  */
177
191
  username: string;
178
192
  }
179
193
 
180
194
  /**
181
- * The icon for the app. This icon is shown on discovery, on the product page, on
182
- * checkout, and as a default icon for the experiences.
195
+ * The icon image for this app, displayed on the app store, product pages,
196
+ * checkout, and as the default icon for experiences using this app.
183
197
  */
184
198
  export interface Icon {
185
199
  /**
186
- * This is the URL you use to render optimized attachments on the client. This
187
- * should be used for apps.
200
+ * A pre-optimized URL for rendering this attachment on the client. This should be
201
+ * used for displaying attachments in apps.
188
202
  */
189
203
  url: string | null;
190
204
  }
@@ -228,36 +242,39 @@ export namespace App {
228
242
  }
229
243
 
230
244
  /**
231
- * A collection of stats for the app.
245
+ * Aggregate usage statistics for this app, including daily, weekly, and monthly
246
+ * active user counts.
232
247
  */
233
248
  export interface Stats {
234
249
  /**
235
- * This is the number of users that have spent time in this app in the last 24
236
- * hours.
250
+ * The number of unique users who have spent time in this app in the last 24 hours.
251
+ * Returns 0 if no usage data is available.
237
252
  */
238
253
  dau: number;
239
254
 
240
255
  /**
241
- * This is the number of users that have spent time in this app in the last 28
242
- * days.
256
+ * The number of unique users who have spent time in this app in the last 28 days.
257
+ * Returns 0 if no usage data is available.
243
258
  */
244
259
  mau: number;
245
260
 
246
261
  /**
247
- * This how much time, in seconds, users have spent in this app in the last 24
248
- * hours.
262
+ * The total time, in seconds, that all users have spent in this app over the last
263
+ * 24 hours. Returns 0 if no usage data is available.
249
264
  */
250
265
  time_spent_last24_hours: number;
251
266
 
252
267
  /**
253
- * This is the number of users that have spent time in this app in the last 7 days.
268
+ * The number of unique users who have spent time in this app in the last 7 days.
269
+ * Returns 0 if no usage data is available.
254
270
  */
255
271
  wau: number;
256
272
  }
257
273
  }
258
274
 
259
275
  /**
260
- * An App Build object representing a build of an application
276
+ * A versioned build artifact for a Whop React Native App, submitted for review and
277
+ * deployment to a specific platform.
261
278
  */
262
279
  export interface AppBuild {
263
280
  /**
@@ -266,8 +283,8 @@ export interface AppBuild {
266
283
  id: string;
267
284
 
268
285
  /**
269
- * This is generated by the client and used to verify the integrity of the file
270
- * that is submitted. It is a SHA256 hash of the app build file.
286
+ * A SHA-256 hash of the uploaded build file, generated by the client and used to
287
+ * verify file integrity.
271
288
  */
272
289
  checksum: string;
273
290
 
@@ -277,34 +294,33 @@ export interface AppBuild {
277
294
  created_at: string;
278
295
 
279
296
  /**
280
- * The URL to download the app build .zip file.
297
+ * A URL to download the app build as a .zip archive.
281
298
  */
282
299
  file_url: string;
283
300
 
284
301
  /**
285
- * Whether this app build is currently being used in production.
302
+ * Whether this build is the currently active production build for its platform.
286
303
  */
287
304
  is_production: boolean;
288
305
 
289
306
  /**
290
- * The platform of the app build (ios, android, web)
307
+ * The target platform for this build.
291
308
  */
292
309
  platform: AppBuildPlatforms;
293
310
 
294
311
  /**
295
- * The review message for the app build, if any. This is populated when the build
296
- * is rejected and there is a reason specified by the reviewer.
312
+ * Feedback from the reviewer explaining why the build was rejected. Null if the
313
+ * build has not been reviewed or was approved.
297
314
  */
298
315
  review_message: string | null;
299
316
 
300
317
  /**
301
- * The status of the app build (draft, approved, rejected, pending, etc)
318
+ * The current review status of this build.
302
319
  */
303
320
  status: AppBuildStatuses;
304
321
 
305
322
  /**
306
- * The supported app view types for the app build. These are the views that the
307
- * developer has specified that this build supports.
323
+ * The list of view types this build supports, as declared by the developer.
308
324
  */
309
325
  supported_app_view_types: Array<AppViewType>;
310
326
  }
@@ -356,12 +372,19 @@ export type BusinessTypes =
356
372
  | 'events'
357
373
  | 'coaching_and_courses'
358
374
  | 'other'
375
+ | 'services'
376
+ | 'gig_economy'
377
+ | 'marketplace'
378
+ | 'telehealth'
379
+ | 'class_action_settlement'
380
+ | 'physical_product'
359
381
  | 'saas'
360
382
  | 'course'
361
383
  | 'community';
362
384
 
363
385
  /**
364
- * Represents a Chat feed
386
+ * A real-time chat feed attached to an experience, with configurable moderation
387
+ * and posting permissions.
365
388
  */
366
389
  export interface ChatChannel {
367
390
  /**
@@ -370,44 +393,45 @@ export interface ChatChannel {
370
393
  id: string;
371
394
 
372
395
  /**
373
- * Whether or not media is banned in this chat
396
+ * Whether media uploads such as images and videos are blocked in this chat.
374
397
  */
375
398
  ban_media: boolean;
376
399
 
377
400
  /**
378
- * Whether or not URLs are banned in this chat
401
+ * Whether URL links are blocked from being posted in this chat.
379
402
  */
380
403
  ban_urls: boolean;
381
404
 
382
405
  /**
383
- * List of banned words in this chat
406
+ * A list of words that are automatically filtered from messages in this chat.
384
407
  */
385
408
  banned_words: Array<string>;
386
409
 
387
410
  /**
388
- * The experience for this chat
411
+ * The experience this chat feed is attached to.
389
412
  */
390
413
  experience: ChatChannel.Experience;
391
414
 
392
415
  /**
393
- * The number of seconds a user needs to wait before posting again, if any
416
+ * The minimum number of seconds a user must wait between consecutive messages.
417
+ * Null if no cooldown is enforced.
394
418
  */
395
419
  user_posts_cooldown_seconds: number | null;
396
420
 
397
421
  /**
398
- * Who can post on this chat
422
+ * The permission level controlling which users can send messages in this chat.
399
423
  */
400
424
  who_can_post: WhoCanPost;
401
425
 
402
426
  /**
403
- * Who can react on this chat
427
+ * The permission level controlling which users can add reactions in this chat.
404
428
  */
405
429
  who_can_react: WhoCanReact;
406
430
  }
407
431
 
408
432
  export namespace ChatChannel {
409
433
  /**
410
- * The experience for this chat
434
+ * The experience this chat feed is attached to.
411
435
  */
412
436
  export interface Experience {
413
437
  /**
@@ -416,16 +440,17 @@ export namespace ChatChannel {
416
440
  id: string;
417
441
 
418
442
  /**
419
- * The written name of the description.
443
+ * The display name of this experience shown to users in the product navigation.
444
+ * Maximum 255 characters.
420
445
  */
421
446
  name: string;
422
447
  }
423
448
  }
424
449
 
425
450
  /**
426
- * A checkout session is a reusable configuration for a checkout, including the
427
- * plan, affiliate, and custom metadata. Payments and memberships created from a
428
- * checkout session inherit its metadata.
451
+ * A checkout configuration is a reusable configuration for a checkout, including
452
+ * the plan, affiliate, and custom metadata. Payments and memberships created from
453
+ * a checkout session inherit its metadata.
429
454
  */
430
455
  export interface CheckoutConfiguration {
431
456
  /**
@@ -521,12 +546,14 @@ export namespace CheckoutConfiguration {
521
546
  id: string;
522
547
 
523
548
  /**
524
- * The interval in days at which the plan charges (renewal plans).
549
+ * The number of days between each recurring charge. Null for one-time plans. For
550
+ * example, 30 for monthly or 365 for annual billing.
525
551
  */
526
552
  billing_period: number | null;
527
553
 
528
554
  /**
529
- * The respective currency identifier for the plan.
555
+ * The currency used for all prices on this plan (e.g., 'usd', 'eur'). All monetary
556
+ * amounts on the plan are denominated in this currency.
530
557
  */
531
558
  currency: Shared.Currency;
532
559
 
@@ -544,12 +571,14 @@ export namespace CheckoutConfiguration {
544
571
  initial_price: number;
545
572
 
546
573
  /**
547
- * Indicates if the plan is a one time payment or recurring.
574
+ * The billing model for this plan: 'renewal' for recurring subscriptions or
575
+ * 'one_time' for single payments.
548
576
  */
549
577
  plan_type: Shared.PlanType;
550
578
 
551
579
  /**
552
- * This is the release method the business uses to sell this plan.
580
+ * The method used to sell this plan: 'buy_now' for immediate purchase or
581
+ * 'waitlist' for waitlist-based access.
553
582
  */
554
583
  release_method: Shared.ReleaseMethod;
555
584
 
@@ -560,12 +589,15 @@ export namespace CheckoutConfiguration {
560
589
  renewal_price: number;
561
590
 
562
591
  /**
563
- * The number of free trial days added before a renewal plan.
592
+ * The number of free trial days before the first charge on a renewal plan. Null if
593
+ * no trial is configured or the current user has already used a trial for this
594
+ * plan.
564
595
  */
565
596
  trial_period_days: number | null;
566
597
 
567
598
  /**
568
- * Shows or hides the plan from public/business view.
599
+ * Controls whether the plan is visible to customers. When set to 'hidden', the
600
+ * plan is only accessible via direct link.
569
601
  */
570
602
  visibility: Shared.Visibility;
571
603
  }
@@ -597,7 +629,8 @@ export interface Company {
597
629
  created_at: string;
598
630
 
599
631
  /**
600
- * The creator pitch for the company.
632
+ * A promotional pitch written by the company creator, displayed to potential
633
+ * customers on the store page.
601
634
  */
602
635
  description: string | null;
603
636
 
@@ -612,43 +645,47 @@ export interface Company {
612
645
  logo: Company.Logo | null;
613
646
 
614
647
  /**
615
- * The number of members in the company.
648
+ * The total number of users who currently hold active memberships across all of
649
+ * this company's products.
616
650
  */
617
651
  member_count: number;
618
652
 
619
653
  /**
620
- * A key-value store of data for the account, created/updated by the platform that
621
- * made the account.
654
+ * A key-value JSON object of custom metadata for this company, managed by the
655
+ * platform that created the account.
622
656
  */
623
657
  metadata: { [key: string]: unknown } | null;
624
658
 
625
659
  /**
626
- * The user who owns this company
660
+ * The user who owns and has full administrative control over this company.
627
661
  */
628
662
  owner_user: Company.OwnerUser;
629
663
 
630
664
  /**
631
- * The number of reviews that have been published for the company.
665
+ * The total number of published customer reviews across all products for this
666
+ * company.
632
667
  */
633
668
  published_reviews_count: number;
634
669
 
635
670
  /**
636
- * The slug/route of the company on the Whop site.
671
+ * The URL slug for the company's store page (e.g., 'pickaxe' in whop.com/pickaxe).
637
672
  */
638
673
  route: string;
639
674
 
640
675
  /**
641
- * Whether Whop sends transactional emails to customers on behalf of this company.
676
+ * Whether Whop sends transactional emails (receipts, updates) to customers on
677
+ * behalf of this company.
642
678
  */
643
679
  send_customer_emails: boolean;
644
680
 
645
681
  /**
646
- * The social media accounts of the company
682
+ * The list of social media accounts and external links associated with this
683
+ * company.
647
684
  */
648
685
  social_links: Array<Company.SocialLink>;
649
686
 
650
687
  /**
651
- * The title of the company.
688
+ * The display name of the company shown to customers.
652
689
  */
653
690
  title: string;
654
691
 
@@ -658,7 +695,7 @@ export interface Company {
658
695
  updated_at: string;
659
696
 
660
697
  /**
661
- * If the company is Whop Verified
698
+ * Whether this company has been verified by Whop's trust and safety team.
662
699
  */
663
700
  verified: boolean;
664
701
  }
@@ -669,14 +706,14 @@ export namespace Company {
669
706
  */
670
707
  export interface Logo {
671
708
  /**
672
- * This is the URL you use to render optimized attachments on the client. This
673
- * should be used for apps.
709
+ * A pre-optimized URL for rendering this attachment on the client. This should be
710
+ * used for displaying attachments in apps.
674
711
  */
675
712
  url: string | null;
676
713
  }
677
714
 
678
715
  /**
679
- * The user who owns this company
716
+ * The user who owns and has full administrative control over this company.
680
717
  */
681
718
  export interface OwnerUser {
682
719
  /**
@@ -685,12 +722,12 @@ export namespace Company {
685
722
  id: string;
686
723
 
687
724
  /**
688
- * The name of the user from their Whop account.
725
+ * The user's display name shown on their public profile.
689
726
  */
690
727
  name: string | null;
691
728
 
692
729
  /**
693
- * The username of the user from their Whop account.
730
+ * The user's unique username shown on their public profile.
694
731
  */
695
732
  username: string;
696
733
  }
@@ -705,7 +742,7 @@ export namespace Company {
705
742
  id: string;
706
743
 
707
744
  /**
708
- * The URL
745
+ * The URL of the social media profile or external link.
709
746
  */
710
747
  url: string;
711
748
 
@@ -726,7 +763,8 @@ export namespace Company {
726
763
  }
727
764
 
728
765
  /**
729
- * A lesson interaction tracking user progress in courses
766
+ * A record of a user's progress on a specific lesson, tracking whether they have
767
+ * completed it.
730
768
  */
731
769
  export interface CourseLessonInteraction {
732
770
  /**
@@ -735,12 +773,12 @@ export interface CourseLessonInteraction {
735
773
  id: string;
736
774
 
737
775
  /**
738
- * Whether the lesson has been completed by the user
776
+ * Whether the user has finished this lesson.
739
777
  */
740
778
  completed: boolean;
741
779
 
742
780
  /**
743
- * The course for this lesson interaction
781
+ * The course that contains the tracked lesson.
744
782
  */
745
783
  course: CourseLessonInteraction.Course;
746
784
 
@@ -750,19 +788,19 @@ export interface CourseLessonInteraction {
750
788
  created_at: string;
751
789
 
752
790
  /**
753
- * The lesson this interaction is for
791
+ * The lesson that this progress record belongs to.
754
792
  */
755
793
  lesson: CourseLessonInteraction.Lesson;
756
794
 
757
795
  /**
758
- * The user who interacted with the lesson
796
+ * The user whose progress is being tracked.
759
797
  */
760
798
  user: CourseLessonInteraction.User;
761
799
  }
762
800
 
763
801
  export namespace CourseLessonInteraction {
764
802
  /**
765
- * The course for this lesson interaction
803
+ * The course that contains the tracked lesson.
766
804
  */
767
805
  export interface Course {
768
806
  /**
@@ -771,19 +809,19 @@ export namespace CourseLessonInteraction {
771
809
  id: string;
772
810
 
773
811
  /**
774
- * The experience that the course belongs to
812
+ * The parent experience that this course belongs to.
775
813
  */
776
814
  experience: Course.Experience;
777
815
 
778
816
  /**
779
- * The title of the course
817
+ * The display name of the course shown to students. Null if no title has been set.
780
818
  */
781
819
  title: string | null;
782
820
  }
783
821
 
784
822
  export namespace Course {
785
823
  /**
786
- * The experience that the course belongs to
824
+ * The parent experience that this course belongs to.
787
825
  */
788
826
  export interface Experience {
789
827
  /**
@@ -794,7 +832,7 @@ export namespace CourseLessonInteraction {
794
832
  }
795
833
 
796
834
  /**
797
- * The lesson this interaction is for
835
+ * The lesson that this progress record belongs to.
798
836
  */
799
837
  export interface Lesson {
800
838
  /**
@@ -803,19 +841,19 @@ export namespace CourseLessonInteraction {
803
841
  id: string;
804
842
 
805
843
  /**
806
- * The chapter this lesson belongs to
844
+ * The parent chapter that contains this lesson.
807
845
  */
808
846
  chapter: Lesson.Chapter;
809
847
 
810
848
  /**
811
- * The title of the lesson
849
+ * The display name of the lesson shown to students. Maximum 120 characters.
812
850
  */
813
851
  title: string;
814
852
  }
815
853
 
816
854
  export namespace Lesson {
817
855
  /**
818
- * The chapter this lesson belongs to
856
+ * The parent chapter that contains this lesson.
819
857
  */
820
858
  export interface Chapter {
821
859
  /**
@@ -826,7 +864,7 @@ export namespace CourseLessonInteraction {
826
864
  }
827
865
 
828
866
  /**
829
- * The user who interacted with the lesson
867
+ * The user whose progress is being tracked.
830
868
  */
831
869
  export interface User {
832
870
  /**
@@ -835,19 +873,20 @@ export namespace CourseLessonInteraction {
835
873
  id: string;
836
874
 
837
875
  /**
838
- * The name of the user from their Whop account.
876
+ * The user's display name shown on their public profile.
839
877
  */
840
878
  name: string | null;
841
879
 
842
880
  /**
843
- * The username of the user from their Whop account.
881
+ * The user's unique username shown on their public profile.
844
882
  */
845
883
  username: string;
846
884
  }
847
885
  }
848
886
 
849
887
  /**
850
- * A lesson interaction tracking user progress in courses
888
+ * A record of a user's progress on a specific lesson, tracking whether they have
889
+ * completed it.
851
890
  */
852
891
  export interface CourseLessonInteractionListItem {
853
892
  /**
@@ -856,7 +895,7 @@ export interface CourseLessonInteractionListItem {
856
895
  id: string;
857
896
 
858
897
  /**
859
- * Whether the lesson has been completed by the user
898
+ * Whether the user has finished this lesson.
860
899
  */
861
900
  completed: boolean;
862
901
 
@@ -866,19 +905,19 @@ export interface CourseLessonInteractionListItem {
866
905
  created_at: string;
867
906
 
868
907
  /**
869
- * The lesson this interaction is for
908
+ * The lesson that this progress record belongs to.
870
909
  */
871
910
  lesson: CourseLessonInteractionListItem.Lesson;
872
911
 
873
912
  /**
874
- * The user who interacted with the lesson
913
+ * The user whose progress is being tracked.
875
914
  */
876
915
  user: CourseLessonInteractionListItem.User;
877
916
  }
878
917
 
879
918
  export namespace CourseLessonInteractionListItem {
880
919
  /**
881
- * The lesson this interaction is for
920
+ * The lesson that this progress record belongs to.
882
921
  */
883
922
  export interface Lesson {
884
923
  /**
@@ -887,19 +926,19 @@ export namespace CourseLessonInteractionListItem {
887
926
  id: string;
888
927
 
889
928
  /**
890
- * The chapter this lesson belongs to
929
+ * The parent chapter that contains this lesson.
891
930
  */
892
931
  chapter: Lesson.Chapter;
893
932
 
894
933
  /**
895
- * The title of the lesson
934
+ * The display name of the lesson shown to students. Maximum 120 characters.
896
935
  */
897
936
  title: string;
898
937
  }
899
938
 
900
939
  export namespace Lesson {
901
940
  /**
902
- * The chapter this lesson belongs to
941
+ * The parent chapter that contains this lesson.
903
942
  */
904
943
  export interface Chapter {
905
944
  /**
@@ -910,7 +949,7 @@ export namespace CourseLessonInteractionListItem {
910
949
  }
911
950
 
912
951
  /**
913
- * The user who interacted with the lesson
952
+ * The user whose progress is being tracked.
914
953
  */
915
954
  export interface User {
916
955
  /**
@@ -919,12 +958,12 @@ export namespace CourseLessonInteractionListItem {
919
958
  id: string;
920
959
 
921
960
  /**
922
- * The name of the user from their Whop account.
961
+ * The user's display name shown on their public profile.
923
962
  */
924
963
  name: string | null;
925
964
 
926
965
  /**
927
- * The username of the user from their Whop account.
966
+ * The user's unique username shown on their public profile.
928
967
  */
929
968
  username: string;
930
969
  }
@@ -1018,7 +1057,8 @@ export type Currency =
1018
1057
  | 'uzs'
1019
1058
  | 'rub'
1020
1059
  | 'btc'
1021
- | 'cny';
1060
+ | 'cny'
1061
+ | 'usdt';
1022
1062
 
1023
1063
  /**
1024
1064
  * The different types of custom CTAs that can be selected.
@@ -1068,27 +1108,30 @@ export interface Entry {
1068
1108
  created_at: string | null;
1069
1109
 
1070
1110
  /**
1071
- * Responses collected from the user when submitting their entry.
1111
+ * The list of responses collected from the user when submitting their waitlist
1112
+ * entry.
1072
1113
  */
1073
1114
  custom_field_responses: Array<Entry.CustomFieldResponse> | null;
1074
1115
 
1075
1116
  /**
1076
- * The waitlist plan the entry if for.
1117
+ * The waitlisted plan that this entry is a signup for.
1077
1118
  */
1078
1119
  plan: Entry.Plan | null;
1079
1120
 
1080
1121
  /**
1081
- * The product tied to this entry, if there is one.
1122
+ * The product associated with this entry's waitlisted plan. Null if the plan is
1123
+ * not tied to a product.
1082
1124
  */
1083
1125
  product: Entry.Product | null;
1084
1126
 
1085
1127
  /**
1086
- * The status of the entry.
1128
+ * The current status of the waitlist entry (e.g., drafted, pending, approved,
1129
+ * denied).
1087
1130
  */
1088
1131
  status: EntryStatus;
1089
1132
 
1090
1133
  /**
1091
- * The user who created the entry.
1134
+ * The user who submitted this waitlist entry.
1092
1135
  */
1093
1136
  user: Entry.User;
1094
1137
  }
@@ -1115,7 +1158,7 @@ export namespace Entry {
1115
1158
  }
1116
1159
 
1117
1160
  /**
1118
- * The waitlist plan the entry if for.
1161
+ * The waitlisted plan that this entry is a signup for.
1119
1162
  */
1120
1163
  export interface Plan {
1121
1164
  /**
@@ -1125,7 +1168,8 @@ export namespace Entry {
1125
1168
  }
1126
1169
 
1127
1170
  /**
1128
- * The product tied to this entry, if there is one.
1171
+ * The product associated with this entry's waitlisted plan. Null if the plan is
1172
+ * not tied to a product.
1129
1173
  */
1130
1174
  export interface Product {
1131
1175
  /**
@@ -1134,13 +1178,14 @@ export namespace Entry {
1134
1178
  id: string;
1135
1179
 
1136
1180
  /**
1137
- * The title of the product. Use for Whop 4.0.
1181
+ * The display name of the product shown to customers on the product page and in
1182
+ * search results.
1138
1183
  */
1139
1184
  title: string;
1140
1185
  }
1141
1186
 
1142
1187
  /**
1143
- * The user who created the entry.
1188
+ * The user who submitted this waitlist entry.
1144
1189
  */
1145
1190
  export interface User {
1146
1191
  /**
@@ -1149,17 +1194,18 @@ export namespace Entry {
1149
1194
  id: string;
1150
1195
 
1151
1196
  /**
1152
- * The email of the user
1197
+ * The user's email address. Requires the member:email:read permission to access.
1198
+ * Null if not authorized.
1153
1199
  */
1154
1200
  email: string | null;
1155
1201
 
1156
1202
  /**
1157
- * The name of the user from their Whop account.
1203
+ * The user's display name shown on their public profile.
1158
1204
  */
1159
1205
  name: string | null;
1160
1206
 
1161
1207
  /**
1162
- * The username of the user from their Whop account.
1208
+ * The user's unique username shown on their public profile.
1163
1209
  */
1164
1210
  username: string;
1165
1211
  }
@@ -1172,7 +1218,7 @@ export type EntryStatus = 'drafted' | 'pending' | 'approved' | 'denied' | 'any';
1172
1218
 
1173
1219
  /**
1174
1220
  * An experience is a feature or content module within a product, such as a chat,
1175
- * course, or app.
1221
+ * course, or custom app.
1176
1222
  */
1177
1223
  export interface Experience {
1178
1224
  /**
@@ -1181,7 +1227,7 @@ export interface Experience {
1181
1227
  id: string;
1182
1228
 
1183
1229
  /**
1184
- * The experience interface for this experience.
1230
+ * The app that powers this experience, defining its interface and behavior.
1185
1231
  */
1186
1232
  app: Experience.App;
1187
1233
 
@@ -1196,36 +1242,40 @@ export interface Experience {
1196
1242
  created_at: string;
1197
1243
 
1198
1244
  /**
1199
- * The logo for the experience.
1245
+ * The custom logo image for this experience. Null if no custom logo has been
1246
+ * uploaded.
1200
1247
  */
1201
1248
  image: Experience.Image | null;
1202
1249
 
1203
1250
  /**
1204
- * Whether the experience is visible to the public
1251
+ * Whether this experience is publicly visible to all users, including those
1252
+ * without a membership.
1205
1253
  */
1206
1254
  is_public: boolean;
1207
1255
 
1208
1256
  /**
1209
- * The written name of the description.
1257
+ * The display name of this experience shown to users in the product navigation.
1258
+ * Maximum 255 characters.
1210
1259
  */
1211
1260
  name: string;
1212
1261
 
1213
1262
  /**
1214
- * The order of the experience in the section
1263
+ * The sort position of this experience within its section. Lower values appear
1264
+ * first. Null if no position has been set.
1215
1265
  */
1216
1266
  order: string | null;
1217
1267
 
1218
1268
  /**
1219
- * The products that this experience is attached to. This defines which set of
1220
- * customers have access and can view this experience. If empty, this experience is
1221
- * only visible to authorized users of the company
1269
+ * The list of products this experience is attached to, which determines which
1270
+ * customers have access. Empty if the experience is only visible to authorized
1271
+ * company team members.
1222
1272
  */
1223
1273
  products: Array<Experience.Product>;
1224
1274
  }
1225
1275
 
1226
1276
  export namespace Experience {
1227
1277
  /**
1228
- * The experience interface for this experience.
1278
+ * The app that powers this experience, defining its interface and behavior.
1229
1279
  */
1230
1280
  export interface App {
1231
1281
  /**
@@ -1234,26 +1284,27 @@ export namespace Experience {
1234
1284
  id: string;
1235
1285
 
1236
1286
  /**
1237
- * The icon for the app. This icon is shown on discovery, on the product page, on
1238
- * checkout, and as a default icon for the experiences.
1287
+ * The icon image for this app, displayed on the app store, product pages,
1288
+ * checkout, and as the default icon for experiences using this app.
1239
1289
  */
1240
1290
  icon: App.Icon | null;
1241
1291
 
1242
1292
  /**
1243
- * The name of the app
1293
+ * The display name of this app shown on the app store and in experience
1294
+ * navigation. Maximum 30 characters.
1244
1295
  */
1245
1296
  name: string;
1246
1297
  }
1247
1298
 
1248
1299
  export namespace App {
1249
1300
  /**
1250
- * The icon for the app. This icon is shown on discovery, on the product page, on
1251
- * checkout, and as a default icon for the experiences.
1301
+ * The icon image for this app, displayed on the app store, product pages,
1302
+ * checkout, and as the default icon for experiences using this app.
1252
1303
  */
1253
1304
  export interface Icon {
1254
1305
  /**
1255
- * This is the URL you use to render optimized attachments on the client. This
1256
- * should be used for apps.
1306
+ * A pre-optimized URL for rendering this attachment on the client. This should be
1307
+ * used for displaying attachments in apps.
1257
1308
  */
1258
1309
  url: string | null;
1259
1310
  }
@@ -1269,23 +1320,24 @@ export namespace Experience {
1269
1320
  id: string;
1270
1321
 
1271
1322
  /**
1272
- * The slug/route of the company on the Whop site.
1323
+ * The URL slug for the company's store page (e.g., 'pickaxe' in whop.com/pickaxe).
1273
1324
  */
1274
1325
  route: string;
1275
1326
 
1276
1327
  /**
1277
- * The title of the company.
1328
+ * The display name of the company shown to customers.
1278
1329
  */
1279
1330
  title: string;
1280
1331
  }
1281
1332
 
1282
1333
  /**
1283
- * The logo for the experience.
1334
+ * The custom logo image for this experience. Null if no custom logo has been
1335
+ * uploaded.
1284
1336
  */
1285
1337
  export interface Image {
1286
1338
  /**
1287
- * This is the URL you use to render optimized attachments on the client. This
1288
- * should be used for apps.
1339
+ * A pre-optimized URL for rendering this attachment on the client. This should be
1340
+ * used for displaying attachments in apps.
1289
1341
  */
1290
1342
  url: string | null;
1291
1343
  }
@@ -1301,19 +1353,22 @@ export namespace Experience {
1301
1353
  id: string;
1302
1354
 
1303
1355
  /**
1304
- * The route of the product.
1356
+ * The URL slug used in the product's public link (e.g., 'my-product' in
1357
+ * whop.com/company/my-product).
1305
1358
  */
1306
1359
  route: string;
1307
1360
 
1308
1361
  /**
1309
- * The title of the product. Use for Whop 4.0.
1362
+ * The display name of the product shown to customers on the product page and in
1363
+ * search results.
1310
1364
  */
1311
1365
  title: string;
1312
1366
  }
1313
1367
  }
1314
1368
 
1315
1369
  /**
1316
- * Represents a forum feed
1370
+ * A discussion forum where members can create posts, comment, and react, belonging
1371
+ * to an experience.
1317
1372
  */
1318
1373
  export interface Forum {
1319
1374
  /**
@@ -1322,29 +1377,32 @@ export interface Forum {
1322
1377
  id: string;
1323
1378
 
1324
1379
  /**
1325
- * The email notification preference for this forum
1380
+ * The email notification setting that controls which posts trigger email alerts.
1381
+ * One of: all_admin_posts, only_weekly_summary, none.
1326
1382
  */
1327
1383
  email_notification_preference: EmailNotificationPreferences;
1328
1384
 
1329
1385
  /**
1330
- * The experience for this forum
1386
+ * The parent experience that this forum belongs to.
1331
1387
  */
1332
1388
  experience: Forum.Experience;
1333
1389
 
1334
1390
  /**
1335
- * Who can comment on this forum
1391
+ * The permission level controlling who can comment on posts. One of: everyone,
1392
+ * admins.
1336
1393
  */
1337
1394
  who_can_comment: WhoCanCommentTypes;
1338
1395
 
1339
1396
  /**
1340
- * Who can post on this forum
1397
+ * The permission level controlling who can create new posts. One of: everyone,
1398
+ * admins.
1341
1399
  */
1342
1400
  who_can_post: WhoCanPostTypes;
1343
1401
  }
1344
1402
 
1345
1403
  export namespace Forum {
1346
1404
  /**
1347
- * The experience for this forum
1405
+ * The parent experience that this forum belongs to.
1348
1406
  */
1349
1407
  export interface Experience {
1350
1408
  /**
@@ -1353,14 +1411,16 @@ export namespace Forum {
1353
1411
  id: string;
1354
1412
 
1355
1413
  /**
1356
- * The written name of the description.
1414
+ * The display name of this experience shown to users in the product navigation.
1415
+ * Maximum 255 characters.
1357
1416
  */
1358
1417
  name: string;
1359
1418
  }
1360
1419
  }
1361
1420
 
1362
1421
  /**
1363
- * Represents a post in forum
1422
+ * A post or comment in a forum feed, supporting rich text, attachments, polls, and
1423
+ * reactions.
1364
1424
  */
1365
1425
  export interface ForumPost {
1366
1426
  /**
@@ -1373,69 +1433,70 @@ export interface ForumPost {
1373
1433
  id: string;
1374
1434
 
1375
1435
  /**
1376
- * The amount of comments on this post
1436
+ * The total number of direct comments on this post.
1377
1437
  */
1378
1438
  comment_count: number;
1379
1439
 
1380
1440
  /**
1381
- * The content of the forum post in Markdown format
1441
+ * The body of the forum post in Markdown format. Null if the post is paywalled and
1442
+ * the current user does not have access.
1382
1443
  */
1383
1444
  content: string | null;
1384
1445
 
1385
1446
  /**
1386
- * The timestamp when the post was created
1447
+ * The time this post was created, as a Unix timestamp.
1387
1448
  */
1388
1449
  created_at: string;
1389
1450
 
1390
1451
  /**
1391
- * Whether the forum post has been edited
1452
+ * Whether this post has been edited after its initial creation.
1392
1453
  */
1393
1454
  is_edited: boolean;
1394
1455
 
1395
1456
  /**
1396
- * Whether this forum post is pinned
1457
+ * Whether this post is pinned to the top of the forum feed.
1397
1458
  */
1398
1459
  is_pinned: boolean;
1399
1460
 
1400
1461
  /**
1401
- * Whether the user that sent the post is an admin of the company
1462
+ * Whether the author of this post is an admin of the company that owns the forum.
1402
1463
  */
1403
1464
  is_poster_admin: boolean;
1404
1465
 
1405
1466
  /**
1406
- * The number of likes this post has received
1467
+ * The total number of like reactions this post has received.
1407
1468
  */
1408
1469
  like_count: number | null;
1409
1470
 
1410
1471
  /**
1411
- * The ID of the parent forum post, if applicable
1472
+ * The unique identifier of the parent post. Null if this is a top-level post.
1412
1473
  */
1413
1474
  parent_id: string | null;
1414
1475
 
1415
1476
  /**
1416
- * The title of the forum post
1477
+ * The headline of the forum post. Null if the post has no title.
1417
1478
  */
1418
1479
  title: string | null;
1419
1480
 
1420
1481
  /**
1421
- * The timestamp when the post was last updated
1482
+ * The time this post was last updated, as a Unix timestamp.
1422
1483
  */
1423
1484
  updated_at: string;
1424
1485
 
1425
1486
  /**
1426
- * The user who created this forum post
1487
+ * The user who authored this forum post.
1427
1488
  */
1428
1489
  user: ForumPost.User;
1429
1490
 
1430
1491
  /**
1431
- * The number of times this message has been viewed
1492
+ * The total number of times this post has been viewed by users.
1432
1493
  */
1433
1494
  view_count: number | null;
1434
1495
  }
1435
1496
 
1436
1497
  export namespace ForumPost {
1437
1498
  /**
1438
- * The user who created this forum post
1499
+ * The user who authored this forum post.
1439
1500
  */
1440
1501
  export interface User {
1441
1502
  /**
@@ -1444,12 +1505,12 @@ export namespace ForumPost {
1444
1505
  id: string;
1445
1506
 
1446
1507
  /**
1447
- * The name of the user from their Whop account.
1508
+ * The user's display name shown on their public profile.
1448
1509
  */
1449
1510
  name: string | null;
1450
1511
 
1451
1512
  /**
1452
- * The username of the user from their Whop account.
1513
+ * The user's unique username shown on their public profile.
1453
1514
  */
1454
1515
  username: string;
1455
1516
  }
@@ -1557,10 +1618,1893 @@ export type IndustryTypes =
1557
1618
  | 'convention'
1558
1619
  | 'concerts'
1559
1620
  | 'meetups'
1560
- | 'parties';
1621
+ | 'parties'
1622
+ | 'forex_trading'
1623
+ | 'stock_trading'
1624
+ | 'options_trading'
1625
+ | 'crypto_trading'
1626
+ | 'futures_trading'
1627
+ | 'day_trading'
1628
+ | 'swing_trading'
1629
+ | 'algorithmic_trading'
1630
+ | 'prop_firm_trading'
1631
+ | 'value_investing'
1632
+ | 'real_estate_investing'
1633
+ | 'alternative_investments'
1634
+ | 'penny_stock_trading'
1635
+ | 'dividend_investing'
1636
+ | 'index_fund_investing'
1637
+ | 'gold_precious_metals'
1638
+ | 'venture_capital_education'
1639
+ | 'private_equity_education'
1640
+ | 'technical_analysis'
1641
+ | 'forex_scalping'
1642
+ | 'ict_smc_trading'
1643
+ | 'personalized_investment_advice'
1644
+ | 'sports_betting_picks'
1645
+ | 'fantasy_sports'
1646
+ | 'horse_racing'
1647
+ | 'poker_coaching'
1648
+ | 'esports_betting'
1649
+ | 'sports_analytics'
1650
+ | 'nfl_betting'
1651
+ | 'nba_betting'
1652
+ | 'mlb_betting'
1653
+ | 'soccer_betting'
1654
+ | 'mma_ufc_betting'
1655
+ | 'bodybuilding_coaching'
1656
+ | 'strength_training'
1657
+ | 'weight_loss_coaching'
1658
+ | 'athletic_performance'
1659
+ | 'yoga_instruction'
1660
+ | 'martial_arts_instruction'
1661
+ | 'running_coaching'
1662
+ | 'calisthenics'
1663
+ | 'flexibility_mobility'
1664
+ | 'nutrition_coaching'
1665
+ | 'swimming_coaching'
1666
+ | 'cycling_coaching'
1667
+ | 'boxing_coaching'
1668
+ | 'mma_coaching'
1669
+ | 'jiu_jitsu_coaching'
1670
+ | 'wrestling_coaching'
1671
+ | 'gymnastics_coaching'
1672
+ | 'pilates_instruction'
1673
+ | 'sports_nutrition'
1674
+ | 'body_recomposition'
1675
+ | 'golf_coaching'
1676
+ | 'tennis_coaching'
1677
+ | 'basketball_training'
1678
+ | 'soccer_training'
1679
+ | 'racket_sports_coaching'
1680
+ | 'mental_health_coaching'
1681
+ | 'life_coaching'
1682
+ | 'biohacking'
1683
+ | 'holistic_health'
1684
+ | 'addiction_recovery_coaching'
1685
+ | 'breathwork'
1686
+ | 'meditation_mindfulness'
1687
+ | 'gut_health_coaching'
1688
+ | 'longevity_coaching'
1689
+ | 'womens_health_coaching'
1690
+ | 'mens_health_coaching'
1691
+ | 'fertility_wellness'
1692
+ | 'stress_management'
1693
+ | 'grief_coaching'
1694
+ | 'trauma_recovery_coaching'
1695
+ | 'adhd_coaching'
1696
+ | 'biomarker_health_coaching'
1697
+ | 'fitness_newsletter'
1698
+ | 'mental_health_newsletter'
1699
+ | 'longevity_newsletter'
1700
+ | 'medical_newsletter'
1701
+ | 'biohacking_newsletter'
1702
+ | 'womens_health_newsletter'
1703
+ | 'mens_health_newsletter'
1704
+ | 'pharma_biotech_newsletter'
1705
+ | 'ecommerce_education'
1706
+ | 'amazon_fba_coaching'
1707
+ | 'dropshipping_coaching'
1708
+ | 'print_on_demand_coaching'
1709
+ | 'retail_arbitrage'
1710
+ | 'wholesale_coaching'
1711
+ | 'startup_coaching'
1712
+ | 'business_strategy'
1713
+ | 'agency_building'
1714
+ | 'smma_coaching'
1715
+ | 'consulting_business'
1716
+ | 'saas_entrepreneurship'
1717
+ | 'local_business_coaching'
1718
+ | 'cleaning_business_coaching'
1719
+ | 'trucking_business_coaching'
1720
+ | 'vending_machine_business'
1721
+ | 'atm_business_coaching'
1722
+ | 'car_wash_business'
1723
+ | 'airbnb_business_coaching'
1724
+ | 'private_label_coaching'
1725
+ | 'etsy_coaching'
1726
+ | 'merch_business_coaching'
1727
+ | 'licensing_business'
1728
+ | 'business_acquisition'
1729
+ | 'women_entrepreneurship'
1730
+ | 'affiliate_marketing_education'
1731
+ | 'coaching_business_coaching'
1732
+ | 'startup_newsletter'
1733
+ | 'ecommerce_newsletter'
1734
+ | 'marketing_newsletter'
1735
+ | 'sales_newsletter'
1736
+ | 'small_business_newsletter'
1737
+ | 'leadership_newsletter'
1738
+ | 'agency_newsletter'
1739
+ | 'saas_newsletter'
1740
+ | 'hr_people_newsletter'
1741
+ | 'legal_business_newsletter'
1742
+ | 'real_estate_business_newsletter'
1743
+ | 'solopreneur_newsletter'
1744
+ | 'high_ticket_sales'
1745
+ | 'b2b_sales_coaching'
1746
+ | 'door_to_door_sales'
1747
+ | 'sales_funnel_coaching'
1748
+ | 'appointment_setting_coaching'
1749
+ | 'insurance_sales_coaching'
1750
+ | 'car_sales_coaching'
1751
+ | 'retail_sales_coaching'
1752
+ | 'solar_sales_coaching'
1753
+ | 'facebook_ads'
1754
+ | 'google_ads'
1755
+ | 'tiktok_marketing'
1756
+ | 'youtube_marketing'
1757
+ | 'instagram_growth'
1758
+ | 'seo_coaching'
1759
+ | 'email_marketing_coaching'
1760
+ | 'copywriting_coaching'
1761
+ | 'affiliate_marketing'
1762
+ | 'local_seo'
1763
+ | 'ai_marketing'
1764
+ | 'webinar_marketing'
1765
+ | 'event_marketing'
1766
+ | 'saas_marketing_coaching'
1767
+ | 'digital_marketing'
1768
+ | 'video_editing_education'
1769
+ | 'photography_coaching'
1770
+ | 'music_production'
1771
+ | 'ui_ux_design_education'
1772
+ | 'clipping_education'
1773
+ | 'ugc_creation'
1774
+ | '3d_modeling_education'
1775
+ | 'dj_education'
1776
+ | 'youtube_automation'
1777
+ | 'blog_monetization'
1778
+ | 'wedding_photography_education'
1779
+ | 'calligraphy_lettering'
1780
+ | 'illustration_education'
1781
+ | 'fashion_design_education'
1782
+ | 'interior_design_education'
1783
+ | 'influencer_education'
1784
+ | 'ai_content_creator_education'
1785
+ | 'web_development_education'
1786
+ | 'ai_ml_education'
1787
+ | 'data_science_education'
1788
+ | 'cybersecurity_education'
1789
+ | 'cloud_computing_education'
1790
+ | 'blockchain_education'
1791
+ | 'no_code_education'
1792
+ | 'automation_education'
1793
+ | 'game_development_education'
1794
+ | 'prompt_engineering'
1795
+ | 'python_programming'
1796
+ | 'javascript_programming'
1797
+ | 'react_development'
1798
+ | 'database_engineering'
1799
+ | 'aws_certification'
1800
+ | 'data_engineering'
1801
+ | 'robotics_education'
1802
+ | 'vr_ar_development'
1803
+ | 'linux_sysadmin'
1804
+ | 'wordpress_development'
1805
+ | 'ai_agent_building'
1806
+ | 'real_estate_wholesaling'
1807
+ | 'house_flipping'
1808
+ | 'property_development'
1809
+ | 'rental_property'
1810
+ | 'airbnb_str'
1811
+ | 'commercial_real_estate'
1812
+ | 'land_investing'
1813
+ | 'section_8_housing'
1814
+ | 'mobile_home_investing'
1815
+ | 'multifamily_investing'
1816
+ | 'self_storage_investing'
1817
+ | 'property_management_education'
1818
+ | 'vacation_rental_management'
1819
+ | 'credit_repair_education'
1820
+ | 'budgeting_coaching'
1821
+ | 'tax_strategy_education'
1822
+ | 'wealth_building'
1823
+ | 'student_loan_strategy'
1824
+ | 'credit_card_optimization'
1825
+ | 'career_coaching'
1826
+ | 'executive_coaching'
1827
+ | 'management_coaching'
1828
+ | 'tech_career_coaching'
1829
+ | 'medical_career_coaching'
1830
+ | 'trade_skills_education'
1831
+ | 'va_training'
1832
+ | 'bookkeeping_education'
1833
+ | 'data_career_coaching'
1834
+ | 'cybersecurity_career'
1835
+ | 'consulting_career'
1836
+ | 'investment_banking_career'
1837
+ | 'law_career_coaching'
1838
+ | 'nursing_career_coaching'
1839
+ | 'teaching_career_coaching'
1840
+ | 'personal_branding_career'
1841
+ | 'mens_dating_coaching'
1842
+ | 'womens_dating_coaching'
1843
+ | 'relationship_coaching'
1844
+ | 'marriage_coaching'
1845
+ | 'communication_coaching'
1846
+ | 'masculinity_coaching'
1847
+ | 'femininity_coaching'
1848
+ | 'breakup_recovery'
1849
+ | 'manifestation_coaching'
1850
+ | 'astrology_coaching'
1851
+ | 'energy_healing'
1852
+ | 'spiritual_coaching'
1853
+ | 'faith_based_coaching'
1854
+ | 'psychic_development'
1855
+ | 'numerology_coaching'
1856
+ | 'chakra_healing'
1857
+ | 'shamanic_healing'
1858
+ | 'biblical_coaching'
1859
+ | 'islamic_coaching'
1860
+ | 'productivity_coaching'
1861
+ | 'public_speaking_coaching'
1862
+ | 'mindset_coaching'
1863
+ | 'stoicism_philosophy'
1864
+ | 'mens_self_improvement'
1865
+ | 'womens_self_improvement'
1866
+ | 'leadership_development'
1867
+ | 'anger_management'
1868
+ | 'neurolinguistic_programming'
1869
+ | 'appearance_and_grooming_coaching'
1870
+ | 'amazon_kdp'
1871
+ | 'self_publishing'
1872
+ | 'audiobook_publishing'
1873
+ | 'course_creation'
1874
+ | 'digital_product_creation'
1875
+ | 'ghostwriting_business'
1876
+ | 'template_creation'
1877
+ | 'ai_book_publishing'
1878
+ | 'language_learning'
1879
+ | 'tutoring'
1880
+ | 'college_admissions_coaching'
1881
+ | 'cpa_exam_prep'
1882
+ | 'bar_exam_prep'
1883
+ | 'real_estate_exam_prep'
1884
+ | 'medical_board_prep'
1885
+ | 'pmp_certification_prep'
1886
+ | 'aws_certification_prep'
1887
+ | 'comptia_certification'
1888
+ | 'ap_exam_prep'
1889
+ | 'graduate_school_prep'
1890
+ | 'scholarship_coaching'
1891
+ | 'homeschool_education'
1892
+ | 'stem_education'
1893
+ | 'financial_certification'
1894
+ | 'coding_bootcamp_prep'
1895
+ | 'cooking_culinary'
1896
+ | 'travel_coaching'
1897
+ | 'parenting_coaching'
1898
+ | 'pet_training'
1899
+ | 'gardening_education'
1900
+ | 'diy_crafts'
1901
+ | 'survival_prepping'
1902
+ | 'baking_pastry'
1903
+ | 'wine_sommelier'
1904
+ | 'beer_brewing'
1905
+ | 'mixology_bartending'
1906
+ | 'woodworking'
1907
+ | 'pottery_ceramics'
1908
+ | 'knitting_crocheting'
1909
+ | 'jewelry_making'
1910
+ | 'aquarium_fishkeeping'
1911
+ | 'bird_watching'
1912
+ | 'astronomy_education'
1913
+ | 'magic_illusion'
1914
+ | 'car_restoration'
1915
+ | 'motorcycle_riding'
1916
+ | 'sailing_boating'
1917
+ | 'scuba_diving'
1918
+ | 'rock_climbing'
1919
+ | 'skiing_snowboarding'
1920
+ | 'surfing_education'
1921
+ | 'homesteading'
1922
+ | 'tiny_house_living'
1923
+ | 'van_life'
1924
+ | 'fashion_styling'
1925
+ | 'floral_design'
1926
+ | 'travel_planning_service'
1927
+ | 'collectibles_coaching'
1928
+ | 'esports_coaching'
1929
+ | 'game_specific_coaching'
1930
+ | 'legal_education'
1931
+ | 'music_theory'
1932
+ | 'music_business'
1933
+ | 'acting_coaching'
1934
+ | 'dance_instruction'
1935
+ | 'voice_acting'
1936
+ | 'english_coaching'
1937
+ | 'spanish_coaching'
1938
+ | 'mandarin_coaching'
1939
+ | 'french_coaching'
1940
+ | 'german_coaching'
1941
+ | 'japanese_coaching'
1942
+ | 'korean_coaching'
1943
+ | 'arabic_coaching'
1944
+ | 'sign_language_education'
1945
+ | 'accent_reduction'
1946
+ | 'business_english'
1947
+ | 'smma'
1948
+ | 'performance_marketing_agency'
1949
+ | 'seo_agency'
1950
+ | 'content_marketing_agency'
1951
+ | 'email_marketing_agency'
1952
+ | 'influencer_marketing_agency'
1953
+ | 'pr_agency'
1954
+ | 'branding_agency'
1955
+ | 'video_marketing_agency'
1956
+ | 'amazon_marketing_agency'
1957
+ | 'podcast_marketing_agency'
1958
+ | 'tiktok_agency'
1959
+ | 'linkedin_agency'
1960
+ | 'local_marketing_agency'
1961
+ | 'dental_marketing_agency'
1962
+ | 'real_estate_marketing_agency'
1963
+ | 'restaurant_marketing_agency'
1964
+ | 'ecommerce_marketing_agency'
1965
+ | 'b2b_marketing_agency'
1966
+ | 'growth_marketing_agency'
1967
+ | 'affiliate_management_agency'
1968
+ | 'conversion_optimization_agency'
1969
+ | 'event_marketing_agency'
1970
+ | 'click_farm_service'
1971
+ | 'data_scraping_service'
1972
+ | 'lead_list_sales'
1973
+ | 'social_media_bot_farm'
1974
+ | 'lead_generation_agency'
1975
+ | 'cold_email_agency'
1976
+ | 'cold_calling_agency'
1977
+ | 'sales_outsourcing'
1978
+ | 'crm_implementation'
1979
+ | 'appointment_setting_agency'
1980
+ | 'sales_training_agency'
1981
+ | 'revenue_operations_agency'
1982
+ | 'inbound_teleservices'
1983
+ | 'outbound_telemarketing'
1984
+ | 'ai_chatbot_agency'
1985
+ | 'ai_automation_agency'
1986
+ | 'ai_consulting'
1987
+ | 'workflow_automation_agency'
1988
+ | 'data_analytics_agency'
1989
+ | 'ai_voice_agent_agency'
1990
+ | 'ai_content_agency'
1991
+ | 'machine_learning_agency'
1992
+ | 'computer_vision_agency'
1993
+ | 'web_design_agency'
1994
+ | 'graphic_design_agency'
1995
+ | 'ui_ux_agency'
1996
+ | 'motion_design_agency'
1997
+ | 'product_design_agency'
1998
+ | 'logo_design_agency'
1999
+ | 'presentation_design_agency'
2000
+ | '3d_visualization_agency'
2001
+ | 'fashion_design_agency'
2002
+ | 'web_development_agency'
2003
+ | 'mobile_app_agency'
2004
+ | 'saas_development_agency'
2005
+ | 'ecommerce_development'
2006
+ | 'blockchain_development_agency'
2007
+ | 'game_development_agency'
2008
+ | 'devops_agency'
2009
+ | 'ai_development_agency'
2010
+ | 'wordpress_agency'
2011
+ | 'shopify_agency'
2012
+ | 'api_integration_agency'
2013
+ | 'cybersecurity_agency'
2014
+ | 'data_engineering_agency'
2015
+ | 'vr_ar_development_agency'
2016
+ | 'hacking_tools_malware'
2017
+ | 'stalkerware_monitoring'
2018
+ | 'tech_recruiting_agency'
2019
+ | 'executive_recruiting'
2020
+ | 'staffing_agency'
2021
+ | 'remote_staffing'
2022
+ | 'healthcare_recruiting'
2023
+ | 'va_placement_agency'
2024
+ | 'sales_recruiting'
2025
+ | 'creative_recruiting'
2026
+ | 'finance_recruiting'
2027
+ | 'legal_recruiting'
2028
+ | 'construction_staffing'
2029
+ | 'hospitality_staffing'
2030
+ | 'customer_support_outsourcing'
2031
+ | 'live_chat_agency'
2032
+ | 'technical_support_agency'
2033
+ | 'call_center_agency'
2034
+ | 'multilingual_support_agency'
2035
+ | 'community_management_agency'
2036
+ | 'video_clipping_agency'
2037
+ | 'video_production_agency'
2038
+ | 'ugc_agency'
2039
+ | 'content_writing_agency'
2040
+ | 'translation_agency'
2041
+ | 'social_media_management'
2042
+ | 'ghostwriting_agency'
2043
+ | 'podcast_editing_agency'
2044
+ | 'thumbnail_design_agency'
2045
+ | 'scriptwriting_agency'
2046
+ | 'seo_content_agency'
2047
+ | 'technical_writing_agency'
2048
+ | 'management_consulting'
2049
+ | 'financial_consulting'
2050
+ | 'hr_consulting'
2051
+ | 'operations_consulting'
2052
+ | 'it_consulting'
2053
+ | 'sustainability_consulting'
2054
+ | 'legal_consulting'
2055
+ | 'compliance_consulting'
2056
+ | 'supply_chain_consulting'
2057
+ | 'change_management_consulting'
2058
+ | 'digital_transformation_consulting'
2059
+ | 'healthcare_consulting'
2060
+ | 'real_estate_consulting'
2061
+ | 'franchise_consulting'
2062
+ | 'export_trade_consulting'
2063
+ | 'nonprofit_consulting'
2064
+ | 'education_consulting'
2065
+ | 'cannabis_consulting'
2066
+ | 'restaurant_consulting'
2067
+ | 'm_and_a_consulting'
2068
+ | 'pricing_strategy_consulting'
2069
+ | 'brand_strategy_consulting'
2070
+ | 'saas_marketing_consulting'
2071
+ | 'done_for_you_services'
2072
+ | 'prop_firm_passing_service'
2073
+ | 'trading_account_management'
2074
+ | 'done_for_you_trading'
2075
+ | 'accounting_bookkeeping'
2076
+ | 'tax_preparation'
2077
+ | 'legal_services'
2078
+ | 'notary_services'
2079
+ | 'insurance_brokerage'
2080
+ | 'financial_planning_service'
2081
+ | 'real_estate_services'
2082
+ | 'property_management'
2083
+ | 'mortgage_brokerage'
2084
+ | 'immigration_services'
2085
+ | 'patent_trademark_services'
2086
+ | 'business_formation_services'
2087
+ | 'shell_company_formation'
2088
+ | 'payroll_services'
2089
+ | 'audit_services'
2090
+ | 'forensic_accounting'
2091
+ | 'actuarial_services'
2092
+ | 'appraisal_services'
2093
+ | 'mediation_arbitration'
2094
+ | 'background_check_services'
2095
+ | 'bail_bond_services'
2096
+ | 'bnpl_service'
2097
+ | 'check_cashing_service'
2098
+ | 'cloud_mining_schemes'
2099
+ | 'consumer_lending'
2100
+ | 'credit_repair_service'
2101
+ | 'crowdfunding_platform'
2102
+ | 'crypto_exchange_brokerage'
2103
+ | 'debt_collection_agency'
2104
+ | 'debt_relief_settlement'
2105
+ | 'document_falsification'
2106
+ | 'escrow_service'
2107
+ | 'essay_mill_paper_mill'
2108
+ | 'fake_id_services'
2109
+ | 'fake_reference_services'
2110
+ | 'foreign_exchange_service'
2111
+ | 'government_service_facilitation'
2112
+ | 'immigration_services_unlicensed'
2113
+ | 'licensed_legal_services'
2114
+ | 'payment_facilitation'
2115
+ | 'personalized_tax_services'
2116
+ | 'prediction_market_exchange'
2117
+ | 'private_investigation'
2118
+ | 'repossession_services'
2119
+ | 'stablecoin_issuance'
2120
+ | 'standalone_tipping'
2121
+ | 'token_sales_ico'
2122
+ | 'tokenized_rwa'
2123
+ | 'unlicensed_legal_services'
2124
+ | 'yield_staking_products'
2125
+ | 'photography_service'
2126
+ | 'videography_service'
2127
+ | 'music_production_service'
2128
+ | 'voice_over_service'
2129
+ | 'event_photography'
2130
+ | 'drone_services'
2131
+ | 'commercial_photography'
2132
+ | 'portrait_photography_service'
2133
+ | 'real_estate_photography'
2134
+ | 'food_photography_service'
2135
+ | 'live_event_production'
2136
+ | 'podcast_production_service'
2137
+ | 'record_label'
2138
+ | 'book_publishing_house'
2139
+ | 'news_media_outlet'
2140
+ | 'radio_broadcasting'
2141
+ | 'tv_production_company'
2142
+ | 'film_studio'
2143
+ | 'magazine_publisher'
2144
+ | 'music_licensing_agency'
2145
+ | 'talent_management_agency'
2146
+ | 'advertising_network'
2147
+ | 'ad_tech_platform'
2148
+ | 'cleaning_service'
2149
+ | 'landscaping_service'
2150
+ | 'plumbing_service'
2151
+ | 'electrical_service'
2152
+ | 'hvac_service'
2153
+ | 'roofing_service'
2154
+ | 'painting_service'
2155
+ | 'moving_service'
2156
+ | 'handyman_service'
2157
+ | 'pest_control'
2158
+ | 'pool_service'
2159
+ | 'solar_installation'
2160
+ | 'home_renovation'
2161
+ | 'pressure_washing'
2162
+ | 'junk_removal'
2163
+ | 'garage_door_service'
2164
+ | 'fencing_service'
2165
+ | 'concrete_masonry'
2166
+ | 'tree_service'
2167
+ | 'window_cleaning'
2168
+ | 'gutter_service'
2169
+ | 'flooring_service'
2170
+ | 'cabinet_countertop'
2171
+ | 'home_inspection'
2172
+ | 'septic_service'
2173
+ | 'waterproofing_service'
2174
+ | 'insulation_service'
2175
+ | 'chimney_service'
2176
+ | 'locksmith_service'
2177
+ | 'glass_window_service'
2178
+ | 'epoxy_coating'
2179
+ | 'private_security_guard_service'
2180
+ | 'armored_car_transport'
2181
+ | 'executive_protection_bodyguard'
2182
+ | 'event_security_service'
2183
+ | 'alarm_system_installation'
2184
+ | 'cctv_installation'
2185
+ | 'private_investigation_agency'
2186
+ | 'background_check_provider'
2187
+ | 'locksmith_commercial'
2188
+ | 'bounty_hunter_bail_enforcement'
2189
+ | 'personal_styling'
2190
+ | 'personal_chef'
2191
+ | 'personal_assistant_service'
2192
+ | 'tutoring_service'
2193
+ | 'pet_services'
2194
+ | 'wedding_planning'
2195
+ | 'concierge_service'
2196
+ | 'personal_training_service'
2197
+ | 'nanny_service'
2198
+ | 'elder_care_service'
2199
+ | 'errand_service'
2200
+ | 'life_organization'
2201
+ | 'relocation_service'
2202
+ | 'adult_dating_services'
2203
+ | 'escort_services'
2204
+ | 'hotel_accommodation_bookings'
2205
+ | 'mail_order_spouse'
2206
+ | 'psychic_fortune_telling'
2207
+ | 'timeshare_sales'
2208
+ | 'freight_brokerage'
2209
+ | 'courier_service'
2210
+ | 'warehousing_service'
2211
+ | 'last_mile_delivery'
2212
+ | 'auto_transport'
2213
+ | 'international_shipping'
2214
+ | 'cold_chain_logistics'
2215
+ | 'commercial_airline_tickets'
2216
+ | 'cruise_line_bookings'
2217
+ | 'contract_manufacturing'
2218
+ | 'cnc_machining_service'
2219
+ | '3d_printing_service_commercial'
2220
+ | 'plastic_injection_molding'
2221
+ | 'metal_fabrication'
2222
+ | 'pcba_assembly'
2223
+ | 'chemical_manufacturing'
2224
+ | 'textile_manufacturing'
2225
+ | 'food_processing_facility'
2226
+ | 'packaging_manufacturing'
2227
+ | 'industrial_automation_integrator'
2228
+ | 'mining_and_extraction'
2229
+ | 'oil_and_gas_services'
2230
+ | 'renewable_energy_generation'
2231
+ | 'waste_management_recycling'
2232
+ | 'hazardous_waste_disposal'
2233
+ | 'aerospace_defense_contracting'
2234
+ | 'personal_training_studio'
2235
+ | 'nutrition_consulting'
2236
+ | 'mental_health_counseling'
2237
+ | 'physical_therapy_service'
2238
+ | 'occupational_therapy_service'
2239
+ | 'speech_therapy_service'
2240
+ | 'chiropractic_service'
2241
+ | 'acupuncture_service'
2242
+ | 'massage_therapy_service'
2243
+ | 'midwifery_doula'
2244
+ | 'lactation_consulting'
2245
+ | 'dietitian_service'
2246
+ | 'addiction_recovery_services'
2247
+ | 'dtc_lab_testing'
2248
+ | 'iv_therapy_infusion'
2249
+ | 'medspa_aesthetic_services'
2250
+ | 'prescription_delivery_services'
2251
+ | 'registered_dietitian_services'
2252
+ | 'unlicensed_therapy_counseling'
2253
+ | 'streetwear'
2254
+ | 'athleisure'
2255
+ | 'luxury_fashion'
2256
+ | 'kids_clothing'
2257
+ | 'custom_apparel'
2258
+ | 'workwear'
2259
+ | 'swimwear'
2260
+ | 'lingerie_intimates'
2261
+ | 'vintage_clothing'
2262
+ | 'plus_size_fashion'
2263
+ | 'maternity_clothing'
2264
+ | 'sleepwear_loungewear'
2265
+ | 'denim_brand'
2266
+ | 'outerwear_jackets'
2267
+ | 'socks_hosiery'
2268
+ | 'costumes_cosplay'
2269
+ | 'scrubs_medical_apparel'
2270
+ | 'dance_performance_wear'
2271
+ | 'hunting_camo_apparel'
2272
+ | 'casual_everyday_clothing'
2273
+ | 'protein_supplements'
2274
+ | 'vitamins_minerals'
2275
+ | 'pre_workout'
2276
+ | 'nootropics'
2277
+ | 'herbal_supplements'
2278
+ | 'weight_management_supplements'
2279
+ | 'gut_health'
2280
+ | 'cbd_products'
2281
+ | 'mushroom_supplements'
2282
+ | 'collagen_supplements'
2283
+ | 'testosterone_boosters'
2284
+ | 'sleep_supplements'
2285
+ | 'immune_support'
2286
+ | 'joint_bone_health'
2287
+ | 'greens_powder'
2288
+ | 'creatine_supplements'
2289
+ | 'electrolyte_hydration'
2290
+ | 'prenatal_supplements'
2291
+ | 'kids_supplements'
2292
+ | 'pet_supplements'
2293
+ | 'ayurvedic_supplements'
2294
+ | 'keto_supplements'
2295
+ | 'cannabis_thc_products'
2296
+ | 'cbd_hemp_products_compliant'
2297
+ | 'delta8_thc_products'
2298
+ | 'dietary_supplements'
2299
+ | 'drug_precursor_chemicals'
2300
+ | 'illegal_drugs'
2301
+ | 'kratom_kava_products'
2302
+ | 'medical_treatment_claims_product'
2303
+ | 'nutraceutical_products'
2304
+ | 'otc_medication_sales'
2305
+ | 'performance_enhancing_drugs'
2306
+ | 'research_chemicals_dangerous'
2307
+ | 'research_peptides'
2308
+ | 'sexual_enhancement_products'
2309
+ | 'tobacco_products'
2310
+ | 'unlicensed_rx_sales'
2311
+ | 'skincare'
2312
+ | 'haircare'
2313
+ | 'cosmetics_makeup'
2314
+ | 'mens_grooming'
2315
+ | 'fragrance'
2316
+ | 'oral_care'
2317
+ | 'sunscreen_spf'
2318
+ | 'hair_growth_products'
2319
+ | 'body_care'
2320
+ | 'deodorant'
2321
+ | 'lip_care'
2322
+ | 'acne_treatment'
2323
+ | 'men_skincare'
2324
+ | 'baby_skincare'
2325
+ | 'tattoo_aftercare'
2326
+ | 'intimate_care'
2327
+ | 'home_gym_equipment'
2328
+ | 'yoga_equipment'
2329
+ | 'combat_sports_gear'
2330
+ | 'outdoor_fitness_gear'
2331
+ | 'wearable_fitness'
2332
+ | 'recovery_equipment'
2333
+ | 'weightlifting_equipment'
2334
+ | 'cardio_equipment'
2335
+ | 'gymnastics_equipment'
2336
+ | 'swimming_gear'
2337
+ | 'jump_rope_equipment'
2338
+ | 'grip_strength_tools'
2339
+ | 'sauna_cold_plunge'
2340
+ | 'posture_correctors'
2341
+ | 'jewelry'
2342
+ | 'sunglasses_eyewear'
2343
+ | 'bags_wallets'
2344
+ | 'hats_headwear'
2345
+ | 'phone_accessories'
2346
+ | 'travel_accessories'
2347
+ | 'scarves_wraps'
2348
+ | 'belts'
2349
+ | 'hair_accessories'
2350
+ | 'tech_accessories'
2351
+ | 'keychains_charms'
2352
+ | 'custom_engraved_accessories'
2353
+ | 'cannabis_accessories_non_drug'
2354
+ | 'drug_paraphernalia'
2355
+ | 'high_value_goods_over_500'
2356
+ | 'precious_metals_stones'
2357
+ | 'replica_counterfeit_goods'
2358
+ | 'home_decor'
2359
+ | 'candles_scents'
2360
+ | 'kitchenware'
2361
+ | 'bedding_linens'
2362
+ | 'smart_home'
2363
+ | 'cleaning_products'
2364
+ | 'outdoor_furniture'
2365
+ | 'organization_storage'
2366
+ | 'wall_art_prints'
2367
+ | 'rugs_carpets'
2368
+ | 'lighting_fixtures'
2369
+ | 'planters_garden_decor'
2370
+ | 'bathroom_accessories'
2371
+ | 'luxury_home_goods'
2372
+ | 'seasonal_holiday_decor'
2373
+ | 'pet_home_products'
2374
+ | 'home_fragrance_diffusers'
2375
+ | 'hazardous_chemicals_b2c'
2376
+ | 'pre_orders_delayed_delivery'
2377
+ | 'audio_equipment'
2378
+ | 'camera_equipment'
2379
+ | 'gaming_hardware'
2380
+ | 'drones_robotics'
2381
+ | 'ev_accessories'
2382
+ | 'charging_power'
2383
+ | 'smart_wearables'
2384
+ | 'home_security_devices'
2385
+ | '3d_printers'
2386
+ | 'projectors_displays'
2387
+ | 'streaming_devices'
2388
+ | 'vr_headsets'
2389
+ | 'e_readers'
2390
+ | 'portable_tech'
2391
+ | 'hardware_wallets'
2392
+ | 'regulated_medical_devices'
2393
+ | 'signal_jamming_devices'
2394
+ | 'spy_cameras_hidden_recording'
2395
+ | 'specialty_coffee_tea'
2396
+ | 'health_food'
2397
+ | 'snacks_treats'
2398
+ | 'sauces_condiments'
2399
+ | 'alcohol_spirits'
2400
+ | 'meal_kits'
2401
+ | 'baked_goods'
2402
+ | 'beverages'
2403
+ | 'pet_food_treats'
2404
+ | 'protein_bars_snacks'
2405
+ | 'jerky_meat_snacks'
2406
+ | 'chocolate_confections'
2407
+ | 'honey_sweeteners'
2408
+ | 'olive_oil_vinegar'
2409
+ | 'hot_sauce'
2410
+ | 'dried_fruit_nuts'
2411
+ | 'baby_food'
2412
+ | 'plant_based_food'
2413
+ | 'gluten_free_food'
2414
+ | 'keto_food_products'
2415
+ | 'subscription_food_box'
2416
+ | 'kombucha_fermented'
2417
+ | 'alcohol_sales'
2418
+ | 'baby_products'
2419
+ | 'kids_toys'
2420
+ | 'kids_educational'
2421
+ | 'baby_clothing_accessories'
2422
+ | 'nursery_decor'
2423
+ | 'kids_outdoor_play'
2424
+ | 'kids_books'
2425
+ | 'baby_safety_products'
2426
+ | 'kids_arts_crafts'
2427
+ | 'camping_hiking'
2428
+ | 'fishing_gear'
2429
+ | 'hunting_gear'
2430
+ | 'cycling_gear'
2431
+ | 'water_sports_gear'
2432
+ | 'golf_equipment'
2433
+ | 'snow_sports_gear'
2434
+ | 'climbing_gear'
2435
+ | 'archery_equipment'
2436
+ | 'skateboarding_gear'
2437
+ | 'pickleball_equipment'
2438
+ | 'tennis_equipment'
2439
+ | 'equestrian_gear'
2440
+ | 'tactical_gear'
2441
+ | 'overlanding_gear'
2442
+ | 'explosives_fireworks'
2443
+ | 'firearms_sales'
2444
+ | 'self_defense_products'
2445
+ | 'weapon_components'
2446
+ | 'craft_kits'
2447
+ | 'sewing_textiles'
2448
+ | 'stationery'
2449
+ | 'scrapbooking_supplies'
2450
+ | 'beading_jewelry_supplies'
2451
+ | 'pottery_supplies'
2452
+ | 'printmaking_supplies'
2453
+ | 'car_accessories'
2454
+ | 'detailing_products'
2455
+ | 'motorcycle_gear'
2456
+ | 'truck_accessories'
2457
+ | 'off_road_parts'
2458
+ | 'car_audio_electronics'
2459
+ | 'performance_parts'
2460
+ | 'car_care_products'
2461
+ | 'ev_charging_accessories'
2462
+ | 'auto_repair_service'
2463
+ | 'auto_body_shop'
2464
+ | 'car_dealership'
2465
+ | 'car_wash'
2466
+ | 'tire_shop'
2467
+ | 'oil_change_shop'
2468
+ | 'auto_parts_store'
2469
+ | 'motorcycle_shop'
2470
+ | 'ev_charging_station'
2471
+ | 'transmission_shop'
2472
+ | 'muffler_exhaust_shop'
2473
+ | 'auto_glass_shop'
2474
+ | 'auto_upholstery_shop'
2475
+ | 'car_audio_shop'
2476
+ | 'smog_emissions_shop'
2477
+ | 'truck_repair_shop'
2478
+ | 'rv_repair_shop'
2479
+ | 'boat_repair_shop'
2480
+ | 'used_car_lot'
2481
+ | 'auto_auction'
2482
+ | 'dog_products'
2483
+ | 'cat_products'
2484
+ | 'aquarium_supplies'
2485
+ | 'bird_supplies'
2486
+ | 'reptile_supplies'
2487
+ | 'horse_supplies'
2488
+ | 'pet_apparel'
2489
+ | 'pet_tech'
2490
+ | 'pet_grooming_products'
2491
+ | 'hand_tools'
2492
+ | 'power_tools_and_accessories'
2493
+ | 'hardware_and_fasteners'
2494
+ | 'workshop_equipment_and_storage'
2495
+ | 'safety_and_work_gear'
2496
+ | 'painting_and_building_supplies'
2497
+ | 'office_supplies'
2498
+ | 'desk_accessories'
2499
+ | 'printing_supplies'
2500
+ | 'shipping_packaging'
2501
+ | 'reusable_products'
2502
+ | 'solar_powered_products'
2503
+ | 'handmade_goods_marketplace'
2504
+ | 'vintage_resale_marketplace'
2505
+ | 'electronics_marketplace'
2506
+ | 'auto_parts_marketplace'
2507
+ | 'luxury_goods_marketplace'
2508
+ | 'collectibles_marketplace'
2509
+ | 'wholesale_marketplace'
2510
+ | 'local_goods_marketplace'
2511
+ | 'sneaker_marketplace'
2512
+ | 'book_marketplace'
2513
+ | 'furniture_marketplace'
2514
+ | 'musical_instrument_marketplace'
2515
+ | 'art_marketplace'
2516
+ | 'ticket_marketplace'
2517
+ | 'industrial_equipment_marketplace'
2518
+ | 'craft_supply_marketplace'
2519
+ | 'baby_kids_marketplace'
2520
+ | 'outdoor_gear_marketplace'
2521
+ | 'pet_marketplace'
2522
+ | 'sustainable_goods_marketplace'
2523
+ | '3d_weapon_files'
2524
+ | 'cultural_artifacts_looted'
2525
+ | 'dropshipping_operations'
2526
+ | 'endangered_animal_products'
2527
+ | 'human_body_parts_tissue'
2528
+ | 'nft_marketplace'
2529
+ | 'penny_auction'
2530
+ | 'primary_event_ticketing'
2531
+ | 'freelancer_marketplace'
2532
+ | 'home_services_marketplace'
2533
+ | 'tutoring_marketplace'
2534
+ | 'legal_services_marketplace'
2535
+ | 'healthcare_marketplace'
2536
+ | 'wedding_services_marketplace'
2537
+ | 'creative_services_marketplace'
2538
+ | 'beauty_services_marketplace'
2539
+ | 'fitness_trainer_marketplace'
2540
+ | 'pet_services_marketplace'
2541
+ | 'childcare_marketplace'
2542
+ | 'elder_care_marketplace'
2543
+ | 'translation_marketplace'
2544
+ | 'coaching_marketplace'
2545
+ | 'therapy_marketplace'
2546
+ | 'photography_marketplace'
2547
+ | 'dj_entertainment_marketplace'
2548
+ | 'auto_services_marketplace'
2549
+ | 'freelance_marketplace_operator'
2550
+ | 'equipment_rental_marketplace'
2551
+ | 'vehicle_rental_marketplace'
2552
+ | 'space_rental_marketplace'
2553
+ | 'vacation_rental_marketplace'
2554
+ | 'clothing_rental_marketplace'
2555
+ | 'camera_gear_rental'
2556
+ | 'rv_camper_rental'
2557
+ | 'boat_rental_marketplace'
2558
+ | 'storage_rental_marketplace'
2559
+ | 'office_coworking_rental'
2560
+ | 'parking_rental_marketplace'
2561
+ | 'restaurant_marketplace'
2562
+ | 'grocery_marketplace'
2563
+ | 'catering_marketplace'
2564
+ | 'homemade_food_marketplace'
2565
+ | 'meal_prep_marketplace'
2566
+ | 'bakery_marketplace'
2567
+ | 'farm_produce_marketplace'
2568
+ | 'chef_booking_marketplace'
2569
+ | 'course_marketplace'
2570
+ | 'template_marketplace'
2571
+ | 'stock_media_marketplace'
2572
+ | 'music_beats_marketplace'
2573
+ | 'ebook_marketplace'
2574
+ | 'plugin_theme_marketplace'
2575
+ | '3d_model_marketplace'
2576
+ | 'prompt_marketplace'
2577
+ | 'code_snippet_marketplace'
2578
+ | 'affiliate_marketing_platform'
2579
+ | 'game_account_selling'
2580
+ | 'game_cheats_hacks'
2581
+ | 'pirated_digital_content'
2582
+ | 'unauthorized_ingame_currency'
2583
+ | 'weapon_blueprint_distribution'
2584
+ | 'saas_marketplace'
2585
+ | 'agency_marketplace'
2586
+ | 'manufacturing_marketplace'
2587
+ | 'logistics_marketplace'
2588
+ | 'commercial_real_estate_marketplace'
2589
+ | 'business_for_sale_marketplace'
2590
+ | 'food_delivery'
2591
+ | 'grocery_delivery'
2592
+ | 'package_delivery'
2593
+ | 'moving_labor'
2594
+ | 'alcohol_delivery'
2595
+ | 'pharmacy_delivery'
2596
+ | 'flower_delivery_gig'
2597
+ | 'furniture_delivery_gig'
2598
+ | 'catering_delivery'
2599
+ | 'rideshare'
2600
+ | 'chauffeur_service'
2601
+ | 'bike_scooter_rental'
2602
+ | 'boat_charter_gig'
2603
+ | 'moving_truck_rental_gig'
2604
+ | 'assembly_installation'
2605
+ | 'waiting_line_service'
2606
+ | 'personal_shopping'
2607
+ | 'grocery_shopping_gig'
2608
+ | 'gift_wrapping_gig'
2609
+ | 'notary_gig'
2610
+ | 'laundry_gig'
2611
+ | 'car_wash_gig'
2612
+ | 'cleaning_gig'
2613
+ | 'lawn_care_gig'
2614
+ | 'handyman_gig'
2615
+ | 'pet_care_gig'
2616
+ | 'childcare_gig'
2617
+ | 'elder_care_gig'
2618
+ | 'painting_gig'
2619
+ | 'snow_removal_gig'
2620
+ | 'pool_cleaning_gig'
2621
+ | 'organizing_gig'
2622
+ | 'pressure_washing_gig'
2623
+ | 'junk_removal_gig'
2624
+ | 'freelance_design_gig'
2625
+ | 'freelance_writing_gig'
2626
+ | 'freelance_dev_gig'
2627
+ | 'music_performance_gig'
2628
+ | 'event_staffing_gig'
2629
+ | 'model_talent_gig'
2630
+ | 'photography_gig'
2631
+ | 'videography_gig'
2632
+ | 'voiceover_gig'
2633
+ | 'illustration_gig'
2634
+ | 'social_media_gig'
2635
+ | 'dj_gig'
2636
+ | 'face_painting_gig'
2637
+ | 'clipping_gig'
2638
+ | 'consulting_gig'
2639
+ | 'accounting_gig'
2640
+ | 'legal_gig'
2641
+ | 'healthcare_gig'
2642
+ | 'teaching_gig'
2643
+ | 'translation_gig'
2644
+ | 'data_entry_gig'
2645
+ | 'research_gig'
2646
+ | 'virtual_assistant_gig'
2647
+ | 'sales_gig'
2648
+ | 'recruiting_gig'
2649
+ | 'mystery_shopping'
2650
+ | 'focus_group_gig'
2651
+ | 'product_testing_gig'
2652
+ | 'drone_pilot_gig'
2653
+ | 'fitness_instruction_gig'
2654
+ | 'tour_guide_gig'
2655
+ | 'forex_signals_group'
2656
+ | 'stock_signals_group'
2657
+ | 'crypto_signals_group'
2658
+ | 'options_alerts_group'
2659
+ | 'futures_signals_group'
2660
+ | 'trading_education_group'
2661
+ | 'investing_community'
2662
+ | 'prediction_markets_group'
2663
+ | 'nft_alpha_group'
2664
+ | 'penny_stock_group'
2665
+ | 'dividend_investing_group'
2666
+ | 'real_estate_investing_group'
2667
+ | 'prop_firm_group'
2668
+ | 'sports_picks_group'
2669
+ | 'dfs_group'
2670
+ | 'horse_racing_group'
2671
+ | 'esports_picks_group'
2672
+ | 'nfl_picks_group'
2673
+ | 'nba_picks_group'
2674
+ | 'soccer_picks_group'
2675
+ | 'mlb_picks_group'
2676
+ | 'mma_picks_group'
2677
+ | 'prop_bets_group'
2678
+ | 'fantasy_sports_free_to_play'
2679
+ | 'licensed_gambling_operations'
2680
+ | 'unlicensed_gambling'
2681
+ | 'ecommerce_community'
2682
+ | 'agency_community'
2683
+ | 'saas_community'
2684
+ | 'saas_marketing_community'
2685
+ | 'real_estate_community'
2686
+ | 'sales_community'
2687
+ | 'affiliate_community'
2688
+ | 'reselling_community'
2689
+ | 'amazon_seller_community'
2690
+ | 'dropshipping_community'
2691
+ | 'freelancer_community'
2692
+ | 'startup_founder_community'
2693
+ | 'ceo_executive_community'
2694
+ | 'women_business_community'
2695
+ | 'marketing_community'
2696
+ | 'ai_business_community'
2697
+ | 'content_business_community'
2698
+ | 'local_business_community'
2699
+ | 'private_equity_community'
2700
+ | 'wholesaling_community'
2701
+ | 'coaching_business_community'
2702
+ | 'make_money_online_community'
2703
+ | 'fitness_accountability'
2704
+ | 'nutrition_community'
2705
+ | 'weight_loss_group'
2706
+ | 'bodybuilding_community'
2707
+ | 'running_community'
2708
+ | 'martial_arts_community'
2709
+ | 'mental_health_group'
2710
+ | 'biohacking_community'
2711
+ | 'addiction_support_group'
2712
+ | 'yoga_community'
2713
+ | 'crossfit_community'
2714
+ | 'longevity_community'
2715
+ | 'womens_fitness_community'
2716
+ | 'postpartum_fitness_group'
2717
+ | 'chronic_illness_support'
2718
+ | 'skincare_community'
2719
+ | 'content_creator_community'
2720
+ | 'video_editing_community'
2721
+ | 'music_producer_community'
2722
+ | 'photography_community'
2723
+ | 'writing_community'
2724
+ | 'design_community'
2725
+ | 'youtube_creator_community'
2726
+ | 'tiktok_creator_community'
2727
+ | 'podcast_community'
2728
+ | 'filmmaker_community'
2729
+ | 'clipping_community'
2730
+ | 'youtube_automation_community'
2731
+ | 'developer_community'
2732
+ | 'ai_community'
2733
+ | 'cybersecurity_community'
2734
+ | 'no_code_community'
2735
+ | 'indie_hacker_community'
2736
+ | 'devops_community'
2737
+ | 'data_science_community'
2738
+ | 'product_community'
2739
+ | 'open_source_community'
2740
+ | 'dating_community'
2741
+ | 'personal_development_community'
2742
+ | 'spirituality_community'
2743
+ | 'parenting_community'
2744
+ | 'travel_community'
2745
+ | 'networking_community'
2746
+ | 'faith_community'
2747
+ | 'mens_community'
2748
+ | 'womens_community'
2749
+ | 'expat_community'
2750
+ | 'adult_community_nsfw'
2751
+ | 'hate_violence_communities'
2752
+ | 'personal_fundraising'
2753
+ | 'political_fundraising'
2754
+ | 'political_organizations'
2755
+ | 'pornographic_content'
2756
+ | 'registered_501c3'
2757
+ | 'religious_organization'
2758
+ | 'unregistered_charities'
2759
+ | 'gaming_community'
2760
+ | 'car_enthusiast_community'
2761
+ | 'sneakerhead_community'
2762
+ | 'watch_collector_community'
2763
+ | 'wine_enthusiast_community'
2764
+ | 'cigar_community'
2765
+ | 'cooking_community'
2766
+ | 'gardening_community'
2767
+ | 'fishing_community'
2768
+ | 'hunting_community'
2769
+ | 'diy_maker_community'
2770
+ | 'golf_community'
2771
+ | 'collectibles_community'
2772
+ | 'sweepstakes_raffles'
2773
+ | 'event_ticket_community'
2774
+ | 'forex_trading_bot'
2775
+ | 'stock_trading_platform'
2776
+ | 'crypto_trading_bot'
2777
+ | 'futures_trading_bot'
2778
+ | 'options_flow_tool'
2779
+ | 'portfolio_tracker'
2780
+ | 'financial_modeling_software'
2781
+ | 'accounting_software'
2782
+ | 'invoicing_software'
2783
+ | 'tax_software'
2784
+ | 'risk_management_software'
2785
+ | 'prop_trading_platform'
2786
+ | 'backtesting_software'
2787
+ | 'trading_indicators'
2788
+ | 'market_data_feed'
2789
+ | 'stock_research_tool'
2790
+ | 'banking_software'
2791
+ | 'lending_platform'
2792
+ | 'insurance_software'
2793
+ | 'crypto_trading_tools_software'
2794
+ | 'non_custodial_wallet_tools'
2795
+ | 'ai_outreach_tool'
2796
+ | 'ai_chatbot_software'
2797
+ | 'ai_writing_tool'
2798
+ | 'ai_image_generator'
2799
+ | 'ai_video_tool'
2800
+ | 'ai_voice_tool'
2801
+ | 'ai_data_analysis'
2802
+ | 'ai_code_assistant'
2803
+ | 'ai_meeting_assistant'
2804
+ | 'workflow_automation_software'
2805
+ | 'ai_sales_tool'
2806
+ | 'ai_customer_support'
2807
+ | 'ai_recruiting_tool'
2808
+ | 'ai_translation_tool'
2809
+ | 'ai_music_tool'
2810
+ | 'ai_presentation_tool'
2811
+ | 'ai_research_tool'
2812
+ | 'ai_seo_tool'
2813
+ | 'ai_social_media_tool'
2814
+ | 'ai_phone_agent'
2815
+ | 'ai_legal_tool'
2816
+ | 'ai_healthcare_tool'
2817
+ | 'llm_api_platform'
2818
+ | 'ai_agent_platform'
2819
+ | 'generative_ai_platform'
2820
+ | 'celebrity_impersonation'
2821
+ | 'deepfake_service'
2822
+ | 'crm_software'
2823
+ | 'email_marketing_software'
2824
+ | 'sms_marketing_software'
2825
+ | 'seo_tool'
2826
+ | 'landing_page_builder'
2827
+ | 'ad_management_tool'
2828
+ | 'affiliate_tracking'
2829
+ | 'review_management'
2830
+ | 'analytics_dashboard'
2831
+ | 'lead_gen_software'
2832
+ | 'link_in_bio_tool'
2833
+ | 'influencer_platform'
2834
+ | 'webinar_platform'
2835
+ | 'ab_testing_tool'
2836
+ | 'chatbot_marketing'
2837
+ | 'video_sales_tool'
2838
+ | 'proposal_software'
2839
+ | 'competitive_intelligence'
2840
+ | 'social_listening_tool'
2841
+ | 'whatsapp_marketing_tool'
2842
+ | 'ecommerce_platform'
2843
+ | 'product_research_tool'
2844
+ | 'price_tracker'
2845
+ | 'shipping_software'
2846
+ | 'print_on_demand_software'
2847
+ | 'marketplace_seller_tool'
2848
+ | 'resale_arbitrage_tool'
2849
+ | 'reseller_management_tool'
2850
+ | 'product_review_software'
2851
+ | 'returns_management'
2852
+ | 'product_feed_management'
2853
+ | 'checkout_optimization'
2854
+ | 'wholesale_ordering'
2855
+ | 'project_management_software'
2856
+ | 'team_communication'
2857
+ | 'video_conferencing'
2858
+ | 'document_collaboration'
2859
+ | 'time_tracking_software'
2860
+ | 'scheduling_software'
2861
+ | 'hr_software'
2862
+ | 'knowledge_base_software'
2863
+ | 'form_survey_builder'
2864
+ | 'note_taking_app'
2865
+ | 'task_management'
2866
+ | 'contract_management'
2867
+ | 'expense_management'
2868
+ | 'okr_goal_tracking'
2869
+ | 'employee_engagement'
2870
+ | 'onboarding_software'
2871
+ | 'applicant_tracking'
2872
+ | 'asset_management'
2873
+ | 'facility_management'
2874
+ | 'visitor_management'
2875
+ | 'api_management'
2876
+ | 'hosting_platform'
2877
+ | 'database_tool'
2878
+ | 'devops_tool'
2879
+ | 'monitoring_tool'
2880
+ | 'testing_tool'
2881
+ | 'code_editor'
2882
+ | 'no_code_builder'
2883
+ | 'cdn_platform'
2884
+ | 'error_tracking'
2885
+ | 'documentation_tool'
2886
+ | 'webhook_tool'
2887
+ | 'community_platform'
2888
+ | 'event_management_software'
2889
+ | 'webinar_software'
2890
+ | 'school_management'
2891
+ | 'newsletter_platform'
2892
+ | 'podcast_hosting'
2893
+ | 'forum_software'
2894
+ | 'virtual_classroom'
2895
+ | 'telehealth_platform'
2896
+ | 'ehr_software'
2897
+ | 'practice_management'
2898
+ | 'mental_health_app'
2899
+ | 'fitness_app'
2900
+ | 'nutrition_tracking_app'
2901
+ | 'wellness_app'
2902
+ | 'patient_engagement'
2903
+ | 'medical_billing_software'
2904
+ | 'pharmacy_management'
2905
+ | 'lab_management'
2906
+ | 'clinical_trial_software'
2907
+ | 'dental_software'
2908
+ | 'veterinary_software'
2909
+ | 'health_data_platform'
2910
+ | 'real_estate_crm'
2911
+ | 'property_management_software'
2912
+ | 'deal_analysis_tool'
2913
+ | 'mls_search_tool'
2914
+ | 'virtual_tour_software'
2915
+ | 'real_estate_marketing_software'
2916
+ | 'construction_management'
2917
+ | 'home_valuation_tool'
2918
+ | 'restaurant_pos'
2919
+ | 'salon_software'
2920
+ | 'gym_management_software'
2921
+ | 'auto_shop_software'
2922
+ | 'legal_practice_software'
2923
+ | 'church_management'
2924
+ | 'nonprofit_software'
2925
+ | 'logistics_software'
2926
+ | 'agriculture_software'
2927
+ | 'field_service_software'
2928
+ | 'marina_management'
2929
+ | 'hotel_pms'
2930
+ | 'childcare_management'
2931
+ | 'cleaning_business_software'
2932
+ | 'roofing_software'
2933
+ | 'landscaping_software'
2934
+ | 'pest_control_software'
2935
+ | 'tattoo_studio_software'
2936
+ | 'cannabis_software'
2937
+ | 'password_manager'
2938
+ | 'cybersecurity_software'
2939
+ | 'identity_verification'
2940
+ | 'backup_recovery'
2941
+ | 'endpoint_protection'
2942
+ | 'email_security'
2943
+ | 'access_management'
2944
+ | 'compliance_software'
2945
+ | 'data_privacy_tool'
2946
+ | 'vpn_services'
2947
+ | 'game_mod_tool'
2948
+ | 'streaming_tool'
2949
+ | 'game_server_hosting'
2950
+ | 'music_software'
2951
+ | 'video_editing_software'
2952
+ | 'photo_editing_software'
2953
+ | 'animation_software'
2954
+ | 'audio_editing_software'
2955
+ | 'screen_recording_software'
2956
+ | 'sports_betting_tool'
2957
+ | 'fantasy_sports_paid_entry'
2958
+ | 'iptv_pirated_streaming'
2959
+ | 'loot_boxes_gacha'
2960
+ | 'skill_contests_free_entry'
2961
+ | 'skill_contests_paid_entry'
2962
+ | 'business_phone_system'
2963
+ | 'customer_messaging'
2964
+ | 'digital_key_reselling'
2965
+ | 'streaming_account_reselling'
2966
+ | 'subscription_account_sharing'
2967
+ | 'account_generation_tool'
2968
+ | 'primary_care_telehealth'
2969
+ | 'urgent_care_telehealth'
2970
+ | 'pediatric_telehealth'
2971
+ | 'geriatric_telehealth'
2972
+ | 'family_medicine_telehealth'
2973
+ | 'internal_medicine_telehealth'
2974
+ | 'preventive_care_telehealth'
2975
+ | 'licensed_online_pharmacy'
2976
+ | 'telemedicine_practitioner_services'
2977
+ | 'dermatology_telehealth'
2978
+ | 'acne_telehealth'
2979
+ | 'psoriasis_eczema_telehealth'
2980
+ | 'skin_cancer_screening_tele'
2981
+ | 'cosmetic_dermatology_tele'
2982
+ | 'therapy_telehealth'
2983
+ | 'psychiatry_telehealth'
2984
+ | 'addiction_telehealth'
2985
+ | 'couples_therapy_telehealth'
2986
+ | 'child_psychology_telehealth'
2987
+ | 'eating_disorder_telehealth'
2988
+ | 'ptsd_trauma_telehealth'
2989
+ | 'adhd_telehealth'
2990
+ | 'anxiety_depression_telehealth'
2991
+ | 'ocd_telehealth'
2992
+ | 'grief_counseling_telehealth'
2993
+ | 'anger_management_telehealth'
2994
+ | 'family_therapy_telehealth'
2995
+ | 'group_therapy_telehealth'
2996
+ | 'licensed_psychedelic_therapy'
2997
+ | 'womens_health_telehealth'
2998
+ | 'mens_health_telehealth'
2999
+ | 'sexual_health_telehealth'
3000
+ | 'fertility_telehealth'
3001
+ | 'hormone_therapy_telehealth'
3002
+ | 'menopause_telehealth'
3003
+ | 'prenatal_telehealth'
3004
+ | 'postpartum_telehealth'
3005
+ | 'erectile_dysfunction_tele'
3006
+ | 'hair_loss_telehealth'
3007
+ | 'birth_control_telehealth'
3008
+ | 'sti_testing_telehealth'
3009
+ | 'dental_telehealth'
3010
+ | 'orthodontics_telehealth'
3011
+ | 'optometry_telehealth'
3012
+ | 'oral_surgery_consultation'
3013
+ | 'vision_therapy_telehealth'
3014
+ | 'cardiology_telehealth'
3015
+ | 'endocrinology_telehealth'
3016
+ | 'neurology_telehealth'
3017
+ | 'orthopedic_telehealth'
3018
+ | 'allergy_telehealth'
3019
+ | 'ent_telehealth'
3020
+ | 'rheumatology_telehealth'
3021
+ | 'gastroenterology_telehealth'
3022
+ | 'infectious_disease_telehealth'
3023
+ | 'pulmonology_telehealth'
3024
+ | 'nephrology_telehealth'
3025
+ | 'oncology_telehealth'
3026
+ | 'hematology_telehealth'
3027
+ | 'urology_telehealth'
3028
+ | 'weight_management_telehealth'
3029
+ | 'glp1_weight_loss_tele'
3030
+ | 'diabetes_management_tele'
3031
+ | 'metabolic_health_tele'
3032
+ | 'bariatric_telehealth'
3033
+ | 'physical_therapy_telehealth'
3034
+ | 'occupational_therapy_tele'
3035
+ | 'speech_therapy_telehealth'
3036
+ | 'pain_management_telehealth'
3037
+ | 'cardiac_rehab_telehealth'
3038
+ | 'pelvic_floor_telehealth'
3039
+ | 'vestibular_telehealth'
3040
+ | 'sleep_medicine_telehealth'
3041
+ | 'chronic_disease_management'
3042
+ | 'chronic_pain_telehealth'
3043
+ | 'migraine_telehealth'
3044
+ | 'asthma_copd_telehealth'
3045
+ | 'nutrition_telehealth'
3046
+ | 'naturopathic_telehealth'
3047
+ | 'functional_medicine_telehealth'
3048
+ | 'acupuncture_telehealth'
3049
+ | 'health_coaching_telehealth'
3050
+ | 'integrative_medicine_tele'
3051
+ | 'ayurvedic_telehealth'
3052
+ | 'genetic_counseling_telehealth'
3053
+ | 'pharmacogenomics_tele'
3054
+ | 'rare_disease_telehealth'
3055
+ | 'second_opinion_telehealth'
3056
+ | 'vet_telehealth'
3057
+ | 'pet_behavior_telehealth'
3058
+ | 'exotic_pet_telehealth'
3059
+ | 'equine_telehealth'
3060
+ | 'veterinary_services'
3061
+ | 'class_action_settlement'
3062
+ | 'mastermind_event'
3063
+ | 'webinar_event'
3064
+ | 'virtual_summit'
3065
+ | 'bootcamp_event'
3066
+ | 'workshop_seminar'
3067
+ | 'hackathon'
3068
+ | 'corporate_training_event'
3069
+ | 'training_certification_event'
3070
+ | 'convention_expo'
3071
+ | 'conference_summit'
3072
+ | 'industry_awards_event'
3073
+ | 'product_launch_event'
3074
+ | 'investor_demo_day'
3075
+ | 'panel_discussion_event'
3076
+ | 'pitch_competition'
3077
+ | 'meetup_event'
3078
+ | 'dinner_event'
3079
+ | 'alumni_event'
3080
+ | 'community_gathering'
3081
+ | 'singles_event'
3082
+ | 'professional_happy_hour'
3083
+ | 'women_networking_event'
3084
+ | 'founders_dinner'
3085
+ | 'industry_mixer'
3086
+ | 'concert_event'
3087
+ | 'comedy_show'
3088
+ | 'theater_performance'
3089
+ | 'film_screening'
3090
+ | 'music_festival'
3091
+ | 'cultural_festival'
3092
+ | 'fashion_show'
3093
+ | 'drag_show'
3094
+ | 'magic_show'
3095
+ | 'dance_performance'
3096
+ | 'poetry_spoken_word'
3097
+ | 'art_exhibition'
3098
+ | 'party_event'
3099
+ | 'trivia_night'
3100
+ | 'wine_tasting_event'
3101
+ | 'beer_festival'
3102
+ | 'car_show'
3103
+ | 'food_festival'
3104
+ | 'fitness_challenge_event'
3105
+ | 'marathon_race'
3106
+ | 'tournament_event'
3107
+ | 'fight_event'
3108
+ | 'yoga_retreat_event'
3109
+ | 'outdoor_adventure_event'
3110
+ | 'esports_tournament'
3111
+ | 'obstacle_course_race'
3112
+ | 'cycling_event'
3113
+ | 'swim_meet'
3114
+ | 'golf_tournament'
3115
+ | 'pickleball_tournament'
3116
+ | 'crossfit_competition'
3117
+ | 'martial_arts_tournament'
3118
+ | 'surfing_competition'
3119
+ | 'wellness_retreat'
3120
+ | 'spiritual_retreat'
3121
+ | 'couples_retreat'
3122
+ | 'plant_medicine_retreat'
3123
+ | 'luxury_experience_event'
3124
+ | 'detox_retreat'
3125
+ | 'silent_retreat'
3126
+ | 'creative_retreat'
3127
+ | 'leadership_retreat'
3128
+ | 'mens_retreat'
3129
+ | 'womens_retreat'
3130
+ | 'digital_detox_retreat'
3131
+ | 'fundraiser_event'
3132
+ | 'awareness_event'
3133
+ | 'volunteer_event'
3134
+ | 'charity_auction'
3135
+ | 'benefit_concert'
3136
+ | 'charity_run_walk'
3137
+ | 'environmental_cleanup'
3138
+ | 'family_festival'
3139
+ | 'kids_event'
3140
+ | 'holiday_event'
3141
+ | 'farmers_market_event'
3142
+ | 'block_party'
3143
+ | 'graduation_ceremony'
3144
+ | 'memorial_event'
3145
+ | 'stock_market_newsletter'
3146
+ | 'crypto_newsletter'
3147
+ | 'personal_finance_newsletter'
3148
+ | 'real_estate_newsletter'
3149
+ | 'fintech_newsletter'
3150
+ | 'venture_capital_newsletter'
3151
+ | 'options_trading_newsletter'
3152
+ | 'forex_newsletter'
3153
+ | 'macro_economics_newsletter'
3154
+ | 'alternative_investing_newsletter'
3155
+ | 'tax_strategy_newsletter'
3156
+ | 'ai_newsletter'
3157
+ | 'tech_industry_newsletter'
3158
+ | 'cybersecurity_newsletter'
3159
+ | 'developer_newsletter'
3160
+ | 'product_newsletter'
3161
+ | 'devops_newsletter'
3162
+ | 'open_source_newsletter'
3163
+ | 'robotics_newsletter'
3164
+ | 'climate_tech_newsletter'
3165
+ | 'travel_newsletter'
3166
+ | 'fashion_newsletter'
3167
+ | 'parenting_newsletter'
3168
+ | 'sports_newsletter'
3169
+ | 'gaming_newsletter'
3170
+ | 'music_entertainment_newsletter'
3171
+ | 'book_reading_newsletter'
3172
+ | 'dating_relationships_newsletter'
3173
+ | 'home_design_newsletter'
3174
+ | 'pet_newsletter'
3175
+ | 'wine_spirits_newsletter'
3176
+ | 'automotive_newsletter'
3177
+ | 'political_newsletter'
3178
+ | 'geopolitics_newsletter'
3179
+ | 'media_journalism_newsletter'
3180
+ | 'defense_security_newsletter'
3181
+ | 'legal_policy_newsletter'
3182
+ | 'design_newsletter'
3183
+ | 'education_newsletter'
3184
+ | 'science_newsletter'
3185
+ | 'philosophy_newsletter'
3186
+ | 'sustainability_newsletter'
3187
+ | 'architecture_newsletter'
3188
+ | 'history_newsletter'
3189
+ | 'psychology_newsletter'
3190
+ | 'career_newsletter'
3191
+ | 'spirituality_newsletter'
3192
+ | 'self_improvement_newsletter'
3193
+ | 'productivity_newsletter'
3194
+ | 'faith_newsletter'
3195
+ | 'gym_facility'
3196
+ | 'crossfit_box'
3197
+ | 'yoga_studio'
3198
+ | 'pilates_studio'
3199
+ | 'martial_arts_gym'
3200
+ | 'boxing_gym'
3201
+ | 'climbing_gym'
3202
+ | 'dance_studio'
3203
+ | 'swimming_pool'
3204
+ | 'sports_facility'
3205
+ | 'golf_course'
3206
+ | 'bowling_alley'
3207
+ | 'skating_rink'
3208
+ | 'trampoline_park'
3209
+ | 'tennis_club'
3210
+ | 'pickleball_facility'
3211
+ | 'gymnastics_center'
3212
+ | 'spin_studio'
3213
+ | 'barre_studio'
3214
+ | 'personal_training_studio_bm'
3215
+ | 'recovery_studio'
3216
+ | 'indoor_soccer'
3217
+ | 'batting_cage'
3218
+ | 'shooting_range'
3219
+ | 'archery_range'
3220
+ | 'equestrian_center'
3221
+ | 'fine_dining'
3222
+ | 'fast_casual_restaurant'
3223
+ | 'steakhouse'
3224
+ | 'seafood_restaurant'
3225
+ | 'pizza_shop'
3226
+ | 'sushi_restaurant'
3227
+ | 'deli_sandwich_shop'
3228
+ | 'bbq_restaurant'
3229
+ | 'mexican_restaurant'
3230
+ | 'italian_restaurant'
3231
+ | 'chinese_restaurant'
3232
+ | 'indian_restaurant'
3233
+ | 'thai_restaurant'
3234
+ | 'korean_restaurant'
3235
+ | 'mediterranean_restaurant'
3236
+ | 'vegan_vegetarian_restaurant'
3237
+ | 'brunch_restaurant'
3238
+ | 'ramen_noodle_shop'
3239
+ | 'poke_bowl_shop'
3240
+ | 'ethnic_restaurant'
3241
+ | 'coffee_shop_cafe'
3242
+ | 'bakery'
3243
+ | 'juice_smoothie_bar'
3244
+ | 'ice_cream_shop'
3245
+ | 'donut_shop'
3246
+ | 'bubble_tea_shop'
3247
+ | 'food_truck'
3248
+ | 'fast_food'
3249
+ | 'ghost_kitchen'
3250
+ | 'food_hall_vendor'
3251
+ | 'catering_kitchen'
3252
+ | 'butcher_shop'
3253
+ | 'cheese_shop'
3254
+ | 'farmers_market_stall'
3255
+ | 'bar_lounge'
3256
+ | 'brewery_taproom'
3257
+ | 'winery_tasting'
3258
+ | 'wine_bar'
3259
+ | 'cocktail_bar'
3260
+ | 'sports_bar'
3261
+ | 'hookah_lounge'
3262
+ | 'distillery'
3263
+ | 'commercial_farming'
3264
+ | 'livestock_ranching'
3265
+ | 'hydroponic_vertical_farming'
3266
+ | 'forestry_logging'
3267
+ | 'aquaculture_fisheries'
3268
+ | 'vineyard_winery_production'
3269
+ | 'cannabis_cultivation'
3270
+ | 'hemp_farming'
3271
+ | 'grain_production'
3272
+ | 'agricultural_cooperative'
3273
+ | 'fertilizer_pesticide_sales'
3274
+ | 'farm_equipment_sales'
3275
+ | 'boutique_store'
3276
+ | 'clothing_store'
3277
+ | 'shoe_store'
3278
+ | 'jewelry_store'
3279
+ | 'electronics_store'
3280
+ | 'bookstore'
3281
+ | 'pet_store'
3282
+ | 'toy_store'
3283
+ | 'sporting_goods_store'
3284
+ | 'thrift_store'
3285
+ | 'smoke_shop'
3286
+ | 'cannabis_dispensary'
3287
+ | 'convenience_store'
3288
+ | 'grocery_store'
3289
+ | 'liquor_store'
3290
+ | 'florist'
3291
+ | 'gift_shop'
3292
+ | 'furniture_store'
3293
+ | 'home_improvement_store'
3294
+ | 'art_gallery_retail'
3295
+ | 'music_instrument_store'
3296
+ | 'outdoor_recreation_store'
3297
+ | 'phone_repair_store'
3298
+ | 'watch_store'
3299
+ | 'bridal_shop'
3300
+ | 'maternity_store'
3301
+ | 'kids_store'
3302
+ | 'sneaker_store'
3303
+ | 'vintage_store'
3304
+ | 'comic_book_store'
3305
+ | 'record_store'
3306
+ | 'craft_supply_store'
3307
+ | 'fabric_store'
3308
+ | 'health_food_store'
3309
+ | 'vitamin_supplement_store'
3310
+ | 'optical_store'
3311
+ | 'mattress_store'
3312
+ | 'appliance_store'
3313
+ | 'kitchen_bath_store'
3314
+ | 'tile_flooring_store'
3315
+ | 'paint_store'
3316
+ | 'garden_center'
3317
+ | 'gun_store'
3318
+ | 'pawn_shop'
3319
+ | 'dollar_store'
3320
+ | 'hair_salon'
3321
+ | 'nail_salon'
3322
+ | 'day_spa'
3323
+ | 'med_spa'
3324
+ | 'massage_studio'
3325
+ | 'tattoo_parlor'
3326
+ | 'tanning_salon'
3327
+ | 'beauty_supply_store'
3328
+ | 'lash_brow_studio'
3329
+ | 'waxing_studio'
3330
+ | 'sauna_bathhouse'
3331
+ | 'cryotherapy_studio'
3332
+ | 'float_sensory_studio'
3333
+ | 'iv_therapy_lounge'
3334
+ | 'teeth_whitening_studio'
3335
+ | 'microblading_studio'
3336
+ | 'spray_tan_studio'
3337
+ | 'blowout_bar'
3338
+ | 'mens_barbershop'
3339
+ | 'kids_salon'
3340
+ | 'medical_office'
3341
+ | 'dental_office'
3342
+ | 'chiropractic_office'
3343
+ | 'physical_therapy_clinic'
3344
+ | 'optometry_office'
3345
+ | 'dermatology_clinic'
3346
+ | 'urgent_care_clinic'
3347
+ | 'pharmacy'
3348
+ | 'veterinary_clinic'
3349
+ | 'mental_health_clinic'
3350
+ | 'fertility_clinic'
3351
+ | 'acupuncture_clinic'
3352
+ | 'hearing_aid_center'
3353
+ | 'orthopedic_clinic'
3354
+ | 'pediatric_clinic'
3355
+ | 'cosmetic_surgery_center'
3356
+ | 'allergy_clinic'
3357
+ | 'pain_management_clinic'
3358
+ | 'dialysis_center'
3359
+ | 'imaging_center'
3360
+ | 'lab_testing_center'
3361
+ | 'sleep_clinic'
3362
+ | 'weight_loss_clinic'
3363
+ | 'hormone_therapy_clinic'
3364
+ | 'addiction_treatment_center'
3365
+ | 'rehabilitation_center'
3366
+ | 'occupational_therapy_clinic'
3367
+ | 'speech_therapy_clinic'
3368
+ | 'wound_care_center'
3369
+ | 'funeral_home_mortuary'
3370
+ | 'crematory_service'
3371
+ | 'cemetery_memorial_park'
3372
+ | 'casket_urn_retailer'
3373
+ | 'pet_cremation_service'
3374
+ | 'biohazard_cleanup'
3375
+ | 'estate_liquidation'
3376
+ | 'hotel'
3377
+ | 'motel'
3378
+ | 'boutique_hotel'
3379
+ | 'bed_and_breakfast'
3380
+ | 'hostel'
3381
+ | 'resort'
3382
+ | 'campground_rv'
3383
+ | 'vacation_rental_property'
3384
+ | 'extended_stay'
3385
+ | 'glamping_site'
3386
+ | 'cabin_rental'
3387
+ | 'eco_lodge'
3388
+ | 'retreat_center'
3389
+ | 'tutoring_center'
3390
+ | 'daycare_center'
3391
+ | 'preschool'
3392
+ | 'learning_center'
3393
+ | 'music_school'
3394
+ | 'art_school'
3395
+ | 'driving_school'
3396
+ | 'language_school'
3397
+ | 'trade_school'
3398
+ | 'coding_bootcamp_location'
3399
+ | 'montessori_school'
3400
+ | 'after_school_program'
3401
+ | 'swim_school'
3402
+ | 'cooking_school'
3403
+ | 'test_prep_center'
3404
+ | 'special_needs_center'
3405
+ | 'adult_education_center'
3406
+ | 'flight_school'
3407
+ | 'cosmetology_school'
3408
+ | 'movie_theater'
3409
+ | 'escape_room'
3410
+ | 'arcade'
3411
+ | 'mini_golf'
3412
+ | 'laser_tag'
3413
+ | 'go_kart'
3414
+ | 'amusement_park'
3415
+ | 'museum'
3416
+ | 'zoo_aquarium'
3417
+ | 'theater_venue'
3418
+ | 'nightclub'
3419
+ | 'karaoke_bar'
3420
+ | 'comedy_club'
3421
+ | 'live_music_venue'
3422
+ | 'axe_throwing'
3423
+ | 'virtual_reality_arcade'
3424
+ | 'board_game_cafe'
3425
+ | 'cat_cafe'
3426
+ | 'haunted_house'
3427
+ | 'water_park'
3428
+ | 'indoor_playground'
3429
+ | 'concert_venue'
3430
+ | 'drive_in_theater'
3431
+ | 'billiards_hall'
3432
+ | 'dart_bar'
3433
+ | 'indoor_skydiving'
3434
+ | 'law_office'
3435
+ | 'real_estate_office'
3436
+ | 'insurance_office'
3437
+ | 'accounting_office'
3438
+ | 'bank_credit_union'
3439
+ | 'printing_shop'
3440
+ | 'shipping_center'
3441
+ | 'dry_cleaner'
3442
+ | 'laundromat'
3443
+ | 'storage_facility'
3444
+ | 'coworking_space'
3445
+ | 'check_cashing'
3446
+ | 'title_company'
3447
+ | 'travel_agency_storefront'
3448
+ | 'staffing_office'
3449
+ | 'financial_advisor_office'
3450
+ | 'immigration_office'
3451
+ | 'bail_bonds_office'
3452
+ | 'pet_grooming'
3453
+ | 'dog_daycare'
3454
+ | 'pet_boarding'
3455
+ | 'dog_training_facility'
3456
+ | 'pet_spa'
3457
+ | 'aquatic_pet_store'
3458
+ | 'pet_bakery'
3459
+ | 'pet_photography_studio'
3460
+ | 'plumbing_showroom'
3461
+ | 'hvac_showroom'
3462
+ | 'solar_showroom'
3463
+ | 'kitchen_design_showroom'
3464
+ | 'bath_design_showroom'
3465
+ | 'window_door_showroom'
3466
+ | 'pool_spa_showroom'
3467
+ | 'fireplace_showroom'
3468
+ | 'countertop_showroom'
3469
+ | 'nonprofit_organization'
3470
+ | 'charity_foundation'
3471
+ | 'political_campaign'
3472
+ | 'community_organization'
3473
+ | 'environmental_nonprofit'
3474
+ | 'education_nonprofit'
3475
+ | 'health_nonprofit'
3476
+ | 'animal_welfare_nonprofit'
3477
+ | 'arts_culture_nonprofit'
3478
+ | 'social_justice_nonprofit'
3479
+ | 'veterans_nonprofit'
3480
+ | 'youth_nonprofit'
3481
+ | 'disaster_relief_nonprofit'
3482
+ | 'food_bank'
3483
+ | 'housing_nonprofit'
3484
+ | 'government_agency'
3485
+ | 'public_utility'
3486
+ | 'public_library'
3487
+ | 'public_school'
3488
+ | 'municipal_service'
3489
+ | 'military_installation'
3490
+ | 'embassy_consulate'
3491
+ | 'niche_service'
3492
+ | 'niche_product'
3493
+ | 'hybrid_business'
3494
+ | 'other_general'
3495
+ | 'holding_company'
3496
+ | 'family_office'
3497
+ | 'cooperative'
3498
+ | 'social_enterprise'
3499
+ | 'incubator_accelerator'
3500
+ | 'coworking_community'
3501
+ | 'media_company'
3502
+ | 'research_lab';
1561
3503
 
1562
3504
  /**
1563
- * A statement that defines an amount due by a customer.
3505
+ * An invoice represents an itemized bill sent by a company to a customer for a
3506
+ * specific product and plan, tracking the amount owed, due date, and payment
3507
+ * status.
1564
3508
  */
1565
3509
  export interface Invoice {
1566
3510
  /**
@@ -1574,45 +3518,48 @@ export interface Invoice {
1574
3518
  created_at: string;
1575
3519
 
1576
3520
  /**
1577
- * The plan that the invoice was created for.
3521
+ * The plan that this invoice charges for.
1578
3522
  */
1579
3523
  current_plan: Invoice.CurrentPlan;
1580
3524
 
1581
3525
  /**
1582
- * The date the invoice is due.
3526
+ * The deadline by which payment is expected. Null if the invoice is collected
3527
+ * automatically.
1583
3528
  */
1584
3529
  due_date: string | null;
1585
3530
 
1586
3531
  /**
1587
- * The email address that the invoice was created for.
3532
+ * The email address of the customer this invoice is addressed to. Null if no email
3533
+ * is on file.
1588
3534
  */
1589
3535
  email_address: string | null;
1590
3536
 
1591
3537
  /**
1592
- * A signed token that allows fetching the invoice data publically without being
1593
- * authenticated.
3538
+ * A signed token that allows fetching invoice data publicly without
3539
+ * authentication.
1594
3540
  */
1595
3541
  fetch_invoice_token: string;
1596
3542
 
1597
3543
  /**
1598
- * The number of the invoice.
3544
+ * The sequential invoice number for display purposes.
1599
3545
  */
1600
3546
  number: string;
1601
3547
 
1602
3548
  /**
1603
- * The status of the invoice.
3549
+ * The current payment status of the invoice, such as draft, open, paid, or void.
1604
3550
  */
1605
3551
  status: InvoiceStatus;
1606
3552
 
1607
3553
  /**
1608
- * The user that the invoice was created for.
3554
+ * The user this invoice is addressed to. Null if the user account has been
3555
+ * removed.
1609
3556
  */
1610
3557
  user: Invoice.User | null;
1611
3558
  }
1612
3559
 
1613
3560
  export namespace Invoice {
1614
3561
  /**
1615
- * The plan that the invoice was created for.
3562
+ * The plan that this invoice charges for.
1616
3563
  */
1617
3564
  export interface CurrentPlan {
1618
3565
  /**
@@ -1621,7 +3568,8 @@ export namespace Invoice {
1621
3568
  id: string;
1622
3569
 
1623
3570
  /**
1624
- * The respective currency identifier for the plan.
3571
+ * The currency used for all prices on this plan (e.g., 'usd', 'eur'). All monetary
3572
+ * amounts on the plan are denominated in this currency.
1625
3573
  */
1626
3574
  currency: Shared.Currency;
1627
3575
 
@@ -1632,7 +3580,8 @@ export namespace Invoice {
1632
3580
  }
1633
3581
 
1634
3582
  /**
1635
- * The user that the invoice was created for.
3583
+ * The user this invoice is addressed to. Null if the user account has been
3584
+ * removed.
1636
3585
  */
1637
3586
  export interface User {
1638
3587
  /**
@@ -1641,19 +3590,21 @@ export namespace Invoice {
1641
3590
  id: string;
1642
3591
 
1643
3592
  /**
1644
- * The name of the user from their Whop account.
3593
+ * The user's display name shown on their public profile.
1645
3594
  */
1646
3595
  name: string | null;
1647
3596
 
1648
3597
  /**
1649
- * The username of the user from their Whop account.
3598
+ * The user's unique username shown on their public profile.
1650
3599
  */
1651
3600
  username: string;
1652
3601
  }
1653
3602
  }
1654
3603
 
1655
3604
  /**
1656
- * A statement that defines an amount due by a customer.
3605
+ * An invoice represents an itemized bill sent by a company to a customer for a
3606
+ * specific product and plan, tracking the amount owed, due date, and payment
3607
+ * status.
1657
3608
  */
1658
3609
  export interface InvoiceListItem {
1659
3610
  /**
@@ -1667,45 +3618,48 @@ export interface InvoiceListItem {
1667
3618
  created_at: string;
1668
3619
 
1669
3620
  /**
1670
- * The plan that the invoice was created for.
3621
+ * The plan that this invoice charges for.
1671
3622
  */
1672
3623
  current_plan: InvoiceListItem.CurrentPlan;
1673
3624
 
1674
3625
  /**
1675
- * The date the invoice is due.
3626
+ * The deadline by which payment is expected. Null if the invoice is collected
3627
+ * automatically.
1676
3628
  */
1677
3629
  due_date: string | null;
1678
3630
 
1679
3631
  /**
1680
- * The email address that the invoice was created for.
3632
+ * The email address of the customer this invoice is addressed to. Null if no email
3633
+ * is on file.
1681
3634
  */
1682
3635
  email_address: string | null;
1683
3636
 
1684
3637
  /**
1685
- * A signed token that allows fetching the invoice data publically without being
1686
- * authenticated.
3638
+ * A signed token that allows fetching invoice data publicly without
3639
+ * authentication.
1687
3640
  */
1688
3641
  fetch_invoice_token: string;
1689
3642
 
1690
3643
  /**
1691
- * The number of the invoice.
3644
+ * The sequential invoice number for display purposes.
1692
3645
  */
1693
3646
  number: string;
1694
3647
 
1695
3648
  /**
1696
- * The status of the invoice.
3649
+ * The current payment status of the invoice, such as draft, open, paid, or void.
1697
3650
  */
1698
3651
  status: InvoiceStatus;
1699
3652
 
1700
3653
  /**
1701
- * The user that the invoice was created for.
3654
+ * The user this invoice is addressed to. Null if the user account has been
3655
+ * removed.
1702
3656
  */
1703
3657
  user: InvoiceListItem.User | null;
1704
3658
  }
1705
3659
 
1706
3660
  export namespace InvoiceListItem {
1707
3661
  /**
1708
- * The plan that the invoice was created for.
3662
+ * The plan that this invoice charges for.
1709
3663
  */
1710
3664
  export interface CurrentPlan {
1711
3665
  /**
@@ -1714,7 +3668,8 @@ export namespace InvoiceListItem {
1714
3668
  id: string;
1715
3669
 
1716
3670
  /**
1717
- * The respective currency identifier for the plan.
3671
+ * The currency used for all prices on this plan (e.g., 'usd', 'eur'). All monetary
3672
+ * amounts on the plan are denominated in this currency.
1718
3673
  */
1719
3674
  currency: Shared.Currency;
1720
3675
 
@@ -1725,7 +3680,8 @@ export namespace InvoiceListItem {
1725
3680
  }
1726
3681
 
1727
3682
  /**
1728
- * The user that the invoice was created for.
3683
+ * The user this invoice is addressed to. Null if the user account has been
3684
+ * removed.
1729
3685
  */
1730
3686
  export interface User {
1731
3687
  /**
@@ -1734,12 +3690,12 @@ export namespace InvoiceListItem {
1734
3690
  id: string;
1735
3691
 
1736
3692
  /**
1737
- * The name of the user from their Whop account.
3693
+ * The user's display name shown on their public profile.
1738
3694
  */
1739
3695
  name: string | null;
1740
3696
 
1741
3697
  /**
1742
- * The username of the user from their Whop account.
3698
+ * The user's unique username shown on their public profile.
1743
3699
  */
1744
3700
  username: string;
1745
3701
  }
@@ -1748,7 +3704,7 @@ export namespace InvoiceListItem {
1748
3704
  /**
1749
3705
  * The different statuses an invoice can be in
1750
3706
  */
1751
- export type InvoiceStatus = 'open' | 'paid' | 'past_due' | 'void';
3707
+ export type InvoiceStatus = 'draft' | 'open' | 'paid' | 'past_due' | 'void';
1752
3708
 
1753
3709
  /**
1754
3710
  * The different most recent actions a member can have.
@@ -1785,8 +3741,8 @@ export interface Membership {
1785
3741
  id: string;
1786
3742
 
1787
3743
  /**
1788
- * Whether this Membership is set to cancel at the end of the current billing
1789
- * cycle. Only applies for memberships that have a renewal plan.
3744
+ * Whether this membership is set to cancel at the end of the current billing
3745
+ * cycle. Only applies to memberships with a recurring plan.
1790
3746
  */
1791
3747
  cancel_at_period_end: boolean;
1792
3748
 
@@ -1797,17 +3753,19 @@ export interface Membership {
1797
3753
  cancel_option: MembershipsAPI.CancelOptions | null;
1798
3754
 
1799
3755
  /**
1800
- * The epoch timestamp of when the customer initiated a cancellation.
3756
+ * The time the customer initiated cancellation of this membership. As a Unix
3757
+ * timestamp. Null if the membership has not been canceled.
1801
3758
  */
1802
3759
  canceled_at: string | null;
1803
3760
 
1804
3761
  /**
1805
- * The reason that the member canceled the membership (filled out by the member).
3762
+ * Free-text explanation provided by the customer when canceling. Null if the
3763
+ * customer did not provide a reason.
1806
3764
  */
1807
3765
  cancellation_reason: string | null;
1808
3766
 
1809
3767
  /**
1810
- * The Company this Membership belongs to.
3768
+ * The company this membership belongs to.
1811
3769
  */
1812
3770
  company: Membership.Company;
1813
3771
 
@@ -1822,28 +3780,32 @@ export interface Membership {
1822
3780
  currency: Currency | null;
1823
3781
 
1824
3782
  /**
1825
- * The responses to custom checkout questions for this membership.
3783
+ * The customer's responses to custom checkout questions configured on the product
3784
+ * at the time of purchase.
1826
3785
  */
1827
3786
  custom_field_responses: Array<Membership.CustomFieldResponse>;
1828
3787
 
1829
3788
  /**
1830
- * When the member joined the company.
3789
+ * The time the user first joined the company associated with this membership. As a
3790
+ * Unix timestamp. Null if the member record does not exist.
1831
3791
  */
1832
3792
  joined_at: string | null;
1833
3793
 
1834
3794
  /**
1835
- * The license key for this Membership. This is only present if the membership
1836
- * grants access to an instance of the Whop Software app.
3795
+ * The software license key associated with this membership. Only present if the
3796
+ * product includes a Whop Software Licensing experience. Null otherwise.
1837
3797
  */
1838
3798
  license_key: string | null;
1839
3799
 
1840
3800
  /**
1841
- * The URL for the customer to manage their membership.
3801
+ * The URL where the customer can view and manage this membership, including
3802
+ * cancellation and plan changes. Null if no member record exists.
1842
3803
  */
1843
3804
  manage_url: string | null;
1844
3805
 
1845
3806
  /**
1846
- * The Member that this Membership belongs to.
3807
+ * The member record linking the user to the company for this membership. Null if
3808
+ * the member record has not been created yet.
1847
3809
  */
1848
3810
  member: Membership.Member | null;
1849
3811
 
@@ -1854,39 +3816,42 @@ export interface Membership {
1854
3816
  metadata: { [key: string]: unknown };
1855
3817
 
1856
3818
  /**
1857
- * Whether the membership's payments are currently paused.
3819
+ * Whether recurring payment collection for this membership is temporarily paused
3820
+ * by the company.
1858
3821
  */
1859
3822
  payment_collection_paused: boolean;
1860
3823
 
1861
3824
  /**
1862
- * The Plan this Membership is for.
3825
+ * The plan the customer purchased to create this membership.
1863
3826
  */
1864
3827
  plan: Membership.Plan;
1865
3828
 
1866
3829
  /**
1867
- * The Product this Membership grants access to.
3830
+ * The product this membership grants access to.
1868
3831
  */
1869
3832
  product: Membership.Product;
1870
3833
 
1871
3834
  /**
1872
- * The Promo Code that is currently applied to this Membership.
3835
+ * The promotional code currently applied to this membership's billing. Null if no
3836
+ * promo code is active.
1873
3837
  */
1874
3838
  promo_code: Membership.PromoCode | null;
1875
3839
 
1876
3840
  /**
1877
- * The timestamp in seconds at which the current billing cycle for this
1878
- * subscription ends. Only applies for memberships that have a renewal plan.
3841
+ * The end of the current billing period for this recurring membership. As a Unix
3842
+ * timestamp. Null if the membership is not recurring.
1879
3843
  */
1880
3844
  renewal_period_end: string | null;
1881
3845
 
1882
3846
  /**
1883
- * The timestamp in seconds at which the current billing cycle for this
1884
- * subscription start. Only applies for memberships that have a renewal plan.
3847
+ * The start of the current billing period for this recurring membership. As a Unix
3848
+ * timestamp. Null if the membership is not recurring.
1885
3849
  */
1886
3850
  renewal_period_start: string | null;
1887
3851
 
1888
3852
  /**
1889
- * The status of the membership.
3853
+ * The current lifecycle status of the membership (e.g., active, trialing,
3854
+ * past_due, canceled, expired, completed).
1890
3855
  */
1891
3856
  status: MembershipStatus;
1892
3857
 
@@ -1896,14 +3861,14 @@ export interface Membership {
1896
3861
  updated_at: string;
1897
3862
 
1898
3863
  /**
1899
- * The user this membership belongs to
3864
+ * The user who owns this membership. Null if the user account has been deleted.
1900
3865
  */
1901
3866
  user: Membership.User | null;
1902
3867
  }
1903
3868
 
1904
3869
  export namespace Membership {
1905
3870
  /**
1906
- * The Company this Membership belongs to.
3871
+ * The company this membership belongs to.
1907
3872
  */
1908
3873
  export interface Company {
1909
3874
  /**
@@ -1912,7 +3877,7 @@ export namespace Membership {
1912
3877
  id: string;
1913
3878
 
1914
3879
  /**
1915
- * The title of the company.
3880
+ * The display name of the company shown to customers.
1916
3881
  */
1917
3882
  title: string;
1918
3883
  }
@@ -1938,7 +3903,8 @@ export namespace Membership {
1938
3903
  }
1939
3904
 
1940
3905
  /**
1941
- * The Member that this Membership belongs to.
3906
+ * The member record linking the user to the company for this membership. Null if
3907
+ * the member record has not been created yet.
1942
3908
  */
1943
3909
  export interface Member {
1944
3910
  /**
@@ -1948,7 +3914,7 @@ export namespace Membership {
1948
3914
  }
1949
3915
 
1950
3916
  /**
1951
- * The Plan this Membership is for.
3917
+ * The plan the customer purchased to create this membership.
1952
3918
  */
1953
3919
  export interface Plan {
1954
3920
  /**
@@ -1958,7 +3924,7 @@ export namespace Membership {
1958
3924
  }
1959
3925
 
1960
3926
  /**
1961
- * The Product this Membership grants access to.
3927
+ * The product this membership grants access to.
1962
3928
  */
1963
3929
  export interface Product {
1964
3930
  /**
@@ -1967,13 +3933,15 @@ export namespace Membership {
1967
3933
  id: string;
1968
3934
 
1969
3935
  /**
1970
- * The title of the product. Use for Whop 4.0.
3936
+ * The display name of the product shown to customers on the product page and in
3937
+ * search results.
1971
3938
  */
1972
3939
  title: string;
1973
3940
  }
1974
3941
 
1975
3942
  /**
1976
- * The Promo Code that is currently applied to this Membership.
3943
+ * The promotional code currently applied to this membership's billing. Null if no
3944
+ * promo code is active.
1977
3945
  */
1978
3946
  export interface PromoCode {
1979
3947
  /**
@@ -1983,7 +3951,7 @@ export namespace Membership {
1983
3951
  }
1984
3952
 
1985
3953
  /**
1986
- * The user this membership belongs to
3954
+ * The user who owns this membership. Null if the user account has been deleted.
1987
3955
  */
1988
3956
  export interface User {
1989
3957
  /**
@@ -1992,17 +3960,18 @@ export namespace Membership {
1992
3960
  id: string;
1993
3961
 
1994
3962
  /**
1995
- * The email of the user
3963
+ * The user's email address. Requires the member:email:read permission to access.
3964
+ * Null if not authorized.
1996
3965
  */
1997
3966
  email: string | null;
1998
3967
 
1999
3968
  /**
2000
- * The name of the user from their Whop account.
3969
+ * The user's display name shown on their public profile.
2001
3970
  */
2002
3971
  name: string | null;
2003
3972
 
2004
3973
  /**
2005
- * The username of the user from their Whop account.
3974
+ * The user's unique username shown on their public profile.
2006
3975
  */
2007
3976
  username: string;
2008
3977
  }
@@ -2023,7 +3992,7 @@ export type MembershipStatus =
2023
3992
  | 'canceling';
2024
3993
 
2025
3994
  /**
2026
- * Represents a message in a DM channel
3995
+ * A message sent within an experience chat, direct message, or group chat.
2027
3996
  */
2028
3997
  export interface Message {
2029
3998
  /**
@@ -2036,69 +4005,74 @@ export interface Message {
2036
4005
  id: string;
2037
4006
 
2038
4007
  /**
2039
- * The content of the message in Markdown format
4008
+ * The message content formatted as Markdown. Null if the message has no text
4009
+ * content.
2040
4010
  */
2041
4011
  content: string | null;
2042
4012
 
2043
4013
  /**
2044
- * The timestamp when the post was created
4014
+ * The timestamp when this message was originally created.
2045
4015
  */
2046
4016
  created_at: string;
2047
4017
 
2048
4018
  /**
2049
- * Whether the message has been edited
4019
+ * Whether the message content has been edited after it was originally sent.
2050
4020
  */
2051
4021
  is_edited: boolean;
2052
4022
 
2053
4023
  /**
2054
- * Whether this message is pinned
4024
+ * Whether this message is pinned to the top of the channel for easy access.
2055
4025
  */
2056
4026
  is_pinned: boolean;
2057
4027
 
2058
4028
  /**
2059
- * The type of post
4029
+ * The classification of this message: regular, system, or automated.
2060
4030
  */
2061
4031
  message_type: DmsPostTypes;
2062
4032
 
2063
4033
  /**
2064
- * The poll for this message
4034
+ * A poll attached to this message. Null if the message does not contain a poll.
2065
4035
  */
2066
4036
  poll: Message.Poll | null;
2067
4037
 
2068
4038
  /**
2069
- * The reaction counts for this message
4039
+ * Aggregated reaction counts on this message, filtered to a specific reaction
4040
+ * type.
2070
4041
  */
2071
4042
  poll_votes: Array<Message.PollVote>;
2072
4043
 
2073
4044
  /**
2074
- * The reaction counts for this message
4045
+ * Aggregated reaction counts on this message, filtered to a specific reaction
4046
+ * type.
2075
4047
  */
2076
4048
  reaction_counts: Array<Message.ReactionCount>;
2077
4049
 
2078
4050
  /**
2079
- * The ID of the message this is replying to, if applicable
4051
+ * The unique identifier of the message this post is replying to. Null if this is
4052
+ * not a reply.
2080
4053
  */
2081
4054
  replying_to_message_id: string | null;
2082
4055
 
2083
4056
  /**
2084
- * The timestamp when the post was last updated
4057
+ * The timestamp when this message was last modified.
2085
4058
  */
2086
4059
  updated_at: string;
2087
4060
 
2088
4061
  /**
2089
- * The user who sent this message
4062
+ * The user who authored this message.
2090
4063
  */
2091
4064
  user: Message.User;
2092
4065
 
2093
4066
  /**
2094
- * The number of times this message has been viewed
4067
+ * The number of unique views this message has received. Null if view tracking is
4068
+ * not enabled for this channel.
2095
4069
  */
2096
4070
  view_count: number | null;
2097
4071
  }
2098
4072
 
2099
4073
  export namespace Message {
2100
4074
  /**
2101
- * The poll for this message
4075
+ * A poll attached to this message. Null if the message does not contain a poll.
2102
4076
  */
2103
4077
  export interface Poll {
2104
4078
  /**
@@ -2155,7 +4129,7 @@ export namespace Message {
2155
4129
  }
2156
4130
 
2157
4131
  /**
2158
- * The user who sent this message
4132
+ * The user who authored this message.
2159
4133
  */
2160
4134
  export interface User {
2161
4135
  /**
@@ -2164,12 +4138,12 @@ export namespace Message {
2164
4138
  id: string;
2165
4139
 
2166
4140
  /**
2167
- * The name of the user from their Whop account.
4141
+ * The user's display name shown on their public profile.
2168
4142
  */
2169
4143
  name: string | null;
2170
4144
 
2171
4145
  /**
2172
- * The username of the user from their Whop account.
4146
+ * The user's unique username shown on their public profile.
2173
4147
  */
2174
4148
  username: string;
2175
4149
  }
@@ -2201,8 +4175,8 @@ export interface PageInfo {
2201
4175
  }
2202
4176
 
2203
4177
  /**
2204
- * A payment represents a completed or attempted charge for a membership. Payments
2205
- * track the amount, status, currency, and payment method used.
4178
+ * A payment represents a completed or attempted charge. Payments track the amount,
4179
+ * status, currency, and payment method used.
2206
4180
  */
2207
4181
  export interface Payment {
2208
4182
  /**
@@ -2241,7 +4215,8 @@ export interface Payment {
2241
4215
  card_brand: PaymentsAPI.CardBrands | null;
2242
4216
 
2243
4217
  /**
2244
- * The last 4 digits of the card used to make the payment.
4218
+ * The last four digits of the card used to make this payment. Null if the payment
4219
+ * was not made with a card.
2245
4220
  */
2246
4221
  card_last4: string | null;
2247
4222
 
@@ -2265,11 +4240,29 @@ export interface Payment {
2265
4240
  */
2266
4241
  dispute_alerted_at: string | null;
2267
4242
 
4243
+ /**
4244
+ * The disputes attached to this payment. Null if the actor in context does not
4245
+ * have the payment:dispute:read permission.
4246
+ */
4247
+ disputes: Array<Payment.Dispute> | null;
4248
+
2268
4249
  /**
2269
4250
  * If the payment failed, the reason for the failure.
2270
4251
  */
2271
4252
  failure_message: string | null;
2272
4253
 
4254
+ /**
4255
+ * The number of financing installments for the payment. Present if the payment is
4256
+ * a financing payment (e.g. Splitit, Klarna, etc.).
4257
+ */
4258
+ financing_installments_count: number | null;
4259
+
4260
+ /**
4261
+ * The financing transactions attached to this payment. Present if the payment is a
4262
+ * financing payment (e.g. Splitit, Klarna, etc.).
4263
+ */
4264
+ financing_transactions: Array<Payment.FinancingTransaction>;
4265
+
2273
4266
  /**
2274
4267
  * The time of the last payment attempt.
2275
4268
  */
@@ -2297,12 +4290,14 @@ export interface Payment {
2297
4290
  next_payment_attempt: string | null;
2298
4291
 
2299
4292
  /**
2300
- * The datetime the payment was paid
4293
+ * The time at which this payment was successfully collected. Null if the payment
4294
+ * has not yet succeeded. As a Unix timestamp.
2301
4295
  */
2302
4296
  paid_at: string | null;
2303
4297
 
2304
4298
  /**
2305
- * The payment method used for the payment, if available.
4299
+ * The tokenized payment method reference used for this payment. Null if no token
4300
+ * was used.
2306
4301
  */
2307
4302
  payment_method: Payment.PaymentMethod | null;
2308
4303
 
@@ -2347,6 +4342,13 @@ export interface Payment {
2347
4342
  */
2348
4343
  refunded_at: string | null;
2349
4344
 
4345
+ /**
4346
+ * The resolution center cases opened by the customer on this payment. Null if the
4347
+ * actor in context does not have the payment:resolution_center_case:read
4348
+ * permission.
4349
+ */
4350
+ resolutions: Array<Payment.Resolution> | null;
4351
+
2350
4352
  /**
2351
4353
  * True when the payment status is `open` and its membership is in one of the
2352
4354
  * retry-eligible states (`active`, `trialing`, `completed`, or `past_due`);
@@ -2487,6 +4489,107 @@ export namespace Payment {
2487
4489
  title: string;
2488
4490
  }
2489
4491
 
4492
+ /**
4493
+ * A dispute is a chargeback or payment challenge filed against a company,
4494
+ * including evidence and response status.
4495
+ */
4496
+ export interface Dispute {
4497
+ /**
4498
+ * The unique identifier for the dispute.
4499
+ */
4500
+ id: string;
4501
+
4502
+ /**
4503
+ * The disputed amount in the specified currency, formatted as a decimal.
4504
+ */
4505
+ amount: number;
4506
+
4507
+ /**
4508
+ * The three-letter ISO currency code for the disputed amount.
4509
+ */
4510
+ currency: Shared.Currency;
4511
+
4512
+ /**
4513
+ * Whether the dispute evidence can still be edited and submitted. Returns true
4514
+ * only when the dispute status requires a response.
4515
+ */
4516
+ editable: boolean | null;
4517
+
4518
+ /**
4519
+ * The deadline by which dispute evidence must be submitted. Null if no response
4520
+ * deadline is set.
4521
+ */
4522
+ needs_response_by: string | null;
4523
+
4524
+ /**
4525
+ * Additional freeform notes submitted by the company as part of the dispute
4526
+ * evidence.
4527
+ */
4528
+ notes: string | null;
4529
+
4530
+ /**
4531
+ * A human-readable reason for the dispute.
4532
+ */
4533
+ reason: string | null;
4534
+
4535
+ /**
4536
+ * The current status of the dispute lifecycle, such as needs_response,
4537
+ * under_review, won, or lost.
4538
+ */
4539
+ status: DisputesAPI.DisputeStatuses;
4540
+ }
4541
+
4542
+ /**
4543
+ * A payment transaction.
4544
+ */
4545
+ export interface FinancingTransaction {
4546
+ /**
4547
+ * The unique identifier for the payment transaction.
4548
+ */
4549
+ id: string;
4550
+
4551
+ /**
4552
+ * The amount of the payment transaction.
4553
+ */
4554
+ amount: number;
4555
+
4556
+ /**
4557
+ * The date and time the payment transaction was created.
4558
+ */
4559
+ created_at: string;
4560
+
4561
+ /**
4562
+ * The status of the payment transaction.
4563
+ */
4564
+ status:
4565
+ | 'succeeded'
4566
+ | 'declined'
4567
+ | 'error'
4568
+ | 'pending'
4569
+ | 'created'
4570
+ | 'expired'
4571
+ | 'won'
4572
+ | 'rejected'
4573
+ | 'lost'
4574
+ | 'prevented';
4575
+
4576
+ /**
4577
+ * The type of the payment transaction.
4578
+ */
4579
+ transaction_type:
4580
+ | 'purchase'
4581
+ | 'authorize'
4582
+ | 'capture'
4583
+ | 'refund'
4584
+ | 'cancel'
4585
+ | 'verify'
4586
+ | 'chargeback'
4587
+ | 'three_d_secure'
4588
+ | 'fraud_screening'
4589
+ | 'authorization'
4590
+ | 'installment';
4591
+ }
4592
+
2490
4593
  /**
2491
4594
  * The member attached to this payment.
2492
4595
  */
@@ -2518,7 +4621,8 @@ export namespace Payment {
2518
4621
  }
2519
4622
 
2520
4623
  /**
2521
- * The payment method used for the payment, if available.
4624
+ * The tokenized payment method reference used for this payment. Null if no token
4625
+ * was used.
2522
4626
  */
2523
4627
  export interface PaymentMethod {
2524
4628
  /**
@@ -2553,17 +4657,18 @@ export namespace Payment {
2553
4657
  brand: PaymentsAPI.CardBrands | null;
2554
4658
 
2555
4659
  /**
2556
- * Card expiration month, like 03 for March.
4660
+ * The two-digit expiration month of the card (1-12). Null if not available.
2557
4661
  */
2558
4662
  exp_month: number | null;
2559
4663
 
2560
4664
  /**
2561
- * Card expiration year, like 27 for 2027.
4665
+ * The two-digit expiration year of the card (e.g., 27 for 2027). Null if not
4666
+ * available.
2562
4667
  */
2563
4668
  exp_year: number | null;
2564
4669
 
2565
4670
  /**
2566
- * Last four digits of the card.
4671
+ * The last four digits of the card number. Null if not available.
2567
4672
  */
2568
4673
  last4: string | null;
2569
4674
  }
@@ -2589,12 +4694,14 @@ export namespace Payment {
2589
4694
  id: string;
2590
4695
 
2591
4696
  /**
2592
- * The route of the product.
4697
+ * The URL slug used in the product's public link (e.g., 'my-product' in
4698
+ * whop.com/company/my-product).
2593
4699
  */
2594
4700
  route: string;
2595
4701
 
2596
4702
  /**
2597
- * The title of the product. Use for Whop 4.0.
4703
+ * The display name of the product shown to customers on the product page and in
4704
+ * search results.
2598
4705
  */
2599
4706
  title: string;
2600
4707
  }
@@ -2636,6 +4743,75 @@ export namespace Payment {
2636
4743
  promo_type: Shared.PromoType;
2637
4744
  }
2638
4745
 
4746
+ /**
4747
+ * A resolution is a dispute or support case between a buyer and seller, tracking
4748
+ * the issue, status, and outcome.
4749
+ */
4750
+ export interface Resolution {
4751
+ /**
4752
+ * The unique identifier for the resolution.
4753
+ */
4754
+ id: string;
4755
+
4756
+ /**
4757
+ * Whether the customer has filed an appeal after the initial resolution decision.
4758
+ */
4759
+ customer_appealed: boolean;
4760
+
4761
+ /**
4762
+ * The list of actions currently available to the customer.
4763
+ */
4764
+ customer_response_actions: Array<'respond' | 'appeal' | 'withdraw'>;
4765
+
4766
+ /**
4767
+ * The deadline by which the next response is required. Null if no deadline is
4768
+ * currently active. As a Unix timestamp.
4769
+ */
4770
+ due_date: string | null;
4771
+
4772
+ /**
4773
+ * The category of the dispute.
4774
+ */
4775
+ issue:
4776
+ | 'forgot_to_cancel'
4777
+ | 'item_not_received'
4778
+ | 'significantly_not_as_described'
4779
+ | 'unauthorized_transaction'
4780
+ | 'product_unacceptable';
4781
+
4782
+ /**
4783
+ * Whether the merchant has filed an appeal after the initial resolution decision.
4784
+ */
4785
+ merchant_appealed: boolean;
4786
+
4787
+ /**
4788
+ * The list of actions currently available to the merchant.
4789
+ */
4790
+ merchant_response_actions: Array<'accept' | 'deny' | 'request_more_info' | 'appeal' | 'respond'>;
4791
+
4792
+ /**
4793
+ * The list of actions currently available to the Whop platform for moderating this
4794
+ * resolution.
4795
+ */
4796
+ platform_response_actions: Array<
4797
+ 'request_buyer_info' | 'request_merchant_info' | 'merchant_wins' | 'platform_refund' | 'merchant_refund'
4798
+ >;
4799
+
4800
+ /**
4801
+ * The current status of the resolution case, indicating which party needs to
4802
+ * respond or if the case is closed.
4803
+ */
4804
+ status:
4805
+ | 'merchant_response_needed'
4806
+ | 'customer_response_needed'
4807
+ | 'merchant_info_needed'
4808
+ | 'customer_info_needed'
4809
+ | 'under_platform_review'
4810
+ | 'customer_won'
4811
+ | 'merchant_won'
4812
+ | 'customer_withdrew';
4813
+ }
4814
+
2639
4815
  /**
2640
4816
  * The user that made this payment.
2641
4817
  */
@@ -2646,26 +4822,27 @@ export namespace Payment {
2646
4822
  id: string;
2647
4823
 
2648
4824
  /**
2649
- * The email of the user
4825
+ * The user's email address. Requires the member:email:read permission to access.
4826
+ * Null if not authorized.
2650
4827
  */
2651
4828
  email: string | null;
2652
4829
 
2653
4830
  /**
2654
- * The name of the user from their Whop account.
4831
+ * The user's display name shown on their public profile.
2655
4832
  */
2656
4833
  name: string | null;
2657
4834
 
2658
4835
  /**
2659
- * The username of the user from their Whop account.
4836
+ * The user's unique username shown on their public profile.
2660
4837
  */
2661
4838
  username: string;
2662
4839
  }
2663
4840
  }
2664
4841
 
2665
4842
  /**
2666
- * A plan defines pricing and billing terms for a product. Each product can have
2667
- * multiple plans representing different pricing options, such as one-time
2668
- * payments, recurring subscriptions, or free trials.
4843
+ * A plan defines pricing and billing terms for a checkout. Plans can optionally
4844
+ * belong to a product, where they represent different pricing options such as
4845
+ * one-time payments, recurring subscriptions, or free trials.
2669
4846
  */
2670
4847
  export interface Plan {
2671
4848
  /**
@@ -2674,17 +4851,20 @@ export interface Plan {
2674
4851
  id: string;
2675
4852
 
2676
4853
  /**
2677
- * The interval in days at which the plan charges (renewal plans).
4854
+ * The number of days between each recurring charge. Null for one-time plans. For
4855
+ * example, 30 for monthly or 365 for annual billing.
2678
4856
  */
2679
4857
  billing_period: number | null;
2680
4858
 
2681
4859
  /**
2682
- * Whether or not the plan collects tax.
4860
+ * Whether tax is collected on purchases of this plan, based on the company's tax
4861
+ * configuration.
2683
4862
  */
2684
4863
  collect_tax: boolean;
2685
4864
 
2686
4865
  /**
2687
- * The company for the plan.
4866
+ * The company that sells this plan. Null for standalone invoice plans not linked
4867
+ * to a company.
2688
4868
  */
2689
4869
  company: Plan.Company | null;
2690
4870
 
@@ -2694,17 +4874,20 @@ export interface Plan {
2694
4874
  created_at: string;
2695
4875
 
2696
4876
  /**
2697
- * The respective currency identifier for the plan.
4877
+ * The currency used for all prices on this plan (e.g., 'usd', 'eur'). All monetary
4878
+ * amounts on the plan are denominated in this currency.
2698
4879
  */
2699
4880
  currency: Currency;
2700
4881
 
2701
4882
  /**
2702
- * The custom fields for the plan.
4883
+ * Custom input fields displayed on the checkout form that collect additional
4884
+ * information from the buyer.
2703
4885
  */
2704
4886
  custom_fields: Array<Plan.CustomField>;
2705
4887
 
2706
4888
  /**
2707
- * The description of the plan.
4889
+ * A text description of the plan visible to customers. Maximum 500 characters.
4890
+ * Null if no description is set.
2708
4891
  */
2709
4892
  description: string | null;
2710
4893
 
@@ -2722,42 +4905,50 @@ export interface Plan {
2722
4905
  initial_price: number;
2723
4906
 
2724
4907
  /**
2725
- * A personal description or notes section for the business.
4908
+ * Private notes visible only to the company owner and team members. Not shown to
4909
+ * customers. Null if no notes have been added.
2726
4910
  */
2727
4911
  internal_notes: string | null;
2728
4912
 
2729
4913
  /**
2730
- * The invoice associated with this plan.
4914
+ * The invoice this plan was generated for. Null if the plan was not created for a
4915
+ * specific invoice.
2731
4916
  */
2732
4917
  invoice: Plan.Invoice | null;
2733
4918
 
2734
4919
  /**
2735
- * The number of members for the plan.
4920
+ * The number of users who currently hold an active membership through this plan.
4921
+ * Only visible to authorized team members.
2736
4922
  */
2737
4923
  member_count: number | null;
2738
4924
 
2739
4925
  /**
2740
- * The explicit payment method configuration for the plan, if any.
4926
+ * The explicit payment method configuration specifying which payment methods are
4927
+ * enabled or disabled for this plan. Null if the plan uses default settings.
2741
4928
  */
2742
4929
  payment_method_configuration: Plan.PaymentMethodConfiguration | null;
2743
4930
 
2744
4931
  /**
2745
- * Indicates if the plan is a one time payment or recurring.
4932
+ * The billing model for this plan: 'renewal' for recurring subscriptions or
4933
+ * 'one_time' for single payments.
2746
4934
  */
2747
4935
  plan_type: PlanType;
2748
4936
 
2749
4937
  /**
2750
- * The product that this plan belongs to.
4938
+ * The product that this plan belongs to. Null for standalone one-off purchases not
4939
+ * linked to a product.
2751
4940
  */
2752
4941
  product: Plan.Product | null;
2753
4942
 
2754
4943
  /**
2755
- * The direct link to purchase the product.
4944
+ * The full URL where customers can purchase this plan directly, bypassing the
4945
+ * product page.
2756
4946
  */
2757
4947
  purchase_url: string;
2758
4948
 
2759
4949
  /**
2760
- * This is the release method the business uses to sell this plan.
4950
+ * The method used to sell this plan: 'buy_now' for immediate purchase or
4951
+ * 'waitlist' for waitlist-based access.
2761
4952
  */
2762
4953
  release_method: ReleaseMethod;
2763
4954
 
@@ -2768,27 +4959,33 @@ export interface Plan {
2768
4959
  renewal_price: number;
2769
4960
 
2770
4961
  /**
2771
- * The number of payments required before pausing the subscription.
4962
+ * The total number of installment payments required before the subscription
4963
+ * pauses. Null if split pay is not configured. Must be greater than 1.
2772
4964
  */
2773
4965
  split_pay_required_payments: number | null;
2774
4966
 
2775
4967
  /**
2776
- * The number of units available for purchase. Only displayed to authorized actors
4968
+ * The number of units available for purchase. Only visible to authorized team
4969
+ * members. Null if the requester lacks permission.
2777
4970
  */
2778
4971
  stock: number | null;
2779
4972
 
2780
4973
  /**
2781
- * The tax type for the plan.
4974
+ * How tax is handled for this plan: 'inclusive' (tax included in price),
4975
+ * 'exclusive' (tax added at checkout), or 'unspecified' (tax not configured).
2782
4976
  */
2783
4977
  tax_type: TaxType;
2784
4978
 
2785
4979
  /**
2786
- * The title of the plan. This will be visible on the product page to customers.
4980
+ * The display name of the plan shown to customers on the product page and at
4981
+ * checkout. Maximum 30 characters. Null if no title has been set.
2787
4982
  */
2788
4983
  title: string | null;
2789
4984
 
2790
4985
  /**
2791
- * The number of free trial days added before a renewal plan.
4986
+ * The number of free trial days before the first charge on a renewal plan. Null if
4987
+ * no trial is configured or the current user has already used a trial for this
4988
+ * plan.
2792
4989
  */
2793
4990
  trial_period_days: number | null;
2794
4991
 
@@ -2804,14 +5001,16 @@ export interface Plan {
2804
5001
  updated_at: string;
2805
5002
 
2806
5003
  /**
2807
- * Shows or hides the plan from public/business view.
5004
+ * Controls whether the plan is visible to customers. When set to 'hidden', the
5005
+ * plan is only accessible via direct link.
2808
5006
  */
2809
5007
  visibility: Visibility;
2810
5008
  }
2811
5009
 
2812
5010
  export namespace Plan {
2813
5011
  /**
2814
- * The company for the plan.
5012
+ * The company that sells this plan. Null for standalone invoice plans not linked
5013
+ * to a company.
2815
5014
  */
2816
5015
  export interface Company {
2817
5016
  /**
@@ -2820,7 +5019,7 @@ export namespace Plan {
2820
5019
  id: string;
2821
5020
 
2822
5021
  /**
2823
- * The title of the company.
5022
+ * The display name of the company shown to customers.
2824
5023
  */
2825
5024
  title: string;
2826
5025
  }
@@ -2861,7 +5060,8 @@ export namespace Plan {
2861
5060
  }
2862
5061
 
2863
5062
  /**
2864
- * The invoice associated with this plan.
5063
+ * The invoice this plan was generated for. Null if the plan was not created for a
5064
+ * specific invoice.
2865
5065
  */
2866
5066
  export interface Invoice {
2867
5067
  /**
@@ -2871,7 +5071,8 @@ export namespace Plan {
2871
5071
  }
2872
5072
 
2873
5073
  /**
2874
- * The explicit payment method configuration for the plan, if any.
5074
+ * The explicit payment method configuration specifying which payment methods are
5075
+ * enabled or disabled for this plan. Null if the plan uses default settings.
2875
5076
  */
2876
5077
  export interface PaymentMethodConfiguration {
2877
5078
  /**
@@ -2897,7 +5098,8 @@ export namespace Plan {
2897
5098
  }
2898
5099
 
2899
5100
  /**
2900
- * The product that this plan belongs to.
5101
+ * The product that this plan belongs to. Null for standalone one-off purchases not
5102
+ * linked to a product.
2901
5103
  */
2902
5104
  export interface Product {
2903
5105
  /**
@@ -2906,7 +5108,8 @@ export namespace Plan {
2906
5108
  id: string;
2907
5109
 
2908
5110
  /**
2909
- * The title of the product. Use for Whop 4.0.
5111
+ * The display name of the product shown to customers on the product page and in
5112
+ * search results.
2910
5113
  */
2911
5114
  title: string;
2912
5115
  }
@@ -2933,7 +5136,7 @@ export interface Product {
2933
5136
  business_type: BusinessTypes | null;
2934
5137
 
2935
5138
  /**
2936
- * A short type of the company that this product belongs to.
5139
+ * The company this product belongs to.
2937
5140
  */
2938
5141
  company: Product.Company;
2939
5142
 
@@ -2943,45 +5146,56 @@ export interface Product {
2943
5146
  created_at: string;
2944
5147
 
2945
5148
  /**
2946
- * The custom call to action for the product.
5149
+ * The call-to-action button label displayed on the product's purchase page (e.g.,
5150
+ * 'join', 'buy', 'subscribe').
2947
5151
  */
2948
5152
  custom_cta: CustomCta;
2949
5153
 
2950
5154
  /**
2951
- * The custom call to action URL for the product, if any.
5155
+ * An optional URL that the call-to-action button links to instead of the default
5156
+ * checkout flow. Null if no custom URL is set.
2952
5157
  */
2953
5158
  custom_cta_url: string | null;
2954
5159
 
2955
5160
  /**
2956
- * The custom statement descriptor for the product.
5161
+ * A custom text label that appears on the customer's bank or credit card statement
5162
+ * for purchases of this product. Maximum 22 characters, including the required
5163
+ * prefix WHOP\*.
2957
5164
  */
2958
5165
  custom_statement_descriptor: string | null;
2959
5166
 
2960
5167
  /**
2961
- * A short description of what the company offers or does.
5168
+ * A brief summary of what the product offers, displayed on product pages and
5169
+ * search results.
2962
5170
  */
2963
5171
  description: string | null;
2964
5172
 
2965
5173
  /**
2966
- * A unique identifier used to create or update products. When provided on product
2967
- * creation endpoints, we’ll look up an existing product by this identifier if it
2968
- * exists, we’ll update it; if not, we’ll create a new one.
5174
+ * A unique identifier used to create or update products via the API. When provided
5175
+ * on product creation endpoints, an existing product with this identifier will be
5176
+ * updated instead of creating a new one.
2969
5177
  */
2970
5178
  external_identifier: string | null;
2971
5179
 
2972
5180
  /**
2973
- * The percentage of a transaction a user is eligible to earn from the whop
2974
- * marketplace global affiliate program.
5181
+ * The gallery images for this product, ordered by position.
5182
+ */
5183
+ gallery_images: Array<Product.GalleryImage>;
5184
+
5185
+ /**
5186
+ * The commission rate (as a percentage) that affiliates earn on sales through the
5187
+ * Whop marketplace global affiliate program. Null if the program is not active.
2975
5188
  */
2976
5189
  global_affiliate_percentage: number | null;
2977
5190
 
2978
5191
  /**
2979
- * The status of the global affiliate program for this product.
5192
+ * The enrollment status of this product in the Whop marketplace global affiliate
5193
+ * program.
2980
5194
  */
2981
5195
  global_affiliate_status: GlobalAffiliateStatus;
2982
5196
 
2983
5197
  /**
2984
- * The headline of the product.
5198
+ * A short marketing headline displayed prominently on the product's product page.
2985
5199
  */
2986
5200
  headline: string | null;
2987
5201
 
@@ -2991,43 +5205,48 @@ export interface Product {
2991
5205
  industry_type: IndustryTypes | null;
2992
5206
 
2993
5207
  /**
2994
- * The percentage of a transaction a user is eligible to earn from the whop
2995
- * marketplace member affiliate program.
5208
+ * The commission rate (as a percentage) that existing members earn when referring
5209
+ * new customers through the member affiliate program. Null if the program is not
5210
+ * active.
2996
5211
  */
2997
5212
  member_affiliate_percentage: number | null;
2998
5213
 
2999
5214
  /**
3000
- * The status of the member affiliate program for this product.
5215
+ * The enrollment status of this product in the member affiliate program.
3001
5216
  */
3002
5217
  member_affiliate_status: GlobalAffiliateStatus;
3003
5218
 
3004
5219
  /**
3005
- * The number of active users for this product.
5220
+ * The number of users who currently hold an active membership to this product.
5221
+ * Returns 0 if the company has disabled public member counts.
3006
5222
  */
3007
5223
  member_count: number;
3008
5224
 
3009
5225
  /**
3010
- * The user that owns the product (company owner).
5226
+ * The user who owns the company that sells this product.
3011
5227
  */
3012
5228
  owner_user: Product.OwnerUser;
3013
5229
 
3014
5230
  /**
3015
- * The product tax code for the product, if any.
5231
+ * The tax classification code applied to purchases of this product for sales tax
5232
+ * calculation. Null if no tax code is assigned.
3016
5233
  */
3017
5234
  product_tax_code: Product.ProductTaxCode | null;
3018
5235
 
3019
5236
  /**
3020
- * The number of reviews that have been published for the product.
5237
+ * The total number of published customer reviews for this product's company.
3021
5238
  */
3022
5239
  published_reviews_count: number;
3023
5240
 
3024
5241
  /**
3025
- * The route of the product.
5242
+ * The URL slug used in the product's public link (e.g., 'my-product' in
5243
+ * whop.com/company/my-product).
3026
5244
  */
3027
5245
  route: string;
3028
5246
 
3029
5247
  /**
3030
- * The title of the product. Use for Whop 4.0.
5248
+ * The display name of the product shown to customers on the product page and in
5249
+ * search results.
3031
5250
  */
3032
5251
  title: string;
3033
5252
 
@@ -3037,19 +5256,20 @@ export interface Product {
3037
5256
  updated_at: string;
3038
5257
 
3039
5258
  /**
3040
- * Whether this product is Whop verified.
5259
+ * Whether this company has been verified by Whop's trust and safety team.
3041
5260
  */
3042
5261
  verified: boolean;
3043
5262
 
3044
5263
  /**
3045
- * This product will/will not be displayed publicly.
5264
+ * Controls whether the product is visible to customers. When set to 'hidden', the
5265
+ * product is only accessible via direct link.
3046
5266
  */
3047
5267
  visibility: Visibility;
3048
5268
  }
3049
5269
 
3050
5270
  export namespace Product {
3051
5271
  /**
3052
- * A short type of the company that this product belongs to.
5272
+ * The company this product belongs to.
3053
5273
  */
3054
5274
  export interface Company {
3055
5275
  /**
@@ -3058,18 +5278,38 @@ export namespace Product {
3058
5278
  id: string;
3059
5279
 
3060
5280
  /**
3061
- * The slug/route of the company on the Whop site.
5281
+ * The URL slug for the company's store page (e.g., 'pickaxe' in whop.com/pickaxe).
3062
5282
  */
3063
5283
  route: string;
3064
5284
 
3065
5285
  /**
3066
- * The title of the company.
5286
+ * The display name of the company shown to customers.
3067
5287
  */
3068
5288
  title: string;
3069
5289
  }
3070
5290
 
3071
5291
  /**
3072
- * The user that owns the product (company owner).
5292
+ * Represents an image attachment
5293
+ */
5294
+ export interface GalleryImage {
5295
+ /**
5296
+ * Represents a unique identifier that is Base64 obfuscated. It is often used to
5297
+ * refetch an object or as key for a cache. The ID type appears in a JSON response
5298
+ * as a String; however, it is not intended to be human-readable. When expected as
5299
+ * an input type, any string (such as `"VXNlci0xMA=="`) or integer (such as `4`)
5300
+ * input value will be accepted as an ID.
5301
+ */
5302
+ id: string;
5303
+
5304
+ /**
5305
+ * A pre-optimized URL for rendering this attachment on the client. This should be
5306
+ * used for displaying attachments in apps.
5307
+ */
5308
+ url: string | null;
5309
+ }
5310
+
5311
+ /**
5312
+ * The user who owns the company that sells this product.
3073
5313
  */
3074
5314
  export interface OwnerUser {
3075
5315
  /**
@@ -3078,18 +5318,19 @@ export namespace Product {
3078
5318
  id: string;
3079
5319
 
3080
5320
  /**
3081
- * The name of the user from their Whop account.
5321
+ * The user's display name shown on their public profile.
3082
5322
  */
3083
5323
  name: string | null;
3084
5324
 
3085
5325
  /**
3086
- * The username of the user from their Whop account.
5326
+ * The user's unique username shown on their public profile.
3087
5327
  */
3088
5328
  username: string;
3089
5329
  }
3090
5330
 
3091
5331
  /**
3092
- * The product tax code for the product, if any.
5332
+ * The tax classification code applied to purchases of this product for sales tax
5333
+ * calculation. Null if no tax code is assigned.
3093
5334
  */
3094
5335
  export interface ProductTaxCode {
3095
5336
  /**
@@ -3098,12 +5339,13 @@ export namespace Product {
3098
5339
  id: string;
3099
5340
 
3100
5341
  /**
3101
- * The name of the product tax code.
5342
+ * The human-readable name of this tax classification (e.g., 'Digital - SaaS').
3102
5343
  */
3103
5344
  name: string;
3104
5345
 
3105
5346
  /**
3106
- * The type of product this tax code applies to.
5347
+ * The broad product category this tax code covers (e.g., physical goods, digital
5348
+ * services).
3107
5349
  */
3108
5350
  product_type: 'physical' | 'digital' | 'services';
3109
5351
  }
@@ -3130,14 +5372,14 @@ export interface ProductListItem {
3130
5372
  created_at: string;
3131
5373
 
3132
5374
  /**
3133
- * A unique identifier used to create or update products. When provided on product
3134
- * creation endpoints, we’ll look up an existing product by this identifier if it
3135
- * exists, we’ll update it; if not, we’ll create a new one.
5375
+ * A unique identifier used to create or update products via the API. When provided
5376
+ * on product creation endpoints, an existing product with this identifier will be
5377
+ * updated instead of creating a new one.
3136
5378
  */
3137
5379
  external_identifier: string | null;
3138
5380
 
3139
5381
  /**
3140
- * The headline of the product.
5382
+ * A short marketing headline displayed prominently on the product's product page.
3141
5383
  */
3142
5384
  headline: string | null;
3143
5385
 
@@ -3147,22 +5389,25 @@ export interface ProductListItem {
3147
5389
  industry_type: IndustryTypes | null;
3148
5390
 
3149
5391
  /**
3150
- * The number of active users for this product.
5392
+ * The number of users who currently hold an active membership to this product.
5393
+ * Returns 0 if the company has disabled public member counts.
3151
5394
  */
3152
5395
  member_count: number;
3153
5396
 
3154
5397
  /**
3155
- * The number of reviews that have been published for the product.
5398
+ * The total number of published customer reviews for this product's company.
3156
5399
  */
3157
5400
  published_reviews_count: number;
3158
5401
 
3159
5402
  /**
3160
- * The route of the product.
5403
+ * The URL slug used in the product's public link (e.g., 'my-product' in
5404
+ * whop.com/company/my-product).
3161
5405
  */
3162
5406
  route: string;
3163
5407
 
3164
5408
  /**
3165
- * The title of the product. Use for Whop 4.0.
5409
+ * The display name of the product shown to customers on the product page and in
5410
+ * search results.
3166
5411
  */
3167
5412
  title: string;
3168
5413
 
@@ -3172,12 +5417,13 @@ export interface ProductListItem {
3172
5417
  updated_at: string;
3173
5418
 
3174
5419
  /**
3175
- * Whether this product is Whop verified.
5420
+ * Whether this company has been verified by Whop's trust and safety team.
3176
5421
  */
3177
5422
  verified: boolean;
3178
5423
 
3179
5424
  /**
3180
- * This product will/will not be displayed publicly.
5425
+ * Controls whether the product is visible to customers. When set to 'hidden', the
5426
+ * product is only accessible via direct link.
3181
5427
  */
3182
5428
  visibility: Visibility;
3183
5429
  }
@@ -3188,7 +5434,7 @@ export interface ProductListItem {
3188
5434
  export type PromoType = 'percentage' | 'flat_amount';
3189
5435
 
3190
5436
  /**
3191
- * Represents a reaction to a feed post
5437
+ * A single reaction left by a user on a feed post, such as a like or emoji.
3192
5438
  */
3193
5439
  export interface Reaction {
3194
5440
  /**
@@ -3197,24 +5443,25 @@ export interface Reaction {
3197
5443
  id: string;
3198
5444
 
3199
5445
  /**
3200
- * The emoji that was used in shortcode format (:heart:)
5446
+ * The emoji used for this reaction in shortcode format. Null if the reaction type
5447
+ * is not emoji.
3201
5448
  */
3202
5449
  emoji: string | null;
3203
5450
 
3204
5451
  /**
3205
- * The ID of the post this reaction belongs to
5452
+ * The unique identifier of the post this reaction was left on.
3206
5453
  */
3207
5454
  resource_id: string;
3208
5455
 
3209
5456
  /**
3210
- * The user who reacted to the post
5457
+ * The user who left this reaction on the post.
3211
5458
  */
3212
5459
  user: Reaction.User;
3213
5460
  }
3214
5461
 
3215
5462
  export namespace Reaction {
3216
5463
  /**
3217
- * The user who reacted to the post
5464
+ * The user who left this reaction on the post.
3218
5465
  */
3219
5466
  export interface User {
3220
5467
  /**
@@ -3223,12 +5470,12 @@ export namespace Reaction {
3223
5470
  id: string;
3224
5471
 
3225
5472
  /**
3226
- * The name of the user from their Whop account.
5473
+ * The user's display name shown on their public profile.
3227
5474
  */
3228
5475
  name: string | null;
3229
5476
 
3230
5477
  /**
3231
- * The username of the user from their Whop account.
5478
+ * The user's unique username shown on their public profile.
3232
5479
  */
3233
5480
  username: string;
3234
5481
  }
@@ -3245,7 +5492,8 @@ export type ReceiptStatus = 'draft' | 'open' | 'paid' | 'pending' | 'uncollectib
3245
5492
  export type ReleaseMethod = 'buy_now' | 'waitlist';
3246
5493
 
3247
5494
  /**
3248
- * A shipment
5495
+ * A physical shipment associated with a payment, including carrier details and
5496
+ * tracking information.
3249
5497
  */
3250
5498
  export interface Shipment {
3251
5499
  /**
@@ -3254,7 +5502,7 @@ export interface Shipment {
3254
5502
  id: string;
3255
5503
 
3256
5504
  /**
3257
- * The carrier of the shipment
5505
+ * The shipping carrier responsible for delivering this shipment.
3258
5506
  */
3259
5507
  carrier: ShipmentCarrier;
3260
5508
 
@@ -3264,22 +5512,25 @@ export interface Shipment {
3264
5512
  created_at: string;
3265
5513
 
3266
5514
  /**
3267
- * The delivery estimate of the shipment
5515
+ * The estimated delivery date for this shipment. Null if the carrier has not
5516
+ * provided an estimate.
3268
5517
  */
3269
5518
  delivery_estimate: string | null;
3270
5519
 
3271
5520
  /**
3272
- * The payment of the shipment
5521
+ * The payment associated with this shipment. Null if the payment has been deleted
5522
+ * or is inaccessible.
3273
5523
  */
3274
5524
  payment: Shipment.Payment | null;
3275
5525
 
3276
5526
  /**
3277
- * The service of the shipment
5527
+ * The shipping service level used for this shipment. Null if the carrier does not
5528
+ * specify a service tier.
3278
5529
  */
3279
5530
  service: string | null;
3280
5531
 
3281
5532
  /**
3282
- * The status of the shipment
5533
+ * The current delivery status of this shipment.
3283
5534
  */
3284
5535
  status: ShipmentStatus;
3285
5536
 
@@ -3289,7 +5540,7 @@ export interface Shipment {
3289
5540
  substatus: ShipmentSubstatus | null;
3290
5541
 
3291
5542
  /**
3292
- * The tracking code of the shipment
5543
+ * The carrier-assigned tracking number used to look up shipment progress.
3293
5544
  */
3294
5545
  tracking_code: string;
3295
5546
 
@@ -3301,7 +5552,8 @@ export interface Shipment {
3301
5552
 
3302
5553
  export namespace Shipment {
3303
5554
  /**
3304
- * The payment of the shipment
5555
+ * The payment associated with this shipment. Null if the payment has been deleted
5556
+ * or is inaccessible.
3305
5557
  */
3306
5558
  export interface Payment {
3307
5559
  /**
@@ -3441,7 +5693,8 @@ export type ShipmentSubstatus =
3441
5693
  | 'weather_delay';
3442
5694
 
3443
5695
  /**
3444
- * Represents a DM channel
5696
+ * A messaging channel that can be a one-on-one DM, group chat, company support
5697
+ * conversation, or platform-level direct message.
3445
5698
  */
3446
5699
  export interface SupportChannel {
3447
5700
  /**
@@ -3450,34 +5703,40 @@ export interface SupportChannel {
3450
5703
  id: string;
3451
5704
 
3452
5705
  /**
3453
- * The bot ID if this is a support chat
5706
+ * The unique identifier of the company associated with this channel. Null if this
5707
+ * is not a support or company-scoped conversation.
3454
5708
  */
3455
5709
  company_id: string | null;
3456
5710
 
3457
5711
  /**
3458
- * The custom name of the DM channel, if any
5712
+ * A custom display name assigned to this channel by the user. Null if no custom
5713
+ * name has been set.
3459
5714
  */
3460
5715
  custom_name: string | null;
3461
5716
 
3462
5717
  /**
3463
- * The customer user if this is a support chat
5718
+ * The customer who initiated this support conversation. Null if this is not a
5719
+ * support chat.
3464
5720
  */
3465
5721
  customer_user: SupportChannel.CustomerUser | null;
3466
5722
 
3467
5723
  /**
3468
- * When the last message was sent
5724
+ * The timestamp when the most recent message was sent in this channel. Null if no
5725
+ * messages have been sent.
3469
5726
  */
3470
5727
  last_message_at: string | null;
3471
5728
 
3472
5729
  /**
3473
- * When the support ticket was resolved (null if unresolved)
5730
+ * The timestamp when the linked support ticket was marked as resolved. Null if
5731
+ * unresolved or not a support chat.
3474
5732
  */
3475
5733
  resolved_at: string | null;
3476
5734
  }
3477
5735
 
3478
5736
  export namespace SupportChannel {
3479
5737
  /**
3480
- * The customer user if this is a support chat
5738
+ * The customer who initiated this support conversation. Null if this is not a
5739
+ * support chat.
3481
5740
  */
3482
5741
  export interface CustomerUser {
3483
5742
  /**
@@ -3486,12 +5745,12 @@ export namespace SupportChannel {
3486
5745
  id: string;
3487
5746
 
3488
5747
  /**
3489
- * The name of the user from their Whop account.
5748
+ * The user's display name shown on their public profile.
3490
5749
  */
3491
5750
  name: string | null;
3492
5751
 
3493
5752
  /**
3494
- * The username of the user from their Whop account.
5753
+ * The user's unique username shown on their public profile.
3495
5754
  */
3496
5755
  username: string;
3497
5756
  }
@@ -3504,7 +5763,7 @@ export namespace SupportChannel {
3504
5763
  export type TaxType = 'inclusive' | 'exclusive' | 'unspecified';
3505
5764
 
3506
5765
  /**
3507
- * Credit Transaction Transfer
5766
+ * A transfer of credit between two ledger accounts.
3508
5767
  */
3509
5768
  export interface Transfer {
3510
5769
  /**
@@ -3513,8 +5772,8 @@ export interface Transfer {
3513
5772
  id: string;
3514
5773
 
3515
5774
  /**
3516
- * The amount of the transfer. Provided as a number in the specified currency. Eg:
3517
- * 10.43 for $10.43 USD.
5775
+ * The transfer amount in the currency specified by the currency field. For
5776
+ * example, 10.43 represents $10.43 USD.
3518
5777
  */
3519
5778
  amount: number;
3520
5779
 
@@ -3524,43 +5783,45 @@ export interface Transfer {
3524
5783
  created_at: string;
3525
5784
 
3526
5785
  /**
3527
- * The currency of the credit transaction transfer
5786
+ * The currency in which this transfer amount is denominated.
3528
5787
  */
3529
5788
  currency: Currency;
3530
5789
 
3531
5790
  /**
3532
- * The recipient of the credit transaction transfer
5791
+ * The entity receiving the transferred funds.
3533
5792
  */
3534
5793
  destination: Transfer.User | null | Transfer.Company | null;
3535
5794
 
3536
5795
  /**
3537
- * The ID of the destination ledger account
5796
+ * The unique identifier of the ledger account receiving the funds.
3538
5797
  */
3539
5798
  destination_ledger_account_id: string;
3540
5799
 
3541
5800
  /**
3542
- * The decimal fee of the credit transaction transfer
5801
+ * The flat fee amount deducted from this transfer, in the transfer's currency.
5802
+ * Null if no flat fee was applied.
3543
5803
  */
3544
5804
  fee_amount: number | null;
3545
5805
 
3546
5806
  /**
3547
- * Custom key-value pairs attached to the transfer. Max 50 keys, 500 chars per key,
3548
- * 5000 chars per value.
5807
+ * Custom key-value pairs attached to this transfer. Maximum 50 keys, 500
5808
+ * characters per key, 5000 characters per value.
3549
5809
  */
3550
5810
  metadata: { [key: string]: unknown } | null;
3551
5811
 
3552
5812
  /**
3553
- * The notes of the credit transaction transfer
5813
+ * A free-text note attached to this transfer by the sender. Null if no note was
5814
+ * provided.
3554
5815
  */
3555
5816
  notes: string | null;
3556
5817
 
3557
5818
  /**
3558
- * The sender of the credit transaction transfer
5819
+ * The entity that sent the transferred funds.
3559
5820
  */
3560
5821
  origin: Transfer.User | null | Transfer.Company | null;
3561
5822
 
3562
5823
  /**
3563
- * The ID of the origin ledger account
5824
+ * The unique identifier of the ledger account that sent the funds.
3564
5825
  */
3565
5826
  origin_ledger_account_id: string;
3566
5827
  }
@@ -3577,7 +5838,7 @@ export namespace Transfer {
3577
5838
  id: string;
3578
5839
 
3579
5840
  /**
3580
- * The name of the user from their Whop account.
5841
+ * The user's display name shown on their public profile.
3581
5842
  */
3582
5843
  name: string | null;
3583
5844
 
@@ -3587,7 +5848,7 @@ export namespace Transfer {
3587
5848
  typename: 'User';
3588
5849
 
3589
5850
  /**
3590
- * The username of the user from their Whop account.
5851
+ * The user's unique username shown on their public profile.
3591
5852
  */
3592
5853
  username: string;
3593
5854
  }
@@ -3603,12 +5864,12 @@ export namespace Transfer {
3603
5864
  id: string;
3604
5865
 
3605
5866
  /**
3606
- * The slug/route of the company on the Whop site.
5867
+ * The URL slug for the company's store page (e.g., 'pickaxe' in whop.com/pickaxe).
3607
5868
  */
3608
5869
  route: string;
3609
5870
 
3610
5871
  /**
3611
- * The title of the company.
5872
+ * The display name of the company shown to customers.
3612
5873
  */
3613
5874
  title: string;
3614
5875
 
@@ -3629,7 +5890,7 @@ export namespace Transfer {
3629
5890
  id: string;
3630
5891
 
3631
5892
  /**
3632
- * The name of the user from their Whop account.
5893
+ * The user's display name shown on their public profile.
3633
5894
  */
3634
5895
  name: string | null;
3635
5896
 
@@ -3639,7 +5900,7 @@ export namespace Transfer {
3639
5900
  typename: 'User';
3640
5901
 
3641
5902
  /**
3642
- * The username of the user from their Whop account.
5903
+ * The user's unique username shown on their public profile.
3643
5904
  */
3644
5905
  username: string;
3645
5906
  }
@@ -3655,12 +5916,12 @@ export namespace Transfer {
3655
5916
  id: string;
3656
5917
 
3657
5918
  /**
3658
- * The slug/route of the company on the Whop site.
5919
+ * The URL slug for the company's store page (e.g., 'pickaxe' in whop.com/pickaxe).
3659
5920
  */
3660
5921
  route: string;
3661
5922
 
3662
5923
  /**
3663
- * The title of the company.
5924
+ * The display name of the company shown to customers.
3664
5925
  */
3665
5926
  title: string;
3666
5927