whop-sdk 0.0.10__py3-none-any.whl

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 (352) hide show
  1. whop_sdk/__init__.py +94 -0
  2. whop_sdk/_base_client.py +1995 -0
  3. whop_sdk/_client.py +800 -0
  4. whop_sdk/_compat.py +219 -0
  5. whop_sdk/_constants.py +14 -0
  6. whop_sdk/_exceptions.py +112 -0
  7. whop_sdk/_files.py +123 -0
  8. whop_sdk/_models.py +857 -0
  9. whop_sdk/_qs.py +150 -0
  10. whop_sdk/_resource.py +43 -0
  11. whop_sdk/_response.py +830 -0
  12. whop_sdk/_streaming.py +333 -0
  13. whop_sdk/_types.py +260 -0
  14. whop_sdk/_utils/__init__.py +64 -0
  15. whop_sdk/_utils/_compat.py +45 -0
  16. whop_sdk/_utils/_datetime_parse.py +136 -0
  17. whop_sdk/_utils/_logs.py +25 -0
  18. whop_sdk/_utils/_proxy.py +65 -0
  19. whop_sdk/_utils/_reflection.py +42 -0
  20. whop_sdk/_utils/_resources_proxy.py +24 -0
  21. whop_sdk/_utils/_streams.py +12 -0
  22. whop_sdk/_utils/_sync.py +58 -0
  23. whop_sdk/_utils/_transform.py +457 -0
  24. whop_sdk/_utils/_typing.py +156 -0
  25. whop_sdk/_utils/_utils.py +421 -0
  26. whop_sdk/_version.py +4 -0
  27. whop_sdk/lib/.keep +4 -0
  28. whop_sdk/pagination.py +61 -0
  29. whop_sdk/py.typed +0 -0
  30. whop_sdk/resources/__init__.py +540 -0
  31. whop_sdk/resources/access_tokens.py +341 -0
  32. whop_sdk/resources/account_links.py +211 -0
  33. whop_sdk/resources/app_builds.py +587 -0
  34. whop_sdk/resources/apps.py +684 -0
  35. whop_sdk/resources/authorized_users.py +353 -0
  36. whop_sdk/resources/chat_channels.py +469 -0
  37. whop_sdk/resources/checkout_configurations.py +776 -0
  38. whop_sdk/resources/companies.py +465 -0
  39. whop_sdk/resources/course_chapters.py +602 -0
  40. whop_sdk/resources/course_lesson_interactions.py +343 -0
  41. whop_sdk/resources/course_lessons.py +1040 -0
  42. whop_sdk/resources/course_students.py +327 -0
  43. whop_sdk/resources/courses.py +776 -0
  44. whop_sdk/resources/disputes.py +693 -0
  45. whop_sdk/resources/entries.py +556 -0
  46. whop_sdk/resources/experiences.py +983 -0
  47. whop_sdk/resources/forum_posts.py +656 -0
  48. whop_sdk/resources/forums.py +446 -0
  49. whop_sdk/resources/invoices.py +1099 -0
  50. whop_sdk/resources/ledger_accounts.py +171 -0
  51. whop_sdk/resources/members.py +429 -0
  52. whop_sdk/resources/memberships.py +818 -0
  53. whop_sdk/resources/messages.py +558 -0
  54. whop_sdk/resources/notifications.py +388 -0
  55. whop_sdk/resources/payment_tokens.py +359 -0
  56. whop_sdk/resources/payments.py +1040 -0
  57. whop_sdk/resources/plans.py +1001 -0
  58. whop_sdk/resources/products.py +970 -0
  59. whop_sdk/resources/promo_codes.py +668 -0
  60. whop_sdk/resources/reactions.py +423 -0
  61. whop_sdk/resources/refunds.py +347 -0
  62. whop_sdk/resources/reviews.py +332 -0
  63. whop_sdk/resources/setup_intents.py +349 -0
  64. whop_sdk/resources/shipments.py +451 -0
  65. whop_sdk/resources/support_channels.py +455 -0
  66. whop_sdk/resources/transfers.py +513 -0
  67. whop_sdk/resources/users.py +248 -0
  68. whop_sdk/resources/webhooks.py +69 -0
  69. whop_sdk/resources/withdrawals.py +341 -0
  70. whop_sdk/types/__init__.py +262 -0
  71. whop_sdk/types/access_token_create_params.py +64 -0
  72. whop_sdk/types/access_token_create_response.py +15 -0
  73. whop_sdk/types/account_link_create_params.py +27 -0
  74. whop_sdk/types/account_link_create_response.py +15 -0
  75. whop_sdk/types/app_build_create_params.py +72 -0
  76. whop_sdk/types/app_build_list_params.py +42 -0
  77. whop_sdk/types/app_build_list_response.py +50 -0
  78. whop_sdk/types/app_create_params.py +19 -0
  79. whop_sdk/types/app_list_params.py +59 -0
  80. whop_sdk/types/app_list_response.py +110 -0
  81. whop_sdk/types/app_type.py +7 -0
  82. whop_sdk/types/app_update_params.py +67 -0
  83. whop_sdk/types/assessment_question_types.py +7 -0
  84. whop_sdk/types/authorized_user_list_params.py +41 -0
  85. whop_sdk/types/authorized_user_list_response.py +33 -0
  86. whop_sdk/types/authorized_user_retrieve_response.py +33 -0
  87. whop_sdk/types/billing_reasons.py +9 -0
  88. whop_sdk/types/card_brands.py +25 -0
  89. whop_sdk/types/chat_channel_list_params.py +28 -0
  90. whop_sdk/types/chat_channel_list_response.py +43 -0
  91. whop_sdk/types/chat_channel_update_params.py +32 -0
  92. whop_sdk/types/checkout_configuration_create_params.py +373 -0
  93. whop_sdk/types/checkout_configuration_list_params.py +41 -0
  94. whop_sdk/types/checkout_configuration_list_response.py +104 -0
  95. whop_sdk/types/checkout_modes.py +7 -0
  96. whop_sdk/types/company_create_params.py +22 -0
  97. whop_sdk/types/company_list_params.py +38 -0
  98. whop_sdk/types/company_list_response.py +76 -0
  99. whop_sdk/types/course.py +122 -0
  100. whop_sdk/types/course_chapter.py +32 -0
  101. whop_sdk/types/course_chapter_create_params.py +16 -0
  102. whop_sdk/types/course_chapter_delete_response.py +7 -0
  103. whop_sdk/types/course_chapter_list_params.py +25 -0
  104. whop_sdk/types/course_chapter_list_response.py +16 -0
  105. whop_sdk/types/course_chapter_update_params.py +12 -0
  106. whop_sdk/types/course_create_params.py +78 -0
  107. whop_sdk/types/course_delete_response.py +7 -0
  108. whop_sdk/types/course_lesson_create_params.py +63 -0
  109. whop_sdk/types/course_lesson_delete_response.py +7 -0
  110. whop_sdk/types/course_lesson_interaction_completed_webhook_event.py +26 -0
  111. whop_sdk/types/course_lesson_interaction_list_params.py +34 -0
  112. whop_sdk/types/course_lesson_list_params.py +28 -0
  113. whop_sdk/types/course_lesson_list_response.py +57 -0
  114. whop_sdk/types/course_lesson_mark_as_completed_response.py +7 -0
  115. whop_sdk/types/course_lesson_start_response.py +7 -0
  116. whop_sdk/types/course_lesson_submit_assessment_params.py +26 -0
  117. whop_sdk/types/course_lesson_submit_assessment_response.py +62 -0
  118. whop_sdk/types/course_lesson_update_params.py +222 -0
  119. whop_sdk/types/course_list_params.py +28 -0
  120. whop_sdk/types/course_list_response.py +90 -0
  121. whop_sdk/types/course_student_list_params.py +28 -0
  122. whop_sdk/types/course_student_list_response.py +42 -0
  123. whop_sdk/types/course_student_retrieve_response.py +61 -0
  124. whop_sdk/types/course_update_params.py +114 -0
  125. whop_sdk/types/course_visibilities.py +7 -0
  126. whop_sdk/types/dispute.py +284 -0
  127. whop_sdk/types/dispute_created_webhook_event.py +26 -0
  128. whop_sdk/types/dispute_list_params.py +38 -0
  129. whop_sdk/types/dispute_list_response.py +77 -0
  130. whop_sdk/types/dispute_statuses.py +17 -0
  131. whop_sdk/types/dispute_update_evidence_params.py +159 -0
  132. whop_sdk/types/dispute_updated_webhook_event.py +26 -0
  133. whop_sdk/types/embed_type.py +7 -0
  134. whop_sdk/types/entry_approve_response.py +10 -0
  135. whop_sdk/types/entry_approved_webhook_event.py +26 -0
  136. whop_sdk/types/entry_created_webhook_event.py +26 -0
  137. whop_sdk/types/entry_deleted_webhook_event.py +26 -0
  138. whop_sdk/types/entry_denied_webhook_event.py +26 -0
  139. whop_sdk/types/entry_list_params.py +52 -0
  140. whop_sdk/types/entry_list_response.py +56 -0
  141. whop_sdk/types/experience_attach_params.py +12 -0
  142. whop_sdk/types/experience_create_params.py +22 -0
  143. whop_sdk/types/experience_delete_response.py +7 -0
  144. whop_sdk/types/experience_detach_params.py +12 -0
  145. whop_sdk/types/experience_duplicate_params.py +13 -0
  146. whop_sdk/types/experience_list_params.py +40 -0
  147. whop_sdk/types/experience_list_response.py +73 -0
  148. whop_sdk/types/experience_update_params.py +46 -0
  149. whop_sdk/types/forum_list_params.py +28 -0
  150. whop_sdk/types/forum_list_response.py +33 -0
  151. whop_sdk/types/forum_post_create_params.py +101 -0
  152. whop_sdk/types/forum_post_list_params.py +31 -0
  153. whop_sdk/types/forum_post_list_response.py +60 -0
  154. whop_sdk/types/forum_post_update_params.py +56 -0
  155. whop_sdk/types/forum_post_visibility_type.py +7 -0
  156. whop_sdk/types/forum_update_params.py +23 -0
  157. whop_sdk/types/invoice_create_params.py +515 -0
  158. whop_sdk/types/invoice_created_webhook_event.py +26 -0
  159. whop_sdk/types/invoice_list_params.py +53 -0
  160. whop_sdk/types/invoice_paid_webhook_event.py +26 -0
  161. whop_sdk/types/invoice_past_due_webhook_event.py +26 -0
  162. whop_sdk/types/invoice_void_response.py +7 -0
  163. whop_sdk/types/invoice_voided_webhook_event.py +26 -0
  164. whop_sdk/types/languages.py +30 -0
  165. whop_sdk/types/ledger_account_retrieve_response.py +93 -0
  166. whop_sdk/types/lesson.py +219 -0
  167. whop_sdk/types/lesson_types.py +7 -0
  168. whop_sdk/types/lesson_visibilities.py +7 -0
  169. whop_sdk/types/member_list_params.py +73 -0
  170. whop_sdk/types/member_list_response.py +65 -0
  171. whop_sdk/types/member_retrieve_response.py +79 -0
  172. whop_sdk/types/membership_activated_webhook_event.py +29 -0
  173. whop_sdk/types/membership_cancel_params.py +13 -0
  174. whop_sdk/types/membership_deactivated_webhook_event.py +29 -0
  175. whop_sdk/types/membership_list_params.py +73 -0
  176. whop_sdk/types/membership_list_response.py +128 -0
  177. whop_sdk/types/membership_pause_params.py +16 -0
  178. whop_sdk/types/membership_update_params.py +13 -0
  179. whop_sdk/types/message_create_params.py +63 -0
  180. whop_sdk/types/message_list_params.py +30 -0
  181. whop_sdk/types/message_list_response.py +90 -0
  182. whop_sdk/types/message_update_params.py +45 -0
  183. whop_sdk/types/notification_create_params.py +93 -0
  184. whop_sdk/types/notification_create_response.py +10 -0
  185. whop_sdk/types/payment_create_params.py +162 -0
  186. whop_sdk/types/payment_failed_webhook_event.py +26 -0
  187. whop_sdk/types/payment_list_params.py +67 -0
  188. whop_sdk/types/payment_list_response.py +273 -0
  189. whop_sdk/types/payment_method_types.py +94 -0
  190. whop_sdk/types/payment_pending_webhook_event.py +26 -0
  191. whop_sdk/types/payment_provider.py +9 -0
  192. whop_sdk/types/payment_refund_params.py +13 -0
  193. whop_sdk/types/payment_succeeded_webhook_event.py +26 -0
  194. whop_sdk/types/payment_token_list_params.py +38 -0
  195. whop_sdk/types/payment_token_list_response.py +41 -0
  196. whop_sdk/types/payment_token_retrieve_params.py +12 -0
  197. whop_sdk/types/payment_token_retrieve_response.py +41 -0
  198. whop_sdk/types/plan_create_params.py +162 -0
  199. whop_sdk/types/plan_delete_response.py +7 -0
  200. whop_sdk/types/plan_list_params.py +57 -0
  201. whop_sdk/types/plan_list_response.py +128 -0
  202. whop_sdk/types/plan_update_params.py +155 -0
  203. whop_sdk/types/product_create_params.py +147 -0
  204. whop_sdk/types/product_delete_response.py +7 -0
  205. whop_sdk/types/product_list_params.py +49 -0
  206. whop_sdk/types/product_update_params.py +82 -0
  207. whop_sdk/types/promo_code.py +90 -0
  208. whop_sdk/types/promo_code_create_params.py +70 -0
  209. whop_sdk/types/promo_code_delete_response.py +7 -0
  210. whop_sdk/types/promo_code_list_params.py +45 -0
  211. whop_sdk/types/promo_code_list_response.py +79 -0
  212. whop_sdk/types/promo_code_status.py +7 -0
  213. whop_sdk/types/promo_duration.py +7 -0
  214. whop_sdk/types/reaction_create_params.py +19 -0
  215. whop_sdk/types/reaction_list_params.py +25 -0
  216. whop_sdk/types/reaction_list_response.py +32 -0
  217. whop_sdk/types/refund_created_webhook_event.py +154 -0
  218. whop_sdk/types/refund_list_params.py +38 -0
  219. whop_sdk/types/refund_list_response.py +53 -0
  220. whop_sdk/types/refund_reference_status.py +7 -0
  221. whop_sdk/types/refund_reference_type.py +9 -0
  222. whop_sdk/types/refund_retrieve_response.py +129 -0
  223. whop_sdk/types/refund_status.py +7 -0
  224. whop_sdk/types/refund_updated_webhook_event.py +154 -0
  225. whop_sdk/types/review_list_params.py +40 -0
  226. whop_sdk/types/review_list_response.py +78 -0
  227. whop_sdk/types/review_retrieve_response.py +103 -0
  228. whop_sdk/types/review_status.py +7 -0
  229. whop_sdk/types/setup_intent.py +111 -0
  230. whop_sdk/types/setup_intent_canceled_webhook_event.py +29 -0
  231. whop_sdk/types/setup_intent_list_params.py +38 -0
  232. whop_sdk/types/setup_intent_list_response.py +111 -0
  233. whop_sdk/types/setup_intent_requires_action_webhook_event.py +29 -0
  234. whop_sdk/types/setup_intent_status.py +7 -0
  235. whop_sdk/types/setup_intent_succeeded_webhook_event.py +29 -0
  236. whop_sdk/types/shared/__init__.py +62 -0
  237. whop_sdk/types/shared/access_level.py +7 -0
  238. whop_sdk/types/shared/access_pass_type.py +7 -0
  239. whop_sdk/types/shared/app.py +187 -0
  240. whop_sdk/types/shared/app_build.py +50 -0
  241. whop_sdk/types/shared/app_build_platforms.py +7 -0
  242. whop_sdk/types/shared/app_build_statuses.py +7 -0
  243. whop_sdk/types/shared/app_statuses.py +7 -0
  244. whop_sdk/types/shared/app_view_type.py +7 -0
  245. whop_sdk/types/shared/authorized_user_roles.py +9 -0
  246. whop_sdk/types/shared/business_types.py +22 -0
  247. whop_sdk/types/shared/chat_channel.py +43 -0
  248. whop_sdk/types/shared/checkout_configuration.py +104 -0
  249. whop_sdk/types/shared/collection_method.py +7 -0
  250. whop_sdk/types/shared/company.py +91 -0
  251. whop_sdk/types/shared/course_lesson_interaction.py +63 -0
  252. whop_sdk/types/shared/course_lesson_interaction_list_item.py +44 -0
  253. whop_sdk/types/shared/currency.py +93 -0
  254. whop_sdk/types/shared/custom_cta.py +21 -0
  255. whop_sdk/types/shared/direction.py +7 -0
  256. whop_sdk/types/shared/dms_post_types.py +7 -0
  257. whop_sdk/types/shared/email_notification_preferences.py +7 -0
  258. whop_sdk/types/shared/entry.py +70 -0
  259. whop_sdk/types/shared/entry_status.py +7 -0
  260. whop_sdk/types/shared/experience.py +91 -0
  261. whop_sdk/types/shared/forum.py +33 -0
  262. whop_sdk/types/shared/forum_post.py +60 -0
  263. whop_sdk/types/shared/friendly_receipt_status.py +24 -0
  264. whop_sdk/types/shared/global_affiliate_status.py +7 -0
  265. whop_sdk/types/shared/industry_types.py +67 -0
  266. whop_sdk/types/shared/invoice.py +64 -0
  267. whop_sdk/types/shared/invoice_list_item.py +64 -0
  268. whop_sdk/types/shared/invoice_status.py +7 -0
  269. whop_sdk/types/shared/member_most_recent_actions.py +22 -0
  270. whop_sdk/types/shared/member_statuses.py +7 -0
  271. whop_sdk/types/shared/membership.py +128 -0
  272. whop_sdk/types/shared/membership_status.py +9 -0
  273. whop_sdk/types/shared/message.py +90 -0
  274. whop_sdk/types/shared/page_info.py +21 -0
  275. whop_sdk/types/shared/payment.py +273 -0
  276. whop_sdk/types/shared/plan.py +159 -0
  277. whop_sdk/types/shared/plan_type.py +7 -0
  278. whop_sdk/types/shared/product.py +132 -0
  279. whop_sdk/types/shared/product_list_item.py +57 -0
  280. whop_sdk/types/shared/promo_type.py +7 -0
  281. whop_sdk/types/shared/reaction.py +32 -0
  282. whop_sdk/types/shared/receipt_status.py +7 -0
  283. whop_sdk/types/shared/release_method.py +7 -0
  284. whop_sdk/types/shared/shipment.py +48 -0
  285. whop_sdk/types/shared/shipment_carrier.py +84 -0
  286. whop_sdk/types/shared/shipment_status.py +18 -0
  287. whop_sdk/types/shared/shipment_substatus.py +36 -0
  288. whop_sdk/types/shared/support_channel.py +39 -0
  289. whop_sdk/types/shared/tax_type.py +7 -0
  290. whop_sdk/types/shared/transfer.py +112 -0
  291. whop_sdk/types/shared/visibility.py +7 -0
  292. whop_sdk/types/shared/visibility_filter.py +9 -0
  293. whop_sdk/types/shared/who_can_comment_types.py +7 -0
  294. whop_sdk/types/shared/who_can_post.py +7 -0
  295. whop_sdk/types/shared/who_can_post_types.py +7 -0
  296. whop_sdk/types/shared/who_can_react.py +7 -0
  297. whop_sdk/types/shared_params/__init__.py +34 -0
  298. whop_sdk/types/shared_params/access_level.py +9 -0
  299. whop_sdk/types/shared_params/access_pass_type.py +9 -0
  300. whop_sdk/types/shared_params/app_build_platforms.py +9 -0
  301. whop_sdk/types/shared_params/app_build_statuses.py +9 -0
  302. whop_sdk/types/shared_params/app_statuses.py +9 -0
  303. whop_sdk/types/shared_params/app_view_type.py +9 -0
  304. whop_sdk/types/shared_params/authorized_user_roles.py +11 -0
  305. whop_sdk/types/shared_params/business_types.py +24 -0
  306. whop_sdk/types/shared_params/collection_method.py +9 -0
  307. whop_sdk/types/shared_params/currency.py +95 -0
  308. whop_sdk/types/shared_params/custom_cta.py +23 -0
  309. whop_sdk/types/shared_params/direction.py +9 -0
  310. whop_sdk/types/shared_params/email_notification_preferences.py +9 -0
  311. whop_sdk/types/shared_params/entry_status.py +9 -0
  312. whop_sdk/types/shared_params/friendly_receipt_status.py +26 -0
  313. whop_sdk/types/shared_params/global_affiliate_status.py +9 -0
  314. whop_sdk/types/shared_params/industry_types.py +69 -0
  315. whop_sdk/types/shared_params/invoice_status.py +9 -0
  316. whop_sdk/types/shared_params/member_most_recent_actions.py +24 -0
  317. whop_sdk/types/shared_params/member_statuses.py +9 -0
  318. whop_sdk/types/shared_params/membership_status.py +11 -0
  319. whop_sdk/types/shared_params/plan_type.py +9 -0
  320. whop_sdk/types/shared_params/promo_type.py +9 -0
  321. whop_sdk/types/shared_params/receipt_status.py +9 -0
  322. whop_sdk/types/shared_params/release_method.py +9 -0
  323. whop_sdk/types/shared_params/tax_type.py +9 -0
  324. whop_sdk/types/shared_params/visibility.py +9 -0
  325. whop_sdk/types/shared_params/visibility_filter.py +11 -0
  326. whop_sdk/types/shared_params/who_can_comment_types.py +9 -0
  327. whop_sdk/types/shared_params/who_can_post.py +9 -0
  328. whop_sdk/types/shared_params/who_can_post_types.py +9 -0
  329. whop_sdk/types/shared_params/who_can_react.py +9 -0
  330. whop_sdk/types/shipment_create_params.py +18 -0
  331. whop_sdk/types/shipment_list_params.py +31 -0
  332. whop_sdk/types/shipment_list_response.py +48 -0
  333. whop_sdk/types/support_channel_create_params.py +15 -0
  334. whop_sdk/types/support_channel_list_params.py +40 -0
  335. whop_sdk/types/support_channel_list_response.py +39 -0
  336. whop_sdk/types/transfer_create_params.py +39 -0
  337. whop_sdk/types/transfer_list_params.py +50 -0
  338. whop_sdk/types/transfer_list_response.py +38 -0
  339. whop_sdk/types/unwrap_webhook_event.py +52 -0
  340. whop_sdk/types/user_check_access_response.py +14 -0
  341. whop_sdk/types/user_retrieve_response.py +36 -0
  342. whop_sdk/types/withdrawal_fee_types.py +7 -0
  343. whop_sdk/types/withdrawal_list_params.py +38 -0
  344. whop_sdk/types/withdrawal_list_response.py +45 -0
  345. whop_sdk/types/withdrawal_retrieve_response.py +154 -0
  346. whop_sdk/types/withdrawal_speeds.py +7 -0
  347. whop_sdk/types/withdrawal_status.py +9 -0
  348. whop_sdk/types/withdrawal_types.py +7 -0
  349. whop_sdk-0.0.10.dist-info/METADATA +509 -0
  350. whop_sdk-0.0.10.dist-info/RECORD +352 -0
  351. whop_sdk-0.0.10.dist-info/WHEEL +4 -0
  352. whop_sdk-0.0.10.dist-info/licenses/LICENSE +201 -0
@@ -0,0 +1,154 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import Optional
4
+ from datetime import datetime
5
+ from typing_extensions import Literal
6
+
7
+ from .._models import BaseModel
8
+ from .card_brands import CardBrands
9
+ from .refund_status import RefundStatus
10
+ from .billing_reasons import BillingReasons
11
+ from .shared.currency import Currency
12
+ from .payment_provider import PaymentProvider
13
+ from .payment_method_types import PaymentMethodTypes
14
+ from .refund_reference_type import RefundReferenceType
15
+ from .refund_reference_status import RefundReferenceStatus
16
+ from .shared.membership_status import MembershipStatus
17
+
18
+ __all__ = [
19
+ "RefundCreatedWebhookEvent",
20
+ "Data",
21
+ "DataPayment",
22
+ "DataPaymentMember",
23
+ "DataPaymentMembership",
24
+ "DataPaymentUser",
25
+ ]
26
+
27
+
28
+ class DataPaymentMember(BaseModel):
29
+ id: str
30
+ """The ID of the member"""
31
+
32
+ phone: Optional[str] = None
33
+ """The phone number for the member, if available."""
34
+
35
+
36
+ class DataPaymentMembership(BaseModel):
37
+ id: str
38
+ """The internal ID of the membership."""
39
+
40
+ status: MembershipStatus
41
+ """The state of the membership."""
42
+
43
+
44
+ class DataPaymentUser(BaseModel):
45
+ id: str
46
+ """The internal ID of the user."""
47
+
48
+ email: Optional[str] = None
49
+ """The email of the user"""
50
+
51
+ name: Optional[str] = None
52
+ """The name of the user from their Whop account."""
53
+
54
+ username: str
55
+ """The username of the user from their Whop account."""
56
+
57
+
58
+ class DataPayment(BaseModel):
59
+ id: str
60
+ """The payment ID"""
61
+
62
+ billing_reason: Optional[BillingReasons] = None
63
+ """The reason why a specific payment was billed"""
64
+
65
+ card_brand: Optional[CardBrands] = None
66
+ """Possible card brands that a payment token can have"""
67
+
68
+ card_last4: Optional[str] = None
69
+ """The last 4 digits of the card used to make the payment."""
70
+
71
+ created_at: datetime
72
+ """The datetime the payment was created"""
73
+
74
+ currency: Optional[Currency] = None
75
+ """The available currencies on the platform"""
76
+
77
+ dispute_alerted_at: Optional[datetime] = None
78
+ """When an alert came in that this transaction will be disputed"""
79
+
80
+ member: Optional[DataPaymentMember] = None
81
+ """The member attached to this payment."""
82
+
83
+ membership: Optional[DataPaymentMembership] = None
84
+ """The membership attached to this payment."""
85
+
86
+ paid_at: Optional[datetime] = None
87
+ """The datetime the payment was paid"""
88
+
89
+ payment_method_type: Optional[PaymentMethodTypes] = None
90
+ """The different types of payment methods that can be used."""
91
+
92
+ subtotal: Optional[float] = None
93
+ """The subtotal to show to the creator (excluding buyer fees)."""
94
+
95
+ total: Optional[float] = None
96
+ """The total to show to the creator (excluding buyer fees)."""
97
+
98
+ usd_total: Optional[float] = None
99
+ """The total in USD to show to the creator (excluding buyer fees)."""
100
+
101
+ user: Optional[DataPaymentUser] = None
102
+ """The user that made this payment."""
103
+
104
+
105
+ class Data(BaseModel):
106
+ id: str
107
+ """The ID of the refund."""
108
+
109
+ amount: float
110
+ """The amount of the refund."""
111
+
112
+ created_at: datetime
113
+ """The time the refund was created."""
114
+
115
+ currency: Currency
116
+ """The currency of the refund."""
117
+
118
+ payment: Optional[DataPayment] = None
119
+ """The payment associated with the refund."""
120
+
121
+ provider: PaymentProvider
122
+ """The provider of the refund."""
123
+
124
+ provider_created_at: Optional[datetime] = None
125
+ """The time the refund was created by the provider."""
126
+
127
+ reference_status: Optional[RefundReferenceStatus] = None
128
+ """The status of the refund reference."""
129
+
130
+ reference_type: Optional[RefundReferenceType] = None
131
+ """The type of refund reference that was made available by the payment provider."""
132
+
133
+ reference_value: Optional[str] = None
134
+ """The value of the reference."""
135
+
136
+ status: RefundStatus
137
+ """The status of the refund."""
138
+
139
+
140
+ class RefundCreatedWebhookEvent(BaseModel):
141
+ id: str
142
+ """A unique ID for every single webhook request"""
143
+
144
+ api_version: Literal["v1"]
145
+ """The API version for this webhook"""
146
+
147
+ data: Data
148
+ """An object representing a refund made on a payment."""
149
+
150
+ timestamp: datetime
151
+ """The timestamp in ISO 8601 format that the webhook was sent at on the server"""
152
+
153
+ type: Literal["refund.created"]
154
+ """The webhook event type"""
@@ -0,0 +1,38 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing import Union, Optional
6
+ from datetime import datetime
7
+ from typing_extensions import Required, Annotated, TypedDict
8
+
9
+ from .._utils import PropertyInfo
10
+ from .shared.direction import Direction
11
+
12
+ __all__ = ["RefundListParams"]
13
+
14
+
15
+ class RefundListParams(TypedDict, total=False):
16
+ payment_id: Required[str]
17
+ """The ID of the payment to list refunds for"""
18
+
19
+ after: Optional[str]
20
+ """Returns the elements in the list that come after the specified cursor."""
21
+
22
+ before: Optional[str]
23
+ """Returns the elements in the list that come before the specified cursor."""
24
+
25
+ created_after: Annotated[Union[str, datetime, None], PropertyInfo(format="iso8601")]
26
+ """The minimum creation date to filter by"""
27
+
28
+ created_before: Annotated[Union[str, datetime, None], PropertyInfo(format="iso8601")]
29
+ """The maximum creation date to filter by"""
30
+
31
+ direction: Optional[Direction]
32
+ """The direction of the sort."""
33
+
34
+ first: Optional[int]
35
+ """Returns the first _n_ elements from the list."""
36
+
37
+ last: Optional[int]
38
+ """Returns the last _n_ elements from the list."""
@@ -0,0 +1,53 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import Optional
4
+ from datetime import datetime
5
+
6
+ from .._models import BaseModel
7
+ from .refund_status import RefundStatus
8
+ from .shared.currency import Currency
9
+ from .payment_provider import PaymentProvider
10
+ from .refund_reference_type import RefundReferenceType
11
+ from .refund_reference_status import RefundReferenceStatus
12
+
13
+ __all__ = ["RefundListResponse", "Payment"]
14
+
15
+
16
+ class Payment(BaseModel):
17
+ id: str
18
+ """The payment ID"""
19
+
20
+
21
+ class RefundListResponse(BaseModel):
22
+ id: str
23
+ """The ID of the refund."""
24
+
25
+ amount: float
26
+ """The amount of the refund."""
27
+
28
+ created_at: datetime
29
+ """The time the refund was created."""
30
+
31
+ currency: Currency
32
+ """The currency of the refund."""
33
+
34
+ payment: Optional[Payment] = None
35
+ """The payment associated with the refund."""
36
+
37
+ provider: PaymentProvider
38
+ """The provider of the refund."""
39
+
40
+ provider_created_at: Optional[datetime] = None
41
+ """The time the refund was created by the provider."""
42
+
43
+ reference_status: Optional[RefundReferenceStatus] = None
44
+ """The status of the refund reference."""
45
+
46
+ reference_type: Optional[RefundReferenceType] = None
47
+ """The type of refund reference that was made available by the payment provider."""
48
+
49
+ reference_value: Optional[str] = None
50
+ """The value of the reference."""
51
+
52
+ status: RefundStatus
53
+ """The status of the refund."""
@@ -0,0 +1,7 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing_extensions import Literal, TypeAlias
4
+
5
+ __all__ = ["RefundReferenceStatus"]
6
+
7
+ RefundReferenceStatus: TypeAlias = Literal["available", "pending", "unavailable"]
@@ -0,0 +1,9 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing_extensions import Literal, TypeAlias
4
+
5
+ __all__ = ["RefundReferenceType"]
6
+
7
+ RefundReferenceType: TypeAlias = Literal[
8
+ "acquirer_reference_number", "retrieval_reference_number", "system_trace_audit_number"
9
+ ]
@@ -0,0 +1,129 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import Optional
4
+ from datetime import datetime
5
+
6
+ from .._models import BaseModel
7
+ from .card_brands import CardBrands
8
+ from .refund_status import RefundStatus
9
+ from .billing_reasons import BillingReasons
10
+ from .shared.currency import Currency
11
+ from .payment_provider import PaymentProvider
12
+ from .payment_method_types import PaymentMethodTypes
13
+ from .refund_reference_type import RefundReferenceType
14
+ from .refund_reference_status import RefundReferenceStatus
15
+ from .shared.membership_status import MembershipStatus
16
+
17
+ __all__ = ["RefundRetrieveResponse", "Payment", "PaymentMember", "PaymentMembership", "PaymentUser"]
18
+
19
+
20
+ class PaymentMember(BaseModel):
21
+ id: str
22
+ """The ID of the member"""
23
+
24
+ phone: Optional[str] = None
25
+ """The phone number for the member, if available."""
26
+
27
+
28
+ class PaymentMembership(BaseModel):
29
+ id: str
30
+ """The internal ID of the membership."""
31
+
32
+ status: MembershipStatus
33
+ """The state of the membership."""
34
+
35
+
36
+ class PaymentUser(BaseModel):
37
+ id: str
38
+ """The internal ID of the user."""
39
+
40
+ email: Optional[str] = None
41
+ """The email of the user"""
42
+
43
+ name: Optional[str] = None
44
+ """The name of the user from their Whop account."""
45
+
46
+ username: str
47
+ """The username of the user from their Whop account."""
48
+
49
+
50
+ class Payment(BaseModel):
51
+ id: str
52
+ """The payment ID"""
53
+
54
+ billing_reason: Optional[BillingReasons] = None
55
+ """The reason why a specific payment was billed"""
56
+
57
+ card_brand: Optional[CardBrands] = None
58
+ """Possible card brands that a payment token can have"""
59
+
60
+ card_last4: Optional[str] = None
61
+ """The last 4 digits of the card used to make the payment."""
62
+
63
+ created_at: datetime
64
+ """The datetime the payment was created"""
65
+
66
+ currency: Optional[Currency] = None
67
+ """The available currencies on the platform"""
68
+
69
+ dispute_alerted_at: Optional[datetime] = None
70
+ """When an alert came in that this transaction will be disputed"""
71
+
72
+ member: Optional[PaymentMember] = None
73
+ """The member attached to this payment."""
74
+
75
+ membership: Optional[PaymentMembership] = None
76
+ """The membership attached to this payment."""
77
+
78
+ paid_at: Optional[datetime] = None
79
+ """The datetime the payment was paid"""
80
+
81
+ payment_method_type: Optional[PaymentMethodTypes] = None
82
+ """The different types of payment methods that can be used."""
83
+
84
+ subtotal: Optional[float] = None
85
+ """The subtotal to show to the creator (excluding buyer fees)."""
86
+
87
+ total: Optional[float] = None
88
+ """The total to show to the creator (excluding buyer fees)."""
89
+
90
+ usd_total: Optional[float] = None
91
+ """The total in USD to show to the creator (excluding buyer fees)."""
92
+
93
+ user: Optional[PaymentUser] = None
94
+ """The user that made this payment."""
95
+
96
+
97
+ class RefundRetrieveResponse(BaseModel):
98
+ id: str
99
+ """The ID of the refund."""
100
+
101
+ amount: float
102
+ """The amount of the refund."""
103
+
104
+ created_at: datetime
105
+ """The time the refund was created."""
106
+
107
+ currency: Currency
108
+ """The currency of the refund."""
109
+
110
+ payment: Optional[Payment] = None
111
+ """The payment associated with the refund."""
112
+
113
+ provider: PaymentProvider
114
+ """The provider of the refund."""
115
+
116
+ provider_created_at: Optional[datetime] = None
117
+ """The time the refund was created by the provider."""
118
+
119
+ reference_status: Optional[RefundReferenceStatus] = None
120
+ """The status of the refund reference."""
121
+
122
+ reference_type: Optional[RefundReferenceType] = None
123
+ """The type of refund reference that was made available by the payment provider."""
124
+
125
+ reference_value: Optional[str] = None
126
+ """The value of the reference."""
127
+
128
+ status: RefundStatus
129
+ """The status of the refund."""
@@ -0,0 +1,7 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing_extensions import Literal, TypeAlias
4
+
5
+ __all__ = ["RefundStatus"]
6
+
7
+ RefundStatus: TypeAlias = Literal["pending", "requires_action", "succeeded", "failed", "canceled"]
@@ -0,0 +1,154 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import Optional
4
+ from datetime import datetime
5
+ from typing_extensions import Literal
6
+
7
+ from .._models import BaseModel
8
+ from .card_brands import CardBrands
9
+ from .refund_status import RefundStatus
10
+ from .billing_reasons import BillingReasons
11
+ from .shared.currency import Currency
12
+ from .payment_provider import PaymentProvider
13
+ from .payment_method_types import PaymentMethodTypes
14
+ from .refund_reference_type import RefundReferenceType
15
+ from .refund_reference_status import RefundReferenceStatus
16
+ from .shared.membership_status import MembershipStatus
17
+
18
+ __all__ = [
19
+ "RefundUpdatedWebhookEvent",
20
+ "Data",
21
+ "DataPayment",
22
+ "DataPaymentMember",
23
+ "DataPaymentMembership",
24
+ "DataPaymentUser",
25
+ ]
26
+
27
+
28
+ class DataPaymentMember(BaseModel):
29
+ id: str
30
+ """The ID of the member"""
31
+
32
+ phone: Optional[str] = None
33
+ """The phone number for the member, if available."""
34
+
35
+
36
+ class DataPaymentMembership(BaseModel):
37
+ id: str
38
+ """The internal ID of the membership."""
39
+
40
+ status: MembershipStatus
41
+ """The state of the membership."""
42
+
43
+
44
+ class DataPaymentUser(BaseModel):
45
+ id: str
46
+ """The internal ID of the user."""
47
+
48
+ email: Optional[str] = None
49
+ """The email of the user"""
50
+
51
+ name: Optional[str] = None
52
+ """The name of the user from their Whop account."""
53
+
54
+ username: str
55
+ """The username of the user from their Whop account."""
56
+
57
+
58
+ class DataPayment(BaseModel):
59
+ id: str
60
+ """The payment ID"""
61
+
62
+ billing_reason: Optional[BillingReasons] = None
63
+ """The reason why a specific payment was billed"""
64
+
65
+ card_brand: Optional[CardBrands] = None
66
+ """Possible card brands that a payment token can have"""
67
+
68
+ card_last4: Optional[str] = None
69
+ """The last 4 digits of the card used to make the payment."""
70
+
71
+ created_at: datetime
72
+ """The datetime the payment was created"""
73
+
74
+ currency: Optional[Currency] = None
75
+ """The available currencies on the platform"""
76
+
77
+ dispute_alerted_at: Optional[datetime] = None
78
+ """When an alert came in that this transaction will be disputed"""
79
+
80
+ member: Optional[DataPaymentMember] = None
81
+ """The member attached to this payment."""
82
+
83
+ membership: Optional[DataPaymentMembership] = None
84
+ """The membership attached to this payment."""
85
+
86
+ paid_at: Optional[datetime] = None
87
+ """The datetime the payment was paid"""
88
+
89
+ payment_method_type: Optional[PaymentMethodTypes] = None
90
+ """The different types of payment methods that can be used."""
91
+
92
+ subtotal: Optional[float] = None
93
+ """The subtotal to show to the creator (excluding buyer fees)."""
94
+
95
+ total: Optional[float] = None
96
+ """The total to show to the creator (excluding buyer fees)."""
97
+
98
+ usd_total: Optional[float] = None
99
+ """The total in USD to show to the creator (excluding buyer fees)."""
100
+
101
+ user: Optional[DataPaymentUser] = None
102
+ """The user that made this payment."""
103
+
104
+
105
+ class Data(BaseModel):
106
+ id: str
107
+ """The ID of the refund."""
108
+
109
+ amount: float
110
+ """The amount of the refund."""
111
+
112
+ created_at: datetime
113
+ """The time the refund was created."""
114
+
115
+ currency: Currency
116
+ """The currency of the refund."""
117
+
118
+ payment: Optional[DataPayment] = None
119
+ """The payment associated with the refund."""
120
+
121
+ provider: PaymentProvider
122
+ """The provider of the refund."""
123
+
124
+ provider_created_at: Optional[datetime] = None
125
+ """The time the refund was created by the provider."""
126
+
127
+ reference_status: Optional[RefundReferenceStatus] = None
128
+ """The status of the refund reference."""
129
+
130
+ reference_type: Optional[RefundReferenceType] = None
131
+ """The type of refund reference that was made available by the payment provider."""
132
+
133
+ reference_value: Optional[str] = None
134
+ """The value of the reference."""
135
+
136
+ status: RefundStatus
137
+ """The status of the refund."""
138
+
139
+
140
+ class RefundUpdatedWebhookEvent(BaseModel):
141
+ id: str
142
+ """A unique ID for every single webhook request"""
143
+
144
+ api_version: Literal["v1"]
145
+ """The API version for this webhook"""
146
+
147
+ data: Data
148
+ """An object representing a refund made on a payment."""
149
+
150
+ timestamp: datetime
151
+ """The timestamp in ISO 8601 format that the webhook was sent at on the server"""
152
+
153
+ type: Literal["refund.updated"]
154
+ """The webhook event type"""
@@ -0,0 +1,40 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing import Union, Optional
6
+ from datetime import datetime
7
+ from typing_extensions import Required, Annotated, TypedDict
8
+
9
+ from .._utils import PropertyInfo
10
+
11
+ __all__ = ["ReviewListParams"]
12
+
13
+
14
+ class ReviewListParams(TypedDict, total=False):
15
+ product_id: Required[str]
16
+ """The ID of the product"""
17
+
18
+ after: Optional[str]
19
+ """Returns the elements in the list that come after the specified cursor."""
20
+
21
+ before: Optional[str]
22
+ """Returns the elements in the list that come before the specified cursor."""
23
+
24
+ created_after: Annotated[Union[str, datetime, None], PropertyInfo(format="iso8601")]
25
+ """The minimum creation date to filter by"""
26
+
27
+ created_before: Annotated[Union[str, datetime, None], PropertyInfo(format="iso8601")]
28
+ """The maximum creation date to filter by"""
29
+
30
+ first: Optional[int]
31
+ """Returns the first _n_ elements from the list."""
32
+
33
+ last: Optional[int]
34
+ """Returns the last _n_ elements from the list."""
35
+
36
+ max_stars: Optional[int]
37
+ """The maximum star rating of the review (inclusive)"""
38
+
39
+ min_stars: Optional[int]
40
+ """The minimum star rating of the review (inclusive)"""
@@ -0,0 +1,78 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import List, Optional
4
+ from datetime import datetime
5
+
6
+ from .._models import BaseModel
7
+ from .review_status import ReviewStatus
8
+
9
+ __all__ = ["ReviewListResponse", "Attachment", "User"]
10
+
11
+
12
+ class Attachment(BaseModel):
13
+ id: str
14
+ """The ID of the attachment"""
15
+
16
+ content_type: Optional[str] = None
17
+ """The attachment's content type (e.g., image/jpg, video/mp4)"""
18
+
19
+ filename: Optional[str] = None
20
+ """The name of the file"""
21
+
22
+ url: Optional[str] = None
23
+ """This is the URL you use to render optimized attachments on the client.
24
+
25
+ This should be used for apps.
26
+ """
27
+
28
+
29
+ class User(BaseModel):
30
+ id: str
31
+ """The internal ID of the user."""
32
+
33
+ name: Optional[str] = None
34
+ """The name of the user from their Whop account."""
35
+
36
+ username: str
37
+ """The username of the user from their Whop account."""
38
+
39
+
40
+ class ReviewListResponse(BaseModel):
41
+ id: str
42
+ """The internal ID of the review."""
43
+
44
+ attachments: List[Attachment]
45
+ """The attachments attached to the review."""
46
+
47
+ created_at: datetime
48
+ """The timestamp of when the review was created."""
49
+
50
+ description: Optional[str] = None
51
+ """The description of the review."""
52
+
53
+ joined_at: Optional[datetime] = None
54
+ """The timestamp of when the user joined the product."""
55
+
56
+ paid_for_product: Optional[bool] = None
57
+ """Whether or not the user paid for the product.
58
+
59
+ If null, the payment status is unknown.
60
+ """
61
+
62
+ published_at: Optional[datetime] = None
63
+ """The timestamp of when the review was published."""
64
+
65
+ stars: int
66
+ """The number of stars the user gave the product."""
67
+
68
+ status: ReviewStatus
69
+ """The status of the review."""
70
+
71
+ title: Optional[str] = None
72
+ """The title of the review."""
73
+
74
+ updated_at: datetime
75
+ """The timestamp of when the review was last updated."""
76
+
77
+ user: User
78
+ """The user account that performed the action."""