whop_sdk 0.0.2 → 0.0.4

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 (338) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +51 -0
  3. data/README.md +1 -1
  4. data/lib/whop_sdk/client.rb +24 -0
  5. data/lib/whop_sdk/internal/transport/pooled_net_requester.rb +30 -24
  6. data/lib/whop_sdk/models/app_build_create_params.rb +53 -29
  7. data/lib/whop_sdk/models/app_update_params.rb +53 -29
  8. data/lib/whop_sdk/models/assessment_question_types.rb +18 -0
  9. data/lib/whop_sdk/models/billing_reasons.rb +20 -0
  10. data/lib/whop_sdk/models/card_brands.rb +30 -0
  11. data/lib/whop_sdk/models/checkout_configuration.rb +10 -7
  12. data/lib/whop_sdk/models/checkout_configuration_create_params.rb +251 -38
  13. data/lib/whop_sdk/models/checkout_configuration_list_response.rb +10 -7
  14. data/lib/whop_sdk/models/company.rb +13 -1
  15. data/lib/whop_sdk/models/company_create_params.rb +46 -0
  16. data/lib/whop_sdk/models/company_list_params.rb +62 -0
  17. data/lib/whop_sdk/models/company_list_response.rb +175 -0
  18. data/lib/whop_sdk/models/course.rb +230 -0
  19. data/lib/whop_sdk/models/course_chapter.rb +72 -0
  20. data/lib/whop_sdk/models/course_chapter_create_params.rb +30 -0
  21. data/lib/whop_sdk/models/course_chapter_delete_params.rb +14 -0
  22. data/lib/whop_sdk/models/course_chapter_delete_response.rb +8 -0
  23. data/lib/whop_sdk/models/course_chapter_list_params.rb +54 -0
  24. data/lib/whop_sdk/models/course_chapter_list_response.rb +35 -0
  25. data/lib/whop_sdk/models/course_chapter_retrieve_params.rb +14 -0
  26. data/lib/whop_sdk/models/course_chapter_update_params.rb +22 -0
  27. data/lib/whop_sdk/models/course_create_params.rb +127 -0
  28. data/lib/whop_sdk/models/course_delete_params.rb +14 -0
  29. data/lib/whop_sdk/models/course_delete_response.rb +8 -0
  30. data/lib/whop_sdk/models/course_lesson_create_params.rb +54 -0
  31. data/lib/whop_sdk/models/course_lesson_delete_params.rb +14 -0
  32. data/lib/whop_sdk/models/course_lesson_delete_response.rb +8 -0
  33. data/lib/whop_sdk/models/course_lesson_list_params.rb +62 -0
  34. data/lib/whop_sdk/models/course_lesson_list_response.rb +71 -0
  35. data/lib/whop_sdk/models/course_lesson_retrieve_params.rb +14 -0
  36. data/lib/whop_sdk/models/course_lesson_update_params.rb +399 -0
  37. data/lib/whop_sdk/models/course_list_params.rb +62 -0
  38. data/lib/whop_sdk/models/course_list_response.rb +148 -0
  39. data/lib/whop_sdk/models/course_retrieve_params.rb +14 -0
  40. data/lib/whop_sdk/models/course_student_list_params.rb +62 -0
  41. data/lib/whop_sdk/models/course_student_list_response.rb +97 -0
  42. data/lib/whop_sdk/models/course_student_retrieve_params.rb +14 -0
  43. data/lib/whop_sdk/models/course_student_retrieve_response.rb +149 -0
  44. data/lib/whop_sdk/models/course_update_params.rb +221 -0
  45. data/lib/whop_sdk/models/experience_duplicate_params.rb +22 -0
  46. data/lib/whop_sdk/models/experience_update_params.rb +53 -29
  47. data/lib/whop_sdk/models/forum_post.rb +17 -1
  48. data/lib/whop_sdk/models/forum_post_create_params.rb +51 -27
  49. data/lib/whop_sdk/models/forum_post_list_response.rb +17 -1
  50. data/lib/whop_sdk/models/forum_post_update_params.rb +104 -0
  51. data/lib/whop_sdk/models/invoice.rb +6 -2
  52. data/lib/whop_sdk/models/invoice_create_params.rb +48 -32
  53. data/lib/whop_sdk/models/invoice_list_item.rb +6 -2
  54. data/lib/whop_sdk/models/languages.rb +36 -0
  55. data/lib/whop_sdk/models/ledger_account_retrieve_response.rb +9 -0
  56. data/lib/whop_sdk/models/lesson.rb +373 -0
  57. data/lib/whop_sdk/models/lesson_types.rb +20 -0
  58. data/lib/whop_sdk/models/lesson_visibilities.rb +17 -0
  59. data/lib/whop_sdk/models/member_list_params.rb +9 -1
  60. data/lib/whop_sdk/models/membership.rb +31 -1
  61. data/lib/whop_sdk/models/membership_list_params.rb +16 -8
  62. data/lib/whop_sdk/models/membership_list_response.rb +31 -1
  63. data/lib/whop_sdk/models/message_create_params.rb +51 -27
  64. data/lib/whop_sdk/models/message_update_params.rb +92 -0
  65. data/lib/whop_sdk/models/payment.rb +34 -22
  66. data/lib/whop_sdk/models/payment_list_params.rb +3 -18
  67. data/lib/whop_sdk/models/payment_list_response.rb +34 -22
  68. data/lib/whop_sdk/models/payment_method_types.rb +99 -0
  69. data/lib/whop_sdk/models/plan.rb +72 -1
  70. data/lib/whop_sdk/models/plan_create_params.rb +133 -24
  71. data/lib/whop_sdk/models/plan_list_response.rb +75 -1
  72. data/lib/whop_sdk/models/plan_update_params.rb +131 -22
  73. data/lib/whop_sdk/models/product.rb +11 -1
  74. data/lib/whop_sdk/models/product_create_params.rb +1 -45
  75. data/lib/whop_sdk/models/product_list_item.rb +14 -1
  76. data/lib/whop_sdk/models/product_update_params.rb +76 -23
  77. data/lib/whop_sdk/models/promo_code.rb +211 -0
  78. data/lib/whop_sdk/models/promo_code_create_params.rb +140 -0
  79. data/lib/whop_sdk/models/promo_code_delete_params.rb +14 -0
  80. data/lib/whop_sdk/models/promo_code_delete_response.rb +8 -0
  81. data/lib/whop_sdk/models/promo_code_list_params.rb +78 -0
  82. data/lib/whop_sdk/models/promo_code_list_response.rb +181 -0
  83. data/lib/whop_sdk/models/promo_code_retrieve_params.rb +14 -0
  84. data/lib/whop_sdk/models/promo_code_status.rb +17 -0
  85. data/lib/whop_sdk/models/promo_duration.rb +17 -0
  86. data/lib/whop_sdk/models/review_list_params.rb +70 -0
  87. data/lib/whop_sdk/models/review_list_response.rb +183 -0
  88. data/lib/whop_sdk/models/review_retrieve_params.rb +14 -0
  89. data/lib/whop_sdk/models/review_retrieve_response.rb +251 -0
  90. data/lib/whop_sdk/models/review_status.rb +17 -0
  91. data/lib/whop_sdk/models/transfer.rb +9 -1
  92. data/lib/whop_sdk/models/transfer_create_params.rb +9 -1
  93. data/lib/whop_sdk/models/transfer_list_response.rb +9 -1
  94. data/lib/whop_sdk/models.rb +84 -0
  95. data/lib/whop_sdk/resources/app_builds.rb +1 -1
  96. data/lib/whop_sdk/resources/apps.rb +1 -1
  97. data/lib/whop_sdk/resources/checkout_configurations.rb +8 -6
  98. data/lib/whop_sdk/resources/companies.rb +70 -0
  99. data/lib/whop_sdk/resources/course_chapters.rb +151 -0
  100. data/lib/whop_sdk/resources/course_lesson_interactions.rb +2 -2
  101. data/lib/whop_sdk/resources/course_lessons.rb +182 -0
  102. data/lib/whop_sdk/resources/course_students.rb +76 -0
  103. data/lib/whop_sdk/resources/courses.rb +185 -0
  104. data/lib/whop_sdk/resources/experiences.rb +34 -1
  105. data/lib/whop_sdk/resources/forum_posts.rb +34 -1
  106. data/lib/whop_sdk/resources/invoices.rb +11 -11
  107. data/lib/whop_sdk/resources/members.rb +3 -1
  108. data/lib/whop_sdk/resources/memberships.rb +6 -4
  109. data/lib/whop_sdk/resources/messages.rb +29 -1
  110. data/lib/whop_sdk/resources/payments.rb +1 -1
  111. data/lib/whop_sdk/resources/plans.rb +25 -5
  112. data/lib/whop_sdk/resources/products.rb +5 -7
  113. data/lib/whop_sdk/resources/promo_codes.rb +161 -0
  114. data/lib/whop_sdk/resources/reviews.rb +68 -0
  115. data/lib/whop_sdk/resources/transfers.rb +3 -1
  116. data/lib/whop_sdk/version.rb +1 -1
  117. data/lib/whop_sdk.rb +61 -1
  118. data/rbi/whop_sdk/client.rbi +18 -0
  119. data/rbi/whop_sdk/models/app_build_create_params.rbi +80 -40
  120. data/rbi/whop_sdk/models/app_update_params.rbi +86 -37
  121. data/rbi/whop_sdk/models/assessment_question_types.rbi +31 -0
  122. data/rbi/whop_sdk/models/billing_reasons.rbi +27 -0
  123. data/rbi/whop_sdk/models/card_brands.rbi +35 -0
  124. data/rbi/whop_sdk/models/checkout_configuration.rbi +4 -2
  125. data/rbi/whop_sdk/models/checkout_configuration_create_params.rbi +371 -62
  126. data/rbi/whop_sdk/models/checkout_configuration_list_response.rbi +4 -2
  127. data/rbi/whop_sdk/models/company.rbi +10 -0
  128. data/rbi/whop_sdk/models/company_create_params.rbi +67 -0
  129. data/rbi/whop_sdk/models/company_list_params.rbi +83 -0
  130. data/rbi/whop_sdk/models/company_list_response.rbi +235 -0
  131. data/rbi/whop_sdk/models/course.rbi +313 -0
  132. data/rbi/whop_sdk/models/course_chapter.rbi +101 -0
  133. data/rbi/whop_sdk/models/course_chapter_create_params.rbi +51 -0
  134. data/rbi/whop_sdk/models/course_chapter_delete_params.rbi +27 -0
  135. data/rbi/whop_sdk/models/course_chapter_delete_response.rbi +8 -0
  136. data/rbi/whop_sdk/models/course_chapter_list_params.rbi +75 -0
  137. data/rbi/whop_sdk/models/course_chapter_list_response.rbi +47 -0
  138. data/rbi/whop_sdk/models/course_chapter_retrieve_params.rbi +30 -0
  139. data/rbi/whop_sdk/models/course_chapter_update_params.rbi +40 -0
  140. data/rbi/whop_sdk/models/course_create_params.rbi +197 -0
  141. data/rbi/whop_sdk/models/course_delete_params.rbi +27 -0
  142. data/rbi/whop_sdk/models/course_delete_response.rbi +7 -0
  143. data/rbi/whop_sdk/models/course_lesson_create_params.rbi +75 -0
  144. data/rbi/whop_sdk/models/course_lesson_delete_params.rbi +27 -0
  145. data/rbi/whop_sdk/models/course_lesson_delete_response.rbi +8 -0
  146. data/rbi/whop_sdk/models/course_lesson_list_params.rbi +83 -0
  147. data/rbi/whop_sdk/models/course_lesson_list_response.rbi +91 -0
  148. data/rbi/whop_sdk/models/course_lesson_retrieve_params.rbi +27 -0
  149. data/rbi/whop_sdk/models/course_lesson_update_params.rbi +677 -0
  150. data/rbi/whop_sdk/models/course_list_params.rbi +83 -0
  151. data/rbi/whop_sdk/models/course_list_response.rbi +198 -0
  152. data/rbi/whop_sdk/models/course_retrieve_params.rbi +27 -0
  153. data/rbi/whop_sdk/models/course_student_list_params.rbi +83 -0
  154. data/rbi/whop_sdk/models/course_student_list_response.rbi +142 -0
  155. data/rbi/whop_sdk/models/course_student_retrieve_params.rbi +30 -0
  156. data/rbi/whop_sdk/models/course_student_retrieve_response.rbi +250 -0
  157. data/rbi/whop_sdk/models/course_update_params.rbi +339 -0
  158. data/rbi/whop_sdk/models/experience_duplicate_params.rbi +40 -0
  159. data/rbi/whop_sdk/models/experience_update_params.rbi +84 -38
  160. data/rbi/whop_sdk/models/forum_post.rbi +16 -0
  161. data/rbi/whop_sdk/models/forum_post_create_params.rbi +85 -32
  162. data/rbi/whop_sdk/models/forum_post_list_response.rbi +16 -0
  163. data/rbi/whop_sdk/models/forum_post_update_params.rbi +177 -0
  164. data/rbi/whop_sdk/models/invoice.rbi +4 -2
  165. data/rbi/whop_sdk/models/invoice_create_params.rbi +58 -44
  166. data/rbi/whop_sdk/models/invoice_list_item.rbi +4 -2
  167. data/rbi/whop_sdk/models/languages.rbi +40 -0
  168. data/rbi/whop_sdk/models/ledger_account_retrieve_response.rbi +45 -0
  169. data/rbi/whop_sdk/models/lesson.rbi +521 -0
  170. data/rbi/whop_sdk/models/lesson_types.rbi +25 -0
  171. data/rbi/whop_sdk/models/lesson_visibilities.rbi +23 -0
  172. data/rbi/whop_sdk/models/member_list_params.rbi +8 -0
  173. data/rbi/whop_sdk/models/membership.rbi +40 -0
  174. data/rbi/whop_sdk/models/membership_list_params.rbi +16 -8
  175. data/rbi/whop_sdk/models/membership_list_response.rbi +47 -0
  176. data/rbi/whop_sdk/models/message_create_params.rbi +85 -32
  177. data/rbi/whop_sdk/models/message_update_params.rbi +167 -0
  178. data/rbi/whop_sdk/models/payment.rbi +42 -25
  179. data/rbi/whop_sdk/models/payment_list_params.rbi +3 -63
  180. data/rbi/whop_sdk/models/payment_list_response.rbi +42 -25
  181. data/rbi/whop_sdk/models/payment_method_types.rbi +118 -0
  182. data/rbi/whop_sdk/models/plan.rbi +106 -0
  183. data/rbi/whop_sdk/models/plan_create_params.rbi +212 -34
  184. data/rbi/whop_sdk/models/plan_list_response.rbi +118 -0
  185. data/rbi/whop_sdk/models/plan_update_params.rbi +210 -32
  186. data/rbi/whop_sdk/models/product.rbi +12 -0
  187. data/rbi/whop_sdk/models/product_create_params.rbi +0 -74
  188. data/rbi/whop_sdk/models/product_list_item.rbi +12 -0
  189. data/rbi/whop_sdk/models/product_update_params.rbi +136 -33
  190. data/rbi/whop_sdk/models/promo_code.rbi +248 -0
  191. data/rbi/whop_sdk/models/promo_code_create_params.rbi +161 -0
  192. data/rbi/whop_sdk/models/promo_code_delete_params.rbi +27 -0
  193. data/rbi/whop_sdk/models/promo_code_delete_response.rbi +8 -0
  194. data/rbi/whop_sdk/models/promo_code_list_params.rbi +99 -0
  195. data/rbi/whop_sdk/models/promo_code_list_response.rbi +222 -0
  196. data/rbi/whop_sdk/models/promo_code_retrieve_params.rbi +27 -0
  197. data/rbi/whop_sdk/models/promo_code_status.rbi +21 -0
  198. data/rbi/whop_sdk/models/promo_duration.rbi +21 -0
  199. data/rbi/whop_sdk/models/review_list_params.rbi +91 -0
  200. data/rbi/whop_sdk/models/review_list_response.rbi +243 -0
  201. data/rbi/whop_sdk/models/review_retrieve_params.rbi +27 -0
  202. data/rbi/whop_sdk/models/review_retrieve_response.rbi +354 -0
  203. data/rbi/whop_sdk/models/review_status.rbi +21 -0
  204. data/rbi/whop_sdk/models/transfer.rbi +8 -0
  205. data/rbi/whop_sdk/models/transfer_create_params.rbi +8 -0
  206. data/rbi/whop_sdk/models/transfer_list_response.rbi +8 -0
  207. data/rbi/whop_sdk/models.rbi +84 -0
  208. data/rbi/whop_sdk/resources/app_builds.rbi +5 -1
  209. data/rbi/whop_sdk/resources/apps.rbi +7 -1
  210. data/rbi/whop_sdk/resources/checkout_configurations.rbi +8 -7
  211. data/rbi/whop_sdk/resources/companies.rbi +63 -0
  212. data/rbi/whop_sdk/resources/course_chapters.rbi +115 -0
  213. data/rbi/whop_sdk/resources/course_lesson_interactions.rbi +2 -2
  214. data/rbi/whop_sdk/resources/course_lessons.rbi +182 -0
  215. data/rbi/whop_sdk/resources/course_students.rbi +65 -0
  216. data/rbi/whop_sdk/resources/courses.rbi +172 -0
  217. data/rbi/whop_sdk/resources/experiences.rbi +32 -1
  218. data/rbi/whop_sdk/resources/forum_posts.rbi +40 -1
  219. data/rbi/whop_sdk/resources/invoices.rbi +18 -18
  220. data/rbi/whop_sdk/resources/members.rbi +3 -0
  221. data/rbi/whop_sdk/resources/memberships.rbi +6 -3
  222. data/rbi/whop_sdk/resources/messages.rbi +36 -1
  223. data/rbi/whop_sdk/resources/payments.rbi +1 -3
  224. data/rbi/whop_sdk/resources/plans.rbi +57 -3
  225. data/rbi/whop_sdk/resources/products.rbi +10 -8
  226. data/rbi/whop_sdk/resources/promo_codes.rbi +147 -0
  227. data/rbi/whop_sdk/resources/reviews.rbi +56 -0
  228. data/rbi/whop_sdk/resources/transfers.rbi +3 -0
  229. data/sig/whop_sdk/client.rbs +12 -0
  230. data/sig/whop_sdk/models/app_build_create_params.rbs +29 -10
  231. data/sig/whop_sdk/models/app_update_params.rbs +29 -10
  232. data/sig/whop_sdk/models/assessment_question_types.rbs +17 -0
  233. data/sig/whop_sdk/models/billing_reasons.rbs +24 -0
  234. data/sig/whop_sdk/models/card_brands.rbs +44 -0
  235. data/sig/whop_sdk/models/checkout_configuration_create_params.rbs +159 -21
  236. data/sig/whop_sdk/models/company.rbs +5 -0
  237. data/sig/whop_sdk/models/company_create_params.rbs +41 -0
  238. data/sig/whop_sdk/models/company_list_params.rbs +51 -0
  239. data/sig/whop_sdk/models/company_list_response.rbs +109 -0
  240. data/sig/whop_sdk/models/course.rbs +171 -0
  241. data/sig/whop_sdk/models/course_chapter.rbs +49 -0
  242. data/sig/whop_sdk/models/course_chapter_create_params.rbs +28 -0
  243. data/sig/whop_sdk/models/course_chapter_delete_params.rbs +15 -0
  244. data/sig/whop_sdk/models/course_chapter_delete_response.rbs +5 -0
  245. data/sig/whop_sdk/models/course_chapter_list_params.rbs +46 -0
  246. data/sig/whop_sdk/models/course_chapter_list_response.rbs +18 -0
  247. data/sig/whop_sdk/models/course_chapter_retrieve_params.rbs +15 -0
  248. data/sig/whop_sdk/models/course_chapter_update_params.rbs +23 -0
  249. data/sig/whop_sdk/models/course_create_params.rbs +87 -0
  250. data/sig/whop_sdk/models/course_delete_params.rbs +15 -0
  251. data/sig/whop_sdk/models/course_delete_response.rbs +5 -0
  252. data/sig/whop_sdk/models/course_lesson_create_params.rbs +46 -0
  253. data/sig/whop_sdk/models/course_lesson_delete_params.rbs +15 -0
  254. data/sig/whop_sdk/models/course_lesson_delete_response.rbs +5 -0
  255. data/sig/whop_sdk/models/course_lesson_list_params.rbs +51 -0
  256. data/sig/whop_sdk/models/course_lesson_list_response.rbs +50 -0
  257. data/sig/whop_sdk/models/course_lesson_retrieve_params.rbs +15 -0
  258. data/sig/whop_sdk/models/course_lesson_update_params.rbs +248 -0
  259. data/sig/whop_sdk/models/course_list_params.rbs +51 -0
  260. data/sig/whop_sdk/models/course_list_response.rbs +102 -0
  261. data/sig/whop_sdk/models/course_retrieve_params.rbs +15 -0
  262. data/sig/whop_sdk/models/course_student_list_params.rbs +51 -0
  263. data/sig/whop_sdk/models/course_student_list_response.rbs +64 -0
  264. data/sig/whop_sdk/models/course_student_retrieve_params.rbs +15 -0
  265. data/sig/whop_sdk/models/course_student_retrieve_response.rbs +106 -0
  266. data/sig/whop_sdk/models/course_update_params.rbs +156 -0
  267. data/sig/whop_sdk/models/experience_duplicate_params.rbs +23 -0
  268. data/sig/whop_sdk/models/experience_update_params.rbs +29 -10
  269. data/sig/whop_sdk/models/forum_post.rbs +10 -0
  270. data/sig/whop_sdk/models/forum_post_create_params.rbs +29 -10
  271. data/sig/whop_sdk/models/forum_post_list_response.rbs +10 -0
  272. data/sig/whop_sdk/models/forum_post_update_params.rbs +72 -0
  273. data/sig/whop_sdk/models/invoice_create_params.rbs +28 -18
  274. data/sig/whop_sdk/models/languages.rbs +56 -0
  275. data/sig/whop_sdk/models/ledger_account_retrieve_response.rbs +20 -1
  276. data/sig/whop_sdk/models/lesson.rbs +248 -0
  277. data/sig/whop_sdk/models/lesson_types.rbs +19 -0
  278. data/sig/whop_sdk/models/lesson_visibilities.rbs +14 -0
  279. data/sig/whop_sdk/models/member_list_params.rbs +6 -1
  280. data/sig/whop_sdk/models/membership.rbs +17 -0
  281. data/sig/whop_sdk/models/membership_list_params.rbs +11 -6
  282. data/sig/whop_sdk/models/membership_list_response.rbs +17 -0
  283. data/sig/whop_sdk/models/message_create_params.rbs +29 -10
  284. data/sig/whop_sdk/models/message_update_params.rbs +67 -0
  285. data/sig/whop_sdk/models/payment.rbs +17 -12
  286. data/sig/whop_sdk/models/payment_list_params.rbs +4 -25
  287. data/sig/whop_sdk/models/payment_list_response.rbs +17 -12
  288. data/sig/whop_sdk/models/payment_method_types.rbs +182 -0
  289. data/sig/whop_sdk/models/plan.rbs +47 -0
  290. data/sig/whop_sdk/models/plan_create_params.rbs +81 -10
  291. data/sig/whop_sdk/models/plan_list_response.rbs +47 -0
  292. data/sig/whop_sdk/models/plan_update_params.rbs +81 -10
  293. data/sig/whop_sdk/models/product.rbs +5 -0
  294. data/sig/whop_sdk/models/product_create_params.rbs +0 -22
  295. data/sig/whop_sdk/models/product_list_item.rbs +5 -0
  296. data/sig/whop_sdk/models/product_update_params.rbs +46 -10
  297. data/sig/whop_sdk/models/promo_code.rbs +134 -0
  298. data/sig/whop_sdk/models/promo_code_create_params.rbs +96 -0
  299. data/sig/whop_sdk/models/promo_code_delete_params.rbs +15 -0
  300. data/sig/whop_sdk/models/promo_code_delete_response.rbs +5 -0
  301. data/sig/whop_sdk/models/promo_code_list_params.rbs +61 -0
  302. data/sig/whop_sdk/models/promo_code_list_response.rbs +117 -0
  303. data/sig/whop_sdk/models/promo_code_retrieve_params.rbs +15 -0
  304. data/sig/whop_sdk/models/promo_code_status.rbs +15 -0
  305. data/sig/whop_sdk/models/promo_duration.rbs +15 -0
  306. data/sig/whop_sdk/models/review_list_params.rbs +56 -0
  307. data/sig/whop_sdk/models/review_list_response.rbs +116 -0
  308. data/sig/whop_sdk/models/review_retrieve_params.rbs +15 -0
  309. data/sig/whop_sdk/models/review_retrieve_response.rbs +152 -0
  310. data/sig/whop_sdk/models/review_status.rbs +15 -0
  311. data/sig/whop_sdk/models/transfer.rbs +5 -0
  312. data/sig/whop_sdk/models/transfer_create_params.rbs +5 -0
  313. data/sig/whop_sdk/models/transfer_list_response.rbs +5 -0
  314. data/sig/whop_sdk/models.rbs +84 -0
  315. data/sig/whop_sdk/resources/app_builds.rbs +1 -1
  316. data/sig/whop_sdk/resources/apps.rbs +1 -1
  317. data/sig/whop_sdk/resources/checkout_configurations.rbs +2 -2
  318. data/sig/whop_sdk/resources/companies.rbs +18 -0
  319. data/sig/whop_sdk/resources/course_chapters.rbs +35 -0
  320. data/sig/whop_sdk/resources/course_lessons.rbs +49 -0
  321. data/sig/whop_sdk/resources/course_students.rbs +22 -0
  322. data/sig/whop_sdk/resources/courses.rbs +49 -0
  323. data/sig/whop_sdk/resources/experiences.rbs +7 -1
  324. data/sig/whop_sdk/resources/forum_posts.rbs +10 -1
  325. data/sig/whop_sdk/resources/invoices.rbs +5 -5
  326. data/sig/whop_sdk/resources/members.rbs +1 -0
  327. data/sig/whop_sdk/resources/memberships.rbs +2 -1
  328. data/sig/whop_sdk/resources/messages.rbs +9 -1
  329. data/sig/whop_sdk/resources/payments.rbs +1 -1
  330. data/sig/whop_sdk/resources/plans.rbs +12 -2
  331. data/sig/whop_sdk/resources/products.rbs +2 -3
  332. data/sig/whop_sdk/resources/promo_codes.rbs +45 -0
  333. data/sig/whop_sdk/resources/reviews.rbs +23 -0
  334. data/sig/whop_sdk/resources/transfers.rbs +1 -0
  335. metadata +213 -5
  336. data/lib/whop_sdk/models/invoice_create_response.rb +0 -27
  337. data/rbi/whop_sdk/models/invoice_create_response.rbi +0 -49
  338. data/sig/whop_sdk/models/invoice_create_response.rbs +0 -19
@@ -42,8 +42,8 @@ module WhopSDK
42
42
  # @!attribute image
43
43
  # An image for the plan. This will be visible on the product page to customers.
44
44
  #
45
- # @return [WhopSDK::Models::PlanUpdateParams::Image, nil]
46
- optional :image, -> { WhopSDK::PlanUpdateParams::Image }, nil?: true
45
+ # @return [WhopSDK::Models::PlanUpdateParams::Image::AttachmentInputWithDirectUploadID, WhopSDK::Models::PlanUpdateParams::Image::AttachmentInputWithID, nil]
46
+ optional :image, union: -> { WhopSDK::PlanUpdateParams::Image }, nil?: true
47
47
 
48
48
  # @!attribute initial_price
49
49
  # An additional amount charged upon first purchase.
@@ -70,12 +70,41 @@ module WhopSDK
70
70
  # @return [Symbol, WhopSDK::Models::TaxType, nil]
71
71
  optional :override_tax_type, enum: -> { WhopSDK::TaxType }, nil?: true
72
72
 
73
+ # @!attribute payment_method_configuration
74
+ # The explicit payment method configuration for the plan. If sent as null, the
75
+ # custom configuration will be removed.
76
+ #
77
+ # @return [WhopSDK::Models::PlanUpdateParams::PaymentMethodConfiguration, nil]
78
+ optional :payment_method_configuration,
79
+ -> { WhopSDK::PlanUpdateParams::PaymentMethodConfiguration },
80
+ nil?: true
81
+
73
82
  # @!attribute renewal_price
74
83
  # The amount the customer is charged every billing period.
75
84
  #
76
85
  # @return [Float, nil]
77
86
  optional :renewal_price, Float, nil?: true
78
87
 
88
+ # @!attribute stock
89
+ # The number of units available for purchase.
90
+ #
91
+ # @return [Integer, nil]
92
+ optional :stock, Integer, nil?: true
93
+
94
+ # @!attribute strike_through_initial_price
95
+ # The price to display with a strikethrough for the initial price. Provided as a
96
+ # number in dollars. Eg: 19.99 for $19.99
97
+ #
98
+ # @return [Float, nil]
99
+ optional :strike_through_initial_price, Float, nil?: true
100
+
101
+ # @!attribute strike_through_renewal_price
102
+ # The price to display with a strikethrough for the renewal price. Provided as a
103
+ # number in dollars. Eg: 19.99 for $19.99
104
+ #
105
+ # @return [Float, nil]
106
+ optional :strike_through_renewal_price, Float, nil?: true
107
+
79
108
  # @!attribute title
80
109
  # The title of the plan. This will be visible on the product page to customers.
81
110
  #
@@ -88,13 +117,19 @@ module WhopSDK
88
117
  # @return [Integer, nil]
89
118
  optional :trial_period_days, Integer, nil?: true
90
119
 
120
+ # @!attribute unlimited_stock
121
+ # Limits/doesn't limit the number of units available for purchase.
122
+ #
123
+ # @return [Boolean, nil]
124
+ optional :unlimited_stock, WhopSDK::Internal::Type::Boolean, nil?: true
125
+
91
126
  # @!attribute visibility
92
127
  # Visibility of a resource
93
128
  #
94
129
  # @return [Symbol, WhopSDK::Models::Visibility, nil]
95
130
  optional :visibility, enum: -> { WhopSDK::Visibility }, nil?: true
96
131
 
97
- # @!method initialize(billing_period: nil, currency: nil, custom_fields: nil, description: nil, expiration_days: nil, image: nil, initial_price: nil, internal_notes: nil, offer_cancel_discount: nil, override_tax_type: nil, renewal_price: nil, title: nil, trial_period_days: nil, visibility: nil, request_options: {})
132
+ # @!method initialize(billing_period: nil, currency: nil, custom_fields: nil, description: nil, expiration_days: nil, image: nil, initial_price: nil, internal_notes: nil, offer_cancel_discount: nil, override_tax_type: nil, payment_method_configuration: nil, renewal_price: nil, stock: nil, strike_through_initial_price: nil, strike_through_renewal_price: nil, title: nil, trial_period_days: nil, unlimited_stock: nil, visibility: nil, request_options: {})
98
133
  # Some parameter documentations has been truncated, see
99
134
  # {WhopSDK::Models::PlanUpdateParams} for more details.
100
135
  #
@@ -108,7 +143,7 @@ module WhopSDK
108
143
  #
109
144
  # @param expiration_days [Integer, nil] The interval at which the plan charges (expiration plans).
110
145
  #
111
- # @param image [WhopSDK::Models::PlanUpdateParams::Image, nil] An image for the plan. This will be visible on the product page to customers.
146
+ # @param image [WhopSDK::Models::PlanUpdateParams::Image::AttachmentInputWithDirectUploadID, WhopSDK::Models::PlanUpdateParams::Image::AttachmentInputWithID, nil] An image for the plan. This will be visible on the product page to customers.
112
147
  #
113
148
  # @param initial_price [Float, nil] An additional amount charged upon first purchase.
114
149
  #
@@ -118,12 +153,22 @@ module WhopSDK
118
153
  #
119
154
  # @param override_tax_type [Symbol, WhopSDK::Models::TaxType, nil] Whether or not the tax is included in a plan's price (or if it hasn't been set u
120
155
  #
156
+ # @param payment_method_configuration [WhopSDK::Models::PlanUpdateParams::PaymentMethodConfiguration, nil] The explicit payment method configuration for the plan. If sent as null, the cus
157
+ #
121
158
  # @param renewal_price [Float, nil] The amount the customer is charged every billing period.
122
159
  #
160
+ # @param stock [Integer, nil] The number of units available for purchase.
161
+ #
162
+ # @param strike_through_initial_price [Float, nil] The price to display with a strikethrough for the initial price. Provided as a n
163
+ #
164
+ # @param strike_through_renewal_price [Float, nil] The price to display with a strikethrough for the renewal price. Provided as a n
165
+ #
123
166
  # @param title [String, nil] The title of the plan. This will be visible on the product page to customers.
124
167
  #
125
168
  # @param trial_period_days [Integer, nil] The number of free trial days added before a renewal plan.
126
169
  #
170
+ # @param unlimited_stock [Boolean, nil] Limits/doesn't limit the number of units available for purchase.
171
+ #
127
172
  # @param visibility [Symbol, WhopSDK::Models::Visibility, nil] Visibility of a resource
128
173
  #
129
174
  # @param request_options [WhopSDK::RequestOptions, Hash{Symbol=>Object}]
@@ -179,32 +224,96 @@ module WhopSDK
179
224
  # @param field_type [Symbol, :text] The type of the custom field.
180
225
  end
181
226
 
182
- class Image < WhopSDK::Internal::Type::BaseModel
183
- # @!attribute id
184
- # The ID of an existing attachment object. Use this when updating a resource and
185
- # keeping a subset of the attachments. Don't use this unless you know what you're
186
- # doing.
227
+ # An image for the plan. This will be visible on the product page to customers.
228
+ module Image
229
+ extend WhopSDK::Internal::Type::Union
230
+
231
+ # Input for an attachment
232
+ variant -> { WhopSDK::PlanUpdateParams::Image::AttachmentInputWithDirectUploadID }
233
+
234
+ # Input for an attachment
235
+ variant -> { WhopSDK::PlanUpdateParams::Image::AttachmentInputWithID }
236
+
237
+ class AttachmentInputWithDirectUploadID < WhopSDK::Internal::Type::BaseModel
238
+ # @!attribute direct_upload_id
239
+ # This ID should be used the first time you upload an attachment. It is the ID of
240
+ # the direct upload that was created when uploading the file to S3 via the
241
+ # mediaDirectUpload mutation.
242
+ #
243
+ # @return [String]
244
+ required :direct_upload_id, String
245
+
246
+ # @!method initialize(direct_upload_id:)
247
+ # Some parameter documentations has been truncated, see
248
+ # {WhopSDK::Models::PlanUpdateParams::Image::AttachmentInputWithDirectUploadID}
249
+ # for more details.
250
+ #
251
+ # Input for an attachment
252
+ #
253
+ # @param direct_upload_id [String] This ID should be used the first time you upload an attachment. It is the ID of
254
+ end
255
+
256
+ class AttachmentInputWithID < WhopSDK::Internal::Type::BaseModel
257
+ # @!attribute id
258
+ # The ID of an existing attachment object. Use this when updating a resource and
259
+ # keeping a subset of the attachments. Don't use this unless you know what you're
260
+ # doing.
261
+ #
262
+ # @return [String]
263
+ required :id, String
264
+
265
+ # @!method initialize(id:)
266
+ # Some parameter documentations has been truncated, see
267
+ # {WhopSDK::Models::PlanUpdateParams::Image::AttachmentInputWithID} for more
268
+ # details.
269
+ #
270
+ # Input for an attachment
271
+ #
272
+ # @param id [String] The ID of an existing attachment object. Use this when updating a resource and k
273
+ end
274
+
275
+ # @!method self.variants
276
+ # @return [Array(WhopSDK::Models::PlanUpdateParams::Image::AttachmentInputWithDirectUploadID, WhopSDK::Models::PlanUpdateParams::Image::AttachmentInputWithID)]
277
+ end
278
+
279
+ class PaymentMethodConfiguration < WhopSDK::Internal::Type::BaseModel
280
+ # @!attribute disabled
281
+ # An array of payment method identifiers that are explicitly disabled. Only
282
+ # applies if the include_platform_defaults is true.
187
283
  #
188
- # @return [String, nil]
189
- optional :id, String, nil?: true
284
+ # @return [Array<Symbol, WhopSDK::Models::PaymentMethodTypes>]
285
+ required :disabled, -> { WhopSDK::Internal::Type::ArrayOf[enum: WhopSDK::PaymentMethodTypes] }
190
286
 
191
- # @!attribute direct_upload_id
192
- # This ID should be used the first time you upload an attachment. It is the ID of
193
- # the direct upload that was created when uploading the file to S3 via the
194
- # mediaDirectUpload mutation.
287
+ # @!attribute enabled
288
+ # An array of payment method identifiers that are explicitly enabled. This means
289
+ # these payment methods will be shown on checkout. Example use case is to only
290
+ # enable a specific payment method like cashapp, or extending the platform
291
+ # defaults with additional methods.
195
292
  #
196
- # @return [String, nil]
197
- optional :direct_upload_id, String, nil?: true
293
+ # @return [Array<Symbol, WhopSDK::Models::PaymentMethodTypes>]
294
+ required :enabled, -> { WhopSDK::Internal::Type::ArrayOf[enum: WhopSDK::PaymentMethodTypes] }
295
+
296
+ # @!attribute include_platform_defaults
297
+ # Whether Whop's platform default payment method enablement settings are included
298
+ # in this configuration. The full list of default payment methods can be found in
299
+ # the documentation at docs.whop.com/payments.
300
+ #
301
+ # @return [Boolean]
302
+ required :include_platform_defaults, WhopSDK::Internal::Type::Boolean
198
303
 
199
- # @!method initialize(id: nil, direct_upload_id: nil)
304
+ # @!method initialize(disabled:, enabled:, include_platform_defaults:)
200
305
  # Some parameter documentations has been truncated, see
201
- # {WhopSDK::Models::PlanUpdateParams::Image} for more details.
306
+ # {WhopSDK::Models::PlanUpdateParams::PaymentMethodConfiguration} for more
307
+ # details.
308
+ #
309
+ # The explicit payment method configuration for the plan. If sent as null, the
310
+ # custom configuration will be removed.
202
311
  #
203
- # An image for the plan. This will be visible on the product page to customers.
312
+ # @param disabled [Array<Symbol, WhopSDK::Models::PaymentMethodTypes>] An array of payment method identifiers that are explicitly disabled. Only applie
204
313
  #
205
- # @param id [String, nil] The ID of an existing attachment object. Use this when updating a resource and k
314
+ # @param enabled [Array<Symbol, WhopSDK::Models::PaymentMethodTypes>] An array of payment method identifiers that are explicitly enabled. This means t
206
315
  #
207
- # @param direct_upload_id [String, nil] This ID should be used the first time you upload an attachment. It is the ID of
316
+ # @param include_platform_defaults [Boolean] Whether Whop's platform default payment method enablement settings are included
208
317
  end
209
318
  end
210
319
  end
@@ -51,6 +51,14 @@ module WhopSDK
51
51
  # @return [String, nil]
52
52
  required :description, String, nil?: true
53
53
 
54
+ # @!attribute external_identifier
55
+ # A unique identifier used to create or update products. When provided on product
56
+ # creation endpoints, we’ll look up an existing product by this identifier — if it
57
+ # exists, we’ll update it; if not, we’ll create a new one.
58
+ #
59
+ # @return [String, nil]
60
+ required :external_identifier, String, nil?: true
61
+
54
62
  # @!attribute global_affiliate_percentage
55
63
  # The percentage of a transaction a user is eligible to earn from the whop
56
64
  # marketplace global affiliate program.
@@ -143,7 +151,7 @@ module WhopSDK
143
151
  # @return [Symbol, WhopSDK::Models::Visibility]
144
152
  required :visibility, enum: -> { WhopSDK::Visibility }
145
153
 
146
- # @!method initialize(id:, business_type:, company:, created_at:, custom_cta:, custom_cta_url:, custom_statement_descriptor:, description:, global_affiliate_percentage:, global_affiliate_status:, headline:, industry_type:, member_affiliate_percentage:, member_affiliate_status:, member_count:, owner_user:, product_tax_code:, published_reviews_count:, route:, title:, updated_at:, verified:, visibility:)
154
+ # @!method initialize(id:, business_type:, company:, created_at:, custom_cta:, custom_cta_url:, custom_statement_descriptor:, description:, external_identifier:, global_affiliate_percentage:, global_affiliate_status:, headline:, industry_type:, member_affiliate_percentage:, member_affiliate_status:, member_count:, owner_user:, product_tax_code:, published_reviews_count:, route:, title:, updated_at:, verified:, visibility:)
147
155
  # Some parameter documentations has been truncated, see {WhopSDK::Models::Product}
148
156
  # for more details.
149
157
  #
@@ -165,6 +173,8 @@ module WhopSDK
165
173
  #
166
174
  # @param description [String, nil] A short description of what the company offers or does.
167
175
  #
176
+ # @param external_identifier [String, nil] A unique identifier used to create or update products. When provided on product
177
+ #
168
178
  # @param global_affiliate_percentage [Float, nil] The percentage of a transaction a user is eligible to earn from the whop marketp
169
179
  #
170
180
  # @param global_affiliate_status [Symbol, WhopSDK::Models::GlobalAffiliateStatus] The status of the global affiliate program for this product.
@@ -19,18 +19,6 @@ module WhopSDK
19
19
  # @return [String]
20
20
  required :title, String
21
21
 
22
- # @!attribute access_pass_type
23
- # The different types an access pass can be.
24
- #
25
- # @return [Symbol, WhopSDK::Models::AccessPassType, nil]
26
- optional :access_pass_type, enum: -> { WhopSDK::AccessPassType }, nil?: true
27
-
28
- # @!attribute banner_image
29
- # A banner image for the product in png, jpeg format
30
- #
31
- # @return [WhopSDK::Models::ProductCreateParams::BannerImage, nil]
32
- optional :banner_image, -> { WhopSDK::ProductCreateParams::BannerImage }, nil?: true
33
-
34
22
  # @!attribute business_type
35
23
  # The different business types a company can be.
36
24
  #
@@ -149,7 +137,7 @@ module WhopSDK
149
137
  # @return [Symbol, WhopSDK::Models::Visibility, nil]
150
138
  optional :visibility, enum: -> { WhopSDK::Visibility }, nil?: true
151
139
 
152
- # @!method initialize(company_id:, title:, access_pass_type: nil, banner_image: nil, business_type: nil, collect_shipping_address: nil, custom_cta: nil, custom_cta_url: nil, custom_statement_descriptor: nil, description: nil, experience_ids: nil, global_affiliate_percentage: nil, global_affiliate_status: nil, headline: nil, industry_type: nil, member_affiliate_percentage: nil, member_affiliate_status: nil, plan_options: nil, product_highlights: nil, product_tax_code_id: nil, redirect_purchase_url: nil, route: nil, visibility: nil, request_options: {})
140
+ # @!method initialize(company_id:, title:, business_type: nil, collect_shipping_address: nil, custom_cta: nil, custom_cta_url: nil, custom_statement_descriptor: nil, description: nil, experience_ids: nil, global_affiliate_percentage: nil, global_affiliate_status: nil, headline: nil, industry_type: nil, member_affiliate_percentage: nil, member_affiliate_status: nil, plan_options: nil, product_highlights: nil, product_tax_code_id: nil, redirect_purchase_url: nil, route: nil, visibility: nil, request_options: {})
153
141
  # Some parameter documentations has been truncated, see
154
142
  # {WhopSDK::Models::ProductCreateParams} for more details.
155
143
  #
@@ -157,10 +145,6 @@ module WhopSDK
157
145
  #
158
146
  # @param title [String] The title of the product.
159
147
  #
160
- # @param access_pass_type [Symbol, WhopSDK::Models::AccessPassType, nil] The different types an access pass can be.
161
- #
162
- # @param banner_image [WhopSDK::Models::ProductCreateParams::BannerImage, nil] A banner image for the product in png, jpeg format
163
- #
164
148
  # @param business_type [Symbol, WhopSDK::Models::BusinessTypes, nil] The different business types a company can be.
165
149
  #
166
150
  # @param collect_shipping_address [Boolean, nil] Whether or not to collect shipping information at checkout from the customer.
@@ -202,34 +186,6 @@ module WhopSDK
202
186
  #
203
187
  # @param request_options [WhopSDK::RequestOptions, Hash{Symbol=>Object}]
204
188
 
205
- class BannerImage < WhopSDK::Internal::Type::BaseModel
206
- # @!attribute id
207
- # The ID of an existing attachment object. Use this when updating a resource and
208
- # keeping a subset of the attachments. Don't use this unless you know what you're
209
- # doing.
210
- #
211
- # @return [String, nil]
212
- optional :id, String, nil?: true
213
-
214
- # @!attribute direct_upload_id
215
- # This ID should be used the first time you upload an attachment. It is the ID of
216
- # the direct upload that was created when uploading the file to S3 via the
217
- # mediaDirectUpload mutation.
218
- #
219
- # @return [String, nil]
220
- optional :direct_upload_id, String, nil?: true
221
-
222
- # @!method initialize(id: nil, direct_upload_id: nil)
223
- # Some parameter documentations has been truncated, see
224
- # {WhopSDK::Models::ProductCreateParams::BannerImage} for more details.
225
- #
226
- # A banner image for the product in png, jpeg format
227
- #
228
- # @param id [String, nil] The ID of an existing attachment object. Use this when updating a resource and k
229
- #
230
- # @param direct_upload_id [String, nil] This ID should be used the first time you upload an attachment. It is the ID of
231
- end
232
-
233
189
  class PlanOptions < WhopSDK::Internal::Type::BaseModel
234
190
  # @!attribute base_currency
235
191
  # The available currencies on the platform
@@ -21,6 +21,14 @@ module WhopSDK
21
21
  # @return [Time]
22
22
  required :created_at, Time
23
23
 
24
+ # @!attribute external_identifier
25
+ # A unique identifier used to create or update products. When provided on product
26
+ # creation endpoints, we’ll look up an existing product by this identifier — if it
27
+ # exists, we’ll update it; if not, we’ll create a new one.
28
+ #
29
+ # @return [String, nil]
30
+ required :external_identifier, String, nil?: true
31
+
24
32
  # @!attribute headline
25
33
  # The headline of the product.
26
34
  #
@@ -75,7 +83,10 @@ module WhopSDK
75
83
  # @return [Symbol, WhopSDK::Models::Visibility]
76
84
  required :visibility, enum: -> { WhopSDK::Visibility }
77
85
 
78
- # @!method initialize(id:, business_type:, created_at:, headline:, industry_type:, member_count:, published_reviews_count:, route:, title:, updated_at:, verified:, visibility:)
86
+ # @!method initialize(id:, business_type:, created_at:, external_identifier:, headline:, industry_type:, member_count:, published_reviews_count:, route:, title:, updated_at:, verified:, visibility:)
87
+ # Some parameter documentations has been truncated, see
88
+ # {WhopSDK::Models::ProductListItem} for more details.
89
+ #
79
90
  # An object representing a (sanitized) access pass.
80
91
  #
81
92
  # @param id [String] The internal ID of the public product.
@@ -84,6 +95,8 @@ module WhopSDK
84
95
  #
85
96
  # @param created_at [Time] When the product was created.
86
97
  #
98
+ # @param external_identifier [String, nil] A unique identifier used to create or update products. When provided on product
99
+ #
87
100
  # @param headline [String, nil] The headline of the product.
88
101
  #
89
102
  # @param industry_type [Symbol, WhopSDK::Models::IndustryTypes, nil] The different industry types a company can be in.
@@ -10,8 +10,8 @@ module WhopSDK
10
10
  # @!attribute banner_image
11
11
  # A banner image for the product in png, jpeg format
12
12
  #
13
- # @return [WhopSDK::Models::ProductUpdateParams::BannerImage, nil]
14
- optional :banner_image, -> { WhopSDK::ProductUpdateParams::BannerImage }, nil?: true
13
+ # @return [WhopSDK::Models::ProductUpdateParams::BannerImage::AttachmentInputWithDirectUploadID, WhopSDK::Models::ProductUpdateParams::BannerImage::AttachmentInputWithID, nil]
14
+ optional :banner_image, union: -> { WhopSDK::ProductUpdateParams::BannerImage }, nil?: true
15
15
 
16
16
  # @!attribute business_type
17
17
  # The different business types a company can be.
@@ -105,6 +105,12 @@ module WhopSDK
105
105
  # @return [String, nil]
106
106
  optional :route, String, nil?: true
107
107
 
108
+ # @!attribute store_page_config
109
+ # Configuration for a product on the company's store page.
110
+ #
111
+ # @return [WhopSDK::Models::ProductUpdateParams::StorePageConfig, nil]
112
+ optional :store_page_config, -> { WhopSDK::ProductUpdateParams::StorePageConfig }, nil?: true
113
+
108
114
  # @!attribute title
109
115
  # The title of the product.
110
116
  #
@@ -117,11 +123,11 @@ module WhopSDK
117
123
  # @return [Symbol, WhopSDK::Models::Visibility, nil]
118
124
  optional :visibility, enum: -> { WhopSDK::Visibility }, nil?: true
119
125
 
120
- # @!method initialize(banner_image: nil, business_type: nil, collect_shipping_address: nil, custom_cta: nil, custom_cta_url: nil, custom_statement_descriptor: nil, description: nil, global_affiliate_percentage: nil, global_affiliate_status: nil, headline: nil, industry_type: nil, member_affiliate_percentage: nil, member_affiliate_status: nil, product_tax_code_id: nil, redirect_purchase_url: nil, route: nil, title: nil, visibility: nil, request_options: {})
126
+ # @!method initialize(banner_image: nil, business_type: nil, collect_shipping_address: nil, custom_cta: nil, custom_cta_url: nil, custom_statement_descriptor: nil, description: nil, global_affiliate_percentage: nil, global_affiliate_status: nil, headline: nil, industry_type: nil, member_affiliate_percentage: nil, member_affiliate_status: nil, product_tax_code_id: nil, redirect_purchase_url: nil, route: nil, store_page_config: nil, title: nil, visibility: nil, request_options: {})
121
127
  # Some parameter documentations has been truncated, see
122
128
  # {WhopSDK::Models::ProductUpdateParams} for more details.
123
129
  #
124
- # @param banner_image [WhopSDK::Models::ProductUpdateParams::BannerImage, nil] A banner image for the product in png, jpeg format
130
+ # @param banner_image [WhopSDK::Models::ProductUpdateParams::BannerImage::AttachmentInputWithDirectUploadID, WhopSDK::Models::ProductUpdateParams::BannerImage::AttachmentInputWithID, nil] A banner image for the product in png, jpeg format
125
131
  #
126
132
  # @param business_type [Symbol, WhopSDK::Models::BusinessTypes, nil] The different business types a company can be.
127
133
  #
@@ -154,38 +160,85 @@ module WhopSDK
154
160
  #
155
161
  # @param route [String, nil] The route of the product.
156
162
  #
163
+ # @param store_page_config [WhopSDK::Models::ProductUpdateParams::StorePageConfig, nil] Configuration for a product on the company's store page.
164
+ #
157
165
  # @param title [String, nil] The title of the product.
158
166
  #
159
167
  # @param visibility [Symbol, WhopSDK::Models::Visibility, nil] Visibility of a resource
160
168
  #
161
169
  # @param request_options [WhopSDK::RequestOptions, Hash{Symbol=>Object}]
162
170
 
163
- class BannerImage < WhopSDK::Internal::Type::BaseModel
164
- # @!attribute id
165
- # The ID of an existing attachment object. Use this when updating a resource and
166
- # keeping a subset of the attachments. Don't use this unless you know what you're
167
- # doing.
168
- #
169
- # @return [String, nil]
170
- optional :id, String, nil?: true
171
+ # A banner image for the product in png, jpeg format
172
+ module BannerImage
173
+ extend WhopSDK::Internal::Type::Union
174
+
175
+ # Input for an attachment
176
+ variant -> { WhopSDK::ProductUpdateParams::BannerImage::AttachmentInputWithDirectUploadID }
177
+
178
+ # Input for an attachment
179
+ variant -> { WhopSDK::ProductUpdateParams::BannerImage::AttachmentInputWithID }
180
+
181
+ class AttachmentInputWithDirectUploadID < WhopSDK::Internal::Type::BaseModel
182
+ # @!attribute direct_upload_id
183
+ # This ID should be used the first time you upload an attachment. It is the ID of
184
+ # the direct upload that was created when uploading the file to S3 via the
185
+ # mediaDirectUpload mutation.
186
+ #
187
+ # @return [String]
188
+ required :direct_upload_id, String
189
+
190
+ # @!method initialize(direct_upload_id:)
191
+ # Some parameter documentations has been truncated, see
192
+ # {WhopSDK::Models::ProductUpdateParams::BannerImage::AttachmentInputWithDirectUploadID}
193
+ # for more details.
194
+ #
195
+ # Input for an attachment
196
+ #
197
+ # @param direct_upload_id [String] This ID should be used the first time you upload an attachment. It is the ID of
198
+ end
199
+
200
+ class AttachmentInputWithID < WhopSDK::Internal::Type::BaseModel
201
+ # @!attribute id
202
+ # The ID of an existing attachment object. Use this when updating a resource and
203
+ # keeping a subset of the attachments. Don't use this unless you know what you're
204
+ # doing.
205
+ #
206
+ # @return [String]
207
+ required :id, String
208
+
209
+ # @!method initialize(id:)
210
+ # Some parameter documentations has been truncated, see
211
+ # {WhopSDK::Models::ProductUpdateParams::BannerImage::AttachmentInputWithID} for
212
+ # more details.
213
+ #
214
+ # Input for an attachment
215
+ #
216
+ # @param id [String] The ID of an existing attachment object. Use this when updating a resource and k
217
+ end
218
+
219
+ # @!method self.variants
220
+ # @return [Array(WhopSDK::Models::ProductUpdateParams::BannerImage::AttachmentInputWithDirectUploadID, WhopSDK::Models::ProductUpdateParams::BannerImage::AttachmentInputWithID)]
221
+ end
171
222
 
172
- # @!attribute direct_upload_id
173
- # This ID should be used the first time you upload an attachment. It is the ID of
174
- # the direct upload that was created when uploading the file to S3 via the
175
- # mediaDirectUpload mutation.
223
+ class StorePageConfig < WhopSDK::Internal::Type::BaseModel
224
+ # @!attribute custom_cta
225
+ # Custom call-to-action text for the product's store page.
176
226
  #
177
227
  # @return [String, nil]
178
- optional :direct_upload_id, String, nil?: true
228
+ optional :custom_cta, String, nil?: true
179
229
 
180
- # @!method initialize(id: nil, direct_upload_id: nil)
181
- # Some parameter documentations has been truncated, see
182
- # {WhopSDK::Models::ProductUpdateParams::BannerImage} for more details.
230
+ # @!attribute show_price
231
+ # Whether or not to show the price on the product's store page.
183
232
  #
184
- # A banner image for the product in png, jpeg format
233
+ # @return [Boolean, nil]
234
+ optional :show_price, WhopSDK::Internal::Type::Boolean, nil?: true
235
+
236
+ # @!method initialize(custom_cta: nil, show_price: nil)
237
+ # Configuration for a product on the company's store page.
185
238
  #
186
- # @param id [String, nil] The ID of an existing attachment object. Use this when updating a resource and k
239
+ # @param custom_cta [String, nil] Custom call-to-action text for the product's store page.
187
240
  #
188
- # @param direct_upload_id [String, nil] This ID should be used the first time you upload an attachment. It is the ID of
241
+ # @param show_price [Boolean, nil] Whether or not to show the price on the product's store page.
189
242
  end
190
243
  end
191
244
  end