@whop/sdk 0.0.2 → 0.0.4

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 (196) hide show
  1. package/CHANGELOG.md +55 -0
  2. package/client.d.mts +30 -12
  3. package/client.d.mts.map +1 -1
  4. package/client.d.ts +30 -12
  5. package/client.d.ts.map +1 -1
  6. package/client.js +19 -1
  7. package/client.js.map +1 -1
  8. package/client.mjs +21 -3
  9. package/client.mjs.map +1 -1
  10. package/package.json +1 -1
  11. package/resources/app-builds.d.mts +16 -13
  12. package/resources/app-builds.d.mts.map +1 -1
  13. package/resources/app-builds.d.ts +16 -13
  14. package/resources/app-builds.d.ts.map +1 -1
  15. package/resources/app-builds.js +1 -1
  16. package/resources/app-builds.mjs +1 -1
  17. package/resources/apps.d.mts +15 -10
  18. package/resources/apps.d.mts.map +1 -1
  19. package/resources/apps.d.ts +15 -10
  20. package/resources/apps.d.ts.map +1 -1
  21. package/resources/checkout-configurations.d.mts +252 -140
  22. package/resources/checkout-configurations.d.mts.map +1 -1
  23. package/resources/checkout-configurations.d.ts +252 -140
  24. package/resources/checkout-configurations.d.ts.map +1 -1
  25. package/resources/checkout-configurations.js +6 -20
  26. package/resources/checkout-configurations.js.map +1 -1
  27. package/resources/checkout-configurations.mjs +6 -20
  28. package/resources/checkout-configurations.mjs.map +1 -1
  29. package/resources/companies.d.mts +157 -0
  30. package/resources/companies.d.mts.map +1 -1
  31. package/resources/companies.d.ts +157 -0
  32. package/resources/companies.d.ts.map +1 -1
  33. package/resources/companies.js +22 -0
  34. package/resources/companies.js.map +1 -1
  35. package/resources/companies.mjs +22 -0
  36. package/resources/companies.mjs.map +1 -1
  37. package/resources/course-chapters.d.mts +185 -0
  38. package/resources/course-chapters.d.mts.map +1 -0
  39. package/resources/course-chapters.d.ts +185 -0
  40. package/resources/course-chapters.d.ts.map +1 -0
  41. package/resources/course-chapters.js +103 -0
  42. package/resources/course-chapters.js.map +1 -0
  43. package/resources/course-chapters.mjs +99 -0
  44. package/resources/course-chapters.mjs.map +1 -0
  45. package/resources/course-lesson-interactions.d.mts +2 -2
  46. package/resources/course-lesson-interactions.d.ts +2 -2
  47. package/resources/course-lesson-interactions.js +2 -2
  48. package/resources/course-lesson-interactions.mjs +2 -2
  49. package/resources/course-lessons.d.mts +563 -0
  50. package/resources/course-lessons.d.mts.map +1 -0
  51. package/resources/course-lessons.d.ts +563 -0
  52. package/resources/course-lessons.d.ts.map +1 -0
  53. package/resources/course-lessons.js +101 -0
  54. package/resources/course-lessons.js.map +1 -0
  55. package/resources/course-lessons.mjs +97 -0
  56. package/resources/course-lessons.mjs.map +1 -0
  57. package/resources/course-students.d.mts +187 -0
  58. package/resources/course-students.d.mts.map +1 -0
  59. package/resources/course-students.d.ts +187 -0
  60. package/resources/course-students.d.ts.map +1 -0
  61. package/resources/course-students.js +36 -0
  62. package/resources/course-students.js.map +1 -0
  63. package/resources/course-students.mjs +32 -0
  64. package/resources/course-students.mjs.map +1 -0
  65. package/resources/courses.d.mts +485 -0
  66. package/resources/courses.d.mts.map +1 -0
  67. package/resources/courses.d.ts +485 -0
  68. package/resources/courses.d.ts.map +1 -0
  69. package/resources/courses.js +98 -0
  70. package/resources/courses.js.map +1 -0
  71. package/resources/courses.mjs +94 -0
  72. package/resources/courses.mjs.map +1 -0
  73. package/resources/experiences.d.mts +42 -11
  74. package/resources/experiences.d.mts.map +1 -1
  75. package/resources/experiences.d.ts +42 -11
  76. package/resources/experiences.d.ts.map +1 -1
  77. package/resources/experiences.js +22 -0
  78. package/resources/experiences.js.map +1 -1
  79. package/resources/experiences.mjs +22 -0
  80. package/resources/experiences.mjs.map +1 -1
  81. package/resources/forum-posts.d.mts +75 -10
  82. package/resources/forum-posts.d.mts.map +1 -1
  83. package/resources/forum-posts.d.ts +75 -10
  84. package/resources/forum-posts.d.ts.map +1 -1
  85. package/resources/forum-posts.js +11 -0
  86. package/resources/forum-posts.js.map +1 -1
  87. package/resources/forum-posts.mjs +11 -0
  88. package/resources/forum-posts.mjs.map +1 -1
  89. package/resources/index.d.mts +12 -6
  90. package/resources/index.d.mts.map +1 -1
  91. package/resources/index.d.ts +12 -6
  92. package/resources/index.d.ts.map +1 -1
  93. package/resources/index.js +13 -1
  94. package/resources/index.js.map +1 -1
  95. package/resources/index.mjs +7 -1
  96. package/resources/index.mjs.map +1 -1
  97. package/resources/invoices.d.mts +529 -146
  98. package/resources/invoices.d.mts.map +1 -1
  99. package/resources/invoices.d.ts +529 -146
  100. package/resources/invoices.d.ts.map +1 -1
  101. package/resources/invoices.js +2 -24
  102. package/resources/invoices.js.map +1 -1
  103. package/resources/invoices.mjs +2 -24
  104. package/resources/invoices.mjs.map +1 -1
  105. package/resources/ledger-accounts.d.mts +1 -1
  106. package/resources/ledger-accounts.d.mts.map +1 -1
  107. package/resources/ledger-accounts.d.ts +1 -1
  108. package/resources/ledger-accounts.d.ts.map +1 -1
  109. package/resources/members.d.mts +4 -0
  110. package/resources/members.d.mts.map +1 -1
  111. package/resources/members.d.ts +4 -0
  112. package/resources/members.d.ts.map +1 -1
  113. package/resources/memberships.d.mts +26 -5
  114. package/resources/memberships.d.mts.map +1 -1
  115. package/resources/memberships.d.ts +26 -5
  116. package/resources/memberships.d.ts.map +1 -1
  117. package/resources/memberships.js +1 -1
  118. package/resources/memberships.js.map +1 -1
  119. package/resources/memberships.mjs +1 -1
  120. package/resources/memberships.mjs.map +1 -1
  121. package/resources/messages.d.mts +57 -10
  122. package/resources/messages.d.mts.map +1 -1
  123. package/resources/messages.d.ts +57 -10
  124. package/resources/messages.d.ts.map +1 -1
  125. package/resources/messages.js +6 -0
  126. package/resources/messages.js.map +1 -1
  127. package/resources/messages.mjs +6 -0
  128. package/resources/messages.mjs.map +1 -1
  129. package/resources/payments.d.mts +35 -13
  130. package/resources/payments.d.mts.map +1 -1
  131. package/resources/payments.d.ts +35 -13
  132. package/resources/payments.d.ts.map +1 -1
  133. package/resources/plans.d.mts +161 -17
  134. package/resources/plans.d.mts.map +1 -1
  135. package/resources/plans.d.ts +161 -17
  136. package/resources/plans.d.ts.map +1 -1
  137. package/resources/plans.js.map +1 -1
  138. package/resources/plans.mjs.map +1 -1
  139. package/resources/products.d.mts +30 -33
  140. package/resources/products.d.mts.map +1 -1
  141. package/resources/products.d.ts +30 -33
  142. package/resources/products.d.ts.map +1 -1
  143. package/resources/promo-codes.d.mts +394 -0
  144. package/resources/promo-codes.d.mts.map +1 -0
  145. package/resources/promo-codes.d.ts +394 -0
  146. package/resources/promo-codes.d.ts.map +1 -0
  147. package/resources/promo-codes.js +91 -0
  148. package/resources/promo-codes.js.map +1 -0
  149. package/resources/promo-codes.mjs +87 -0
  150. package/resources/promo-codes.mjs.map +1 -0
  151. package/resources/reviews.d.mts +277 -0
  152. package/resources/reviews.d.mts.map +1 -0
  153. package/resources/reviews.d.ts +277 -0
  154. package/resources/reviews.d.ts.map +1 -0
  155. package/resources/reviews.js +23 -0
  156. package/resources/reviews.js.map +1 -0
  157. package/resources/reviews.mjs +19 -0
  158. package/resources/reviews.mjs.map +1 -0
  159. package/resources/shared.d.mts +117 -14
  160. package/resources/shared.d.mts.map +1 -1
  161. package/resources/shared.d.ts +117 -14
  162. package/resources/shared.d.ts.map +1 -1
  163. package/resources/transfers.d.mts +12 -0
  164. package/resources/transfers.d.mts.map +1 -1
  165. package/resources/transfers.d.ts +12 -0
  166. package/resources/transfers.d.ts.map +1 -1
  167. package/src/client.ts +166 -11
  168. package/src/resources/app-builds.ts +19 -14
  169. package/src/resources/apps.ts +16 -11
  170. package/src/resources/checkout-configurations.ts +278 -143
  171. package/src/resources/companies.ts +196 -0
  172. package/src/resources/course-chapters.ts +236 -0
  173. package/src/resources/course-lesson-interactions.ts +2 -2
  174. package/src/resources/course-lessons.ts +699 -0
  175. package/src/resources/course-students.ts +238 -0
  176. package/src/resources/courses.ts +622 -0
  177. package/src/resources/experiences.ts +54 -11
  178. package/src/resources/forum-posts.ts +95 -10
  179. package/src/resources/index.ts +73 -2
  180. package/src/resources/invoices.ts +620 -149
  181. package/src/resources/ledger-accounts.ts +13 -1
  182. package/src/resources/members.ts +5 -0
  183. package/src/resources/memberships.ts +31 -6
  184. package/src/resources/messages.ts +74 -10
  185. package/src/resources/payments.ts +146 -19
  186. package/src/resources/plans.ts +184 -17
  187. package/src/resources/products.ts +36 -37
  188. package/src/resources/promo-codes.ts +490 -0
  189. package/src/resources/reviews.ts +348 -0
  190. package/src/resources/shared.ts +128 -14
  191. package/src/resources/transfers.ts +10 -0
  192. package/src/version.ts +1 -1
  193. package/version.d.mts +1 -1
  194. package/version.d.ts +1 -1
  195. package/version.js +1 -1
  196. package/version.mjs +1 -1
@@ -0,0 +1,238 @@
1
+ // File generated from our OpenAPI spec by Stainless. See CONTRIBUTING.md for details.
2
+
3
+ import { APIResource } from '../core/resource';
4
+ import { APIPromise } from '../core/api-promise';
5
+ import { CursorPage, type CursorPageParams, PagePromise } from '../core/pagination';
6
+ import { RequestOptions } from '../internal/request-options';
7
+ import { path } from '../internal/utils/path';
8
+
9
+ export class CourseStudents extends APIResource {
10
+ /**
11
+ * Retrieves a course student by interaction ID
12
+ *
13
+ * Required permissions:
14
+ *
15
+ * - `courses:read`
16
+ * - `course_analytics:read`
17
+ */
18
+ retrieve(id: string, options?: RequestOptions): APIPromise<CourseStudentRetrieveResponse> {
19
+ return this._client.get(path`/course_students/${id}`, options);
20
+ }
21
+
22
+ /**
23
+ * Lists students for a course
24
+ *
25
+ * Required permissions:
26
+ *
27
+ * - `courses:read`
28
+ * - `course_analytics:read`
29
+ */
30
+ list(
31
+ query: CourseStudentListParams,
32
+ options?: RequestOptions,
33
+ ): PagePromise<CourseStudentListResponsesCursorPage, CourseStudentListResponse> {
34
+ return this._client.getAPIList('/course_students', CursorPage<CourseStudentListResponse>, {
35
+ query,
36
+ ...options,
37
+ });
38
+ }
39
+ }
40
+
41
+ export type CourseStudentListResponsesCursorPage = CursorPage<CourseStudentListResponse>;
42
+
43
+ /**
44
+ * A course student (enrollment of a student in a course)
45
+ */
46
+ export interface CourseStudentRetrieveResponse {
47
+ /**
48
+ * The ID of the course student. Looks like crsi_XXX
49
+ */
50
+ id: string;
51
+
52
+ /**
53
+ * The number of lessons the student has completed
54
+ */
55
+ completed_lessons_count: number;
56
+
57
+ /**
58
+ * The percentage of lessons completed (0-100)
59
+ */
60
+ completion_rate: number;
61
+
62
+ /**
63
+ * The course the student is enrolled in
64
+ */
65
+ course: CourseStudentRetrieveResponse.Course;
66
+
67
+ /**
68
+ * When the student first interacted with the course
69
+ */
70
+ first_interaction_at: string;
71
+
72
+ /**
73
+ * When the student last interacted with the course
74
+ */
75
+ last_interaction_at: string;
76
+
77
+ /**
78
+ * The total number of lessons the student has access to
79
+ */
80
+ total_lessons_count: number;
81
+
82
+ /**
83
+ * The user who is enrolled in the course
84
+ */
85
+ user: CourseStudentRetrieveResponse.User;
86
+ }
87
+
88
+ export namespace CourseStudentRetrieveResponse {
89
+ /**
90
+ * The course the student is enrolled in
91
+ */
92
+ export interface Course {
93
+ /**
94
+ * The ID of the course. Looks like cors_XXX
95
+ */
96
+ id: string;
97
+
98
+ /**
99
+ * The experience that the course belongs to
100
+ */
101
+ experience: Course.Experience;
102
+
103
+ /**
104
+ * The title of the course
105
+ */
106
+ title: string | null;
107
+ }
108
+
109
+ export namespace Course {
110
+ /**
111
+ * The experience that the course belongs to
112
+ */
113
+ export interface Experience {
114
+ /**
115
+ * The unique ID representing this experience
116
+ */
117
+ id: string;
118
+ }
119
+ }
120
+
121
+ /**
122
+ * The user who is enrolled in the course
123
+ */
124
+ export interface User {
125
+ /**
126
+ * The internal ID of the user.
127
+ */
128
+ id: string;
129
+
130
+ /**
131
+ * The name of the user from their Whop account.
132
+ */
133
+ name: string | null;
134
+
135
+ /**
136
+ * The username of the user from their Whop account.
137
+ */
138
+ username: string;
139
+ }
140
+ }
141
+
142
+ /**
143
+ * A course student (enrollment of a student in a course)
144
+ */
145
+ export interface CourseStudentListResponse {
146
+ /**
147
+ * The ID of the course student. Looks like crsi_XXX
148
+ */
149
+ id: string;
150
+
151
+ /**
152
+ * The number of lessons the student has completed
153
+ */
154
+ completed_lessons_count: number;
155
+
156
+ /**
157
+ * The percentage of lessons completed (0-100)
158
+ */
159
+ completion_rate: number;
160
+
161
+ /**
162
+ * When the student first interacted with the course
163
+ */
164
+ first_interaction_at: string;
165
+
166
+ /**
167
+ * When the student last interacted with the course
168
+ */
169
+ last_interaction_at: string;
170
+
171
+ /**
172
+ * The total number of lessons the student has access to
173
+ */
174
+ total_lessons_count: number;
175
+
176
+ /**
177
+ * The user who is enrolled in the course
178
+ */
179
+ user: CourseStudentListResponse.User;
180
+ }
181
+
182
+ export namespace CourseStudentListResponse {
183
+ /**
184
+ * The user who is enrolled in the course
185
+ */
186
+ export interface User {
187
+ /**
188
+ * The internal ID of the user.
189
+ */
190
+ id: string;
191
+
192
+ /**
193
+ * The name of the user from their Whop account.
194
+ */
195
+ name: string | null;
196
+
197
+ /**
198
+ * The username of the user from their Whop account.
199
+ */
200
+ username: string;
201
+ }
202
+ }
203
+
204
+ export interface CourseStudentListParams extends CursorPageParams {
205
+ /**
206
+ * The ID of the course
207
+ */
208
+ course_id: string;
209
+
210
+ /**
211
+ * Returns the elements in the list that come before the specified cursor.
212
+ */
213
+ before?: string | null;
214
+
215
+ /**
216
+ * Returns the first _n_ elements from the list.
217
+ */
218
+ first?: number | null;
219
+
220
+ /**
221
+ * Filter students by name - returns students whose names match the keyword
222
+ */
223
+ keyword?: string | null;
224
+
225
+ /**
226
+ * Returns the last _n_ elements from the list.
227
+ */
228
+ last?: number | null;
229
+ }
230
+
231
+ export declare namespace CourseStudents {
232
+ export {
233
+ type CourseStudentRetrieveResponse as CourseStudentRetrieveResponse,
234
+ type CourseStudentListResponse as CourseStudentListResponse,
235
+ type CourseStudentListResponsesCursorPage as CourseStudentListResponsesCursorPage,
236
+ type CourseStudentListParams as CourseStudentListParams,
237
+ };
238
+ }