whop-sdk 0.0.1__py3-none-any.whl → 0.0.3__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/_client.py +65 -2
- whop_sdk/_version.py +1 -1
- whop_sdk/resources/__init__.py +98 -0
- whop_sdk/resources/checkout_configurations.py +16 -12
- whop_sdk/resources/course_chapters.py +602 -0
- whop_sdk/resources/course_lessons.py +722 -0
- whop_sdk/resources/courses.py +713 -0
- whop_sdk/resources/experiences.py +107 -0
- whop_sdk/resources/forum_posts.py +123 -1
- whop_sdk/resources/forums.py +446 -0
- whop_sdk/resources/members.py +429 -0
- whop_sdk/resources/memberships.py +16 -8
- whop_sdk/resources/messages.py +113 -1
- whop_sdk/resources/payments.py +3 -26
- whop_sdk/resources/plans.py +84 -6
- whop_sdk/resources/products.py +8 -16
- whop_sdk/resources/promo_codes.py +652 -0
- whop_sdk/resources/reviews.py +315 -0
- whop_sdk/types/__init__.py +64 -0
- whop_sdk/types/app_list_response.py +16 -1
- whop_sdk/types/assessment_question_types.py +7 -0
- whop_sdk/types/billing_reasons.py +9 -0
- whop_sdk/types/card_brands.py +24 -0
- whop_sdk/types/checkout_configuration_create_params.py +70 -7
- whop_sdk/types/checkout_configuration_list_response.py +12 -9
- whop_sdk/types/course.py +109 -0
- whop_sdk/types/course_chapter.py +32 -0
- whop_sdk/types/course_chapter_create_params.py +16 -0
- whop_sdk/types/course_chapter_delete_response.py +7 -0
- whop_sdk/types/course_chapter_list_params.py +25 -0
- whop_sdk/types/course_chapter_list_response.py +16 -0
- whop_sdk/types/course_chapter_update_params.py +12 -0
- whop_sdk/types/course_create_params.py +41 -0
- whop_sdk/types/course_delete_response.py +7 -0
- whop_sdk/types/course_lesson_create_params.py +27 -0
- whop_sdk/types/course_lesson_delete_response.py +7 -0
- whop_sdk/types/course_lesson_interaction_completed_webhook_event.py +26 -0
- whop_sdk/types/course_lesson_list_params.py +28 -0
- whop_sdk/types/course_lesson_list_response.py +35 -0
- whop_sdk/types/course_lesson_update_params.py +144 -0
- whop_sdk/types/course_list_params.py +28 -0
- whop_sdk/types/course_list_response.py +77 -0
- whop_sdk/types/course_update_params.py +89 -0
- whop_sdk/types/entry_approved_webhook_event.py +26 -0
- whop_sdk/types/entry_created_webhook_event.py +26 -0
- whop_sdk/types/entry_deleted_webhook_event.py +26 -0
- whop_sdk/types/entry_denied_webhook_event.py +26 -0
- whop_sdk/types/experience_duplicate_params.py +13 -0
- whop_sdk/types/experience_list_response.py +27 -1
- whop_sdk/types/forum_list_params.py +28 -0
- whop_sdk/types/forum_list_response.py +33 -0
- whop_sdk/types/forum_post_list_response.py +7 -0
- whop_sdk/types/forum_post_update_params.py +41 -0
- whop_sdk/types/forum_update_params.py +23 -0
- whop_sdk/types/invoice_create_params.py +10 -2
- whop_sdk/types/languages.py +30 -0
- whop_sdk/types/ledger_account_retrieve_response.py +15 -1
- whop_sdk/types/lesson.py +159 -0
- whop_sdk/types/lesson_types.py +7 -0
- whop_sdk/types/lesson_visibilities.py +7 -0
- whop_sdk/types/member_list_params.py +73 -0
- whop_sdk/types/member_list_response.py +65 -0
- whop_sdk/types/member_retrieve_response.py +79 -0
- whop_sdk/types/membership_activated_webhook_event.py +29 -0
- whop_sdk/types/membership_deactivated_webhook_event.py +29 -0
- whop_sdk/types/membership_list_params.py +7 -4
- whop_sdk/types/membership_list_response.py +12 -1
- whop_sdk/types/message_update_params.py +35 -0
- whop_sdk/types/payment_failed_webhook_event.py +26 -0
- whop_sdk/types/payment_list_params.py +2 -7
- whop_sdk/types/payment_list_response.py +23 -13
- whop_sdk/types/payment_method_types.py +92 -0
- whop_sdk/types/payment_pending_webhook_event.py +26 -0
- whop_sdk/types/payment_succeeded_webhook_event.py +26 -0
- whop_sdk/types/plan_create_params.py +29 -3
- whop_sdk/types/plan_list_response.py +9 -0
- whop_sdk/types/plan_update_params.py +18 -0
- whop_sdk/types/product_create_params.py +1 -24
- whop_sdk/types/product_update_params.py +12 -1
- whop_sdk/types/promo_code.py +90 -0
- whop_sdk/types/promo_code_create_params.py +70 -0
- whop_sdk/types/promo_code_delete_response.py +7 -0
- whop_sdk/types/promo_code_list_params.py +37 -0
- whop_sdk/types/promo_code_list_response.py +79 -0
- whop_sdk/types/promo_code_status.py +7 -0
- whop_sdk/types/promo_duration.py +7 -0
- whop_sdk/types/review_list_params.py +31 -0
- whop_sdk/types/review_list_response.py +78 -0
- whop_sdk/types/review_retrieve_response.py +103 -0
- whop_sdk/types/review_status.py +7 -0
- whop_sdk/types/shared/__init__.py +7 -0
- whop_sdk/types/shared/access_level.py +7 -0
- whop_sdk/types/shared/app.py +25 -1
- whop_sdk/types/shared/checkout_configuration.py +12 -9
- whop_sdk/types/shared/company.py +15 -1
- whop_sdk/types/shared/course_lesson_interaction.py +20 -1
- whop_sdk/types/shared/email_notification_preferences.py +7 -0
- whop_sdk/types/shared/experience.py +27 -1
- whop_sdk/types/shared/forum.py +33 -0
- whop_sdk/types/shared/forum_post.py +7 -0
- whop_sdk/types/shared/invoice.py +4 -1
- whop_sdk/types/shared/invoice_list_item.py +4 -1
- whop_sdk/types/shared/member_most_recent_actions.py +22 -0
- whop_sdk/types/shared/member_statuses.py +7 -0
- whop_sdk/types/shared/membership.py +12 -1
- whop_sdk/types/shared/payment.py +23 -13
- whop_sdk/types/shared/plan.py +9 -0
- whop_sdk/types/shared/product.py +8 -0
- whop_sdk/types/shared/product_list_item.py +8 -0
- whop_sdk/types/shared/who_can_comment_types.py +7 -0
- whop_sdk/types/shared/who_can_post_types.py +7 -0
- whop_sdk/types/shared_params/__init__.py +7 -0
- whop_sdk/types/shared_params/access_level.py +9 -0
- whop_sdk/types/shared_params/email_notification_preferences.py +9 -0
- whop_sdk/types/shared_params/member_most_recent_actions.py +24 -0
- whop_sdk/types/shared_params/member_statuses.py +9 -0
- whop_sdk/types/shared_params/promo_type.py +9 -0
- whop_sdk/types/shared_params/who_can_comment_types.py +9 -0
- whop_sdk/types/shared_params/who_can_post_types.py +9 -0
- whop_sdk/types/unwrap_webhook_event.py +24 -1
- whop_sdk/types/user_check_access_response.py +2 -3
- whop_sdk/types/user_retrieve_response.py +12 -1
- {whop_sdk-0.0.1.dist-info → whop_sdk-0.0.3.dist-info}/METADATA +2 -2
- {whop_sdk-0.0.1.dist-info → whop_sdk-0.0.3.dist-info}/RECORD +126 -50
- {whop_sdk-0.0.1.dist-info → whop_sdk-0.0.3.dist-info}/WHEEL +0 -0
- {whop_sdk-0.0.1.dist-info → whop_sdk-0.0.3.dist-info}/licenses/LICENSE +0 -0
|
@@ -0,0 +1,429 @@
|
|
|
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 List, Union, Optional
|
|
6
|
+
from datetime import datetime
|
|
7
|
+
from typing_extensions import Literal
|
|
8
|
+
|
|
9
|
+
import httpx
|
|
10
|
+
|
|
11
|
+
from ..types import member_list_params
|
|
12
|
+
from .._types import Body, Omit, Query, Headers, NotGiven, SequenceNotStr, omit, not_given
|
|
13
|
+
from .._utils import maybe_transform
|
|
14
|
+
from .._compat import cached_property
|
|
15
|
+
from .._resource import SyncAPIResource, AsyncAPIResource
|
|
16
|
+
from .._response import (
|
|
17
|
+
to_raw_response_wrapper,
|
|
18
|
+
to_streamed_response_wrapper,
|
|
19
|
+
async_to_raw_response_wrapper,
|
|
20
|
+
async_to_streamed_response_wrapper,
|
|
21
|
+
)
|
|
22
|
+
from ..pagination import SyncCursorPage, AsyncCursorPage
|
|
23
|
+
from .._base_client import AsyncPaginator, make_request_options
|
|
24
|
+
from ..types.shared.direction import Direction
|
|
25
|
+
from ..types.shared.access_level import AccessLevel
|
|
26
|
+
from ..types.member_list_response import MemberListResponse
|
|
27
|
+
from ..types.shared.member_statuses import MemberStatuses
|
|
28
|
+
from ..types.member_retrieve_response import MemberRetrieveResponse
|
|
29
|
+
from ..types.shared.member_most_recent_actions import MemberMostRecentActions
|
|
30
|
+
|
|
31
|
+
__all__ = ["MembersResource", "AsyncMembersResource"]
|
|
32
|
+
|
|
33
|
+
|
|
34
|
+
class MembersResource(SyncAPIResource):
|
|
35
|
+
@cached_property
|
|
36
|
+
def with_raw_response(self) -> MembersResourceWithRawResponse:
|
|
37
|
+
"""
|
|
38
|
+
This property can be used as a prefix for any HTTP method call to return
|
|
39
|
+
the raw response object instead of the parsed content.
|
|
40
|
+
|
|
41
|
+
For more information, see https://www.github.com/whopio/whopsdk-python#accessing-raw-response-data-eg-headers
|
|
42
|
+
"""
|
|
43
|
+
return MembersResourceWithRawResponse(self)
|
|
44
|
+
|
|
45
|
+
@cached_property
|
|
46
|
+
def with_streaming_response(self) -> MembersResourceWithStreamingResponse:
|
|
47
|
+
"""
|
|
48
|
+
An alternative to `.with_raw_response` that doesn't eagerly read the response body.
|
|
49
|
+
|
|
50
|
+
For more information, see https://www.github.com/whopio/whopsdk-python#with_streaming_response
|
|
51
|
+
"""
|
|
52
|
+
return MembersResourceWithStreamingResponse(self)
|
|
53
|
+
|
|
54
|
+
def retrieve(
|
|
55
|
+
self,
|
|
56
|
+
id: str,
|
|
57
|
+
*,
|
|
58
|
+
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
|
|
59
|
+
# The extra values given here take precedence over values defined on the client or passed to this method.
|
|
60
|
+
extra_headers: Headers | None = None,
|
|
61
|
+
extra_query: Query | None = None,
|
|
62
|
+
extra_body: Body | None = None,
|
|
63
|
+
timeout: float | httpx.Timeout | None | NotGiven = not_given,
|
|
64
|
+
) -> MemberRetrieveResponse:
|
|
65
|
+
"""
|
|
66
|
+
Retrieves a member of a company by ID
|
|
67
|
+
|
|
68
|
+
Required permissions:
|
|
69
|
+
|
|
70
|
+
- `member:basic:read`
|
|
71
|
+
- `member:email:read`
|
|
72
|
+
- `member:phone:read`
|
|
73
|
+
|
|
74
|
+
Args:
|
|
75
|
+
extra_headers: Send extra headers
|
|
76
|
+
|
|
77
|
+
extra_query: Add additional query parameters to the request
|
|
78
|
+
|
|
79
|
+
extra_body: Add additional JSON properties to the request
|
|
80
|
+
|
|
81
|
+
timeout: Override the client-level default timeout for this request, in seconds
|
|
82
|
+
"""
|
|
83
|
+
if not id:
|
|
84
|
+
raise ValueError(f"Expected a non-empty value for `id` but received {id!r}")
|
|
85
|
+
return self._get(
|
|
86
|
+
f"/members/{id}",
|
|
87
|
+
options=make_request_options(
|
|
88
|
+
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
|
|
89
|
+
),
|
|
90
|
+
cast_to=MemberRetrieveResponse,
|
|
91
|
+
)
|
|
92
|
+
|
|
93
|
+
def list(
|
|
94
|
+
self,
|
|
95
|
+
*,
|
|
96
|
+
company_id: str,
|
|
97
|
+
access_level: Optional[AccessLevel] | Omit = omit,
|
|
98
|
+
access_pass_ids: Optional[SequenceNotStr[str]] | Omit = omit,
|
|
99
|
+
after: Optional[str] | Omit = omit,
|
|
100
|
+
before: Optional[str] | Omit = omit,
|
|
101
|
+
created_after: Union[str, datetime, None] | Omit = omit,
|
|
102
|
+
created_before: Union[str, datetime, None] | Omit = omit,
|
|
103
|
+
direction: Optional[Direction] | Omit = omit,
|
|
104
|
+
first: Optional[int] | Omit = omit,
|
|
105
|
+
last: Optional[int] | Omit = omit,
|
|
106
|
+
most_recent_actions: Optional[List[MemberMostRecentActions]] | Omit = omit,
|
|
107
|
+
order: Optional[Literal["id", "usd_total_spent", "created_at", "joined_at", "most_recent_action"]]
|
|
108
|
+
| Omit = omit,
|
|
109
|
+
plan_ids: Optional[SequenceNotStr[str]] | Omit = omit,
|
|
110
|
+
promo_code_ids: Optional[SequenceNotStr[str]] | Omit = omit,
|
|
111
|
+
query: Optional[str] | Omit = omit,
|
|
112
|
+
statuses: Optional[List[MemberStatuses]] | Omit = omit,
|
|
113
|
+
user_ids: Optional[SequenceNotStr[str]] | Omit = omit,
|
|
114
|
+
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
|
|
115
|
+
# The extra values given here take precedence over values defined on the client or passed to this method.
|
|
116
|
+
extra_headers: Headers | None = None,
|
|
117
|
+
extra_query: Query | None = None,
|
|
118
|
+
extra_body: Body | None = None,
|
|
119
|
+
timeout: float | httpx.Timeout | None | NotGiven = not_given,
|
|
120
|
+
) -> SyncCursorPage[MemberListResponse]:
|
|
121
|
+
"""
|
|
122
|
+
List the members of a company
|
|
123
|
+
|
|
124
|
+
Required permissions:
|
|
125
|
+
|
|
126
|
+
- `member:basic:read`
|
|
127
|
+
- `member:email:read`
|
|
128
|
+
- `member:phone:read`
|
|
129
|
+
|
|
130
|
+
Args:
|
|
131
|
+
company_id: The ID of the company to list members for
|
|
132
|
+
|
|
133
|
+
access_level: The access level a given user (or company) has to an access pass or company.
|
|
134
|
+
|
|
135
|
+
access_pass_ids: The access pass IDs to filter the members by
|
|
136
|
+
|
|
137
|
+
after: Returns the elements in the list that come after the specified cursor.
|
|
138
|
+
|
|
139
|
+
before: Returns the elements in the list that come before the specified cursor.
|
|
140
|
+
|
|
141
|
+
created_after: The minimum creation date to filter by
|
|
142
|
+
|
|
143
|
+
created_before: The maximum creation date to filter by
|
|
144
|
+
|
|
145
|
+
direction: The direction of the sort.
|
|
146
|
+
|
|
147
|
+
first: Returns the first _n_ elements from the list.
|
|
148
|
+
|
|
149
|
+
last: Returns the last _n_ elements from the list.
|
|
150
|
+
|
|
151
|
+
most_recent_actions: The most recent actions to filter the members by
|
|
152
|
+
|
|
153
|
+
order: Which columns can be used to sort.
|
|
154
|
+
|
|
155
|
+
plan_ids: The plan IDs to filter the members by
|
|
156
|
+
|
|
157
|
+
promo_code_ids: The promo code IDs to filter the members by
|
|
158
|
+
|
|
159
|
+
query: The name, username, or email to filter the members by. The email filter will
|
|
160
|
+
only apply if the current actor has the `member:email:read` permission.
|
|
161
|
+
|
|
162
|
+
statuses: The statuses to filter the members by
|
|
163
|
+
|
|
164
|
+
user_ids: The user IDs to filter the members by
|
|
165
|
+
|
|
166
|
+
extra_headers: Send extra headers
|
|
167
|
+
|
|
168
|
+
extra_query: Add additional query parameters to the request
|
|
169
|
+
|
|
170
|
+
extra_body: Add additional JSON properties to the request
|
|
171
|
+
|
|
172
|
+
timeout: Override the client-level default timeout for this request, in seconds
|
|
173
|
+
"""
|
|
174
|
+
return self._get_api_list(
|
|
175
|
+
"/members",
|
|
176
|
+
page=SyncCursorPage[MemberListResponse],
|
|
177
|
+
options=make_request_options(
|
|
178
|
+
extra_headers=extra_headers,
|
|
179
|
+
extra_query=extra_query,
|
|
180
|
+
extra_body=extra_body,
|
|
181
|
+
timeout=timeout,
|
|
182
|
+
query=maybe_transform(
|
|
183
|
+
{
|
|
184
|
+
"company_id": company_id,
|
|
185
|
+
"access_level": access_level,
|
|
186
|
+
"access_pass_ids": access_pass_ids,
|
|
187
|
+
"after": after,
|
|
188
|
+
"before": before,
|
|
189
|
+
"created_after": created_after,
|
|
190
|
+
"created_before": created_before,
|
|
191
|
+
"direction": direction,
|
|
192
|
+
"first": first,
|
|
193
|
+
"last": last,
|
|
194
|
+
"most_recent_actions": most_recent_actions,
|
|
195
|
+
"order": order,
|
|
196
|
+
"plan_ids": plan_ids,
|
|
197
|
+
"promo_code_ids": promo_code_ids,
|
|
198
|
+
"query": query,
|
|
199
|
+
"statuses": statuses,
|
|
200
|
+
"user_ids": user_ids,
|
|
201
|
+
},
|
|
202
|
+
member_list_params.MemberListParams,
|
|
203
|
+
),
|
|
204
|
+
),
|
|
205
|
+
model=MemberListResponse,
|
|
206
|
+
)
|
|
207
|
+
|
|
208
|
+
|
|
209
|
+
class AsyncMembersResource(AsyncAPIResource):
|
|
210
|
+
@cached_property
|
|
211
|
+
def with_raw_response(self) -> AsyncMembersResourceWithRawResponse:
|
|
212
|
+
"""
|
|
213
|
+
This property can be used as a prefix for any HTTP method call to return
|
|
214
|
+
the raw response object instead of the parsed content.
|
|
215
|
+
|
|
216
|
+
For more information, see https://www.github.com/whopio/whopsdk-python#accessing-raw-response-data-eg-headers
|
|
217
|
+
"""
|
|
218
|
+
return AsyncMembersResourceWithRawResponse(self)
|
|
219
|
+
|
|
220
|
+
@cached_property
|
|
221
|
+
def with_streaming_response(self) -> AsyncMembersResourceWithStreamingResponse:
|
|
222
|
+
"""
|
|
223
|
+
An alternative to `.with_raw_response` that doesn't eagerly read the response body.
|
|
224
|
+
|
|
225
|
+
For more information, see https://www.github.com/whopio/whopsdk-python#with_streaming_response
|
|
226
|
+
"""
|
|
227
|
+
return AsyncMembersResourceWithStreamingResponse(self)
|
|
228
|
+
|
|
229
|
+
async def retrieve(
|
|
230
|
+
self,
|
|
231
|
+
id: str,
|
|
232
|
+
*,
|
|
233
|
+
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
|
|
234
|
+
# The extra values given here take precedence over values defined on the client or passed to this method.
|
|
235
|
+
extra_headers: Headers | None = None,
|
|
236
|
+
extra_query: Query | None = None,
|
|
237
|
+
extra_body: Body | None = None,
|
|
238
|
+
timeout: float | httpx.Timeout | None | NotGiven = not_given,
|
|
239
|
+
) -> MemberRetrieveResponse:
|
|
240
|
+
"""
|
|
241
|
+
Retrieves a member of a company by ID
|
|
242
|
+
|
|
243
|
+
Required permissions:
|
|
244
|
+
|
|
245
|
+
- `member:basic:read`
|
|
246
|
+
- `member:email:read`
|
|
247
|
+
- `member:phone:read`
|
|
248
|
+
|
|
249
|
+
Args:
|
|
250
|
+
extra_headers: Send extra headers
|
|
251
|
+
|
|
252
|
+
extra_query: Add additional query parameters to the request
|
|
253
|
+
|
|
254
|
+
extra_body: Add additional JSON properties to the request
|
|
255
|
+
|
|
256
|
+
timeout: Override the client-level default timeout for this request, in seconds
|
|
257
|
+
"""
|
|
258
|
+
if not id:
|
|
259
|
+
raise ValueError(f"Expected a non-empty value for `id` but received {id!r}")
|
|
260
|
+
return await self._get(
|
|
261
|
+
f"/members/{id}",
|
|
262
|
+
options=make_request_options(
|
|
263
|
+
extra_headers=extra_headers, extra_query=extra_query, extra_body=extra_body, timeout=timeout
|
|
264
|
+
),
|
|
265
|
+
cast_to=MemberRetrieveResponse,
|
|
266
|
+
)
|
|
267
|
+
|
|
268
|
+
def list(
|
|
269
|
+
self,
|
|
270
|
+
*,
|
|
271
|
+
company_id: str,
|
|
272
|
+
access_level: Optional[AccessLevel] | Omit = omit,
|
|
273
|
+
access_pass_ids: Optional[SequenceNotStr[str]] | Omit = omit,
|
|
274
|
+
after: Optional[str] | Omit = omit,
|
|
275
|
+
before: Optional[str] | Omit = omit,
|
|
276
|
+
created_after: Union[str, datetime, None] | Omit = omit,
|
|
277
|
+
created_before: Union[str, datetime, None] | Omit = omit,
|
|
278
|
+
direction: Optional[Direction] | Omit = omit,
|
|
279
|
+
first: Optional[int] | Omit = omit,
|
|
280
|
+
last: Optional[int] | Omit = omit,
|
|
281
|
+
most_recent_actions: Optional[List[MemberMostRecentActions]] | Omit = omit,
|
|
282
|
+
order: Optional[Literal["id", "usd_total_spent", "created_at", "joined_at", "most_recent_action"]]
|
|
283
|
+
| Omit = omit,
|
|
284
|
+
plan_ids: Optional[SequenceNotStr[str]] | Omit = omit,
|
|
285
|
+
promo_code_ids: Optional[SequenceNotStr[str]] | Omit = omit,
|
|
286
|
+
query: Optional[str] | Omit = omit,
|
|
287
|
+
statuses: Optional[List[MemberStatuses]] | Omit = omit,
|
|
288
|
+
user_ids: Optional[SequenceNotStr[str]] | Omit = omit,
|
|
289
|
+
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
|
|
290
|
+
# The extra values given here take precedence over values defined on the client or passed to this method.
|
|
291
|
+
extra_headers: Headers | None = None,
|
|
292
|
+
extra_query: Query | None = None,
|
|
293
|
+
extra_body: Body | None = None,
|
|
294
|
+
timeout: float | httpx.Timeout | None | NotGiven = not_given,
|
|
295
|
+
) -> AsyncPaginator[MemberListResponse, AsyncCursorPage[MemberListResponse]]:
|
|
296
|
+
"""
|
|
297
|
+
List the members of a company
|
|
298
|
+
|
|
299
|
+
Required permissions:
|
|
300
|
+
|
|
301
|
+
- `member:basic:read`
|
|
302
|
+
- `member:email:read`
|
|
303
|
+
- `member:phone:read`
|
|
304
|
+
|
|
305
|
+
Args:
|
|
306
|
+
company_id: The ID of the company to list members for
|
|
307
|
+
|
|
308
|
+
access_level: The access level a given user (or company) has to an access pass or company.
|
|
309
|
+
|
|
310
|
+
access_pass_ids: The access pass IDs to filter the members by
|
|
311
|
+
|
|
312
|
+
after: Returns the elements in the list that come after the specified cursor.
|
|
313
|
+
|
|
314
|
+
before: Returns the elements in the list that come before the specified cursor.
|
|
315
|
+
|
|
316
|
+
created_after: The minimum creation date to filter by
|
|
317
|
+
|
|
318
|
+
created_before: The maximum creation date to filter by
|
|
319
|
+
|
|
320
|
+
direction: The direction of the sort.
|
|
321
|
+
|
|
322
|
+
first: Returns the first _n_ elements from the list.
|
|
323
|
+
|
|
324
|
+
last: Returns the last _n_ elements from the list.
|
|
325
|
+
|
|
326
|
+
most_recent_actions: The most recent actions to filter the members by
|
|
327
|
+
|
|
328
|
+
order: Which columns can be used to sort.
|
|
329
|
+
|
|
330
|
+
plan_ids: The plan IDs to filter the members by
|
|
331
|
+
|
|
332
|
+
promo_code_ids: The promo code IDs to filter the members by
|
|
333
|
+
|
|
334
|
+
query: The name, username, or email to filter the members by. The email filter will
|
|
335
|
+
only apply if the current actor has the `member:email:read` permission.
|
|
336
|
+
|
|
337
|
+
statuses: The statuses to filter the members by
|
|
338
|
+
|
|
339
|
+
user_ids: The user IDs to filter the members by
|
|
340
|
+
|
|
341
|
+
extra_headers: Send extra headers
|
|
342
|
+
|
|
343
|
+
extra_query: Add additional query parameters to the request
|
|
344
|
+
|
|
345
|
+
extra_body: Add additional JSON properties to the request
|
|
346
|
+
|
|
347
|
+
timeout: Override the client-level default timeout for this request, in seconds
|
|
348
|
+
"""
|
|
349
|
+
return self._get_api_list(
|
|
350
|
+
"/members",
|
|
351
|
+
page=AsyncCursorPage[MemberListResponse],
|
|
352
|
+
options=make_request_options(
|
|
353
|
+
extra_headers=extra_headers,
|
|
354
|
+
extra_query=extra_query,
|
|
355
|
+
extra_body=extra_body,
|
|
356
|
+
timeout=timeout,
|
|
357
|
+
query=maybe_transform(
|
|
358
|
+
{
|
|
359
|
+
"company_id": company_id,
|
|
360
|
+
"access_level": access_level,
|
|
361
|
+
"access_pass_ids": access_pass_ids,
|
|
362
|
+
"after": after,
|
|
363
|
+
"before": before,
|
|
364
|
+
"created_after": created_after,
|
|
365
|
+
"created_before": created_before,
|
|
366
|
+
"direction": direction,
|
|
367
|
+
"first": first,
|
|
368
|
+
"last": last,
|
|
369
|
+
"most_recent_actions": most_recent_actions,
|
|
370
|
+
"order": order,
|
|
371
|
+
"plan_ids": plan_ids,
|
|
372
|
+
"promo_code_ids": promo_code_ids,
|
|
373
|
+
"query": query,
|
|
374
|
+
"statuses": statuses,
|
|
375
|
+
"user_ids": user_ids,
|
|
376
|
+
},
|
|
377
|
+
member_list_params.MemberListParams,
|
|
378
|
+
),
|
|
379
|
+
),
|
|
380
|
+
model=MemberListResponse,
|
|
381
|
+
)
|
|
382
|
+
|
|
383
|
+
|
|
384
|
+
class MembersResourceWithRawResponse:
|
|
385
|
+
def __init__(self, members: MembersResource) -> None:
|
|
386
|
+
self._members = members
|
|
387
|
+
|
|
388
|
+
self.retrieve = to_raw_response_wrapper(
|
|
389
|
+
members.retrieve,
|
|
390
|
+
)
|
|
391
|
+
self.list = to_raw_response_wrapper(
|
|
392
|
+
members.list,
|
|
393
|
+
)
|
|
394
|
+
|
|
395
|
+
|
|
396
|
+
class AsyncMembersResourceWithRawResponse:
|
|
397
|
+
def __init__(self, members: AsyncMembersResource) -> None:
|
|
398
|
+
self._members = members
|
|
399
|
+
|
|
400
|
+
self.retrieve = async_to_raw_response_wrapper(
|
|
401
|
+
members.retrieve,
|
|
402
|
+
)
|
|
403
|
+
self.list = async_to_raw_response_wrapper(
|
|
404
|
+
members.list,
|
|
405
|
+
)
|
|
406
|
+
|
|
407
|
+
|
|
408
|
+
class MembersResourceWithStreamingResponse:
|
|
409
|
+
def __init__(self, members: MembersResource) -> None:
|
|
410
|
+
self._members = members
|
|
411
|
+
|
|
412
|
+
self.retrieve = to_streamed_response_wrapper(
|
|
413
|
+
members.retrieve,
|
|
414
|
+
)
|
|
415
|
+
self.list = to_streamed_response_wrapper(
|
|
416
|
+
members.list,
|
|
417
|
+
)
|
|
418
|
+
|
|
419
|
+
|
|
420
|
+
class AsyncMembersResourceWithStreamingResponse:
|
|
421
|
+
def __init__(self, members: AsyncMembersResource) -> None:
|
|
422
|
+
self._members = members
|
|
423
|
+
|
|
424
|
+
self.retrieve = async_to_streamed_response_wrapper(
|
|
425
|
+
members.retrieve,
|
|
426
|
+
)
|
|
427
|
+
self.list = async_to_streamed_response_wrapper(
|
|
428
|
+
members.list,
|
|
429
|
+
)
|
|
@@ -136,7 +136,6 @@ class MembershipsResource(SyncAPIResource):
|
|
|
136
136
|
def list(
|
|
137
137
|
self,
|
|
138
138
|
*,
|
|
139
|
-
company_id: str,
|
|
140
139
|
access_pass_ids: Optional[SequenceNotStr[str]] | Omit = omit,
|
|
141
140
|
after: Optional[str] | Omit = omit,
|
|
142
141
|
before: Optional[str] | Omit = omit,
|
|
@@ -154,6 +153,7 @@ class MembershipsResource(SyncAPIResource):
|
|
|
154
153
|
]
|
|
155
154
|
]
|
|
156
155
|
| Omit = omit,
|
|
156
|
+
company_id: Optional[str] | Omit = omit,
|
|
157
157
|
created_after: Union[str, datetime, None] | Omit = omit,
|
|
158
158
|
created_before: Union[str, datetime, None] | Omit = omit,
|
|
159
159
|
direction: Optional[Direction] | Omit = omit,
|
|
@@ -164,6 +164,7 @@ class MembershipsResource(SyncAPIResource):
|
|
|
164
164
|
plan_ids: Optional[SequenceNotStr[str]] | Omit = omit,
|
|
165
165
|
promo_code_ids: Optional[SequenceNotStr[str]] | Omit = omit,
|
|
166
166
|
statuses: Optional[List[MembershipStatus]] | Omit = omit,
|
|
167
|
+
user_ids: Optional[SequenceNotStr[str]] | Omit = omit,
|
|
167
168
|
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
|
|
168
169
|
# The extra values given here take precedence over values defined on the client or passed to this method.
|
|
169
170
|
extra_headers: Headers | None = None,
|
|
@@ -179,8 +180,6 @@ class MembershipsResource(SyncAPIResource):
|
|
|
179
180
|
- `member:basic:read`
|
|
180
181
|
|
|
181
182
|
Args:
|
|
182
|
-
company_id: The ID of the company to list memberships for
|
|
183
|
-
|
|
184
183
|
access_pass_ids: The access pass IDs to filter the memberships by
|
|
185
184
|
|
|
186
185
|
after: Returns the elements in the list that come after the specified cursor.
|
|
@@ -189,6 +188,8 @@ class MembershipsResource(SyncAPIResource):
|
|
|
189
188
|
|
|
190
189
|
cancel_options: The cancel options to filter the memberships by
|
|
191
190
|
|
|
191
|
+
company_id: The ID of the company to list memberships for
|
|
192
|
+
|
|
192
193
|
created_after: The minimum creation date to filter by
|
|
193
194
|
|
|
194
195
|
created_before: The maximum creation date to filter by
|
|
@@ -207,6 +208,8 @@ class MembershipsResource(SyncAPIResource):
|
|
|
207
208
|
|
|
208
209
|
statuses: The membership status to filter the memberships by
|
|
209
210
|
|
|
211
|
+
user_ids: Only return memberships from these whop user ids
|
|
212
|
+
|
|
210
213
|
extra_headers: Send extra headers
|
|
211
214
|
|
|
212
215
|
extra_query: Add additional query parameters to the request
|
|
@@ -225,11 +228,11 @@ class MembershipsResource(SyncAPIResource):
|
|
|
225
228
|
timeout=timeout,
|
|
226
229
|
query=maybe_transform(
|
|
227
230
|
{
|
|
228
|
-
"company_id": company_id,
|
|
229
231
|
"access_pass_ids": access_pass_ids,
|
|
230
232
|
"after": after,
|
|
231
233
|
"before": before,
|
|
232
234
|
"cancel_options": cancel_options,
|
|
235
|
+
"company_id": company_id,
|
|
233
236
|
"created_after": created_after,
|
|
234
237
|
"created_before": created_before,
|
|
235
238
|
"direction": direction,
|
|
@@ -239,6 +242,7 @@ class MembershipsResource(SyncAPIResource):
|
|
|
239
242
|
"plan_ids": plan_ids,
|
|
240
243
|
"promo_code_ids": promo_code_ids,
|
|
241
244
|
"statuses": statuses,
|
|
245
|
+
"user_ids": user_ids,
|
|
242
246
|
},
|
|
243
247
|
membership_list_params.MembershipListParams,
|
|
244
248
|
),
|
|
@@ -475,7 +479,6 @@ class AsyncMembershipsResource(AsyncAPIResource):
|
|
|
475
479
|
def list(
|
|
476
480
|
self,
|
|
477
481
|
*,
|
|
478
|
-
company_id: str,
|
|
479
482
|
access_pass_ids: Optional[SequenceNotStr[str]] | Omit = omit,
|
|
480
483
|
after: Optional[str] | Omit = omit,
|
|
481
484
|
before: Optional[str] | Omit = omit,
|
|
@@ -493,6 +496,7 @@ class AsyncMembershipsResource(AsyncAPIResource):
|
|
|
493
496
|
]
|
|
494
497
|
]
|
|
495
498
|
| Omit = omit,
|
|
499
|
+
company_id: Optional[str] | Omit = omit,
|
|
496
500
|
created_after: Union[str, datetime, None] | Omit = omit,
|
|
497
501
|
created_before: Union[str, datetime, None] | Omit = omit,
|
|
498
502
|
direction: Optional[Direction] | Omit = omit,
|
|
@@ -503,6 +507,7 @@ class AsyncMembershipsResource(AsyncAPIResource):
|
|
|
503
507
|
plan_ids: Optional[SequenceNotStr[str]] | Omit = omit,
|
|
504
508
|
promo_code_ids: Optional[SequenceNotStr[str]] | Omit = omit,
|
|
505
509
|
statuses: Optional[List[MembershipStatus]] | Omit = omit,
|
|
510
|
+
user_ids: Optional[SequenceNotStr[str]] | Omit = omit,
|
|
506
511
|
# Use the following arguments if you need to pass additional parameters to the API that aren't available via kwargs.
|
|
507
512
|
# The extra values given here take precedence over values defined on the client or passed to this method.
|
|
508
513
|
extra_headers: Headers | None = None,
|
|
@@ -518,8 +523,6 @@ class AsyncMembershipsResource(AsyncAPIResource):
|
|
|
518
523
|
- `member:basic:read`
|
|
519
524
|
|
|
520
525
|
Args:
|
|
521
|
-
company_id: The ID of the company to list memberships for
|
|
522
|
-
|
|
523
526
|
access_pass_ids: The access pass IDs to filter the memberships by
|
|
524
527
|
|
|
525
528
|
after: Returns the elements in the list that come after the specified cursor.
|
|
@@ -528,6 +531,8 @@ class AsyncMembershipsResource(AsyncAPIResource):
|
|
|
528
531
|
|
|
529
532
|
cancel_options: The cancel options to filter the memberships by
|
|
530
533
|
|
|
534
|
+
company_id: The ID of the company to list memberships for
|
|
535
|
+
|
|
531
536
|
created_after: The minimum creation date to filter by
|
|
532
537
|
|
|
533
538
|
created_before: The maximum creation date to filter by
|
|
@@ -546,6 +551,8 @@ class AsyncMembershipsResource(AsyncAPIResource):
|
|
|
546
551
|
|
|
547
552
|
statuses: The membership status to filter the memberships by
|
|
548
553
|
|
|
554
|
+
user_ids: Only return memberships from these whop user ids
|
|
555
|
+
|
|
549
556
|
extra_headers: Send extra headers
|
|
550
557
|
|
|
551
558
|
extra_query: Add additional query parameters to the request
|
|
@@ -564,11 +571,11 @@ class AsyncMembershipsResource(AsyncAPIResource):
|
|
|
564
571
|
timeout=timeout,
|
|
565
572
|
query=maybe_transform(
|
|
566
573
|
{
|
|
567
|
-
"company_id": company_id,
|
|
568
574
|
"access_pass_ids": access_pass_ids,
|
|
569
575
|
"after": after,
|
|
570
576
|
"before": before,
|
|
571
577
|
"cancel_options": cancel_options,
|
|
578
|
+
"company_id": company_id,
|
|
572
579
|
"created_after": created_after,
|
|
573
580
|
"created_before": created_before,
|
|
574
581
|
"direction": direction,
|
|
@@ -578,6 +585,7 @@ class AsyncMembershipsResource(AsyncAPIResource):
|
|
|
578
585
|
"plan_ids": plan_ids,
|
|
579
586
|
"promo_code_ids": promo_code_ids,
|
|
580
587
|
"statuses": statuses,
|
|
588
|
+
"user_ids": user_ids,
|
|
581
589
|
},
|
|
582
590
|
membership_list_params.MembershipListParams,
|
|
583
591
|
),
|