whop-sdk 0.0.1__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.

Potentially problematic release.


This version of whop-sdk might be problematic. Click here for more details.

Files changed (212) hide show
  1. whop_sdk/__init__.py +94 -0
  2. whop_sdk/_base_client.py +1995 -0
  3. whop_sdk/_client.py +664 -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 +835 -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 +86 -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 +316 -0
  31. whop_sdk/resources/app_builds.py +562 -0
  32. whop_sdk/resources/apps.py +665 -0
  33. whop_sdk/resources/authorized_users.py +336 -0
  34. whop_sdk/resources/chat_channels.py +469 -0
  35. whop_sdk/resources/checkout_configurations.py +464 -0
  36. whop_sdk/resources/companies.py +171 -0
  37. whop_sdk/resources/course_lesson_interactions.py +343 -0
  38. whop_sdk/resources/entries.py +539 -0
  39. whop_sdk/resources/experiences.py +859 -0
  40. whop_sdk/resources/forum_posts.py +512 -0
  41. whop_sdk/resources/invoices.py +633 -0
  42. whop_sdk/resources/ledger_accounts.py +171 -0
  43. whop_sdk/resources/memberships.py +810 -0
  44. whop_sdk/resources/messages.py +446 -0
  45. whop_sdk/resources/payments.py +761 -0
  46. whop_sdk/resources/plans.py +906 -0
  47. whop_sdk/resources/products.py +969 -0
  48. whop_sdk/resources/reactions.py +423 -0
  49. whop_sdk/resources/shipments.py +451 -0
  50. whop_sdk/resources/support_channels.py +455 -0
  51. whop_sdk/resources/transfers.py +488 -0
  52. whop_sdk/resources/users.py +248 -0
  53. whop_sdk/resources/webhooks.py +69 -0
  54. whop_sdk/types/__init__.py +135 -0
  55. whop_sdk/types/app_build_create_params.py +59 -0
  56. whop_sdk/types/app_build_list_params.py +34 -0
  57. whop_sdk/types/app_build_list_response.py +50 -0
  58. whop_sdk/types/app_create_params.py +19 -0
  59. whop_sdk/types/app_list_params.py +54 -0
  60. whop_sdk/types/app_list_response.py +91 -0
  61. whop_sdk/types/app_update_params.py +58 -0
  62. whop_sdk/types/authorized_user_list_params.py +33 -0
  63. whop_sdk/types/authorized_user_list_response.py +33 -0
  64. whop_sdk/types/authorized_user_retrieve_response.py +33 -0
  65. whop_sdk/types/chat_channel_list_params.py +28 -0
  66. whop_sdk/types/chat_channel_list_response.py +43 -0
  67. whop_sdk/types/chat_channel_update_params.py +32 -0
  68. whop_sdk/types/checkout_configuration_create_params.py +129 -0
  69. whop_sdk/types/checkout_configuration_list_params.py +33 -0
  70. whop_sdk/types/checkout_configuration_list_response.py +66 -0
  71. whop_sdk/types/course_lesson_interaction_list_params.py +34 -0
  72. whop_sdk/types/entry_approve_response.py +10 -0
  73. whop_sdk/types/entry_list_params.py +44 -0
  74. whop_sdk/types/entry_list_response.py +56 -0
  75. whop_sdk/types/experience_attach_params.py +12 -0
  76. whop_sdk/types/experience_create_params.py +22 -0
  77. whop_sdk/types/experience_delete_response.py +7 -0
  78. whop_sdk/types/experience_detach_params.py +12 -0
  79. whop_sdk/types/experience_list_params.py +31 -0
  80. whop_sdk/types/experience_list_response.py +47 -0
  81. whop_sdk/types/experience_update_params.py +41 -0
  82. whop_sdk/types/forum_post_create_params.py +85 -0
  83. whop_sdk/types/forum_post_list_params.py +31 -0
  84. whop_sdk/types/forum_post_list_response.py +53 -0
  85. whop_sdk/types/invoice_create_params.py +137 -0
  86. whop_sdk/types/invoice_create_response.py +16 -0
  87. whop_sdk/types/invoice_created_webhook_event.py +26 -0
  88. whop_sdk/types/invoice_list_params.py +50 -0
  89. whop_sdk/types/invoice_paid_webhook_event.py +26 -0
  90. whop_sdk/types/invoice_past_due_webhook_event.py +26 -0
  91. whop_sdk/types/invoice_void_response.py +7 -0
  92. whop_sdk/types/invoice_voided_webhook_event.py +26 -0
  93. whop_sdk/types/ledger_account_retrieve_response.py +78 -0
  94. whop_sdk/types/membership_cancel_params.py +13 -0
  95. whop_sdk/types/membership_list_params.py +70 -0
  96. whop_sdk/types/membership_list_response.py +117 -0
  97. whop_sdk/types/membership_pause_params.py +16 -0
  98. whop_sdk/types/membership_update_params.py +13 -0
  99. whop_sdk/types/message_create_params.py +51 -0
  100. whop_sdk/types/message_list_params.py +30 -0
  101. whop_sdk/types/message_list_response.py +90 -0
  102. whop_sdk/types/payment_list_params.py +72 -0
  103. whop_sdk/types/payment_list_response.py +221 -0
  104. whop_sdk/types/payment_refund_params.py +13 -0
  105. whop_sdk/types/plan_create_params.py +106 -0
  106. whop_sdk/types/plan_delete_response.py +7 -0
  107. whop_sdk/types/plan_list_params.py +49 -0
  108. whop_sdk/types/plan_list_response.py +92 -0
  109. whop_sdk/types/plan_update_params.py +95 -0
  110. whop_sdk/types/product_create_params.py +170 -0
  111. whop_sdk/types/product_delete_response.py +7 -0
  112. whop_sdk/types/product_list_params.py +41 -0
  113. whop_sdk/types/product_update_params.py +90 -0
  114. whop_sdk/types/reaction_create_params.py +19 -0
  115. whop_sdk/types/reaction_list_params.py +25 -0
  116. whop_sdk/types/reaction_list_response.py +32 -0
  117. whop_sdk/types/shared/__init__.py +55 -0
  118. whop_sdk/types/shared/access_pass_type.py +7 -0
  119. whop_sdk/types/shared/app.py +159 -0
  120. whop_sdk/types/shared/app_build.py +50 -0
  121. whop_sdk/types/shared/app_build_platforms.py +7 -0
  122. whop_sdk/types/shared/app_build_statuses.py +7 -0
  123. whop_sdk/types/shared/app_statuses.py +7 -0
  124. whop_sdk/types/shared/app_view_type.py +7 -0
  125. whop_sdk/types/shared/authorized_user_roles.py +9 -0
  126. whop_sdk/types/shared/business_types.py +22 -0
  127. whop_sdk/types/shared/chat_channel.py +43 -0
  128. whop_sdk/types/shared/checkout_configuration.py +66 -0
  129. whop_sdk/types/shared/collection_method.py +7 -0
  130. whop_sdk/types/shared/company.py +71 -0
  131. whop_sdk/types/shared/course_lesson_interaction.py +44 -0
  132. whop_sdk/types/shared/course_lesson_interaction_list_item.py +44 -0
  133. whop_sdk/types/shared/currency.py +92 -0
  134. whop_sdk/types/shared/custom_cta.py +21 -0
  135. whop_sdk/types/shared/direction.py +7 -0
  136. whop_sdk/types/shared/dms_post_types.py +7 -0
  137. whop_sdk/types/shared/entry.py +70 -0
  138. whop_sdk/types/shared/entry_status.py +7 -0
  139. whop_sdk/types/shared/experience.py +66 -0
  140. whop_sdk/types/shared/forum_post.py +53 -0
  141. whop_sdk/types/shared/friendly_receipt_status.py +24 -0
  142. whop_sdk/types/shared/global_affiliate_status.py +7 -0
  143. whop_sdk/types/shared/industry_types.py +67 -0
  144. whop_sdk/types/shared/invoice.py +61 -0
  145. whop_sdk/types/shared/invoice_list_item.py +61 -0
  146. whop_sdk/types/shared/invoice_status.py +7 -0
  147. whop_sdk/types/shared/membership.py +117 -0
  148. whop_sdk/types/shared/membership_status.py +9 -0
  149. whop_sdk/types/shared/message.py +90 -0
  150. whop_sdk/types/shared/page_info.py +21 -0
  151. whop_sdk/types/shared/payment.py +211 -0
  152. whop_sdk/types/shared/plan.py +123 -0
  153. whop_sdk/types/shared/plan_type.py +7 -0
  154. whop_sdk/types/shared/product.py +124 -0
  155. whop_sdk/types/shared/product_list_item.py +49 -0
  156. whop_sdk/types/shared/promo_type.py +7 -0
  157. whop_sdk/types/shared/reaction.py +32 -0
  158. whop_sdk/types/shared/receipt_status.py +7 -0
  159. whop_sdk/types/shared/release_method.py +7 -0
  160. whop_sdk/types/shared/shipment.py +48 -0
  161. whop_sdk/types/shared/shipment_carrier.py +84 -0
  162. whop_sdk/types/shared/shipment_status.py +18 -0
  163. whop_sdk/types/shared/shipment_substatus.py +36 -0
  164. whop_sdk/types/shared/support_channel.py +39 -0
  165. whop_sdk/types/shared/tax_type.py +7 -0
  166. whop_sdk/types/shared/transfer.py +109 -0
  167. whop_sdk/types/shared/visibility.py +7 -0
  168. whop_sdk/types/shared/visibility_filter.py +9 -0
  169. whop_sdk/types/shared/who_can_post.py +7 -0
  170. whop_sdk/types/shared/who_can_react.py +7 -0
  171. whop_sdk/types/shared_params/__init__.py +27 -0
  172. whop_sdk/types/shared_params/access_pass_type.py +9 -0
  173. whop_sdk/types/shared_params/app_build_platforms.py +9 -0
  174. whop_sdk/types/shared_params/app_build_statuses.py +9 -0
  175. whop_sdk/types/shared_params/app_statuses.py +9 -0
  176. whop_sdk/types/shared_params/app_view_type.py +9 -0
  177. whop_sdk/types/shared_params/authorized_user_roles.py +11 -0
  178. whop_sdk/types/shared_params/business_types.py +24 -0
  179. whop_sdk/types/shared_params/collection_method.py +9 -0
  180. whop_sdk/types/shared_params/currency.py +94 -0
  181. whop_sdk/types/shared_params/custom_cta.py +23 -0
  182. whop_sdk/types/shared_params/direction.py +9 -0
  183. whop_sdk/types/shared_params/entry_status.py +9 -0
  184. whop_sdk/types/shared_params/friendly_receipt_status.py +26 -0
  185. whop_sdk/types/shared_params/global_affiliate_status.py +9 -0
  186. whop_sdk/types/shared_params/industry_types.py +69 -0
  187. whop_sdk/types/shared_params/invoice_status.py +9 -0
  188. whop_sdk/types/shared_params/membership_status.py +11 -0
  189. whop_sdk/types/shared_params/plan_type.py +9 -0
  190. whop_sdk/types/shared_params/receipt_status.py +9 -0
  191. whop_sdk/types/shared_params/release_method.py +9 -0
  192. whop_sdk/types/shared_params/tax_type.py +9 -0
  193. whop_sdk/types/shared_params/visibility.py +9 -0
  194. whop_sdk/types/shared_params/visibility_filter.py +11 -0
  195. whop_sdk/types/shared_params/who_can_post.py +9 -0
  196. whop_sdk/types/shared_params/who_can_react.py +9 -0
  197. whop_sdk/types/shipment_create_params.py +18 -0
  198. whop_sdk/types/shipment_list_params.py +31 -0
  199. whop_sdk/types/shipment_list_response.py +48 -0
  200. whop_sdk/types/support_channel_create_params.py +15 -0
  201. whop_sdk/types/support_channel_list_params.py +40 -0
  202. whop_sdk/types/support_channel_list_response.py +39 -0
  203. whop_sdk/types/transfer_create_params.py +36 -0
  204. whop_sdk/types/transfer_list_params.py +42 -0
  205. whop_sdk/types/transfer_list_response.py +35 -0
  206. whop_sdk/types/unwrap_webhook_event.py +15 -0
  207. whop_sdk/types/user_check_access_response.py +15 -0
  208. whop_sdk/types/user_retrieve_response.py +25 -0
  209. whop_sdk-0.0.1.dist-info/METADATA +522 -0
  210. whop_sdk-0.0.1.dist-info/RECORD +212 -0
  211. whop_sdk-0.0.1.dist-info/WHEEL +4 -0
  212. whop_sdk-0.0.1.dist-info/licenses/LICENSE +201 -0
@@ -0,0 +1,31 @@
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 TypedDict
7
+
8
+ __all__ = ["ShipmentListParams"]
9
+
10
+
11
+ class ShipmentListParams(TypedDict, total=False):
12
+ after: Optional[str]
13
+ """Returns the elements in the list that come after the specified cursor."""
14
+
15
+ before: Optional[str]
16
+ """Returns the elements in the list that come before the specified cursor."""
17
+
18
+ company_id: Optional[str]
19
+ """The ID of the company"""
20
+
21
+ first: Optional[int]
22
+ """Returns the first _n_ elements from the list."""
23
+
24
+ last: Optional[int]
25
+ """Returns the last _n_ elements from the list."""
26
+
27
+ payment_id: Optional[str]
28
+ """The ID of the payment"""
29
+
30
+ user_id: Optional[str]
31
+ """The ID of the user"""
@@ -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: Payment
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,36 @@
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 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
+ notes: Optional[str]
36
+ """Notes for the transfer. Maximum of 50 characters."""
@@ -0,0 +1,42 @@
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, TypedDict
7
+
8
+ from .shared.direction import Direction
9
+
10
+ __all__ = ["TransferListParams"]
11
+
12
+
13
+ class TransferListParams(TypedDict, total=False):
14
+ after: Optional[str]
15
+ """Returns the elements in the list that come after the specified cursor."""
16
+
17
+ before: Optional[str]
18
+ """Returns the elements in the list that come before the specified cursor."""
19
+
20
+ destination_id: Optional[str]
21
+ """Filter transfers to only those that were sent to this destination account.
22
+
23
+ (user_xxx, biz_xxx, ldgr_xxx)
24
+ """
25
+
26
+ direction: Optional[Direction]
27
+ """The direction of the sort."""
28
+
29
+ first: Optional[int]
30
+ """Returns the first _n_ elements from the list."""
31
+
32
+ last: Optional[int]
33
+ """Returns the last _n_ elements from the list."""
34
+
35
+ order: Optional[Literal["amount", "created_at"]]
36
+ """Which columns can be used to sort."""
37
+
38
+ origin_id: Optional[str]
39
+ """Filter transfers to only those that were sent from this origin account.
40
+
41
+ (user_xxx, biz_xxx, ldgr_xxx)
42
+ """
@@ -0,0 +1,35 @@
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
+
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
+ notes: Optional[str] = None
32
+ """The notes of the credit transaction transfer"""
33
+
34
+ origin_ledger_account_id: str
35
+ """The ID of the origin ledger account"""
@@ -0,0 +1,15 @@
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 .invoice_paid_webhook_event import InvoicePaidWebhookEvent
7
+ from .invoice_voided_webhook_event import InvoiceVoidedWebhookEvent
8
+ from .invoice_created_webhook_event import InvoiceCreatedWebhookEvent
9
+ from .invoice_past_due_webhook_event import InvoicePastDueWebhookEvent
10
+
11
+ __all__ = ["UnwrapWebhookEvent"]
12
+
13
+ UnwrapWebhookEvent: TypeAlias = Union[
14
+ InvoiceCreatedWebhookEvent, InvoicePaidWebhookEvent, InvoicePastDueWebhookEvent, InvoiceVoidedWebhookEvent
15
+ ]
@@ -0,0 +1,15 @@
1
+ # File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ from typing_extensions import Literal
4
+
5
+ from .._models import BaseModel
6
+
7
+ __all__ = ["UserCheckAccessResponse"]
8
+
9
+
10
+ class UserCheckAccessResponse(BaseModel):
11
+ access_level: Literal["no_access", "admin", "customer"]
12
+ """The permission level of the user"""
13
+
14
+ has_access: bool
15
+ """Whether the user has access to the resource"""
@@ -0,0 +1,25 @@
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"]
9
+
10
+
11
+ class UserRetrieveResponse(BaseModel):
12
+ id: str
13
+ """The internal ID of the user."""
14
+
15
+ bio: Optional[str] = None
16
+ """The user's bio"""
17
+
18
+ created_at: datetime
19
+ """When the user was created."""
20
+
21
+ name: Optional[str] = None
22
+ """The name of the user from their Whop account."""
23
+
24
+ username: str
25
+ """The username of the user from their Whop account."""