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.
- whop_sdk/__init__.py +94 -0
- whop_sdk/_base_client.py +1995 -0
- whop_sdk/_client.py +664 -0
- whop_sdk/_compat.py +219 -0
- whop_sdk/_constants.py +14 -0
- whop_sdk/_exceptions.py +112 -0
- whop_sdk/_files.py +123 -0
- whop_sdk/_models.py +835 -0
- whop_sdk/_qs.py +150 -0
- whop_sdk/_resource.py +43 -0
- whop_sdk/_response.py +830 -0
- whop_sdk/_streaming.py +333 -0
- whop_sdk/_types.py +260 -0
- whop_sdk/_utils/__init__.py +64 -0
- whop_sdk/_utils/_compat.py +45 -0
- whop_sdk/_utils/_datetime_parse.py +136 -0
- whop_sdk/_utils/_logs.py +25 -0
- whop_sdk/_utils/_proxy.py +65 -0
- whop_sdk/_utils/_reflection.py +42 -0
- whop_sdk/_utils/_resources_proxy.py +24 -0
- whop_sdk/_utils/_streams.py +12 -0
- whop_sdk/_utils/_sync.py +86 -0
- whop_sdk/_utils/_transform.py +457 -0
- whop_sdk/_utils/_typing.py +156 -0
- whop_sdk/_utils/_utils.py +421 -0
- whop_sdk/_version.py +4 -0
- whop_sdk/lib/.keep +4 -0
- whop_sdk/pagination.py +61 -0
- whop_sdk/py.typed +0 -0
- whop_sdk/resources/__init__.py +316 -0
- whop_sdk/resources/app_builds.py +562 -0
- whop_sdk/resources/apps.py +665 -0
- whop_sdk/resources/authorized_users.py +336 -0
- whop_sdk/resources/chat_channels.py +469 -0
- whop_sdk/resources/checkout_configurations.py +464 -0
- whop_sdk/resources/companies.py +171 -0
- whop_sdk/resources/course_lesson_interactions.py +343 -0
- whop_sdk/resources/entries.py +539 -0
- whop_sdk/resources/experiences.py +859 -0
- whop_sdk/resources/forum_posts.py +512 -0
- whop_sdk/resources/invoices.py +633 -0
- whop_sdk/resources/ledger_accounts.py +171 -0
- whop_sdk/resources/memberships.py +810 -0
- whop_sdk/resources/messages.py +446 -0
- whop_sdk/resources/payments.py +761 -0
- whop_sdk/resources/plans.py +906 -0
- whop_sdk/resources/products.py +969 -0
- whop_sdk/resources/reactions.py +423 -0
- whop_sdk/resources/shipments.py +451 -0
- whop_sdk/resources/support_channels.py +455 -0
- whop_sdk/resources/transfers.py +488 -0
- whop_sdk/resources/users.py +248 -0
- whop_sdk/resources/webhooks.py +69 -0
- whop_sdk/types/__init__.py +135 -0
- whop_sdk/types/app_build_create_params.py +59 -0
- whop_sdk/types/app_build_list_params.py +34 -0
- whop_sdk/types/app_build_list_response.py +50 -0
- whop_sdk/types/app_create_params.py +19 -0
- whop_sdk/types/app_list_params.py +54 -0
- whop_sdk/types/app_list_response.py +91 -0
- whop_sdk/types/app_update_params.py +58 -0
- whop_sdk/types/authorized_user_list_params.py +33 -0
- whop_sdk/types/authorized_user_list_response.py +33 -0
- whop_sdk/types/authorized_user_retrieve_response.py +33 -0
- whop_sdk/types/chat_channel_list_params.py +28 -0
- whop_sdk/types/chat_channel_list_response.py +43 -0
- whop_sdk/types/chat_channel_update_params.py +32 -0
- whop_sdk/types/checkout_configuration_create_params.py +129 -0
- whop_sdk/types/checkout_configuration_list_params.py +33 -0
- whop_sdk/types/checkout_configuration_list_response.py +66 -0
- whop_sdk/types/course_lesson_interaction_list_params.py +34 -0
- whop_sdk/types/entry_approve_response.py +10 -0
- whop_sdk/types/entry_list_params.py +44 -0
- whop_sdk/types/entry_list_response.py +56 -0
- whop_sdk/types/experience_attach_params.py +12 -0
- whop_sdk/types/experience_create_params.py +22 -0
- whop_sdk/types/experience_delete_response.py +7 -0
- whop_sdk/types/experience_detach_params.py +12 -0
- whop_sdk/types/experience_list_params.py +31 -0
- whop_sdk/types/experience_list_response.py +47 -0
- whop_sdk/types/experience_update_params.py +41 -0
- whop_sdk/types/forum_post_create_params.py +85 -0
- whop_sdk/types/forum_post_list_params.py +31 -0
- whop_sdk/types/forum_post_list_response.py +53 -0
- whop_sdk/types/invoice_create_params.py +137 -0
- whop_sdk/types/invoice_create_response.py +16 -0
- whop_sdk/types/invoice_created_webhook_event.py +26 -0
- whop_sdk/types/invoice_list_params.py +50 -0
- whop_sdk/types/invoice_paid_webhook_event.py +26 -0
- whop_sdk/types/invoice_past_due_webhook_event.py +26 -0
- whop_sdk/types/invoice_void_response.py +7 -0
- whop_sdk/types/invoice_voided_webhook_event.py +26 -0
- whop_sdk/types/ledger_account_retrieve_response.py +78 -0
- whop_sdk/types/membership_cancel_params.py +13 -0
- whop_sdk/types/membership_list_params.py +70 -0
- whop_sdk/types/membership_list_response.py +117 -0
- whop_sdk/types/membership_pause_params.py +16 -0
- whop_sdk/types/membership_update_params.py +13 -0
- whop_sdk/types/message_create_params.py +51 -0
- whop_sdk/types/message_list_params.py +30 -0
- whop_sdk/types/message_list_response.py +90 -0
- whop_sdk/types/payment_list_params.py +72 -0
- whop_sdk/types/payment_list_response.py +221 -0
- whop_sdk/types/payment_refund_params.py +13 -0
- whop_sdk/types/plan_create_params.py +106 -0
- whop_sdk/types/plan_delete_response.py +7 -0
- whop_sdk/types/plan_list_params.py +49 -0
- whop_sdk/types/plan_list_response.py +92 -0
- whop_sdk/types/plan_update_params.py +95 -0
- whop_sdk/types/product_create_params.py +170 -0
- whop_sdk/types/product_delete_response.py +7 -0
- whop_sdk/types/product_list_params.py +41 -0
- whop_sdk/types/product_update_params.py +90 -0
- whop_sdk/types/reaction_create_params.py +19 -0
- whop_sdk/types/reaction_list_params.py +25 -0
- whop_sdk/types/reaction_list_response.py +32 -0
- whop_sdk/types/shared/__init__.py +55 -0
- whop_sdk/types/shared/access_pass_type.py +7 -0
- whop_sdk/types/shared/app.py +159 -0
- whop_sdk/types/shared/app_build.py +50 -0
- whop_sdk/types/shared/app_build_platforms.py +7 -0
- whop_sdk/types/shared/app_build_statuses.py +7 -0
- whop_sdk/types/shared/app_statuses.py +7 -0
- whop_sdk/types/shared/app_view_type.py +7 -0
- whop_sdk/types/shared/authorized_user_roles.py +9 -0
- whop_sdk/types/shared/business_types.py +22 -0
- whop_sdk/types/shared/chat_channel.py +43 -0
- whop_sdk/types/shared/checkout_configuration.py +66 -0
- whop_sdk/types/shared/collection_method.py +7 -0
- whop_sdk/types/shared/company.py +71 -0
- whop_sdk/types/shared/course_lesson_interaction.py +44 -0
- whop_sdk/types/shared/course_lesson_interaction_list_item.py +44 -0
- whop_sdk/types/shared/currency.py +92 -0
- whop_sdk/types/shared/custom_cta.py +21 -0
- whop_sdk/types/shared/direction.py +7 -0
- whop_sdk/types/shared/dms_post_types.py +7 -0
- whop_sdk/types/shared/entry.py +70 -0
- whop_sdk/types/shared/entry_status.py +7 -0
- whop_sdk/types/shared/experience.py +66 -0
- whop_sdk/types/shared/forum_post.py +53 -0
- whop_sdk/types/shared/friendly_receipt_status.py +24 -0
- whop_sdk/types/shared/global_affiliate_status.py +7 -0
- whop_sdk/types/shared/industry_types.py +67 -0
- whop_sdk/types/shared/invoice.py +61 -0
- whop_sdk/types/shared/invoice_list_item.py +61 -0
- whop_sdk/types/shared/invoice_status.py +7 -0
- whop_sdk/types/shared/membership.py +117 -0
- whop_sdk/types/shared/membership_status.py +9 -0
- whop_sdk/types/shared/message.py +90 -0
- whop_sdk/types/shared/page_info.py +21 -0
- whop_sdk/types/shared/payment.py +211 -0
- whop_sdk/types/shared/plan.py +123 -0
- whop_sdk/types/shared/plan_type.py +7 -0
- whop_sdk/types/shared/product.py +124 -0
- whop_sdk/types/shared/product_list_item.py +49 -0
- whop_sdk/types/shared/promo_type.py +7 -0
- whop_sdk/types/shared/reaction.py +32 -0
- whop_sdk/types/shared/receipt_status.py +7 -0
- whop_sdk/types/shared/release_method.py +7 -0
- whop_sdk/types/shared/shipment.py +48 -0
- whop_sdk/types/shared/shipment_carrier.py +84 -0
- whop_sdk/types/shared/shipment_status.py +18 -0
- whop_sdk/types/shared/shipment_substatus.py +36 -0
- whop_sdk/types/shared/support_channel.py +39 -0
- whop_sdk/types/shared/tax_type.py +7 -0
- whop_sdk/types/shared/transfer.py +109 -0
- whop_sdk/types/shared/visibility.py +7 -0
- whop_sdk/types/shared/visibility_filter.py +9 -0
- whop_sdk/types/shared/who_can_post.py +7 -0
- whop_sdk/types/shared/who_can_react.py +7 -0
- whop_sdk/types/shared_params/__init__.py +27 -0
- whop_sdk/types/shared_params/access_pass_type.py +9 -0
- whop_sdk/types/shared_params/app_build_platforms.py +9 -0
- whop_sdk/types/shared_params/app_build_statuses.py +9 -0
- whop_sdk/types/shared_params/app_statuses.py +9 -0
- whop_sdk/types/shared_params/app_view_type.py +9 -0
- whop_sdk/types/shared_params/authorized_user_roles.py +11 -0
- whop_sdk/types/shared_params/business_types.py +24 -0
- whop_sdk/types/shared_params/collection_method.py +9 -0
- whop_sdk/types/shared_params/currency.py +94 -0
- whop_sdk/types/shared_params/custom_cta.py +23 -0
- whop_sdk/types/shared_params/direction.py +9 -0
- whop_sdk/types/shared_params/entry_status.py +9 -0
- whop_sdk/types/shared_params/friendly_receipt_status.py +26 -0
- whop_sdk/types/shared_params/global_affiliate_status.py +9 -0
- whop_sdk/types/shared_params/industry_types.py +69 -0
- whop_sdk/types/shared_params/invoice_status.py +9 -0
- whop_sdk/types/shared_params/membership_status.py +11 -0
- whop_sdk/types/shared_params/plan_type.py +9 -0
- whop_sdk/types/shared_params/receipt_status.py +9 -0
- whop_sdk/types/shared_params/release_method.py +9 -0
- whop_sdk/types/shared_params/tax_type.py +9 -0
- whop_sdk/types/shared_params/visibility.py +9 -0
- whop_sdk/types/shared_params/visibility_filter.py +11 -0
- whop_sdk/types/shared_params/who_can_post.py +9 -0
- whop_sdk/types/shared_params/who_can_react.py +9 -0
- whop_sdk/types/shipment_create_params.py +18 -0
- whop_sdk/types/shipment_list_params.py +31 -0
- whop_sdk/types/shipment_list_response.py +48 -0
- whop_sdk/types/support_channel_create_params.py +15 -0
- whop_sdk/types/support_channel_list_params.py +40 -0
- whop_sdk/types/support_channel_list_response.py +39 -0
- whop_sdk/types/transfer_create_params.py +36 -0
- whop_sdk/types/transfer_list_params.py +42 -0
- whop_sdk/types/transfer_list_response.py +35 -0
- whop_sdk/types/unwrap_webhook_event.py +15 -0
- whop_sdk/types/user_check_access_response.py +15 -0
- whop_sdk/types/user_retrieve_response.py +25 -0
- whop_sdk-0.0.1.dist-info/METADATA +522 -0
- whop_sdk-0.0.1.dist-info/RECORD +212 -0
- whop_sdk-0.0.1.dist-info/WHEEL +4 -0
- whop_sdk-0.0.1.dist-info/licenses/LICENSE +201 -0
|
@@ -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__ = ["AuthorizedUserRoles"]
|
|
6
|
+
|
|
7
|
+
AuthorizedUserRoles: TypeAlias = Literal[
|
|
8
|
+
"owner", "admin", "sales_manager", "moderator", "app_manager", "support", "manager"
|
|
9
|
+
]
|
|
@@ -0,0 +1,22 @@
|
|
|
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__ = ["BusinessTypes"]
|
|
6
|
+
|
|
7
|
+
BusinessTypes: TypeAlias = Literal[
|
|
8
|
+
"education_program",
|
|
9
|
+
"coaching",
|
|
10
|
+
"software",
|
|
11
|
+
"paid_group",
|
|
12
|
+
"newsletter",
|
|
13
|
+
"agency",
|
|
14
|
+
"physical_products",
|
|
15
|
+
"brick_and_mortar",
|
|
16
|
+
"events",
|
|
17
|
+
"coaching_and_courses",
|
|
18
|
+
"other",
|
|
19
|
+
"saas",
|
|
20
|
+
"course",
|
|
21
|
+
"community",
|
|
22
|
+
]
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
|
|
2
|
+
|
|
3
|
+
from typing import List, Optional
|
|
4
|
+
|
|
5
|
+
from ..._models import BaseModel
|
|
6
|
+
from .who_can_post import WhoCanPost
|
|
7
|
+
from .who_can_react import WhoCanReact
|
|
8
|
+
|
|
9
|
+
__all__ = ["ChatChannel", "Experience"]
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
class Experience(BaseModel):
|
|
13
|
+
id: str
|
|
14
|
+
"""The unique ID representing this experience"""
|
|
15
|
+
|
|
16
|
+
name: str
|
|
17
|
+
"""The written name of the description."""
|
|
18
|
+
|
|
19
|
+
|
|
20
|
+
class ChatChannel(BaseModel):
|
|
21
|
+
id: str
|
|
22
|
+
"""The unique identifier for the entity"""
|
|
23
|
+
|
|
24
|
+
ban_media: bool
|
|
25
|
+
"""Whether or not media is banned in this chat"""
|
|
26
|
+
|
|
27
|
+
ban_urls: bool
|
|
28
|
+
"""Whether or not URLs are banned in this chat"""
|
|
29
|
+
|
|
30
|
+
banned_words: List[str]
|
|
31
|
+
"""List of banned words in this chat"""
|
|
32
|
+
|
|
33
|
+
experience: Experience
|
|
34
|
+
"""The experience for this chat"""
|
|
35
|
+
|
|
36
|
+
user_posts_cooldown_seconds: Optional[int] = None
|
|
37
|
+
"""The number of seconds a user needs to wait before posting again, if any"""
|
|
38
|
+
|
|
39
|
+
who_can_post: WhoCanPost
|
|
40
|
+
"""Who can post on this chat"""
|
|
41
|
+
|
|
42
|
+
who_can_react: WhoCanReact
|
|
43
|
+
"""Who can react on this chat"""
|
|
@@ -0,0 +1,66 @@
|
|
|
1
|
+
# File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
|
|
2
|
+
|
|
3
|
+
from typing import Dict, Optional
|
|
4
|
+
|
|
5
|
+
from .currency import Currency
|
|
6
|
+
from ..._models import BaseModel
|
|
7
|
+
from .plan_type import PlanType
|
|
8
|
+
from .visibility import Visibility
|
|
9
|
+
from .release_method import ReleaseMethod
|
|
10
|
+
|
|
11
|
+
__all__ = ["CheckoutConfiguration", "Plan"]
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
class Plan(BaseModel):
|
|
15
|
+
id: str
|
|
16
|
+
"""The internal ID of the plan."""
|
|
17
|
+
|
|
18
|
+
billing_period: Optional[int] = None
|
|
19
|
+
"""The interval at which the plan charges (renewal plans)."""
|
|
20
|
+
|
|
21
|
+
currency: Currency
|
|
22
|
+
"""The respective currency identifier for the plan."""
|
|
23
|
+
|
|
24
|
+
expiration_days: Optional[int] = None
|
|
25
|
+
"""The interval at which the plan charges (expiration plans)."""
|
|
26
|
+
|
|
27
|
+
initial_price: float
|
|
28
|
+
"""The price a person has to pay for a plan on the initial purchase."""
|
|
29
|
+
|
|
30
|
+
plan_type: PlanType
|
|
31
|
+
"""Indicates if the plan is a one time payment or recurring."""
|
|
32
|
+
|
|
33
|
+
release_method: ReleaseMethod
|
|
34
|
+
"""This is the release method the business uses to sell this plan."""
|
|
35
|
+
|
|
36
|
+
renewal_price: float
|
|
37
|
+
"""The price a person has to pay for a plan on the renewal purchase."""
|
|
38
|
+
|
|
39
|
+
trial_period_days: Optional[int] = None
|
|
40
|
+
"""The number of free trial days added before a renewal plan."""
|
|
41
|
+
|
|
42
|
+
visibility: Visibility
|
|
43
|
+
"""Shows or hides the plan from public/business view."""
|
|
44
|
+
|
|
45
|
+
|
|
46
|
+
class CheckoutConfiguration(BaseModel):
|
|
47
|
+
id: str
|
|
48
|
+
"""The ID of the checkout session"""
|
|
49
|
+
|
|
50
|
+
affiliate_code: str
|
|
51
|
+
"""The affiliate code to use for the checkout session"""
|
|
52
|
+
|
|
53
|
+
company_id: str
|
|
54
|
+
"""The ID of the company to use for the checkout session"""
|
|
55
|
+
|
|
56
|
+
metadata: Dict[str, object]
|
|
57
|
+
"""The metadata to use for the checkout session"""
|
|
58
|
+
|
|
59
|
+
plan: Plan
|
|
60
|
+
"""The plan to use for the checkout session"""
|
|
61
|
+
|
|
62
|
+
purchase_url: str
|
|
63
|
+
"""The URL to redirect the user to after the checkout session is created"""
|
|
64
|
+
|
|
65
|
+
redirect_url: str
|
|
66
|
+
"""The URL to redirect the user to after the checkout session is created"""
|
|
@@ -0,0 +1,71 @@
|
|
|
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
|
+
from typing_extensions import Literal
|
|
6
|
+
|
|
7
|
+
from ..._models import BaseModel
|
|
8
|
+
from .business_types import BusinessTypes
|
|
9
|
+
from .industry_types import IndustryTypes
|
|
10
|
+
|
|
11
|
+
__all__ = ["Company", "OwnerUser", "SocialLink"]
|
|
12
|
+
|
|
13
|
+
|
|
14
|
+
class OwnerUser(BaseModel):
|
|
15
|
+
id: str
|
|
16
|
+
"""The internal ID of the user."""
|
|
17
|
+
|
|
18
|
+
name: Optional[str] = None
|
|
19
|
+
"""The name of the user from their Whop account."""
|
|
20
|
+
|
|
21
|
+
username: str
|
|
22
|
+
"""The username of the user from their Whop account."""
|
|
23
|
+
|
|
24
|
+
|
|
25
|
+
class SocialLink(BaseModel):
|
|
26
|
+
id: str
|
|
27
|
+
"""The ID"""
|
|
28
|
+
|
|
29
|
+
url: str
|
|
30
|
+
"""The URL"""
|
|
31
|
+
|
|
32
|
+
website: Literal["x", "instagram", "facebook", "tiktok", "youtube", "linkedin", "twitch", "website"]
|
|
33
|
+
"""The website"""
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
class Company(BaseModel):
|
|
37
|
+
id: str
|
|
38
|
+
"""The ID (tag) of the company."""
|
|
39
|
+
|
|
40
|
+
business_type: Optional[BusinessTypes] = None
|
|
41
|
+
"""The different business types a company can be."""
|
|
42
|
+
|
|
43
|
+
created_at: datetime
|
|
44
|
+
"""When the company was created (signed up)"""
|
|
45
|
+
|
|
46
|
+
industry_type: Optional[IndustryTypes] = None
|
|
47
|
+
"""The different industry types a company can be in."""
|
|
48
|
+
|
|
49
|
+
member_count: int
|
|
50
|
+
"""The number of members in the company."""
|
|
51
|
+
|
|
52
|
+
owner_user: OwnerUser
|
|
53
|
+
"""The user who owns this company"""
|
|
54
|
+
|
|
55
|
+
published_reviews_count: int
|
|
56
|
+
"""The number of reviews that have been published for the company."""
|
|
57
|
+
|
|
58
|
+
route: str
|
|
59
|
+
"""The slug/route of the company on the Whop site."""
|
|
60
|
+
|
|
61
|
+
social_links: List[SocialLink]
|
|
62
|
+
"""The social media accounts of the company"""
|
|
63
|
+
|
|
64
|
+
title: str
|
|
65
|
+
"""The title of the company."""
|
|
66
|
+
|
|
67
|
+
updated_at: datetime
|
|
68
|
+
"""The time the company was last updated."""
|
|
69
|
+
|
|
70
|
+
verified: bool
|
|
71
|
+
"""If the company is Whop Verified"""
|
|
@@ -0,0 +1,44 @@
|
|
|
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__ = ["CourseLessonInteraction", "Lesson", "User"]
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
class Lesson(BaseModel):
|
|
12
|
+
id: str
|
|
13
|
+
"""The ID of the lesson"""
|
|
14
|
+
|
|
15
|
+
title: str
|
|
16
|
+
"""The title of the lesson"""
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
class User(BaseModel):
|
|
20
|
+
id: str
|
|
21
|
+
"""The internal ID of the user."""
|
|
22
|
+
|
|
23
|
+
name: Optional[str] = None
|
|
24
|
+
"""The name of the user from their Whop account."""
|
|
25
|
+
|
|
26
|
+
username: str
|
|
27
|
+
"""The username of the user from their Whop account."""
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
class CourseLessonInteraction(BaseModel):
|
|
31
|
+
id: str
|
|
32
|
+
"""The ID of the lesson interaction"""
|
|
33
|
+
|
|
34
|
+
completed: bool
|
|
35
|
+
"""Whether the lesson has been completed by the user"""
|
|
36
|
+
|
|
37
|
+
created_at: datetime
|
|
38
|
+
"""When the interaction was created"""
|
|
39
|
+
|
|
40
|
+
lesson: Lesson
|
|
41
|
+
"""The lesson this interaction is for"""
|
|
42
|
+
|
|
43
|
+
user: User
|
|
44
|
+
"""The user who interacted with the lesson"""
|
|
@@ -0,0 +1,44 @@
|
|
|
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__ = ["CourseLessonInteractionListItem", "Lesson", "User"]
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
class Lesson(BaseModel):
|
|
12
|
+
id: str
|
|
13
|
+
"""The ID of the lesson"""
|
|
14
|
+
|
|
15
|
+
title: str
|
|
16
|
+
"""The title of the lesson"""
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
class User(BaseModel):
|
|
20
|
+
id: str
|
|
21
|
+
"""The internal ID of the user."""
|
|
22
|
+
|
|
23
|
+
name: Optional[str] = None
|
|
24
|
+
"""The name of the user from their Whop account."""
|
|
25
|
+
|
|
26
|
+
username: str
|
|
27
|
+
"""The username of the user from their Whop account."""
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
class CourseLessonInteractionListItem(BaseModel):
|
|
31
|
+
id: str
|
|
32
|
+
"""The ID of the lesson interaction"""
|
|
33
|
+
|
|
34
|
+
completed: bool
|
|
35
|
+
"""Whether the lesson has been completed by the user"""
|
|
36
|
+
|
|
37
|
+
created_at: datetime
|
|
38
|
+
"""When the interaction was created"""
|
|
39
|
+
|
|
40
|
+
lesson: Lesson
|
|
41
|
+
"""The lesson this interaction is for"""
|
|
42
|
+
|
|
43
|
+
user: User
|
|
44
|
+
"""The user who interacted with the lesson"""
|
|
@@ -0,0 +1,92 @@
|
|
|
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__ = ["Currency"]
|
|
6
|
+
|
|
7
|
+
Currency: TypeAlias = Literal[
|
|
8
|
+
"usd",
|
|
9
|
+
"sgd",
|
|
10
|
+
"inr",
|
|
11
|
+
"aud",
|
|
12
|
+
"brl",
|
|
13
|
+
"cad",
|
|
14
|
+
"dkk",
|
|
15
|
+
"eur",
|
|
16
|
+
"nok",
|
|
17
|
+
"gbp",
|
|
18
|
+
"sek",
|
|
19
|
+
"chf",
|
|
20
|
+
"hkd",
|
|
21
|
+
"huf",
|
|
22
|
+
"jpy",
|
|
23
|
+
"mxn",
|
|
24
|
+
"myr",
|
|
25
|
+
"pln",
|
|
26
|
+
"czk",
|
|
27
|
+
"nzd",
|
|
28
|
+
"aed",
|
|
29
|
+
"eth",
|
|
30
|
+
"ape",
|
|
31
|
+
"cop",
|
|
32
|
+
"ron",
|
|
33
|
+
"thb",
|
|
34
|
+
"bgn",
|
|
35
|
+
"idr",
|
|
36
|
+
"dop",
|
|
37
|
+
"php",
|
|
38
|
+
"try",
|
|
39
|
+
"krw",
|
|
40
|
+
"twd",
|
|
41
|
+
"vnd",
|
|
42
|
+
"pkr",
|
|
43
|
+
"clp",
|
|
44
|
+
"uyu",
|
|
45
|
+
"ars",
|
|
46
|
+
"zar",
|
|
47
|
+
"dzd",
|
|
48
|
+
"tnd",
|
|
49
|
+
"mad",
|
|
50
|
+
"kes",
|
|
51
|
+
"kwd",
|
|
52
|
+
"jod",
|
|
53
|
+
"all",
|
|
54
|
+
"xcd",
|
|
55
|
+
"amd",
|
|
56
|
+
"bsd",
|
|
57
|
+
"bhd",
|
|
58
|
+
"bob",
|
|
59
|
+
"bam",
|
|
60
|
+
"khr",
|
|
61
|
+
"crc",
|
|
62
|
+
"xof",
|
|
63
|
+
"egp",
|
|
64
|
+
"etb",
|
|
65
|
+
"gmd",
|
|
66
|
+
"ghs",
|
|
67
|
+
"gtq",
|
|
68
|
+
"gyd",
|
|
69
|
+
"ils",
|
|
70
|
+
"jmd",
|
|
71
|
+
"mop",
|
|
72
|
+
"mga",
|
|
73
|
+
"mur",
|
|
74
|
+
"mdl",
|
|
75
|
+
"mnt",
|
|
76
|
+
"nad",
|
|
77
|
+
"ngn",
|
|
78
|
+
"mkd",
|
|
79
|
+
"omr",
|
|
80
|
+
"pyg",
|
|
81
|
+
"pen",
|
|
82
|
+
"qar",
|
|
83
|
+
"rwf",
|
|
84
|
+
"sar",
|
|
85
|
+
"rsd",
|
|
86
|
+
"lkr",
|
|
87
|
+
"tzs",
|
|
88
|
+
"ttd",
|
|
89
|
+
"uzs",
|
|
90
|
+
"rub",
|
|
91
|
+
"btc",
|
|
92
|
+
]
|
|
@@ -0,0 +1,21 @@
|
|
|
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__ = ["CustomCta"]
|
|
6
|
+
|
|
7
|
+
CustomCta: TypeAlias = Literal[
|
|
8
|
+
"get_access",
|
|
9
|
+
"join",
|
|
10
|
+
"order_now",
|
|
11
|
+
"shop_now",
|
|
12
|
+
"call_now",
|
|
13
|
+
"donate_now",
|
|
14
|
+
"contact_us",
|
|
15
|
+
"sign_up",
|
|
16
|
+
"subscribe",
|
|
17
|
+
"purchase",
|
|
18
|
+
"get_offer",
|
|
19
|
+
"apply_now",
|
|
20
|
+
"complete_order",
|
|
21
|
+
]
|
|
@@ -0,0 +1,70 @@
|
|
|
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 .entry_status import EntryStatus
|
|
8
|
+
|
|
9
|
+
__all__ = ["Entry", "CustomFieldResponse", "Plan", "Product", "User"]
|
|
10
|
+
|
|
11
|
+
|
|
12
|
+
class CustomFieldResponse(BaseModel):
|
|
13
|
+
id: str
|
|
14
|
+
"""The ID of the custom field item"""
|
|
15
|
+
|
|
16
|
+
answer: str
|
|
17
|
+
"""The response a user gave to the specific question or field."""
|
|
18
|
+
|
|
19
|
+
question: str
|
|
20
|
+
"""The question asked by the custom field"""
|
|
21
|
+
|
|
22
|
+
|
|
23
|
+
class Plan(BaseModel):
|
|
24
|
+
id: str
|
|
25
|
+
"""The internal ID of the plan."""
|
|
26
|
+
|
|
27
|
+
|
|
28
|
+
class Product(BaseModel):
|
|
29
|
+
id: str
|
|
30
|
+
"""The internal ID of the public product."""
|
|
31
|
+
|
|
32
|
+
title: str
|
|
33
|
+
"""The title of the product. Use for Whop 4.0."""
|
|
34
|
+
|
|
35
|
+
|
|
36
|
+
class User(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 Entry(BaseModel):
|
|
51
|
+
id: str
|
|
52
|
+
"""The internal ID of the entry."""
|
|
53
|
+
|
|
54
|
+
created_at: Optional[datetime] = None
|
|
55
|
+
"""When the entry was created."""
|
|
56
|
+
|
|
57
|
+
custom_field_responses: Optional[List[CustomFieldResponse]] = None
|
|
58
|
+
"""Responses collected from the user when submitting their entry."""
|
|
59
|
+
|
|
60
|
+
plan: Optional[Plan] = None
|
|
61
|
+
"""The waitlist plan the entry if for."""
|
|
62
|
+
|
|
63
|
+
product: Optional[Product] = None
|
|
64
|
+
"""The access pass tied to this entry, if there is one."""
|
|
65
|
+
|
|
66
|
+
status: EntryStatus
|
|
67
|
+
"""The status of the entry."""
|
|
68
|
+
|
|
69
|
+
user: User
|
|
70
|
+
"""The user who created the entry."""
|
|
@@ -0,0 +1,66 @@
|
|
|
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
|
+
|
|
8
|
+
__all__ = ["Experience", "App", "Company", "Product"]
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
class App(BaseModel):
|
|
12
|
+
id: str
|
|
13
|
+
"""The ID of the app"""
|
|
14
|
+
|
|
15
|
+
name: str
|
|
16
|
+
"""The name of the app"""
|
|
17
|
+
|
|
18
|
+
|
|
19
|
+
class Company(BaseModel):
|
|
20
|
+
id: str
|
|
21
|
+
"""The ID (tag) of the company."""
|
|
22
|
+
|
|
23
|
+
route: str
|
|
24
|
+
"""The slug/route of the company on the Whop site."""
|
|
25
|
+
|
|
26
|
+
title: str
|
|
27
|
+
"""The title of the company."""
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
class Product(BaseModel):
|
|
31
|
+
id: str
|
|
32
|
+
"""The internal ID of the public product."""
|
|
33
|
+
|
|
34
|
+
route: str
|
|
35
|
+
"""The route of the product."""
|
|
36
|
+
|
|
37
|
+
title: str
|
|
38
|
+
"""The title of the product. Use for Whop 4.0."""
|
|
39
|
+
|
|
40
|
+
|
|
41
|
+
class Experience(BaseModel):
|
|
42
|
+
id: str
|
|
43
|
+
"""The unique ID representing this experience"""
|
|
44
|
+
|
|
45
|
+
app: App
|
|
46
|
+
"""The experience interface for this experience."""
|
|
47
|
+
|
|
48
|
+
company: Company
|
|
49
|
+
"""The company that owns this experience."""
|
|
50
|
+
|
|
51
|
+
created_at: datetime
|
|
52
|
+
"""The timestamp of when this experience was created."""
|
|
53
|
+
|
|
54
|
+
name: str
|
|
55
|
+
"""The written name of the description."""
|
|
56
|
+
|
|
57
|
+
order: Optional[str] = None
|
|
58
|
+
"""The order of the experience in the section"""
|
|
59
|
+
|
|
60
|
+
products: List[Product]
|
|
61
|
+
"""The access passes that are associated with this experience.
|
|
62
|
+
|
|
63
|
+
This should not be used unless you are trying to list all access passes the
|
|
64
|
+
experience has, for some reason. You probably don't want to use this though and
|
|
65
|
+
should be using accessPass.
|
|
66
|
+
"""
|
|
@@ -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
|
+
|
|
5
|
+
from ..._models import BaseModel
|
|
6
|
+
|
|
7
|
+
__all__ = ["ForumPost", "User"]
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class User(BaseModel):
|
|
11
|
+
id: str
|
|
12
|
+
"""The internal ID of the user."""
|
|
13
|
+
|
|
14
|
+
name: Optional[str] = None
|
|
15
|
+
"""The name of the user from their Whop account."""
|
|
16
|
+
|
|
17
|
+
username: str
|
|
18
|
+
"""The username of the user from their Whop account."""
|
|
19
|
+
|
|
20
|
+
|
|
21
|
+
class ForumPost(BaseModel):
|
|
22
|
+
id: str
|
|
23
|
+
"""The unique identifier for the entity"""
|
|
24
|
+
|
|
25
|
+
comment_count: int
|
|
26
|
+
"""The amount of comments on this post"""
|
|
27
|
+
|
|
28
|
+
content: Optional[str] = None
|
|
29
|
+
"""The content of the forum post in Markdown format"""
|
|
30
|
+
|
|
31
|
+
is_edited: bool
|
|
32
|
+
"""Whether the forum post has been edited"""
|
|
33
|
+
|
|
34
|
+
is_pinned: bool
|
|
35
|
+
"""Whether this forum post is pinned"""
|
|
36
|
+
|
|
37
|
+
is_poster_admin: bool
|
|
38
|
+
"""Whether the user that sent the post is an admin of the company"""
|
|
39
|
+
|
|
40
|
+
like_count: Optional[int] = None
|
|
41
|
+
"""The number of likes this post has received"""
|
|
42
|
+
|
|
43
|
+
parent_id: Optional[str] = None
|
|
44
|
+
"""The ID of the parent forum post, if applicable"""
|
|
45
|
+
|
|
46
|
+
title: Optional[str] = None
|
|
47
|
+
"""The title of the forum post"""
|
|
48
|
+
|
|
49
|
+
user: User
|
|
50
|
+
"""The user who created this forum post"""
|
|
51
|
+
|
|
52
|
+
view_count: Optional[int] = None
|
|
53
|
+
"""The number of times this message has been viewed"""
|
|
@@ -0,0 +1,24 @@
|
|
|
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__ = ["FriendlyReceiptStatus"]
|
|
6
|
+
|
|
7
|
+
FriendlyReceiptStatus: TypeAlias = Literal[
|
|
8
|
+
"auto_refunded",
|
|
9
|
+
"refunded",
|
|
10
|
+
"partially_refunded",
|
|
11
|
+
"dispute_warning",
|
|
12
|
+
"open_resolution",
|
|
13
|
+
"open_dispute",
|
|
14
|
+
"failed",
|
|
15
|
+
"price_too_low",
|
|
16
|
+
"succeeded",
|
|
17
|
+
"drafted",
|
|
18
|
+
"uncollectible",
|
|
19
|
+
"unresolved",
|
|
20
|
+
"past_due",
|
|
21
|
+
"pending",
|
|
22
|
+
"incomplete",
|
|
23
|
+
"canceled",
|
|
24
|
+
]
|