whop_sdk 0.0.17 → 0.0.18

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.
@@ -20,6 +20,16 @@ module WhopSDK
20
20
  variant :UsBankAccountPaymentMethod,
21
21
  -> { WhopSDK::Models::PaymentMethodRetrieveResponse::UsBankAccountPaymentMethod }
22
22
 
23
+ # The Cash App details for the payment method
24
+ variant :CashappPaymentMethod, -> { WhopSDK::Models::PaymentMethodRetrieveResponse::CashappPaymentMethod }
25
+
26
+ # The iDEAL details for the payment method
27
+ variant :IdealPaymentMethod, -> { WhopSDK::Models::PaymentMethodRetrieveResponse::IdealPaymentMethod }
28
+
29
+ # The SEPA Direct Debit details for the payment method
30
+ variant :SepaDebitPaymentMethod,
31
+ -> { WhopSDK::Models::PaymentMethodRetrieveResponse::SepaDebitPaymentMethod }
32
+
23
33
  class BasePaymentMethod < WhopSDK::Internal::Type::BaseModel
24
34
  # @!attribute id
25
35
  # The ID of the payment method
@@ -216,8 +226,226 @@ module WhopSDK
216
226
  end
217
227
  end
218
228
 
229
+ class CashappPaymentMethod < WhopSDK::Internal::Type::BaseModel
230
+ # @!attribute id
231
+ # The ID of the payment method
232
+ #
233
+ # @return [String]
234
+ required :id, String
235
+
236
+ # @!attribute cashapp
237
+ # The Cash App details associated with this payment method
238
+ #
239
+ # @return [WhopSDK::Models::PaymentMethodRetrieveResponse::CashappPaymentMethod::Cashapp]
240
+ required :cashapp, -> { WhopSDK::Models::PaymentMethodRetrieveResponse::CashappPaymentMethod::Cashapp }
241
+
242
+ # @!attribute created_at
243
+ # When the payment method was created
244
+ #
245
+ # @return [Time]
246
+ required :created_at, Time
247
+
248
+ # @!attribute payment_method_type
249
+ # The type of the payment method
250
+ #
251
+ # @return [Symbol, WhopSDK::Models::PaymentMethodTypes]
252
+ required :payment_method_type, enum: -> { WhopSDK::PaymentMethodTypes }
253
+
254
+ # @!attribute typename
255
+ # The typename of this object
256
+ #
257
+ # @return [Symbol, :CashappPaymentMethod]
258
+ required :typename, const: :CashappPaymentMethod
259
+
260
+ # @!method initialize(id:, cashapp:, created_at:, payment_method_type:, typename: :CashappPaymentMethod)
261
+ # The Cash App details for the payment method
262
+ #
263
+ # @param id [String] The ID of the payment method
264
+ #
265
+ # @param cashapp [WhopSDK::Models::PaymentMethodRetrieveResponse::CashappPaymentMethod::Cashapp] The Cash App details associated with this payment method
266
+ #
267
+ # @param created_at [Time] When the payment method was created
268
+ #
269
+ # @param payment_method_type [Symbol, WhopSDK::Models::PaymentMethodTypes] The type of the payment method
270
+ #
271
+ # @param typename [Symbol, :CashappPaymentMethod] The typename of this object
272
+
273
+ # @see WhopSDK::Models::PaymentMethodRetrieveResponse::CashappPaymentMethod#cashapp
274
+ class Cashapp < WhopSDK::Internal::Type::BaseModel
275
+ # @!attribute buyer_id
276
+ # A unique and immutable identifier assigned by Cash App to every buyer.
277
+ #
278
+ # @return [String, nil]
279
+ required :buyer_id, String, nil?: true
280
+
281
+ # @!attribute cashtag
282
+ # A public identifier for buyers using Cash App.
283
+ #
284
+ # @return [String, nil]
285
+ required :cashtag, String, nil?: true
286
+
287
+ # @!method initialize(buyer_id:, cashtag:)
288
+ # The Cash App details associated with this payment method
289
+ #
290
+ # @param buyer_id [String, nil] A unique and immutable identifier assigned by Cash App to every buyer.
291
+ #
292
+ # @param cashtag [String, nil] A public identifier for buyers using Cash App.
293
+ end
294
+ end
295
+
296
+ class IdealPaymentMethod < WhopSDK::Internal::Type::BaseModel
297
+ # @!attribute id
298
+ # The ID of the payment method
299
+ #
300
+ # @return [String]
301
+ required :id, String
302
+
303
+ # @!attribute created_at
304
+ # When the payment method was created
305
+ #
306
+ # @return [Time]
307
+ required :created_at, Time
308
+
309
+ # @!attribute ideal
310
+ # The iDEAL details associated with this payment method
311
+ #
312
+ # @return [WhopSDK::Models::PaymentMethodRetrieveResponse::IdealPaymentMethod::Ideal]
313
+ required :ideal, -> { WhopSDK::Models::PaymentMethodRetrieveResponse::IdealPaymentMethod::Ideal }
314
+
315
+ # @!attribute payment_method_type
316
+ # The type of the payment method
317
+ #
318
+ # @return [Symbol, WhopSDK::Models::PaymentMethodTypes]
319
+ required :payment_method_type, enum: -> { WhopSDK::PaymentMethodTypes }
320
+
321
+ # @!attribute typename
322
+ # The typename of this object
323
+ #
324
+ # @return [Symbol, :IdealPaymentMethod]
325
+ required :typename, const: :IdealPaymentMethod
326
+
327
+ # @!method initialize(id:, created_at:, ideal:, payment_method_type:, typename: :IdealPaymentMethod)
328
+ # The iDEAL details for the payment method
329
+ #
330
+ # @param id [String] The ID of the payment method
331
+ #
332
+ # @param created_at [Time] When the payment method was created
333
+ #
334
+ # @param ideal [WhopSDK::Models::PaymentMethodRetrieveResponse::IdealPaymentMethod::Ideal] The iDEAL details associated with this payment method
335
+ #
336
+ # @param payment_method_type [Symbol, WhopSDK::Models::PaymentMethodTypes] The type of the payment method
337
+ #
338
+ # @param typename [Symbol, :IdealPaymentMethod] The typename of this object
339
+
340
+ # @see WhopSDK::Models::PaymentMethodRetrieveResponse::IdealPaymentMethod#ideal
341
+ class Ideal < WhopSDK::Internal::Type::BaseModel
342
+ # @!attribute bank
343
+ # The customer's bank.
344
+ #
345
+ # @return [String, nil]
346
+ required :bank, String, nil?: true
347
+
348
+ # @!attribute bic
349
+ # The Bank Identifier Code of the customer's bank.
350
+ #
351
+ # @return [String, nil]
352
+ required :bic, String, nil?: true
353
+
354
+ # @!method initialize(bank:, bic:)
355
+ # The iDEAL details associated with this payment method
356
+ #
357
+ # @param bank [String, nil] The customer's bank.
358
+ #
359
+ # @param bic [String, nil] The Bank Identifier Code of the customer's bank.
360
+ end
361
+ end
362
+
363
+ class SepaDebitPaymentMethod < WhopSDK::Internal::Type::BaseModel
364
+ # @!attribute id
365
+ # The ID of the payment method
366
+ #
367
+ # @return [String]
368
+ required :id, String
369
+
370
+ # @!attribute created_at
371
+ # When the payment method was created
372
+ #
373
+ # @return [Time]
374
+ required :created_at, Time
375
+
376
+ # @!attribute payment_method_type
377
+ # The type of the payment method
378
+ #
379
+ # @return [Symbol, WhopSDK::Models::PaymentMethodTypes]
380
+ required :payment_method_type, enum: -> { WhopSDK::PaymentMethodTypes }
381
+
382
+ # @!attribute sepa_debit
383
+ # The SEPA Direct Debit details associated with this payment method
384
+ #
385
+ # @return [WhopSDK::Models::PaymentMethodRetrieveResponse::SepaDebitPaymentMethod::SepaDebit]
386
+ required :sepa_debit,
387
+ -> { WhopSDK::Models::PaymentMethodRetrieveResponse::SepaDebitPaymentMethod::SepaDebit }
388
+
389
+ # @!attribute typename
390
+ # The typename of this object
391
+ #
392
+ # @return [Symbol, :SepaDebitPaymentMethod]
393
+ required :typename, const: :SepaDebitPaymentMethod
394
+
395
+ # @!method initialize(id:, created_at:, payment_method_type:, sepa_debit:, typename: :SepaDebitPaymentMethod)
396
+ # The SEPA Direct Debit details for the payment method
397
+ #
398
+ # @param id [String] The ID of the payment method
399
+ #
400
+ # @param created_at [Time] When the payment method was created
401
+ #
402
+ # @param payment_method_type [Symbol, WhopSDK::Models::PaymentMethodTypes] The type of the payment method
403
+ #
404
+ # @param sepa_debit [WhopSDK::Models::PaymentMethodRetrieveResponse::SepaDebitPaymentMethod::SepaDebit] The SEPA Direct Debit details associated with this payment method
405
+ #
406
+ # @param typename [Symbol, :SepaDebitPaymentMethod] The typename of this object
407
+
408
+ # @see WhopSDK::Models::PaymentMethodRetrieveResponse::SepaDebitPaymentMethod#sepa_debit
409
+ class SepaDebit < WhopSDK::Internal::Type::BaseModel
410
+ # @!attribute bank_code
411
+ # Bank code of the bank associated with the account.
412
+ #
413
+ # @return [String, nil]
414
+ required :bank_code, String, nil?: true
415
+
416
+ # @!attribute branch_code
417
+ # Branch code of the bank associated with the account.
418
+ #
419
+ # @return [String, nil]
420
+ required :branch_code, String, nil?: true
421
+
422
+ # @!attribute country
423
+ # Two-letter ISO code representing the country the bank account is located in.
424
+ #
425
+ # @return [String, nil]
426
+ required :country, String, nil?: true
427
+
428
+ # @!attribute last4
429
+ # Last four digits of the IBAN.
430
+ #
431
+ # @return [String, nil]
432
+ required :last4, String, nil?: true
433
+
434
+ # @!method initialize(bank_code:, branch_code:, country:, last4:)
435
+ # The SEPA Direct Debit details associated with this payment method
436
+ #
437
+ # @param bank_code [String, nil] Bank code of the bank associated with the account.
438
+ #
439
+ # @param branch_code [String, nil] Branch code of the bank associated with the account.
440
+ #
441
+ # @param country [String, nil] Two-letter ISO code representing the country the bank account is located in.
442
+ #
443
+ # @param last4 [String, nil] Last four digits of the IBAN.
444
+ end
445
+ end
446
+
219
447
  # @!method self.variants
220
- # @return [Array(WhopSDK::Models::PaymentMethodRetrieveResponse::BasePaymentMethod, WhopSDK::Models::PaymentMethodRetrieveResponse::CardPaymentMethod, WhopSDK::Models::PaymentMethodRetrieveResponse::UsBankAccountPaymentMethod)]
448
+ # @return [Array(WhopSDK::Models::PaymentMethodRetrieveResponse::BasePaymentMethod, WhopSDK::Models::PaymentMethodRetrieveResponse::CardPaymentMethod, WhopSDK::Models::PaymentMethodRetrieveResponse::UsBankAccountPaymentMethod, WhopSDK::Models::PaymentMethodRetrieveResponse::CashappPaymentMethod, WhopSDK::Models::PaymentMethodRetrieveResponse::IdealPaymentMethod, WhopSDK::Models::PaymentMethodRetrieveResponse::SepaDebitPaymentMethod)]
221
449
  end
222
450
  end
223
451
  end
@@ -76,10 +76,12 @@ module WhopSDK
76
76
  # - `company:update`
77
77
  # - `company:basic:read`
78
78
  #
79
- # @overload update(id, logo: nil, send_customer_emails: nil, title: nil, request_options: {})
79
+ # @overload update(id, banner_image: nil, logo: nil, send_customer_emails: nil, title: nil, request_options: {})
80
80
  #
81
81
  # @param id [String] The ID of the company to update
82
82
  #
83
+ # @param banner_image [WhopSDK::Models::CompanyUpdateParams::BannerImage::AttachmentInputWithDirectUploadID, WhopSDK::Models::CompanyUpdateParams::BannerImage::AttachmentInputWithID, nil] The banner image for the company in png or jpeg format
84
+ #
83
85
  # @param logo [WhopSDK::Models::CompanyUpdateParams::Logo::AttachmentInputWithDirectUploadID, WhopSDK::Models::CompanyUpdateParams::Logo::AttachmentInputWithID, nil] The logo for the company in png, jpeg, or gif format
84
86
  #
85
87
  # @param send_customer_emails [Boolean, nil] Whether Whop sends transactional emails to customers on behalf of this company.
@@ -11,6 +11,7 @@ module WhopSDK
11
11
  # Required permissions:
12
12
  #
13
13
  # - `company:balance:read`
14
+ # - `payout:account:read`
14
15
  #
15
16
  # @overload retrieve(id, request_options: {})
16
17
  #
@@ -21,7 +21,7 @@ module WhopSDK
21
21
  #
22
22
  # @param request_options [WhopSDK::RequestOptions, Hash{Symbol=>Object}, nil]
23
23
  #
24
- # @return [WhopSDK::Models::PaymentMethodRetrieveResponse::BasePaymentMethod, WhopSDK::Models::PaymentMethodRetrieveResponse::CardPaymentMethod, WhopSDK::Models::PaymentMethodRetrieveResponse::UsBankAccountPaymentMethod]
24
+ # @return [WhopSDK::Models::PaymentMethodRetrieveResponse::BasePaymentMethod, WhopSDK::Models::PaymentMethodRetrieveResponse::CardPaymentMethod, WhopSDK::Models::PaymentMethodRetrieveResponse::UsBankAccountPaymentMethod, WhopSDK::Models::PaymentMethodRetrieveResponse::CashappPaymentMethod, WhopSDK::Models::PaymentMethodRetrieveResponse::IdealPaymentMethod, WhopSDK::Models::PaymentMethodRetrieveResponse::SepaDebitPaymentMethod]
25
25
  #
26
26
  # @see WhopSDK::Models::PaymentMethodRetrieveParams
27
27
  def retrieve(id, params)
@@ -65,7 +65,7 @@ module WhopSDK
65
65
  #
66
66
  # @param request_options [WhopSDK::RequestOptions, Hash{Symbol=>Object}, nil]
67
67
  #
68
- # @return [WhopSDK::Internal::CursorPage<WhopSDK::Models::PaymentMethodListResponse::BasePaymentMethod, WhopSDK::Models::PaymentMethodListResponse::CardPaymentMethod, WhopSDK::Models::PaymentMethodListResponse::UsBankAccountPaymentMethod>]
68
+ # @return [WhopSDK::Internal::CursorPage<WhopSDK::Models::PaymentMethodListResponse::BasePaymentMethod, WhopSDK::Models::PaymentMethodListResponse::CardPaymentMethod, WhopSDK::Models::PaymentMethodListResponse::UsBankAccountPaymentMethod, WhopSDK::Models::PaymentMethodListResponse::CashappPaymentMethod, WhopSDK::Models::PaymentMethodListResponse::IdealPaymentMethod, WhopSDK::Models::PaymentMethodListResponse::SepaDebitPaymentMethod>]
69
69
  #
70
70
  # @see WhopSDK::Models::PaymentMethodListParams
71
71
  def list(params)
@@ -1,5 +1,5 @@
1
1
  # frozen_string_literal: true
2
2
 
3
3
  module WhopSDK
4
- VERSION = "0.0.17"
4
+ VERSION = "0.0.18"
5
5
  end
@@ -11,6 +11,19 @@ module WhopSDK
11
11
  T.any(WhopSDK::CompanyUpdateParams, WhopSDK::Internal::AnyHash)
12
12
  end
13
13
 
14
+ # The banner image for the company in png or jpeg format
15
+ sig do
16
+ returns(
17
+ T.nilable(
18
+ T.any(
19
+ WhopSDK::CompanyUpdateParams::BannerImage::AttachmentInputWithDirectUploadID,
20
+ WhopSDK::CompanyUpdateParams::BannerImage::AttachmentInputWithID
21
+ )
22
+ )
23
+ )
24
+ end
25
+ attr_accessor :banner_image
26
+
14
27
  # The logo for the company in png, jpeg, or gif format
15
28
  sig do
16
29
  returns(
@@ -37,6 +50,13 @@ module WhopSDK
37
50
 
38
51
  sig do
39
52
  params(
53
+ banner_image:
54
+ T.nilable(
55
+ T.any(
56
+ WhopSDK::CompanyUpdateParams::BannerImage::AttachmentInputWithDirectUploadID::OrHash,
57
+ WhopSDK::CompanyUpdateParams::BannerImage::AttachmentInputWithID::OrHash
58
+ )
59
+ ),
40
60
  logo:
41
61
  T.nilable(
42
62
  T.any(
@@ -50,6 +70,8 @@ module WhopSDK
50
70
  ).returns(T.attached_class)
51
71
  end
52
72
  def self.new(
73
+ # The banner image for the company in png or jpeg format
74
+ banner_image: nil,
53
75
  # The logo for the company in png, jpeg, or gif format
54
76
  logo: nil,
55
77
  # Whether Whop sends transactional emails to customers on behalf of this company.
@@ -66,6 +88,13 @@ module WhopSDK
66
88
  sig do
67
89
  override.returns(
68
90
  {
91
+ banner_image:
92
+ T.nilable(
93
+ T.any(
94
+ WhopSDK::CompanyUpdateParams::BannerImage::AttachmentInputWithDirectUploadID,
95
+ WhopSDK::CompanyUpdateParams::BannerImage::AttachmentInputWithID
96
+ )
97
+ ),
69
98
  logo:
70
99
  T.nilable(
71
100
  T.any(
@@ -82,6 +111,87 @@ module WhopSDK
82
111
  def to_hash
83
112
  end
84
113
 
114
+ # The banner image for the company in png or jpeg format
115
+ module BannerImage
116
+ extend WhopSDK::Internal::Type::Union
117
+
118
+ Variants =
119
+ T.type_alias do
120
+ T.any(
121
+ WhopSDK::CompanyUpdateParams::BannerImage::AttachmentInputWithDirectUploadID,
122
+ WhopSDK::CompanyUpdateParams::BannerImage::AttachmentInputWithID
123
+ )
124
+ end
125
+
126
+ class AttachmentInputWithDirectUploadID < WhopSDK::Internal::Type::BaseModel
127
+ OrHash =
128
+ T.type_alias do
129
+ T.any(
130
+ WhopSDK::CompanyUpdateParams::BannerImage::AttachmentInputWithDirectUploadID,
131
+ WhopSDK::Internal::AnyHash
132
+ )
133
+ end
134
+
135
+ # This ID should be used the first time you upload an attachment. It is the ID of
136
+ # the direct upload that was created when uploading the file to S3 via the
137
+ # mediaDirectUpload mutation.
138
+ sig { returns(String) }
139
+ attr_accessor :direct_upload_id
140
+
141
+ # Input for an attachment
142
+ sig { params(direct_upload_id: String).returns(T.attached_class) }
143
+ def self.new(
144
+ # This ID should be used the first time you upload an attachment. It is the ID of
145
+ # the direct upload that was created when uploading the file to S3 via the
146
+ # mediaDirectUpload mutation.
147
+ direct_upload_id:
148
+ )
149
+ end
150
+
151
+ sig { override.returns({ direct_upload_id: String }) }
152
+ def to_hash
153
+ end
154
+ end
155
+
156
+ class AttachmentInputWithID < WhopSDK::Internal::Type::BaseModel
157
+ OrHash =
158
+ T.type_alias do
159
+ T.any(
160
+ WhopSDK::CompanyUpdateParams::BannerImage::AttachmentInputWithID,
161
+ WhopSDK::Internal::AnyHash
162
+ )
163
+ end
164
+
165
+ # The ID of an existing attachment object. Use this when updating a resource and
166
+ # keeping a subset of the attachments. Don't use this unless you know what you're
167
+ # doing.
168
+ sig { returns(String) }
169
+ attr_accessor :id
170
+
171
+ # Input for an attachment
172
+ sig { params(id: String).returns(T.attached_class) }
173
+ def self.new(
174
+ # The ID of an existing attachment object. Use this when updating a resource and
175
+ # keeping a subset of the attachments. Don't use this unless you know what you're
176
+ # doing.
177
+ id:
178
+ )
179
+ end
180
+
181
+ sig { override.returns({ id: String }) }
182
+ def to_hash
183
+ end
184
+ end
185
+
186
+ sig do
187
+ override.returns(
188
+ T::Array[WhopSDK::CompanyUpdateParams::BannerImage::Variants]
189
+ )
190
+ end
191
+ def self.variants
192
+ end
193
+ end
194
+
85
195
  # The logo for the company in png, jpeg, or gif format
86
196
  module Logo
87
197
  extend WhopSDK::Internal::Type::Union