whop_sdk 0.0.22 → 0.0.23

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 (153) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +10 -0
  3. data/README.md +1 -1
  4. data/lib/whop_sdk/client.rb +4 -0
  5. data/lib/whop_sdk/models/course_lesson_interaction_completed_webhook_event.rb +9 -1
  6. data/lib/whop_sdk/models/dispute_created_webhook_event.rb +9 -1
  7. data/lib/whop_sdk/models/dispute_updated_webhook_event.rb +9 -1
  8. data/lib/whop_sdk/models/entry_approved_webhook_event.rb +9 -1
  9. data/lib/whop_sdk/models/entry_created_webhook_event.rb +9 -1
  10. data/lib/whop_sdk/models/entry_deleted_webhook_event.rb +9 -1
  11. data/lib/whop_sdk/models/entry_denied_webhook_event.rb +9 -1
  12. data/lib/whop_sdk/models/file_create_params.rb +22 -0
  13. data/lib/whop_sdk/models/file_create_response.rb +90 -0
  14. data/lib/whop_sdk/models/file_retrieve_params.rb +14 -0
  15. data/lib/whop_sdk/models/file_retrieve_response.rb +74 -0
  16. data/lib/whop_sdk/models/invoice_created_webhook_event.rb +9 -1
  17. data/lib/whop_sdk/models/invoice_paid_webhook_event.rb +9 -1
  18. data/lib/whop_sdk/models/invoice_past_due_webhook_event.rb +9 -1
  19. data/lib/whop_sdk/models/invoice_voided_webhook_event.rb +9 -1
  20. data/lib/whop_sdk/models/membership_activated_webhook_event.rb +9 -1
  21. data/lib/whop_sdk/models/membership_cancel_at_period_end_changed_webhook_event.rb +9 -1
  22. data/lib/whop_sdk/models/membership_deactivated_webhook_event.rb +9 -1
  23. data/lib/whop_sdk/models/payment_created_webhook_event.rb +9 -1
  24. data/lib/whop_sdk/models/payment_failed_webhook_event.rb +9 -1
  25. data/lib/whop_sdk/models/payment_method_types.rb +30 -30
  26. data/lib/whop_sdk/models/payment_pending_webhook_event.rb +9 -1
  27. data/lib/whop_sdk/models/payment_succeeded_webhook_event.rb +9 -1
  28. data/lib/whop_sdk/models/payout_method_created_webhook_event.rb +9 -1
  29. data/lib/whop_sdk/models/plan_create_params.rb +9 -1
  30. data/lib/whop_sdk/models/plan_update_params.rb +9 -1
  31. data/lib/whop_sdk/models/refund_created_webhook_event.rb +9 -1
  32. data/lib/whop_sdk/models/refund_updated_webhook_event.rb +9 -1
  33. data/lib/whop_sdk/models/setup_intent_canceled_webhook_event.rb +9 -1
  34. data/lib/whop_sdk/models/setup_intent_requires_action_webhook_event.rb +9 -1
  35. data/lib/whop_sdk/models/setup_intent_succeeded_webhook_event.rb +9 -1
  36. data/lib/whop_sdk/models/verification_succeeded_webhook_event.rb +9 -1
  37. data/lib/whop_sdk/models/webhook_create_params.rb +117 -0
  38. data/lib/whop_sdk/models/webhook_create_response.rb +184 -0
  39. data/lib/whop_sdk/models/webhook_delete_params.rb +14 -0
  40. data/lib/whop_sdk/models/webhook_delete_response.rb +8 -0
  41. data/lib/whop_sdk/models/webhook_list_params.rb +54 -0
  42. data/lib/whop_sdk/models/webhook_list_response.rb +123 -0
  43. data/lib/whop_sdk/models/webhook_retrieve_params.rb +14 -0
  44. data/lib/whop_sdk/models/webhook_retrieve_response.rb +176 -0
  45. data/lib/whop_sdk/models/webhook_update_params.rb +104 -0
  46. data/lib/whop_sdk/models/webhook_update_response.rb +176 -0
  47. data/lib/whop_sdk/models/withdrawal_created_webhook_event.rb +9 -1
  48. data/lib/whop_sdk/models/withdrawal_updated_webhook_event.rb +9 -1
  49. data/lib/whop_sdk/models.rb +14 -0
  50. data/lib/whop_sdk/resources/files.rb +56 -0
  51. data/lib/whop_sdk/resources/plans.rb +6 -2
  52. data/lib/whop_sdk/resources/webhooks.rb +158 -0
  53. data/lib/whop_sdk/version.rb +1 -1
  54. data/lib/whop_sdk.rb +15 -0
  55. data/rbi/whop_sdk/client.rbi +3 -0
  56. data/rbi/whop_sdk/models/course_lesson_interaction_completed_webhook_event.rbi +9 -1
  57. data/rbi/whop_sdk/models/dispute_created_webhook_event.rbi +9 -1
  58. data/rbi/whop_sdk/models/dispute_updated_webhook_event.rbi +9 -1
  59. data/rbi/whop_sdk/models/entry_approved_webhook_event.rbi +9 -1
  60. data/rbi/whop_sdk/models/entry_created_webhook_event.rbi +9 -1
  61. data/rbi/whop_sdk/models/entry_deleted_webhook_event.rbi +9 -1
  62. data/rbi/whop_sdk/models/entry_denied_webhook_event.rbi +9 -1
  63. data/rbi/whop_sdk/models/file_create_params.rbi +40 -0
  64. data/rbi/whop_sdk/models/file_create_response.rbi +140 -0
  65. data/rbi/whop_sdk/models/file_retrieve_params.rbi +27 -0
  66. data/rbi/whop_sdk/models/file_retrieve_response.rbi +129 -0
  67. data/rbi/whop_sdk/models/invoice_created_webhook_event.rbi +9 -1
  68. data/rbi/whop_sdk/models/invoice_paid_webhook_event.rbi +9 -1
  69. data/rbi/whop_sdk/models/invoice_past_due_webhook_event.rbi +9 -1
  70. data/rbi/whop_sdk/models/invoice_voided_webhook_event.rbi +9 -1
  71. data/rbi/whop_sdk/models/membership_activated_webhook_event.rbi +9 -1
  72. data/rbi/whop_sdk/models/membership_cancel_at_period_end_changed_webhook_event.rbi +9 -1
  73. data/rbi/whop_sdk/models/membership_deactivated_webhook_event.rbi +9 -1
  74. data/rbi/whop_sdk/models/payment_created_webhook_event.rbi +9 -1
  75. data/rbi/whop_sdk/models/payment_failed_webhook_event.rbi +9 -1
  76. data/rbi/whop_sdk/models/payment_method_types.rbi +33 -33
  77. data/rbi/whop_sdk/models/payment_pending_webhook_event.rbi +9 -1
  78. data/rbi/whop_sdk/models/payment_succeeded_webhook_event.rbi +9 -1
  79. data/rbi/whop_sdk/models/payout_method_created_webhook_event.rbi +9 -1
  80. data/rbi/whop_sdk/models/plan_create_params.rbi +8 -0
  81. data/rbi/whop_sdk/models/plan_update_params.rbi +8 -0
  82. data/rbi/whop_sdk/models/refund_created_webhook_event.rbi +9 -1
  83. data/rbi/whop_sdk/models/refund_updated_webhook_event.rbi +9 -1
  84. data/rbi/whop_sdk/models/setup_intent_canceled_webhook_event.rbi +9 -1
  85. data/rbi/whop_sdk/models/setup_intent_requires_action_webhook_event.rbi +9 -1
  86. data/rbi/whop_sdk/models/setup_intent_succeeded_webhook_event.rbi +9 -1
  87. data/rbi/whop_sdk/models/verification_succeeded_webhook_event.rbi +9 -1
  88. data/rbi/whop_sdk/models/webhook_create_params.rbi +275 -0
  89. data/rbi/whop_sdk/models/webhook_create_response.rbi +494 -0
  90. data/rbi/whop_sdk/models/webhook_delete_params.rbi +27 -0
  91. data/rbi/whop_sdk/models/webhook_delete_response.rbi +8 -0
  92. data/rbi/whop_sdk/models/webhook_list_params.rbi +75 -0
  93. data/rbi/whop_sdk/models/webhook_list_response.rbi +297 -0
  94. data/rbi/whop_sdk/models/webhook_retrieve_params.rbi +27 -0
  95. data/rbi/whop_sdk/models/webhook_retrieve_response.rbi +491 -0
  96. data/rbi/whop_sdk/models/webhook_update_params.rbi +263 -0
  97. data/rbi/whop_sdk/models/webhook_update_response.rbi +486 -0
  98. data/rbi/whop_sdk/models/withdrawal_created_webhook_event.rbi +9 -1
  99. data/rbi/whop_sdk/models/withdrawal_updated_webhook_event.rbi +9 -1
  100. data/rbi/whop_sdk/models.rbi +14 -0
  101. data/rbi/whop_sdk/resources/files.rbi +40 -0
  102. data/rbi/whop_sdk/resources/plans.rbi +6 -0
  103. data/rbi/whop_sdk/resources/webhooks.rbi +140 -0
  104. data/sig/whop_sdk/client.rbs +2 -0
  105. data/sig/whop_sdk/models/course_lesson_interaction_completed_webhook_event.rbs +7 -2
  106. data/sig/whop_sdk/models/dispute_created_webhook_event.rbs +7 -2
  107. data/sig/whop_sdk/models/dispute_updated_webhook_event.rbs +7 -2
  108. data/sig/whop_sdk/models/entry_approved_webhook_event.rbs +7 -2
  109. data/sig/whop_sdk/models/entry_created_webhook_event.rbs +7 -2
  110. data/sig/whop_sdk/models/entry_deleted_webhook_event.rbs +7 -2
  111. data/sig/whop_sdk/models/entry_denied_webhook_event.rbs +7 -2
  112. data/sig/whop_sdk/models/file_create_params.rbs +23 -0
  113. data/sig/whop_sdk/models/file_create_response.rbs +68 -0
  114. data/sig/whop_sdk/models/file_retrieve_params.rbs +15 -0
  115. data/sig/whop_sdk/models/file_retrieve_response.rbs +58 -0
  116. data/sig/whop_sdk/models/invoice_created_webhook_event.rbs +7 -2
  117. data/sig/whop_sdk/models/invoice_paid_webhook_event.rbs +7 -2
  118. data/sig/whop_sdk/models/invoice_past_due_webhook_event.rbs +7 -2
  119. data/sig/whop_sdk/models/invoice_voided_webhook_event.rbs +7 -2
  120. data/sig/whop_sdk/models/membership_activated_webhook_event.rbs +7 -2
  121. data/sig/whop_sdk/models/membership_cancel_at_period_end_changed_webhook_event.rbs +7 -2
  122. data/sig/whop_sdk/models/membership_deactivated_webhook_event.rbs +7 -2
  123. data/sig/whop_sdk/models/payment_created_webhook_event.rbs +7 -2
  124. data/sig/whop_sdk/models/payment_failed_webhook_event.rbs +7 -2
  125. data/sig/whop_sdk/models/payment_method_types.rbs +61 -61
  126. data/sig/whop_sdk/models/payment_pending_webhook_event.rbs +7 -2
  127. data/sig/whop_sdk/models/payment_succeeded_webhook_event.rbs +7 -2
  128. data/sig/whop_sdk/models/payout_method_created_webhook_event.rbs +7 -2
  129. data/sig/whop_sdk/models/plan_create_params.rbs +5 -0
  130. data/sig/whop_sdk/models/plan_update_params.rbs +5 -0
  131. data/sig/whop_sdk/models/refund_created_webhook_event.rbs +7 -2
  132. data/sig/whop_sdk/models/refund_updated_webhook_event.rbs +7 -2
  133. data/sig/whop_sdk/models/setup_intent_canceled_webhook_event.rbs +7 -2
  134. data/sig/whop_sdk/models/setup_intent_requires_action_webhook_event.rbs +7 -2
  135. data/sig/whop_sdk/models/setup_intent_succeeded_webhook_event.rbs +7 -2
  136. data/sig/whop_sdk/models/verification_succeeded_webhook_event.rbs +7 -2
  137. data/sig/whop_sdk/models/webhook_create_params.rbs +126 -0
  138. data/sig/whop_sdk/models/webhook_create_response.rbs +203 -0
  139. data/sig/whop_sdk/models/webhook_delete_params.rbs +15 -0
  140. data/sig/whop_sdk/models/webhook_delete_response.rbs +5 -0
  141. data/sig/whop_sdk/models/webhook_list_params.rbs +46 -0
  142. data/sig/whop_sdk/models/webhook_list_response.rbs +125 -0
  143. data/sig/whop_sdk/models/webhook_retrieve_params.rbs +15 -0
  144. data/sig/whop_sdk/models/webhook_retrieve_response.rbs +198 -0
  145. data/sig/whop_sdk/models/webhook_update_params.rbs +121 -0
  146. data/sig/whop_sdk/models/webhook_update_response.rbs +198 -0
  147. data/sig/whop_sdk/models/withdrawal_created_webhook_event.rbs +7 -2
  148. data/sig/whop_sdk/models/withdrawal_updated_webhook_event.rbs +7 -2
  149. data/sig/whop_sdk/models.rbs +14 -0
  150. data/sig/whop_sdk/resources/files.rbs +17 -0
  151. data/sig/whop_sdk/resources/plans.rbs +2 -0
  152. data/sig/whop_sdk/resources/webhooks.rbs +36 -0
  153. metadata +47 -2
@@ -0,0 +1,486 @@
1
+ # typed: strong
2
+
3
+ module WhopSDK
4
+ module Models
5
+ class WebhookUpdateResponse < WhopSDK::Internal::Type::BaseModel
6
+ OrHash =
7
+ T.type_alias do
8
+ T.any(
9
+ WhopSDK::Models::WebhookUpdateResponse,
10
+ WhopSDK::Internal::AnyHash
11
+ )
12
+ end
13
+
14
+ # The ID of the webhook
15
+ sig { returns(String) }
16
+ attr_accessor :id
17
+
18
+ # The API version for this webhook
19
+ sig do
20
+ returns(
21
+ WhopSDK::Models::WebhookUpdateResponse::APIVersion::TaggedSymbol
22
+ )
23
+ end
24
+ attr_accessor :api_version
25
+
26
+ # Whether or not to send events for child resources. For example, if the webhook
27
+ # is created for a Company, enabling this will only send events from the Company's
28
+ # sub-merchants (child companies).
29
+ sig { returns(T::Boolean) }
30
+ attr_accessor :child_resource_events
31
+
32
+ # The timestamp of when the webhook was created
33
+ sig { returns(Time) }
34
+ attr_accessor :created_at
35
+
36
+ # Whether or not this webhook is turned on or not
37
+ sig { returns(T::Boolean) }
38
+ attr_accessor :enabled
39
+
40
+ # The number of events this webhooks is configured to receive
41
+ sig do
42
+ returns(
43
+ T::Array[WhopSDK::Models::WebhookUpdateResponse::Event::TaggedSymbol]
44
+ )
45
+ end
46
+ attr_accessor :events
47
+
48
+ # The resource ID
49
+ sig { returns(String) }
50
+ attr_accessor :resource_id
51
+
52
+ # The list of events that can be tested with this webhook
53
+ sig do
54
+ returns(
55
+ T::Array[
56
+ WhopSDK::Models::WebhookUpdateResponse::TestableEvent::TaggedSymbol
57
+ ]
58
+ )
59
+ end
60
+ attr_accessor :testable_events
61
+
62
+ # The URL the webhook events will be sent to
63
+ sig { returns(String) }
64
+ attr_accessor :url
65
+
66
+ # A webhook object, which can be configured to be sent updates about a company
67
+ sig do
68
+ params(
69
+ id: String,
70
+ api_version:
71
+ WhopSDK::Models::WebhookUpdateResponse::APIVersion::OrSymbol,
72
+ child_resource_events: T::Boolean,
73
+ created_at: Time,
74
+ enabled: T::Boolean,
75
+ events:
76
+ T::Array[WhopSDK::Models::WebhookUpdateResponse::Event::OrSymbol],
77
+ resource_id: String,
78
+ testable_events:
79
+ T::Array[
80
+ WhopSDK::Models::WebhookUpdateResponse::TestableEvent::OrSymbol
81
+ ],
82
+ url: String
83
+ ).returns(T.attached_class)
84
+ end
85
+ def self.new(
86
+ # The ID of the webhook
87
+ id:,
88
+ # The API version for this webhook
89
+ api_version:,
90
+ # Whether or not to send events for child resources. For example, if the webhook
91
+ # is created for a Company, enabling this will only send events from the Company's
92
+ # sub-merchants (child companies).
93
+ child_resource_events:,
94
+ # The timestamp of when the webhook was created
95
+ created_at:,
96
+ # Whether or not this webhook is turned on or not
97
+ enabled:,
98
+ # The number of events this webhooks is configured to receive
99
+ events:,
100
+ # The resource ID
101
+ resource_id:,
102
+ # The list of events that can be tested with this webhook
103
+ testable_events:,
104
+ # The URL the webhook events will be sent to
105
+ url:
106
+ )
107
+ end
108
+
109
+ sig do
110
+ override.returns(
111
+ {
112
+ id: String,
113
+ api_version:
114
+ WhopSDK::Models::WebhookUpdateResponse::APIVersion::TaggedSymbol,
115
+ child_resource_events: T::Boolean,
116
+ created_at: Time,
117
+ enabled: T::Boolean,
118
+ events:
119
+ T::Array[
120
+ WhopSDK::Models::WebhookUpdateResponse::Event::TaggedSymbol
121
+ ],
122
+ resource_id: String,
123
+ testable_events:
124
+ T::Array[
125
+ WhopSDK::Models::WebhookUpdateResponse::TestableEvent::TaggedSymbol
126
+ ],
127
+ url: String
128
+ }
129
+ )
130
+ end
131
+ def to_hash
132
+ end
133
+
134
+ # The API version for this webhook
135
+ module APIVersion
136
+ extend WhopSDK::Internal::Type::Enum
137
+
138
+ TaggedSymbol =
139
+ T.type_alias do
140
+ T.all(Symbol, WhopSDK::Models::WebhookUpdateResponse::APIVersion)
141
+ end
142
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
143
+
144
+ V1 =
145
+ T.let(
146
+ :v1,
147
+ WhopSDK::Models::WebhookUpdateResponse::APIVersion::TaggedSymbol
148
+ )
149
+ V2 =
150
+ T.let(
151
+ :v2,
152
+ WhopSDK::Models::WebhookUpdateResponse::APIVersion::TaggedSymbol
153
+ )
154
+ V5 =
155
+ T.let(
156
+ :v5,
157
+ WhopSDK::Models::WebhookUpdateResponse::APIVersion::TaggedSymbol
158
+ )
159
+
160
+ sig do
161
+ override.returns(
162
+ T::Array[
163
+ WhopSDK::Models::WebhookUpdateResponse::APIVersion::TaggedSymbol
164
+ ]
165
+ )
166
+ end
167
+ def self.values
168
+ end
169
+ end
170
+
171
+ # The different event types available
172
+ module Event
173
+ extend WhopSDK::Internal::Type::Enum
174
+
175
+ TaggedSymbol =
176
+ T.type_alias do
177
+ T.all(Symbol, WhopSDK::Models::WebhookUpdateResponse::Event)
178
+ end
179
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
180
+
181
+ INVOICE_CREATED =
182
+ T.let(
183
+ :"invoice.created",
184
+ WhopSDK::Models::WebhookUpdateResponse::Event::TaggedSymbol
185
+ )
186
+ INVOICE_PAID =
187
+ T.let(
188
+ :"invoice.paid",
189
+ WhopSDK::Models::WebhookUpdateResponse::Event::TaggedSymbol
190
+ )
191
+ INVOICE_PAST_DUE =
192
+ T.let(
193
+ :"invoice.past_due",
194
+ WhopSDK::Models::WebhookUpdateResponse::Event::TaggedSymbol
195
+ )
196
+ INVOICE_VOIDED =
197
+ T.let(
198
+ :"invoice.voided",
199
+ WhopSDK::Models::WebhookUpdateResponse::Event::TaggedSymbol
200
+ )
201
+ MEMBERSHIP_ACTIVATED =
202
+ T.let(
203
+ :"membership.activated",
204
+ WhopSDK::Models::WebhookUpdateResponse::Event::TaggedSymbol
205
+ )
206
+ MEMBERSHIP_DEACTIVATED =
207
+ T.let(
208
+ :"membership.deactivated",
209
+ WhopSDK::Models::WebhookUpdateResponse::Event::TaggedSymbol
210
+ )
211
+ ENTRY_CREATED =
212
+ T.let(
213
+ :"entry.created",
214
+ WhopSDK::Models::WebhookUpdateResponse::Event::TaggedSymbol
215
+ )
216
+ ENTRY_APPROVED =
217
+ T.let(
218
+ :"entry.approved",
219
+ WhopSDK::Models::WebhookUpdateResponse::Event::TaggedSymbol
220
+ )
221
+ ENTRY_DENIED =
222
+ T.let(
223
+ :"entry.denied",
224
+ WhopSDK::Models::WebhookUpdateResponse::Event::TaggedSymbol
225
+ )
226
+ ENTRY_DELETED =
227
+ T.let(
228
+ :"entry.deleted",
229
+ WhopSDK::Models::WebhookUpdateResponse::Event::TaggedSymbol
230
+ )
231
+ SETUP_INTENT_REQUIRES_ACTION =
232
+ T.let(
233
+ :"setup_intent.requires_action",
234
+ WhopSDK::Models::WebhookUpdateResponse::Event::TaggedSymbol
235
+ )
236
+ SETUP_INTENT_SUCCEEDED =
237
+ T.let(
238
+ :"setup_intent.succeeded",
239
+ WhopSDK::Models::WebhookUpdateResponse::Event::TaggedSymbol
240
+ )
241
+ SETUP_INTENT_CANCELED =
242
+ T.let(
243
+ :"setup_intent.canceled",
244
+ WhopSDK::Models::WebhookUpdateResponse::Event::TaggedSymbol
245
+ )
246
+ WITHDRAWAL_CREATED =
247
+ T.let(
248
+ :"withdrawal.created",
249
+ WhopSDK::Models::WebhookUpdateResponse::Event::TaggedSymbol
250
+ )
251
+ WITHDRAWAL_UPDATED =
252
+ T.let(
253
+ :"withdrawal.updated",
254
+ WhopSDK::Models::WebhookUpdateResponse::Event::TaggedSymbol
255
+ )
256
+ COURSE_LESSON_INTERACTION_COMPLETED =
257
+ T.let(
258
+ :"course_lesson_interaction.completed",
259
+ WhopSDK::Models::WebhookUpdateResponse::Event::TaggedSymbol
260
+ )
261
+ PAYOUT_METHOD_CREATED =
262
+ T.let(
263
+ :"payout_method.created",
264
+ WhopSDK::Models::WebhookUpdateResponse::Event::TaggedSymbol
265
+ )
266
+ VERIFICATION_SUCCEEDED =
267
+ T.let(
268
+ :"verification.succeeded",
269
+ WhopSDK::Models::WebhookUpdateResponse::Event::TaggedSymbol
270
+ )
271
+ PAYMENT_CREATED =
272
+ T.let(
273
+ :"payment.created",
274
+ WhopSDK::Models::WebhookUpdateResponse::Event::TaggedSymbol
275
+ )
276
+ PAYMENT_SUCCEEDED =
277
+ T.let(
278
+ :"payment.succeeded",
279
+ WhopSDK::Models::WebhookUpdateResponse::Event::TaggedSymbol
280
+ )
281
+ PAYMENT_FAILED =
282
+ T.let(
283
+ :"payment.failed",
284
+ WhopSDK::Models::WebhookUpdateResponse::Event::TaggedSymbol
285
+ )
286
+ PAYMENT_PENDING =
287
+ T.let(
288
+ :"payment.pending",
289
+ WhopSDK::Models::WebhookUpdateResponse::Event::TaggedSymbol
290
+ )
291
+ DISPUTE_CREATED =
292
+ T.let(
293
+ :"dispute.created",
294
+ WhopSDK::Models::WebhookUpdateResponse::Event::TaggedSymbol
295
+ )
296
+ DISPUTE_UPDATED =
297
+ T.let(
298
+ :"dispute.updated",
299
+ WhopSDK::Models::WebhookUpdateResponse::Event::TaggedSymbol
300
+ )
301
+ REFUND_CREATED =
302
+ T.let(
303
+ :"refund.created",
304
+ WhopSDK::Models::WebhookUpdateResponse::Event::TaggedSymbol
305
+ )
306
+ REFUND_UPDATED =
307
+ T.let(
308
+ :"refund.updated",
309
+ WhopSDK::Models::WebhookUpdateResponse::Event::TaggedSymbol
310
+ )
311
+ MEMBERSHIP_CANCEL_AT_PERIOD_END_CHANGED =
312
+ T.let(
313
+ :"membership.cancel_at_period_end_changed",
314
+ WhopSDK::Models::WebhookUpdateResponse::Event::TaggedSymbol
315
+ )
316
+
317
+ sig do
318
+ override.returns(
319
+ T::Array[
320
+ WhopSDK::Models::WebhookUpdateResponse::Event::TaggedSymbol
321
+ ]
322
+ )
323
+ end
324
+ def self.values
325
+ end
326
+ end
327
+
328
+ # The different event types available
329
+ module TestableEvent
330
+ extend WhopSDK::Internal::Type::Enum
331
+
332
+ TaggedSymbol =
333
+ T.type_alias do
334
+ T.all(Symbol, WhopSDK::Models::WebhookUpdateResponse::TestableEvent)
335
+ end
336
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
337
+
338
+ INVOICE_CREATED =
339
+ T.let(
340
+ :"invoice.created",
341
+ WhopSDK::Models::WebhookUpdateResponse::TestableEvent::TaggedSymbol
342
+ )
343
+ INVOICE_PAID =
344
+ T.let(
345
+ :"invoice.paid",
346
+ WhopSDK::Models::WebhookUpdateResponse::TestableEvent::TaggedSymbol
347
+ )
348
+ INVOICE_PAST_DUE =
349
+ T.let(
350
+ :"invoice.past_due",
351
+ WhopSDK::Models::WebhookUpdateResponse::TestableEvent::TaggedSymbol
352
+ )
353
+ INVOICE_VOIDED =
354
+ T.let(
355
+ :"invoice.voided",
356
+ WhopSDK::Models::WebhookUpdateResponse::TestableEvent::TaggedSymbol
357
+ )
358
+ MEMBERSHIP_ACTIVATED =
359
+ T.let(
360
+ :"membership.activated",
361
+ WhopSDK::Models::WebhookUpdateResponse::TestableEvent::TaggedSymbol
362
+ )
363
+ MEMBERSHIP_DEACTIVATED =
364
+ T.let(
365
+ :"membership.deactivated",
366
+ WhopSDK::Models::WebhookUpdateResponse::TestableEvent::TaggedSymbol
367
+ )
368
+ ENTRY_CREATED =
369
+ T.let(
370
+ :"entry.created",
371
+ WhopSDK::Models::WebhookUpdateResponse::TestableEvent::TaggedSymbol
372
+ )
373
+ ENTRY_APPROVED =
374
+ T.let(
375
+ :"entry.approved",
376
+ WhopSDK::Models::WebhookUpdateResponse::TestableEvent::TaggedSymbol
377
+ )
378
+ ENTRY_DENIED =
379
+ T.let(
380
+ :"entry.denied",
381
+ WhopSDK::Models::WebhookUpdateResponse::TestableEvent::TaggedSymbol
382
+ )
383
+ ENTRY_DELETED =
384
+ T.let(
385
+ :"entry.deleted",
386
+ WhopSDK::Models::WebhookUpdateResponse::TestableEvent::TaggedSymbol
387
+ )
388
+ SETUP_INTENT_REQUIRES_ACTION =
389
+ T.let(
390
+ :"setup_intent.requires_action",
391
+ WhopSDK::Models::WebhookUpdateResponse::TestableEvent::TaggedSymbol
392
+ )
393
+ SETUP_INTENT_SUCCEEDED =
394
+ T.let(
395
+ :"setup_intent.succeeded",
396
+ WhopSDK::Models::WebhookUpdateResponse::TestableEvent::TaggedSymbol
397
+ )
398
+ SETUP_INTENT_CANCELED =
399
+ T.let(
400
+ :"setup_intent.canceled",
401
+ WhopSDK::Models::WebhookUpdateResponse::TestableEvent::TaggedSymbol
402
+ )
403
+ WITHDRAWAL_CREATED =
404
+ T.let(
405
+ :"withdrawal.created",
406
+ WhopSDK::Models::WebhookUpdateResponse::TestableEvent::TaggedSymbol
407
+ )
408
+ WITHDRAWAL_UPDATED =
409
+ T.let(
410
+ :"withdrawal.updated",
411
+ WhopSDK::Models::WebhookUpdateResponse::TestableEvent::TaggedSymbol
412
+ )
413
+ COURSE_LESSON_INTERACTION_COMPLETED =
414
+ T.let(
415
+ :"course_lesson_interaction.completed",
416
+ WhopSDK::Models::WebhookUpdateResponse::TestableEvent::TaggedSymbol
417
+ )
418
+ PAYOUT_METHOD_CREATED =
419
+ T.let(
420
+ :"payout_method.created",
421
+ WhopSDK::Models::WebhookUpdateResponse::TestableEvent::TaggedSymbol
422
+ )
423
+ VERIFICATION_SUCCEEDED =
424
+ T.let(
425
+ :"verification.succeeded",
426
+ WhopSDK::Models::WebhookUpdateResponse::TestableEvent::TaggedSymbol
427
+ )
428
+ PAYMENT_CREATED =
429
+ T.let(
430
+ :"payment.created",
431
+ WhopSDK::Models::WebhookUpdateResponse::TestableEvent::TaggedSymbol
432
+ )
433
+ PAYMENT_SUCCEEDED =
434
+ T.let(
435
+ :"payment.succeeded",
436
+ WhopSDK::Models::WebhookUpdateResponse::TestableEvent::TaggedSymbol
437
+ )
438
+ PAYMENT_FAILED =
439
+ T.let(
440
+ :"payment.failed",
441
+ WhopSDK::Models::WebhookUpdateResponse::TestableEvent::TaggedSymbol
442
+ )
443
+ PAYMENT_PENDING =
444
+ T.let(
445
+ :"payment.pending",
446
+ WhopSDK::Models::WebhookUpdateResponse::TestableEvent::TaggedSymbol
447
+ )
448
+ DISPUTE_CREATED =
449
+ T.let(
450
+ :"dispute.created",
451
+ WhopSDK::Models::WebhookUpdateResponse::TestableEvent::TaggedSymbol
452
+ )
453
+ DISPUTE_UPDATED =
454
+ T.let(
455
+ :"dispute.updated",
456
+ WhopSDK::Models::WebhookUpdateResponse::TestableEvent::TaggedSymbol
457
+ )
458
+ REFUND_CREATED =
459
+ T.let(
460
+ :"refund.created",
461
+ WhopSDK::Models::WebhookUpdateResponse::TestableEvent::TaggedSymbol
462
+ )
463
+ REFUND_UPDATED =
464
+ T.let(
465
+ :"refund.updated",
466
+ WhopSDK::Models::WebhookUpdateResponse::TestableEvent::TaggedSymbol
467
+ )
468
+ MEMBERSHIP_CANCEL_AT_PERIOD_END_CHANGED =
469
+ T.let(
470
+ :"membership.cancel_at_period_end_changed",
471
+ WhopSDK::Models::WebhookUpdateResponse::TestableEvent::TaggedSymbol
472
+ )
473
+
474
+ sig do
475
+ override.returns(
476
+ T::Array[
477
+ WhopSDK::Models::WebhookUpdateResponse::TestableEvent::TaggedSymbol
478
+ ]
479
+ )
480
+ end
481
+ def self.values
482
+ end
483
+ end
484
+ end
485
+ end
486
+ end
@@ -36,11 +36,16 @@ module WhopSDK
36
36
  sig { returns(Symbol) }
37
37
  attr_accessor :type
38
38
 
39
+ # The company ID that this webhook event is associated with
40
+ sig { returns(T.nilable(String)) }
41
+ attr_accessor :company_id
42
+
39
43
  sig do
40
44
  params(
41
45
  id: String,
42
46
  data: WhopSDK::WithdrawalCreatedWebhookEvent::Data::OrHash,
43
47
  timestamp: Time,
48
+ company_id: T.nilable(String),
44
49
  api_version: Symbol,
45
50
  type: Symbol
46
51
  ).returns(T.attached_class)
@@ -52,6 +57,8 @@ module WhopSDK
52
57
  data:,
53
58
  # The timestamp in ISO 8601 format that the webhook was sent at on the server
54
59
  timestamp:,
60
+ # The company ID that this webhook event is associated with
61
+ company_id: nil,
55
62
  # The API version for this webhook
56
63
  api_version: :v1,
57
64
  # The webhook event type
@@ -66,7 +73,8 @@ module WhopSDK
66
73
  api_version: Symbol,
67
74
  data: WhopSDK::WithdrawalCreatedWebhookEvent::Data,
68
75
  timestamp: Time,
69
- type: Symbol
76
+ type: Symbol,
77
+ company_id: T.nilable(String)
70
78
  }
71
79
  )
72
80
  end
@@ -36,11 +36,16 @@ module WhopSDK
36
36
  sig { returns(Symbol) }
37
37
  attr_accessor :type
38
38
 
39
+ # The company ID that this webhook event is associated with
40
+ sig { returns(T.nilable(String)) }
41
+ attr_accessor :company_id
42
+
39
43
  sig do
40
44
  params(
41
45
  id: String,
42
46
  data: WhopSDK::WithdrawalUpdatedWebhookEvent::Data::OrHash,
43
47
  timestamp: Time,
48
+ company_id: T.nilable(String),
44
49
  api_version: Symbol,
45
50
  type: Symbol
46
51
  ).returns(T.attached_class)
@@ -52,6 +57,8 @@ module WhopSDK
52
57
  data:,
53
58
  # The timestamp in ISO 8601 format that the webhook was sent at on the server
54
59
  timestamp:,
60
+ # The company ID that this webhook event is associated with
61
+ company_id: nil,
55
62
  # The API version for this webhook
56
63
  api_version: :v1,
57
64
  # The webhook event type
@@ -66,7 +73,8 @@ module WhopSDK
66
73
  api_version: Symbol,
67
74
  data: WhopSDK::WithdrawalUpdatedWebhookEvent::Data,
68
75
  timestamp: Time,
69
- type: Symbol
76
+ type: Symbol,
77
+ company_id: T.nilable(String)
70
78
  }
71
79
  )
72
80
  end
@@ -222,6 +222,10 @@ module WhopSDK
222
222
 
223
223
  FeeMarkupType = WhopSDK::Models::FeeMarkupType
224
224
 
225
+ FileCreateParams = WhopSDK::Models::FileCreateParams
226
+
227
+ FileRetrieveParams = WhopSDK::Models::FileRetrieveParams
228
+
225
229
  Forum = WhopSDK::Models::Forum
226
230
 
227
231
  ForumListParams = WhopSDK::Models::ForumListParams
@@ -516,8 +520,18 @@ module WhopSDK
516
520
 
517
521
  VisibilityFilter = WhopSDK::Models::VisibilityFilter
518
522
 
523
+ WebhookCreateParams = WhopSDK::Models::WebhookCreateParams
524
+
525
+ WebhookDeleteParams = WhopSDK::Models::WebhookDeleteParams
526
+
527
+ WebhookListParams = WhopSDK::Models::WebhookListParams
528
+
529
+ WebhookRetrieveParams = WhopSDK::Models::WebhookRetrieveParams
530
+
519
531
  WebhookUnwrapParams = WhopSDK::Models::WebhookUnwrapParams
520
532
 
533
+ WebhookUpdateParams = WhopSDK::Models::WebhookUpdateParams
534
+
521
535
  WhoCanCommentTypes = WhopSDK::Models::WhoCanCommentTypes
522
536
 
523
537
  WhoCanPost = WhopSDK::Models::WhoCanPost
@@ -0,0 +1,40 @@
1
+ # typed: strong
2
+
3
+ module WhopSDK
4
+ module Resources
5
+ class Files
6
+ # Creates a file and returns a presigned URL for upload
7
+ sig do
8
+ params(
9
+ filename: String,
10
+ request_options: WhopSDK::RequestOptions::OrHash
11
+ ).returns(WhopSDK::Models::FileCreateResponse)
12
+ end
13
+ def create(
14
+ # The filename of the file
15
+ filename:,
16
+ request_options: {}
17
+ )
18
+ end
19
+
20
+ # Retrieves a file by its ID
21
+ sig do
22
+ params(
23
+ id: String,
24
+ request_options: WhopSDK::RequestOptions::OrHash
25
+ ).returns(WhopSDK::Models::FileRetrieveResponse)
26
+ end
27
+ def retrieve(
28
+ # The ID of the file (e.g., file_xxxxx)
29
+ id,
30
+ request_options: {}
31
+ )
32
+ end
33
+
34
+ # @api private
35
+ sig { params(client: WhopSDK::Client).returns(T.attached_class) }
36
+ def self.new(client:)
37
+ end
38
+ end
39
+ end
40
+ end
@@ -29,6 +29,7 @@ module WhopSDK
29
29
  ),
30
30
  initial_price: T.nilable(Float),
31
31
  internal_notes: T.nilable(String),
32
+ legacy_payment_method_controls: T.nilable(T::Boolean),
32
33
  override_tax_type: T.nilable(WhopSDK::TaxType::OrSymbol),
33
34
  payment_method_configuration:
34
35
  T.nilable(
@@ -69,6 +70,8 @@ module WhopSDK
69
70
  initial_price: nil,
70
71
  # A personal description or notes section for the business.
71
72
  internal_notes: nil,
73
+ # Whether this plan uses legacy payment method controls
74
+ legacy_payment_method_controls: nil,
72
75
  # Whether or not the tax is included in a plan's price (or if it hasn't been set
73
76
  # up)
74
77
  override_tax_type: nil,
@@ -141,6 +144,7 @@ module WhopSDK
141
144
  ),
142
145
  initial_price: T.nilable(Float),
143
146
  internal_notes: T.nilable(String),
147
+ legacy_payment_method_controls: T.nilable(T::Boolean),
144
148
  offer_cancel_discount: T.nilable(T::Boolean),
145
149
  override_tax_type: T.nilable(WhopSDK::TaxType::OrSymbol),
146
150
  payment_method_configuration:
@@ -177,6 +181,8 @@ module WhopSDK
177
181
  initial_price: nil,
178
182
  # A personal description or notes section for the business.
179
183
  internal_notes: nil,
184
+ # Whether this plan uses legacy payment method controls
185
+ legacy_payment_method_controls: nil,
180
186
  # Whether or not to offer a discount to cancel a subscription.
181
187
  offer_cancel_discount: nil,
182
188
  # Whether or not the tax is included in a plan's price (or if it hasn't been set