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,48 @@
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 .shared.shipment_status import ShipmentStatus
8
+ from .shared.shipment_carrier import ShipmentCarrier
9
+ from .shared.shipment_substatus import ShipmentSubstatus
10
+
11
+ __all__ = ["ShipmentListResponse", "Payment"]
12
+
13
+
14
+ class Payment(BaseModel):
15
+ id: str
16
+ """The payment ID"""
17
+
18
+
19
+ class ShipmentListResponse(BaseModel):
20
+ id: str
21
+ """The ID of the shipment"""
22
+
23
+ carrier: ShipmentCarrier
24
+ """The carrier of the shipment"""
25
+
26
+ created_at: datetime
27
+ """The date and time the shipment was created"""
28
+
29
+ delivery_estimate: Optional[datetime] = None
30
+ """The delivery estimate of the shipment"""
31
+
32
+ payment: Optional[Payment] = None
33
+ """The payment of the shipment"""
34
+
35
+ service: Optional[str] = None
36
+ """The service of the shipment"""
37
+
38
+ status: ShipmentStatus
39
+ """The status of the shipment"""
40
+
41
+ substatus: Optional[ShipmentSubstatus] = None
42
+ """The substatus of a shipment"""
43
+
44
+ tracking_code: str
45
+ """The tracking code of the shipment"""
46
+
47
+ updated_at: datetime
48
+ """The date and time the shipment was last updated"""
@@ -0,0 +1,15 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from __future__ import annotations
4
+
5
+ from typing_extensions import Required, TypedDict
6
+
7
+ __all__ = ["SupportChannelCreateParams"]
8
+
9
+
10
+ class SupportChannelCreateParams(TypedDict, total=False):
11
+ company_id: Required[str]
12
+ """The ID of the company to create the support chat in"""
13
+
14
+ user_id: Required[str]
15
+ """The ID of the user to create the support chat for"""
@@ -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 Optional
6
+ from typing_extensions import Literal, Required, TypedDict
7
+
8
+ from .shared.direction import Direction
9
+
10
+ __all__ = ["SupportChannelListParams"]
11
+
12
+
13
+ class SupportChannelListParams(TypedDict, total=False):
14
+ company_id: Required[str]
15
+ """The ID of the company to list chat channels for"""
16
+
17
+ after: Optional[str]
18
+ """Returns the elements in the list that come after the specified cursor."""
19
+
20
+ before: Optional[str]
21
+ """Returns the elements in the list that come before the specified cursor."""
22
+
23
+ direction: Optional[Direction]
24
+ """The direction of the sort."""
25
+
26
+ first: Optional[int]
27
+ """Returns the first _n_ elements from the list."""
28
+
29
+ last: Optional[int]
30
+ """Returns the last _n_ elements from the list."""
31
+
32
+ open: Optional[bool]
33
+ """
34
+ Filter for tickets where customer sent the last message (needs response) AND not
35
+ resolved. Set to true to only return open channels, false to only return
36
+ resolved channels.
37
+ """
38
+
39
+ order: Optional[Literal["created_at", "last_post_sent_at"]]
40
+ """Sort options for message channels"""
@@ -0,0 +1,39 @@
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
+
8
+ __all__ = ["SupportChannelListResponse", "CustomerUser"]
9
+
10
+
11
+ class CustomerUser(BaseModel):
12
+ id: str
13
+ """The internal ID of the user."""
14
+
15
+ name: Optional[str] = None
16
+ """The name of the user from their Whop account."""
17
+
18
+ username: str
19
+ """The username of the user from their Whop account."""
20
+
21
+
22
+ class SupportChannelListResponse(BaseModel):
23
+ id: str
24
+ """The unique identifier for the entity"""
25
+
26
+ company_id: Optional[str] = None
27
+ """The bot ID if this is a support chat"""
28
+
29
+ custom_name: Optional[str] = None
30
+ """The custom name of the DM channel, if any"""
31
+
32
+ customer_user: Optional[CustomerUser] = None
33
+ """The customer user if this is a support chat"""
34
+
35
+ last_message_at: Optional[datetime] = None
36
+ """When the last message was sent"""
37
+
38
+ resolved_at: Optional[datetime] = None
39
+ """When the support ticket was resolved (null if unresolved)"""
@@ -0,0 +1,39 @@
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 Dict, Optional
6
+ from typing_extensions import Required, TypedDict
7
+
8
+ from .shared.currency import Currency
9
+
10
+ __all__ = ["TransferCreateParams"]
11
+
12
+
13
+ class TransferCreateParams(TypedDict, total=False):
14
+ amount: Required[float]
15
+ """The amount to withdraw"""
16
+
17
+ currency: Required[Currency]
18
+ """The currency that is being withdrawn."""
19
+
20
+ destination_id: Required[str]
21
+ """
22
+ The ID of the destination account which will receive the funds (either a User
23
+ ID, Company ID, or LedgerAccount ID)
24
+ """
25
+
26
+ origin_id: Required[str]
27
+ """
28
+ The ID of the origin account which will send the funds (either a User ID,
29
+ Company ID, or LedgerAccount ID)
30
+ """
31
+
32
+ idempotence_key: Optional[str]
33
+ """A unique key to ensure idempotence. Use a UUID or similar."""
34
+
35
+ metadata: Optional[Dict[str, object]]
36
+ """A hash of metadata to attach to the transfer."""
37
+
38
+ notes: Optional[str]
39
+ """Notes for the transfer. Maximum of 50 characters."""
@@ -0,0 +1,50 @@
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 Literal, Annotated, TypedDict
8
+
9
+ from .._utils import PropertyInfo
10
+ from .shared.direction import Direction
11
+
12
+ __all__ = ["TransferListParams"]
13
+
14
+
15
+ class TransferListParams(TypedDict, total=False):
16
+ after: Optional[str]
17
+ """Returns the elements in the list that come after the specified cursor."""
18
+
19
+ before: Optional[str]
20
+ """Returns the elements in the list that come before the specified cursor."""
21
+
22
+ created_after: Annotated[Union[str, datetime, None], PropertyInfo(format="iso8601")]
23
+ """The minimum creation date to filter by"""
24
+
25
+ created_before: Annotated[Union[str, datetime, None], PropertyInfo(format="iso8601")]
26
+ """The maximum creation date to filter by"""
27
+
28
+ destination_id: Optional[str]
29
+ """Filter transfers to only those that were sent to this destination account.
30
+
31
+ (user_xxx, biz_xxx, ldgr_xxx)
32
+ """
33
+
34
+ direction: Optional[Direction]
35
+ """The direction of the sort."""
36
+
37
+ first: Optional[int]
38
+ """Returns the first _n_ elements from the list."""
39
+
40
+ last: Optional[int]
41
+ """Returns the last _n_ elements from the list."""
42
+
43
+ order: Optional[Literal["amount", "created_at"]]
44
+ """Which columns can be used to sort."""
45
+
46
+ origin_id: Optional[str]
47
+ """Filter transfers to only those that were sent from this origin account.
48
+
49
+ (user_xxx, biz_xxx, ldgr_xxx)
50
+ """
@@ -0,0 +1,38 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import Dict, Optional
4
+ from datetime import datetime
5
+
6
+ from .._models import BaseModel
7
+ from .shared.currency import Currency
8
+
9
+ __all__ = ["TransferListResponse"]
10
+
11
+
12
+ class TransferListResponse(BaseModel):
13
+ id: str
14
+ """The unique identifier of the credit transaction transfer"""
15
+
16
+ amount: float
17
+ """The amount of the credit transaction transfer"""
18
+
19
+ created_at: datetime
20
+ """The timestamp when the credit transaction transfer was created"""
21
+
22
+ currency: Currency
23
+ """The currency of the credit transaction transfer"""
24
+
25
+ destination_ledger_account_id: str
26
+ """The ID of the destination ledger account"""
27
+
28
+ fee_amount: Optional[float] = None
29
+ """The decimal fee of the credit transaction transfer"""
30
+
31
+ metadata: Optional[Dict[str, object]] = None
32
+ """A hash of metadata attached to the transfer"""
33
+
34
+ notes: Optional[str] = None
35
+ """The notes of the credit transaction transfer"""
36
+
37
+ origin_ledger_account_id: str
38
+ """The ID of the origin ledger account"""
@@ -0,0 +1,52 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing import Union
4
+ from typing_extensions import TypeAlias
5
+
6
+ from .entry_denied_webhook_event import EntryDeniedWebhookEvent
7
+ from .invoice_paid_webhook_event import InvoicePaidWebhookEvent
8
+ from .entry_created_webhook_event import EntryCreatedWebhookEvent
9
+ from .entry_deleted_webhook_event import EntryDeletedWebhookEvent
10
+ from .entry_approved_webhook_event import EntryApprovedWebhookEvent
11
+ from .invoice_voided_webhook_event import InvoiceVoidedWebhookEvent
12
+ from .payment_failed_webhook_event import PaymentFailedWebhookEvent
13
+ from .refund_created_webhook_event import RefundCreatedWebhookEvent
14
+ from .refund_updated_webhook_event import RefundUpdatedWebhookEvent
15
+ from .dispute_created_webhook_event import DisputeCreatedWebhookEvent
16
+ from .dispute_updated_webhook_event import DisputeUpdatedWebhookEvent
17
+ from .invoice_created_webhook_event import InvoiceCreatedWebhookEvent
18
+ from .payment_pending_webhook_event import PaymentPendingWebhookEvent
19
+ from .invoice_past_due_webhook_event import InvoicePastDueWebhookEvent
20
+ from .payment_succeeded_webhook_event import PaymentSucceededWebhookEvent
21
+ from .membership_activated_webhook_event import MembershipActivatedWebhookEvent
22
+ from .setup_intent_canceled_webhook_event import SetupIntentCanceledWebhookEvent
23
+ from .membership_deactivated_webhook_event import MembershipDeactivatedWebhookEvent
24
+ from .setup_intent_succeeded_webhook_event import SetupIntentSucceededWebhookEvent
25
+ from .setup_intent_requires_action_webhook_event import SetupIntentRequiresActionWebhookEvent
26
+ from .course_lesson_interaction_completed_webhook_event import CourseLessonInteractionCompletedWebhookEvent
27
+
28
+ __all__ = ["UnwrapWebhookEvent"]
29
+
30
+ UnwrapWebhookEvent: TypeAlias = Union[
31
+ InvoiceCreatedWebhookEvent,
32
+ InvoicePaidWebhookEvent,
33
+ InvoicePastDueWebhookEvent,
34
+ InvoiceVoidedWebhookEvent,
35
+ MembershipActivatedWebhookEvent,
36
+ MembershipDeactivatedWebhookEvent,
37
+ EntryCreatedWebhookEvent,
38
+ EntryApprovedWebhookEvent,
39
+ EntryDeniedWebhookEvent,
40
+ EntryDeletedWebhookEvent,
41
+ SetupIntentRequiresActionWebhookEvent,
42
+ SetupIntentSucceededWebhookEvent,
43
+ SetupIntentCanceledWebhookEvent,
44
+ CourseLessonInteractionCompletedWebhookEvent,
45
+ PaymentSucceededWebhookEvent,
46
+ PaymentFailedWebhookEvent,
47
+ PaymentPendingWebhookEvent,
48
+ DisputeCreatedWebhookEvent,
49
+ DisputeUpdatedWebhookEvent,
50
+ RefundCreatedWebhookEvent,
51
+ RefundUpdatedWebhookEvent,
52
+ ]
@@ -0,0 +1,14 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from .._models import BaseModel
4
+ from .shared.access_level import AccessLevel
5
+
6
+ __all__ = ["UserCheckAccessResponse"]
7
+
8
+
9
+ class UserCheckAccessResponse(BaseModel):
10
+ access_level: AccessLevel
11
+ """The permission level of the user"""
12
+
13
+ has_access: bool
14
+ """Whether the user has access to the resource"""
@@ -0,0 +1,36 @@
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
+
8
+ __all__ = ["UserRetrieveResponse", "ProfilePicture"]
9
+
10
+
11
+ class ProfilePicture(BaseModel):
12
+ url: Optional[str] = None
13
+ """This is the URL you use to render optimized attachments on the client.
14
+
15
+ This should be used for apps.
16
+ """
17
+
18
+
19
+ class UserRetrieveResponse(BaseModel):
20
+ id: str
21
+ """The internal ID of the user."""
22
+
23
+ bio: Optional[str] = None
24
+ """The user's bio"""
25
+
26
+ created_at: datetime
27
+ """When the user was created."""
28
+
29
+ name: Optional[str] = None
30
+ """The name of the user from their Whop account."""
31
+
32
+ profile_picture: Optional[ProfilePicture] = None
33
+ """The user's profile picture"""
34
+
35
+ username: str
36
+ """The username of the user from their Whop account."""
@@ -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__ = ["WithdrawalFeeTypes"]
6
+
7
+ WithdrawalFeeTypes: TypeAlias = Literal["exclusive", "inclusive"]
@@ -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__ = ["WithdrawalListParams"]
13
+
14
+
15
+ class WithdrawalListParams(TypedDict, total=False):
16
+ company_id: Required[str]
17
+ """The ID of the company to list withdrawals 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,45 @@
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 .shared.currency import Currency
8
+ from .withdrawal_types import WithdrawalTypes
9
+ from .withdrawal_speeds import WithdrawalSpeeds
10
+ from .withdrawal_status import WithdrawalStatus
11
+ from .withdrawal_fee_types import WithdrawalFeeTypes
12
+
13
+ __all__ = ["WithdrawalListResponse"]
14
+
15
+
16
+ class WithdrawalListResponse(BaseModel):
17
+ id: str
18
+ """Internal ID of the withdrawal request."""
19
+
20
+ amount: float
21
+ """How much money was attempted to be withdrawn, in a float type."""
22
+
23
+ created_at: datetime
24
+ """When the withdrawal request was created."""
25
+
26
+ currency: Currency
27
+ """The currency of the withdrawal request."""
28
+
29
+ fee_amount: float
30
+ """The fee amount that was charged for the withdrawal.
31
+
32
+ This is in the same currency as the withdrawal amount.
33
+ """
34
+
35
+ fee_type: Optional[WithdrawalFeeTypes] = None
36
+ """The different fee types for a withdrawal."""
37
+
38
+ speed: WithdrawalSpeeds
39
+ """The speed of the withdrawal."""
40
+
41
+ status: WithdrawalStatus
42
+ """Status of the withdrawal."""
43
+
44
+ withdrawal_type: WithdrawalTypes
45
+ """The type of withdrawal."""
@@ -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 .shared.currency import Currency
9
+ from .withdrawal_types import WithdrawalTypes
10
+ from .withdrawal_speeds import WithdrawalSpeeds
11
+ from .withdrawal_status import WithdrawalStatus
12
+ from .withdrawal_fee_types import WithdrawalFeeTypes
13
+
14
+ __all__ = ["WithdrawalRetrieveResponse", "LatestPayout", "PayoutToken"]
15
+
16
+
17
+ class LatestPayout(BaseModel):
18
+ id: str
19
+ """The internal ID of the payout."""
20
+
21
+ created_at: datetime
22
+ """The date and time the payout was created."""
23
+
24
+ error_code: Optional[
25
+ Literal[
26
+ "account_closed",
27
+ "account_does_not_exist",
28
+ "account_information_invalid",
29
+ "account_number_invalid_region",
30
+ "account_frozen",
31
+ "account_lookup_failed",
32
+ "account_not_found",
33
+ "amount_out_of_bounds",
34
+ "attributes_not_validated",
35
+ "b2b_payments_prohibited",
36
+ "bank_statement_required",
37
+ "compliance_review",
38
+ "currency_not_supported",
39
+ "deposit_canceled",
40
+ "deposit_failed",
41
+ "deposit_rejected",
42
+ "destination_unavailable",
43
+ "exceeded_account_limit",
44
+ "expired_quote",
45
+ "generic_payout_error",
46
+ "technical_problem",
47
+ "identification_number_invalid",
48
+ "invalid_account_number",
49
+ "invalid_bank_code",
50
+ "invalid_beneficiary",
51
+ "invalid_branch_number",
52
+ "invalid_branch_code",
53
+ "invalid_phone_number",
54
+ "invalid_routing_number",
55
+ "invalid_swift_code",
56
+ "invalid_company_details",
57
+ "manual_cancelation",
58
+ "misc_error",
59
+ "missing_city_and_country",
60
+ "missing_phone_number",
61
+ "missing_remittance_info",
62
+ "payee_name_invalid",
63
+ "receiving_account_locked",
64
+ "rejected_by_compliance",
65
+ "rtp_not_supported",
66
+ "non_transaction_account",
67
+ "source_token_insufficient_funds",
68
+ "ssn_invalid",
69
+ "wallet_screenshot_required",
70
+ "unsupported_region",
71
+ ]
72
+ ] = None
73
+ """The different error codes a payout can be in."""
74
+
75
+ error_message: Optional[str] = None
76
+ """The error message for the payout."""
77
+
78
+ estimated_availability: Optional[datetime] = None
79
+ """The estimated availability date of the payout."""
80
+
81
+ payer_name: Optional[str] = None
82
+ """The name of the payer for the payout."""
83
+
84
+ status: Literal[
85
+ "scheduled", "pending", "processing", "completed", "canceled", "ready_for_pickup", "hold", "error", "expired"
86
+ ]
87
+ """The status of the payout."""
88
+
89
+ trace_code: Optional[str] = None
90
+ """The trace code for the payout, if applicable.
91
+
92
+ Provided on ACH transactions when available.
93
+ """
94
+
95
+
96
+ class PayoutToken(BaseModel):
97
+ id: str
98
+ """The ID of the payout token"""
99
+
100
+ created_at: datetime
101
+ """The date and time the payout token was created"""
102
+
103
+ destination_currency_code: str
104
+ """The currency code of the payout destination.
105
+
106
+ This is the currency that payouts will be made in for this token.
107
+ """
108
+
109
+ nickname: Optional[str] = None
110
+ """An optional nickname for the payout token to help the user identify it.
111
+
112
+ This is not used by the provider and is only for the user's reference.
113
+ """
114
+
115
+ status: Literal["created", "active", "broken"]
116
+ """The status of the payout token."""
117
+
118
+
119
+ class WithdrawalRetrieveResponse(BaseModel):
120
+ id: str
121
+ """Internal ID of the withdrawal request."""
122
+
123
+ amount: float
124
+ """How much money was attempted to be withdrawn, in a float type."""
125
+
126
+ created_at: datetime
127
+ """When the withdrawal request was created."""
128
+
129
+ currency: Currency
130
+ """The currency of the withdrawal request."""
131
+
132
+ fee_amount: float
133
+ """The fee amount that was charged for the withdrawal.
134
+
135
+ This is in the same currency as the withdrawal amount.
136
+ """
137
+
138
+ fee_type: Optional[WithdrawalFeeTypes] = None
139
+ """The different fee types for a withdrawal."""
140
+
141
+ latest_payout: Optional[LatestPayout] = None
142
+ """The latest payout associated with this withdrawal, if any."""
143
+
144
+ payout_token: Optional[PayoutToken] = None
145
+ """The payout token used for the withdrawal, if applicable."""
146
+
147
+ speed: WithdrawalSpeeds
148
+ """The speed of the withdrawal."""
149
+
150
+ status: WithdrawalStatus
151
+ """Status of the withdrawal."""
152
+
153
+ withdrawal_type: WithdrawalTypes
154
+ """The type of withdrawal."""
@@ -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__ = ["WithdrawalSpeeds"]
6
+
7
+ WithdrawalSpeeds: TypeAlias = Literal["standard", "instant"]
@@ -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__ = ["WithdrawalStatus"]
6
+
7
+ WithdrawalStatus: TypeAlias = Literal[
8
+ "requested", "awaiting_payment", "in_transit", "completed", "failed", "canceled", "denied"
9
+ ]
@@ -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__ = ["WithdrawalTypes"]
6
+
7
+ WithdrawalTypes: TypeAlias = Literal["regular", "clawback"]