dodopayments 2.9.1 → 2.10.0

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 (184) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +15 -0
  3. data/README.md +1 -1
  4. data/lib/dodopayments/internal/transport/base_client.rb +2 -0
  5. data/lib/dodopayments/internal/type/union.rb +21 -7
  6. data/lib/dodopayments/models/abandoned_checkout_detected_webhook_event.rb +4 -16
  7. data/lib/dodopayments/models/abandoned_checkout_recovered_webhook_event.rb +4 -16
  8. data/lib/dodopayments/models/checkout_session_request.rb +15 -2
  9. data/lib/dodopayments/models/credit_added_webhook_event.rb +4 -16
  10. data/lib/dodopayments/models/credit_balance_low_webhook_event.rb +4 -16
  11. data/lib/dodopayments/models/credit_deducted_webhook_event.rb +4 -16
  12. data/lib/dodopayments/models/credit_expired_webhook_event.rb +4 -16
  13. data/lib/dodopayments/models/credit_manual_adjustment_webhook_event.rb +4 -16
  14. data/lib/dodopayments/models/credit_overage_charged_webhook_event.rb +4 -16
  15. data/lib/dodopayments/models/credit_overage_reset_webhook_event.rb +4 -16
  16. data/lib/dodopayments/models/credit_rolled_over_webhook_event.rb +4 -16
  17. data/lib/dodopayments/models/credit_rollover_forfeited_webhook_event.rb +4 -16
  18. data/lib/dodopayments/models/dispute_accepted_webhook_event.rb +4 -16
  19. data/lib/dodopayments/models/dispute_cancelled_webhook_event.rb +4 -16
  20. data/lib/dodopayments/models/dispute_challenged_webhook_event.rb +4 -16
  21. data/lib/dodopayments/models/dispute_expired_webhook_event.rb +4 -16
  22. data/lib/dodopayments/models/dispute_lost_webhook_event.rb +4 -16
  23. data/lib/dodopayments/models/dispute_opened_webhook_event.rb +4 -16
  24. data/lib/dodopayments/models/dispute_won_webhook_event.rb +4 -16
  25. data/lib/dodopayments/models/dunning_recovered_webhook_event.rb +4 -16
  26. data/lib/dodopayments/models/dunning_started_webhook_event.rb +4 -16
  27. data/lib/dodopayments/models/entitlement_grant_created_webhook_event.rb +4 -16
  28. data/lib/dodopayments/models/entitlement_grant_delivered_webhook_event.rb +4 -16
  29. data/lib/dodopayments/models/entitlement_grant_failed_webhook_event.rb +4 -16
  30. data/lib/dodopayments/models/entitlement_grant_revoked_webhook_event.rb +4 -16
  31. data/lib/dodopayments/models/license_key_created_webhook_event.rb +4 -16
  32. data/lib/dodopayments/models/payment.rb +153 -3
  33. data/lib/dodopayments/models/payment_cancelled_webhook_event.rb +4 -16
  34. data/lib/dodopayments/models/payment_create_params.rb +15 -3
  35. data/lib/dodopayments/models/payment_create_response.rb +14 -3
  36. data/lib/dodopayments/models/payment_failed_webhook_event.rb +4 -16
  37. data/lib/dodopayments/models/payment_processing_webhook_event.rb +4 -16
  38. data/lib/dodopayments/models/payment_succeeded_webhook_event.rb +4 -16
  39. data/lib/dodopayments/models/payout_list_response.rb +6 -3
  40. data/lib/dodopayments/models/price.rb +20 -48
  41. data/lib/dodopayments/models/product.rb +3 -3
  42. data/lib/dodopayments/models/product_create_params.rb +3 -3
  43. data/lib/dodopayments/models/product_item_req.rb +42 -1
  44. data/lib/dodopayments/models/product_update_params.rb +3 -3
  45. data/lib/dodopayments/models/refund_failed_webhook_event.rb +4 -16
  46. data/lib/dodopayments/models/refund_succeeded_webhook_event.rb +4 -16
  47. data/lib/dodopayments/models/subscription.rb +153 -5
  48. data/lib/dodopayments/models/subscription_active_webhook_event.rb +4 -16
  49. data/lib/dodopayments/models/subscription_cancelled_webhook_event.rb +4 -16
  50. data/lib/dodopayments/models/subscription_create_params.rb +15 -3
  51. data/lib/dodopayments/models/subscription_create_response.rb +14 -3
  52. data/lib/dodopayments/models/subscription_expired_webhook_event.rb +4 -16
  53. data/lib/dodopayments/models/subscription_failed_webhook_event.rb +4 -16
  54. data/lib/dodopayments/models/subscription_list_response.rb +36 -5
  55. data/lib/dodopayments/models/subscription_on_hold_webhook_event.rb +4 -16
  56. data/lib/dodopayments/models/subscription_plan_changed_webhook_event.rb +4 -16
  57. data/lib/dodopayments/models/subscription_preview_change_plan_response.rb +21 -49
  58. data/lib/dodopayments/models/subscription_renewed_webhook_event.rb +4 -16
  59. data/lib/dodopayments/models/subscription_update_payment_method_params.rb +12 -30
  60. data/lib/dodopayments/models/subscription_updated_webhook_event.rb +4 -16
  61. data/lib/dodopayments/models/unsafe_unwrap_webhook_event.rb +41 -39
  62. data/lib/dodopayments/models/unwrap_webhook_event.rb +41 -39
  63. data/lib/dodopayments/models/update_subscription_plan_req.rb +17 -6
  64. data/lib/dodopayments/models/webhook_event_type.rb +3 -0
  65. data/lib/dodopayments/models/webhook_payload.rb +52 -143
  66. data/lib/dodopayments/resources/checkout_sessions.rb +8 -4
  67. data/lib/dodopayments/resources/payments.rb +4 -2
  68. data/lib/dodopayments/resources/subscriptions.rb +12 -6
  69. data/lib/dodopayments/version.rb +1 -1
  70. data/rbi/dodopayments/models/abandoned_checkout_detected_webhook_event.rbi +4 -40
  71. data/rbi/dodopayments/models/abandoned_checkout_recovered_webhook_event.rbi +4 -40
  72. data/rbi/dodopayments/models/checkout_session_request.rbi +14 -0
  73. data/rbi/dodopayments/models/credit_added_webhook_event.rbi +4 -29
  74. data/rbi/dodopayments/models/credit_balance_low_webhook_event.rbi +4 -33
  75. data/rbi/dodopayments/models/credit_deducted_webhook_event.rbi +4 -33
  76. data/rbi/dodopayments/models/credit_expired_webhook_event.rbi +4 -33
  77. data/rbi/dodopayments/models/credit_manual_adjustment_webhook_event.rbi +4 -39
  78. data/rbi/dodopayments/models/credit_overage_charged_webhook_event.rbi +4 -36
  79. data/rbi/dodopayments/models/credit_overage_reset_webhook_event.rbi +4 -36
  80. data/rbi/dodopayments/models/credit_rolled_over_webhook_event.rbi +4 -33
  81. data/rbi/dodopayments/models/credit_rollover_forfeited_webhook_event.rbi +4 -40
  82. data/rbi/dodopayments/models/dispute_accepted_webhook_event.rbi +4 -33
  83. data/rbi/dodopayments/models/dispute_cancelled_webhook_event.rbi +4 -33
  84. data/rbi/dodopayments/models/dispute_challenged_webhook_event.rbi +4 -34
  85. data/rbi/dodopayments/models/dispute_expired_webhook_event.rbi +4 -33
  86. data/rbi/dodopayments/models/dispute_lost_webhook_event.rbi +4 -29
  87. data/rbi/dodopayments/models/dispute_opened_webhook_event.rbi +4 -33
  88. data/rbi/dodopayments/models/dispute_won_webhook_event.rbi +4 -29
  89. data/rbi/dodopayments/models/dunning_recovered_webhook_event.rbi +4 -33
  90. data/rbi/dodopayments/models/dunning_started_webhook_event.rbi +4 -33
  91. data/rbi/dodopayments/models/entitlement_grant_created_webhook_event.rbi +4 -40
  92. data/rbi/dodopayments/models/entitlement_grant_delivered_webhook_event.rbi +4 -40
  93. data/rbi/dodopayments/models/entitlement_grant_failed_webhook_event.rbi +4 -39
  94. data/rbi/dodopayments/models/entitlement_grant_revoked_webhook_event.rbi +4 -40
  95. data/rbi/dodopayments/models/license_key_created_webhook_event.rbi +4 -34
  96. data/rbi/dodopayments/models/payment.rbi +170 -2
  97. data/rbi/dodopayments/models/payment_cancelled_webhook_event.rbi +4 -33
  98. data/rbi/dodopayments/models/payment_create_params.rbi +14 -2
  99. data/rbi/dodopayments/models/payment_create_response.rbi +12 -2
  100. data/rbi/dodopayments/models/payment_failed_webhook_event.rbi +4 -33
  101. data/rbi/dodopayments/models/payment_processing_webhook_event.rbi +4 -34
  102. data/rbi/dodopayments/models/payment_succeeded_webhook_event.rbi +4 -33
  103. data/rbi/dodopayments/models/price.rbi +18 -90
  104. data/rbi/dodopayments/models/product_item_req.rbi +74 -3
  105. data/rbi/dodopayments/models/refund_failed_webhook_event.rbi +4 -31
  106. data/rbi/dodopayments/models/refund_succeeded_webhook_event.rbi +4 -33
  107. data/rbi/dodopayments/models/subscription.rbi +173 -4
  108. data/rbi/dodopayments/models/subscription_active_webhook_event.rbi +4 -36
  109. data/rbi/dodopayments/models/subscription_cancelled_webhook_event.rbi +4 -36
  110. data/rbi/dodopayments/models/subscription_create_params.rbi +14 -2
  111. data/rbi/dodopayments/models/subscription_create_response.rbi +12 -2
  112. data/rbi/dodopayments/models/subscription_expired_webhook_event.rbi +4 -36
  113. data/rbi/dodopayments/models/subscription_failed_webhook_event.rbi +4 -36
  114. data/rbi/dodopayments/models/subscription_list_response.rbi +67 -4
  115. data/rbi/dodopayments/models/subscription_on_hold_webhook_event.rbi +4 -36
  116. data/rbi/dodopayments/models/subscription_plan_changed_webhook_event.rbi +4 -40
  117. data/rbi/dodopayments/models/subscription_preview_change_plan_response.rbi +18 -123
  118. data/rbi/dodopayments/models/subscription_renewed_webhook_event.rbi +4 -36
  119. data/rbi/dodopayments/models/subscription_update_payment_method_params.rbi +12 -96
  120. data/rbi/dodopayments/models/subscription_updated_webhook_event.rbi +4 -36
  121. data/rbi/dodopayments/models/update_subscription_plan_req.rbi +18 -8
  122. data/rbi/dodopayments/models/webhook_event_type.rbi +15 -0
  123. data/rbi/dodopayments/models/webhook_payload.rbi +46 -466
  124. data/rbi/dodopayments/resources/checkout_sessions.rbi +12 -0
  125. data/rbi/dodopayments/resources/payments.rbi +6 -1
  126. data/rbi/dodopayments/resources/subscriptions.rbi +22 -9
  127. data/sig/dodopayments/models/abandoned_checkout_detected_webhook_event.rbs +4 -14
  128. data/sig/dodopayments/models/abandoned_checkout_recovered_webhook_event.rbs +4 -14
  129. data/sig/dodopayments/models/checkout_session_request.rbs +5 -0
  130. data/sig/dodopayments/models/credit_added_webhook_event.rbs +4 -14
  131. data/sig/dodopayments/models/credit_balance_low_webhook_event.rbs +4 -14
  132. data/sig/dodopayments/models/credit_deducted_webhook_event.rbs +4 -14
  133. data/sig/dodopayments/models/credit_expired_webhook_event.rbs +4 -14
  134. data/sig/dodopayments/models/credit_manual_adjustment_webhook_event.rbs +4 -14
  135. data/sig/dodopayments/models/credit_overage_charged_webhook_event.rbs +4 -14
  136. data/sig/dodopayments/models/credit_overage_reset_webhook_event.rbs +4 -14
  137. data/sig/dodopayments/models/credit_rolled_over_webhook_event.rbs +4 -14
  138. data/sig/dodopayments/models/credit_rollover_forfeited_webhook_event.rbs +4 -14
  139. data/sig/dodopayments/models/dispute_accepted_webhook_event.rbs +4 -14
  140. data/sig/dodopayments/models/dispute_cancelled_webhook_event.rbs +4 -14
  141. data/sig/dodopayments/models/dispute_challenged_webhook_event.rbs +4 -14
  142. data/sig/dodopayments/models/dispute_expired_webhook_event.rbs +4 -14
  143. data/sig/dodopayments/models/dispute_lost_webhook_event.rbs +4 -14
  144. data/sig/dodopayments/models/dispute_opened_webhook_event.rbs +4 -14
  145. data/sig/dodopayments/models/dispute_won_webhook_event.rbs +4 -14
  146. data/sig/dodopayments/models/dunning_recovered_webhook_event.rbs +4 -14
  147. data/sig/dodopayments/models/dunning_started_webhook_event.rbs +4 -14
  148. data/sig/dodopayments/models/entitlement_grant_created_webhook_event.rbs +4 -14
  149. data/sig/dodopayments/models/entitlement_grant_delivered_webhook_event.rbs +4 -14
  150. data/sig/dodopayments/models/entitlement_grant_failed_webhook_event.rbs +4 -14
  151. data/sig/dodopayments/models/entitlement_grant_revoked_webhook_event.rbs +4 -14
  152. data/sig/dodopayments/models/license_key_created_webhook_event.rbs +4 -14
  153. data/sig/dodopayments/models/payment.rbs +97 -0
  154. data/sig/dodopayments/models/payment_cancelled_webhook_event.rbs +4 -14
  155. data/sig/dodopayments/models/payment_create_params.rbs +5 -0
  156. data/sig/dodopayments/models/payment_create_response.rbs +5 -0
  157. data/sig/dodopayments/models/payment_failed_webhook_event.rbs +4 -14
  158. data/sig/dodopayments/models/payment_processing_webhook_event.rbs +4 -14
  159. data/sig/dodopayments/models/payment_succeeded_webhook_event.rbs +4 -14
  160. data/sig/dodopayments/models/price.rbs +15 -45
  161. data/sig/dodopayments/models/product_item_req.rbs +27 -3
  162. data/sig/dodopayments/models/refund_failed_webhook_event.rbs +4 -14
  163. data/sig/dodopayments/models/refund_succeeded_webhook_event.rbs +4 -14
  164. data/sig/dodopayments/models/subscription.rbs +97 -0
  165. data/sig/dodopayments/models/subscription_active_webhook_event.rbs +4 -14
  166. data/sig/dodopayments/models/subscription_cancelled_webhook_event.rbs +4 -14
  167. data/sig/dodopayments/models/subscription_create_params.rbs +5 -0
  168. data/sig/dodopayments/models/subscription_create_response.rbs +5 -0
  169. data/sig/dodopayments/models/subscription_expired_webhook_event.rbs +4 -14
  170. data/sig/dodopayments/models/subscription_failed_webhook_event.rbs +4 -14
  171. data/sig/dodopayments/models/subscription_list_response.rbs +24 -0
  172. data/sig/dodopayments/models/subscription_on_hold_webhook_event.rbs +4 -14
  173. data/sig/dodopayments/models/subscription_plan_changed_webhook_event.rbs +4 -14
  174. data/sig/dodopayments/models/subscription_preview_change_plan_response.rbs +15 -45
  175. data/sig/dodopayments/models/subscription_renewed_webhook_event.rbs +4 -14
  176. data/sig/dodopayments/models/subscription_update_payment_method_params.rbs +8 -48
  177. data/sig/dodopayments/models/subscription_updated_webhook_event.rbs +4 -14
  178. data/sig/dodopayments/models/update_subscription_plan_req.rbs +5 -0
  179. data/sig/dodopayments/models/webhook_event_type.rbs +6 -0
  180. data/sig/dodopayments/models/webhook_payload.rbs +50 -213
  181. data/sig/dodopayments/resources/checkout_sessions.rbs +2 -0
  182. data/sig/dodopayments/resources/payments.rbs +1 -0
  183. data/sig/dodopayments/resources/subscriptions.rbs +3 -0
  184. metadata +2 -2
@@ -51,11 +51,16 @@ module Dodopayments
51
51
  module LineItem
52
52
  extend Dodopayments::Internal::Type::Union
53
53
 
54
- variant -> { Dodopayments::Models::SubscriptionPreviewChangePlanResponse::ImmediateCharge::LineItem::Subscription }
54
+ discriminator :type
55
55
 
56
- variant -> { Dodopayments::Models::SubscriptionPreviewChangePlanResponse::ImmediateCharge::LineItem::Addon }
56
+ variant :subscription,
57
+ -> { Dodopayments::Models::SubscriptionPreviewChangePlanResponse::ImmediateCharge::LineItem::Subscription }
57
58
 
58
- variant -> { Dodopayments::Models::SubscriptionPreviewChangePlanResponse::ImmediateCharge::LineItem::Meter }
59
+ variant :addon,
60
+ -> { Dodopayments::Models::SubscriptionPreviewChangePlanResponse::ImmediateCharge::LineItem::Addon }
61
+
62
+ variant :meter,
63
+ -> { Dodopayments::Models::SubscriptionPreviewChangePlanResponse::ImmediateCharge::LineItem::Meter }
59
64
 
60
65
  class Subscription < Dodopayments::Internal::Type::BaseModel
61
66
  # @!attribute id
@@ -90,9 +95,8 @@ module Dodopayments
90
95
 
91
96
  # @!attribute type
92
97
  #
93
- # @return [Symbol, Dodopayments::Models::SubscriptionPreviewChangePlanResponse::ImmediateCharge::LineItem::Subscription::Type]
94
- required :type,
95
- enum: -> { Dodopayments::Models::SubscriptionPreviewChangePlanResponse::ImmediateCharge::LineItem::Subscription::Type }
98
+ # @return [Symbol, :subscription]
99
+ required :type, const: :subscription
96
100
 
97
101
  # @!attribute unit_price
98
102
  #
@@ -119,29 +123,19 @@ module Dodopayments
119
123
  # @return [Float, nil]
120
124
  optional :tax_rate, Float, nil?: true
121
125
 
122
- # @!method initialize(id:, currency:, product_id:, proration_factor:, quantity:, tax_inclusive:, type:, unit_price:, description: nil, name: nil, tax: nil, tax_rate: nil)
126
+ # @!method initialize(id:, currency:, product_id:, proration_factor:, quantity:, tax_inclusive:, unit_price:, description: nil, name: nil, tax: nil, tax_rate: nil, type: :subscription)
123
127
  # @param id [String]
124
128
  # @param currency [Symbol, Dodopayments::Models::Currency]
125
129
  # @param product_id [String]
126
130
  # @param proration_factor [Float]
127
131
  # @param quantity [Integer]
128
132
  # @param tax_inclusive [Boolean]
129
- # @param type [Symbol, Dodopayments::Models::SubscriptionPreviewChangePlanResponse::ImmediateCharge::LineItem::Subscription::Type]
130
133
  # @param unit_price [Integer]
131
134
  # @param description [String, nil]
132
135
  # @param name [String, nil]
133
136
  # @param tax [Integer, nil]
134
137
  # @param tax_rate [Float, nil]
135
-
136
- # @see Dodopayments::Models::SubscriptionPreviewChangePlanResponse::ImmediateCharge::LineItem::Subscription#type
137
- module Type
138
- extend Dodopayments::Internal::Type::Enum
139
-
140
- SUBSCRIPTION = :subscription
141
-
142
- # @!method self.values
143
- # @return [Array<Symbol>]
144
- end
138
+ # @param type [Symbol, :subscription]
145
139
  end
146
140
 
147
141
  class Addon < Dodopayments::Internal::Type::BaseModel
@@ -189,9 +183,8 @@ module Dodopayments
189
183
 
190
184
  # @!attribute type
191
185
  #
192
- # @return [Symbol, Dodopayments::Models::SubscriptionPreviewChangePlanResponse::ImmediateCharge::LineItem::Addon::Type]
193
- required :type,
194
- enum: -> { Dodopayments::Models::SubscriptionPreviewChangePlanResponse::ImmediateCharge::LineItem::Addon::Type }
186
+ # @return [Symbol, :addon]
187
+ required :type, const: :addon
195
188
 
196
189
  # @!attribute unit_price
197
190
  #
@@ -208,7 +201,7 @@ module Dodopayments
208
201
  # @return [Integer, nil]
209
202
  optional :tax, Integer, nil?: true
210
203
 
211
- # @!method initialize(id:, currency:, name:, proration_factor:, quantity:, tax_category:, tax_inclusive:, tax_rate:, type:, unit_price:, description: nil, tax: nil)
204
+ # @!method initialize(id:, currency:, name:, proration_factor:, quantity:, tax_category:, tax_inclusive:, tax_rate:, unit_price:, description: nil, tax: nil, type: :addon)
212
205
  # Some parameter documentations has been truncated, see
213
206
  # {Dodopayments::Models::SubscriptionPreviewChangePlanResponse::ImmediateCharge::LineItem::Addon}
214
207
  # for more details.
@@ -229,23 +222,13 @@ module Dodopayments
229
222
  #
230
223
  # @param tax_rate [Float]
231
224
  #
232
- # @param type [Symbol, Dodopayments::Models::SubscriptionPreviewChangePlanResponse::ImmediateCharge::LineItem::Addon::Type]
233
- #
234
225
  # @param unit_price [Integer]
235
226
  #
236
227
  # @param description [String, nil]
237
228
  #
238
229
  # @param tax [Integer, nil]
239
-
240
- # @see Dodopayments::Models::SubscriptionPreviewChangePlanResponse::ImmediateCharge::LineItem::Addon#type
241
- module Type
242
- extend Dodopayments::Internal::Type::Enum
243
-
244
- ADDON = :addon
245
-
246
- # @!method self.values
247
- # @return [Array<Symbol>]
248
- end
230
+ #
231
+ # @param type [Symbol, :addon]
249
232
  end
250
233
 
251
234
  class Meter < Dodopayments::Internal::Type::BaseModel
@@ -296,9 +279,8 @@ module Dodopayments
296
279
 
297
280
  # @!attribute type
298
281
  #
299
- # @return [Symbol, Dodopayments::Models::SubscriptionPreviewChangePlanResponse::ImmediateCharge::LineItem::Meter::Type]
300
- required :type,
301
- enum: -> { Dodopayments::Models::SubscriptionPreviewChangePlanResponse::ImmediateCharge::LineItem::Meter::Type }
282
+ # @return [Symbol, :meter]
283
+ required :type, const: :meter
302
284
 
303
285
  # @!attribute units_consumed
304
286
  #
@@ -315,7 +297,7 @@ module Dodopayments
315
297
  # @return [Integer, nil]
316
298
  optional :tax, Integer, nil?: true
317
299
 
318
- # @!method initialize(id:, chargeable_units:, currency:, free_threshold:, name:, price_per_unit:, subtotal:, tax_inclusive:, tax_rate:, type:, units_consumed:, description: nil, tax: nil)
300
+ # @!method initialize(id:, chargeable_units:, currency:, free_threshold:, name:, price_per_unit:, subtotal:, tax_inclusive:, tax_rate:, units_consumed:, description: nil, tax: nil, type: :meter)
319
301
  # @param id [String]
320
302
  # @param chargeable_units [String]
321
303
  # @param currency [Symbol, Dodopayments::Models::Currency]
@@ -325,20 +307,10 @@ module Dodopayments
325
307
  # @param subtotal [Integer]
326
308
  # @param tax_inclusive [Boolean]
327
309
  # @param tax_rate [Float]
328
- # @param type [Symbol, Dodopayments::Models::SubscriptionPreviewChangePlanResponse::ImmediateCharge::LineItem::Meter::Type]
329
310
  # @param units_consumed [String]
330
311
  # @param description [String, nil]
331
312
  # @param tax [Integer, nil]
332
-
333
- # @see Dodopayments::Models::SubscriptionPreviewChangePlanResponse::ImmediateCharge::LineItem::Meter#type
334
- module Type
335
- extend Dodopayments::Internal::Type::Enum
336
-
337
- METER = :meter
338
-
339
- # @!method self.values
340
- # @return [Array<Symbol>]
341
- end
313
+ # @param type [Symbol, :meter]
342
314
  end
343
315
 
344
316
  # @!method self.variants
@@ -24,29 +24,17 @@ module Dodopayments
24
24
  # @!attribute type
25
25
  # The event type
26
26
  #
27
- # @return [Symbol, Dodopayments::Models::SubscriptionRenewedWebhookEvent::Type]
28
- required :type, enum: -> { Dodopayments::SubscriptionRenewedWebhookEvent::Type }
27
+ # @return [Symbol, :"subscription.renewed"]
28
+ required :type, const: :"subscription.renewed"
29
29
 
30
- # @!method initialize(business_id:, data:, timestamp:, type:)
30
+ # @!method initialize(business_id:, data:, timestamp:, type: :"subscription.renewed")
31
31
  # @param business_id [String] The business identifier
32
32
  #
33
33
  # @param data [Dodopayments::Models::Subscription] Response struct representing subscription details
34
34
  #
35
35
  # @param timestamp [Time] The timestamp of when the event occurred
36
36
  #
37
- # @param type [Symbol, Dodopayments::Models::SubscriptionRenewedWebhookEvent::Type] The event type
38
-
39
- # The event type
40
- #
41
- # @see Dodopayments::Models::SubscriptionRenewedWebhookEvent#type
42
- module Type
43
- extend Dodopayments::Internal::Type::Enum
44
-
45
- SUBSCRIPTION_RENEWED = :"subscription.renewed"
46
-
47
- # @!method self.values
48
- # @return [Array<Symbol>]
49
- end
37
+ # @param type [Symbol, :"subscription.renewed"] The event type
50
38
  end
51
39
  end
52
40
  end
@@ -25,34 +25,26 @@ module Dodopayments
25
25
  module Body
26
26
  extend Dodopayments::Internal::Type::Union
27
27
 
28
- variant -> { Dodopayments::SubscriptionUpdatePaymentMethodParams::Body::New }
28
+ discriminator :type
29
29
 
30
- variant -> { Dodopayments::SubscriptionUpdatePaymentMethodParams::Body::Existing }
30
+ variant :new, -> { Dodopayments::SubscriptionUpdatePaymentMethodParams::Body::New }
31
+
32
+ variant :existing, -> { Dodopayments::SubscriptionUpdatePaymentMethodParams::Body::Existing }
31
33
 
32
34
  class New < Dodopayments::Internal::Type::BaseModel
33
35
  # @!attribute type
34
36
  #
35
- # @return [Symbol, Dodopayments::Models::SubscriptionUpdatePaymentMethodParams::Body::New::Type]
36
- required :type, enum: -> { Dodopayments::SubscriptionUpdatePaymentMethodParams::Body::New::Type }
37
+ # @return [Symbol, :new]
38
+ required :type, const: :new
37
39
 
38
40
  # @!attribute return_url
39
41
  #
40
42
  # @return [String, nil]
41
43
  optional :return_url, String, nil?: true
42
44
 
43
- # @!method initialize(type:, return_url: nil)
44
- # @param type [Symbol, Dodopayments::Models::SubscriptionUpdatePaymentMethodParams::Body::New::Type]
45
+ # @!method initialize(return_url: nil, type: :new)
45
46
  # @param return_url [String, nil]
46
-
47
- # @see Dodopayments::Models::SubscriptionUpdatePaymentMethodParams::Body::New#type
48
- module Type
49
- extend Dodopayments::Internal::Type::Enum
50
-
51
- NEW = :new
52
-
53
- # @!method self.values
54
- # @return [Array<Symbol>]
55
- end
47
+ # @param type [Symbol, :new]
56
48
  end
57
49
 
58
50
  class Existing < Dodopayments::Internal::Type::BaseModel
@@ -63,22 +55,12 @@ module Dodopayments
63
55
 
64
56
  # @!attribute type
65
57
  #
66
- # @return [Symbol, Dodopayments::Models::SubscriptionUpdatePaymentMethodParams::Body::Existing::Type]
67
- required :type, enum: -> { Dodopayments::SubscriptionUpdatePaymentMethodParams::Body::Existing::Type }
58
+ # @return [Symbol, :existing]
59
+ required :type, const: :existing
68
60
 
69
- # @!method initialize(payment_method_id:, type:)
61
+ # @!method initialize(payment_method_id:, type: :existing)
70
62
  # @param payment_method_id [String]
71
- # @param type [Symbol, Dodopayments::Models::SubscriptionUpdatePaymentMethodParams::Body::Existing::Type]
72
-
73
- # @see Dodopayments::Models::SubscriptionUpdatePaymentMethodParams::Body::Existing#type
74
- module Type
75
- extend Dodopayments::Internal::Type::Enum
76
-
77
- EXISTING = :existing
78
-
79
- # @!method self.values
80
- # @return [Array<Symbol>]
81
- end
63
+ # @param type [Symbol, :existing]
82
64
  end
83
65
 
84
66
  # @!method self.variants
@@ -24,29 +24,17 @@ module Dodopayments
24
24
  # @!attribute type
25
25
  # The event type
26
26
  #
27
- # @return [Symbol, Dodopayments::Models::SubscriptionUpdatedWebhookEvent::Type]
28
- required :type, enum: -> { Dodopayments::SubscriptionUpdatedWebhookEvent::Type }
27
+ # @return [Symbol, :"subscription.updated"]
28
+ required :type, const: :"subscription.updated"
29
29
 
30
- # @!method initialize(business_id:, data:, timestamp:, type:)
30
+ # @!method initialize(business_id:, data:, timestamp:, type: :"subscription.updated")
31
31
  # @param business_id [String] The business identifier
32
32
  #
33
33
  # @param data [Dodopayments::Models::Subscription] Response struct representing subscription details
34
34
  #
35
35
  # @param timestamp [Time] The timestamp of when the event occurred
36
36
  #
37
- # @param type [Symbol, Dodopayments::Models::SubscriptionUpdatedWebhookEvent::Type] The event type
38
-
39
- # The event type
40
- #
41
- # @see Dodopayments::Models::SubscriptionUpdatedWebhookEvent#type
42
- module Type
43
- extend Dodopayments::Internal::Type::Enum
44
-
45
- SUBSCRIPTION_UPDATED = :"subscription.updated"
46
-
47
- # @!method self.values
48
- # @return [Array<Symbol>]
49
- end
37
+ # @param type [Symbol, :"subscription.updated"] The event type
50
38
  end
51
39
  end
52
40
  end
@@ -5,83 +5,85 @@ module Dodopayments
5
5
  module UnsafeUnwrapWebhookEvent
6
6
  extend Dodopayments::Internal::Type::Union
7
7
 
8
- variant -> { Dodopayments::AbandonedCheckoutDetectedWebhookEvent }
8
+ discriminator :type
9
9
 
10
- variant -> { Dodopayments::AbandonedCheckoutRecoveredWebhookEvent }
10
+ variant :"abandoned_checkout.detected", -> { Dodopayments::AbandonedCheckoutDetectedWebhookEvent }
11
11
 
12
- variant -> { Dodopayments::CreditAddedWebhookEvent }
12
+ variant :"abandoned_checkout.recovered", -> { Dodopayments::AbandonedCheckoutRecoveredWebhookEvent }
13
13
 
14
- variant -> { Dodopayments::CreditBalanceLowWebhookEvent }
14
+ variant :"credit.added", -> { Dodopayments::CreditAddedWebhookEvent }
15
15
 
16
- variant -> { Dodopayments::CreditDeductedWebhookEvent }
16
+ variant :"credit.balance_low", -> { Dodopayments::CreditBalanceLowWebhookEvent }
17
17
 
18
- variant -> { Dodopayments::CreditExpiredWebhookEvent }
18
+ variant :"credit.deducted", -> { Dodopayments::CreditDeductedWebhookEvent }
19
19
 
20
- variant -> { Dodopayments::CreditManualAdjustmentWebhookEvent }
20
+ variant :"credit.expired", -> { Dodopayments::CreditExpiredWebhookEvent }
21
21
 
22
- variant -> { Dodopayments::CreditOverageChargedWebhookEvent }
22
+ variant :"credit.manual_adjustment", -> { Dodopayments::CreditManualAdjustmentWebhookEvent }
23
23
 
24
- variant -> { Dodopayments::CreditOverageResetWebhookEvent }
24
+ variant :"credit.overage_charged", -> { Dodopayments::CreditOverageChargedWebhookEvent }
25
25
 
26
- variant -> { Dodopayments::CreditRolledOverWebhookEvent }
26
+ variant :"credit.overage_reset", -> { Dodopayments::CreditOverageResetWebhookEvent }
27
27
 
28
- variant -> { Dodopayments::CreditRolloverForfeitedWebhookEvent }
28
+ variant :"credit.rolled_over", -> { Dodopayments::CreditRolledOverWebhookEvent }
29
29
 
30
- variant -> { Dodopayments::DisputeAcceptedWebhookEvent }
30
+ variant :"credit.rollover_forfeited", -> { Dodopayments::CreditRolloverForfeitedWebhookEvent }
31
31
 
32
- variant -> { Dodopayments::DisputeCancelledWebhookEvent }
32
+ variant :"dispute.accepted", -> { Dodopayments::DisputeAcceptedWebhookEvent }
33
33
 
34
- variant -> { Dodopayments::DisputeChallengedWebhookEvent }
34
+ variant :"dispute.cancelled", -> { Dodopayments::DisputeCancelledWebhookEvent }
35
35
 
36
- variant -> { Dodopayments::DisputeExpiredWebhookEvent }
36
+ variant :"dispute.challenged", -> { Dodopayments::DisputeChallengedWebhookEvent }
37
37
 
38
- variant -> { Dodopayments::DisputeLostWebhookEvent }
38
+ variant :"dispute.expired", -> { Dodopayments::DisputeExpiredWebhookEvent }
39
39
 
40
- variant -> { Dodopayments::DisputeOpenedWebhookEvent }
40
+ variant :"dispute.lost", -> { Dodopayments::DisputeLostWebhookEvent }
41
41
 
42
- variant -> { Dodopayments::DisputeWonWebhookEvent }
42
+ variant :"dispute.opened", -> { Dodopayments::DisputeOpenedWebhookEvent }
43
43
 
44
- variant -> { Dodopayments::DunningRecoveredWebhookEvent }
44
+ variant :"dispute.won", -> { Dodopayments::DisputeWonWebhookEvent }
45
45
 
46
- variant -> { Dodopayments::DunningStartedWebhookEvent }
46
+ variant :"dunning.recovered", -> { Dodopayments::DunningRecoveredWebhookEvent }
47
47
 
48
- variant -> { Dodopayments::EntitlementGrantCreatedWebhookEvent }
48
+ variant :"dunning.started", -> { Dodopayments::DunningStartedWebhookEvent }
49
49
 
50
- variant -> { Dodopayments::EntitlementGrantDeliveredWebhookEvent }
50
+ variant :"entitlement_grant.created", -> { Dodopayments::EntitlementGrantCreatedWebhookEvent }
51
51
 
52
- variant -> { Dodopayments::EntitlementGrantFailedWebhookEvent }
52
+ variant :"entitlement_grant.delivered", -> { Dodopayments::EntitlementGrantDeliveredWebhookEvent }
53
53
 
54
- variant -> { Dodopayments::EntitlementGrantRevokedWebhookEvent }
54
+ variant :"entitlement_grant.failed", -> { Dodopayments::EntitlementGrantFailedWebhookEvent }
55
55
 
56
- variant -> { Dodopayments::LicenseKeyCreatedWebhookEvent }
56
+ variant :"entitlement_grant.revoked", -> { Dodopayments::EntitlementGrantRevokedWebhookEvent }
57
57
 
58
- variant -> { Dodopayments::PaymentCancelledWebhookEvent }
58
+ variant :"license_key.created", -> { Dodopayments::LicenseKeyCreatedWebhookEvent }
59
59
 
60
- variant -> { Dodopayments::PaymentFailedWebhookEvent }
60
+ variant :"payment.cancelled", -> { Dodopayments::PaymentCancelledWebhookEvent }
61
61
 
62
- variant -> { Dodopayments::PaymentProcessingWebhookEvent }
62
+ variant :"payment.failed", -> { Dodopayments::PaymentFailedWebhookEvent }
63
63
 
64
- variant -> { Dodopayments::PaymentSucceededWebhookEvent }
64
+ variant :"payment.processing", -> { Dodopayments::PaymentProcessingWebhookEvent }
65
65
 
66
- variant -> { Dodopayments::RefundFailedWebhookEvent }
66
+ variant :"payment.succeeded", -> { Dodopayments::PaymentSucceededWebhookEvent }
67
67
 
68
- variant -> { Dodopayments::RefundSucceededWebhookEvent }
68
+ variant :"refund.failed", -> { Dodopayments::RefundFailedWebhookEvent }
69
69
 
70
- variant -> { Dodopayments::SubscriptionActiveWebhookEvent }
70
+ variant :"refund.succeeded", -> { Dodopayments::RefundSucceededWebhookEvent }
71
71
 
72
- variant -> { Dodopayments::SubscriptionCancelledWebhookEvent }
72
+ variant :"subscription.active", -> { Dodopayments::SubscriptionActiveWebhookEvent }
73
73
 
74
- variant -> { Dodopayments::SubscriptionExpiredWebhookEvent }
74
+ variant :"subscription.cancelled", -> { Dodopayments::SubscriptionCancelledWebhookEvent }
75
75
 
76
- variant -> { Dodopayments::SubscriptionFailedWebhookEvent }
76
+ variant :"subscription.expired", -> { Dodopayments::SubscriptionExpiredWebhookEvent }
77
77
 
78
- variant -> { Dodopayments::SubscriptionOnHoldWebhookEvent }
78
+ variant :"subscription.failed", -> { Dodopayments::SubscriptionFailedWebhookEvent }
79
79
 
80
- variant -> { Dodopayments::SubscriptionPlanChangedWebhookEvent }
80
+ variant :"subscription.on_hold", -> { Dodopayments::SubscriptionOnHoldWebhookEvent }
81
81
 
82
- variant -> { Dodopayments::SubscriptionRenewedWebhookEvent }
82
+ variant :"subscription.plan_changed", -> { Dodopayments::SubscriptionPlanChangedWebhookEvent }
83
83
 
84
- variant -> { Dodopayments::SubscriptionUpdatedWebhookEvent }
84
+ variant :"subscription.renewed", -> { Dodopayments::SubscriptionRenewedWebhookEvent }
85
+
86
+ variant :"subscription.updated", -> { Dodopayments::SubscriptionUpdatedWebhookEvent }
85
87
 
86
88
  # @!method self.variants
87
89
  # @return [Array(Dodopayments::Models::AbandonedCheckoutDetectedWebhookEvent, Dodopayments::Models::AbandonedCheckoutRecoveredWebhookEvent, Dodopayments::Models::CreditAddedWebhookEvent, Dodopayments::Models::CreditBalanceLowWebhookEvent, Dodopayments::Models::CreditDeductedWebhookEvent, Dodopayments::Models::CreditExpiredWebhookEvent, Dodopayments::Models::CreditManualAdjustmentWebhookEvent, Dodopayments::Models::CreditOverageChargedWebhookEvent, Dodopayments::Models::CreditOverageResetWebhookEvent, Dodopayments::Models::CreditRolledOverWebhookEvent, Dodopayments::Models::CreditRolloverForfeitedWebhookEvent, Dodopayments::Models::DisputeAcceptedWebhookEvent, Dodopayments::Models::DisputeCancelledWebhookEvent, Dodopayments::Models::DisputeChallengedWebhookEvent, Dodopayments::Models::DisputeExpiredWebhookEvent, Dodopayments::Models::DisputeLostWebhookEvent, Dodopayments::Models::DisputeOpenedWebhookEvent, Dodopayments::Models::DisputeWonWebhookEvent, Dodopayments::Models::DunningRecoveredWebhookEvent, Dodopayments::Models::DunningStartedWebhookEvent, Dodopayments::Models::EntitlementGrantCreatedWebhookEvent, Dodopayments::Models::EntitlementGrantDeliveredWebhookEvent, Dodopayments::Models::EntitlementGrantFailedWebhookEvent, Dodopayments::Models::EntitlementGrantRevokedWebhookEvent, Dodopayments::Models::LicenseKeyCreatedWebhookEvent, Dodopayments::Models::PaymentCancelledWebhookEvent, Dodopayments::Models::PaymentFailedWebhookEvent, Dodopayments::Models::PaymentProcessingWebhookEvent, Dodopayments::Models::PaymentSucceededWebhookEvent, Dodopayments::Models::RefundFailedWebhookEvent, Dodopayments::Models::RefundSucceededWebhookEvent, Dodopayments::Models::SubscriptionActiveWebhookEvent, Dodopayments::Models::SubscriptionCancelledWebhookEvent, Dodopayments::Models::SubscriptionExpiredWebhookEvent, Dodopayments::Models::SubscriptionFailedWebhookEvent, Dodopayments::Models::SubscriptionOnHoldWebhookEvent, Dodopayments::Models::SubscriptionPlanChangedWebhookEvent, Dodopayments::Models::SubscriptionRenewedWebhookEvent, Dodopayments::Models::SubscriptionUpdatedWebhookEvent)]
@@ -5,83 +5,85 @@ module Dodopayments
5
5
  module UnwrapWebhookEvent
6
6
  extend Dodopayments::Internal::Type::Union
7
7
 
8
- variant -> { Dodopayments::AbandonedCheckoutDetectedWebhookEvent }
8
+ discriminator :type
9
9
 
10
- variant -> { Dodopayments::AbandonedCheckoutRecoveredWebhookEvent }
10
+ variant :"abandoned_checkout.detected", -> { Dodopayments::AbandonedCheckoutDetectedWebhookEvent }
11
11
 
12
- variant -> { Dodopayments::CreditAddedWebhookEvent }
12
+ variant :"abandoned_checkout.recovered", -> { Dodopayments::AbandonedCheckoutRecoveredWebhookEvent }
13
13
 
14
- variant -> { Dodopayments::CreditBalanceLowWebhookEvent }
14
+ variant :"credit.added", -> { Dodopayments::CreditAddedWebhookEvent }
15
15
 
16
- variant -> { Dodopayments::CreditDeductedWebhookEvent }
16
+ variant :"credit.balance_low", -> { Dodopayments::CreditBalanceLowWebhookEvent }
17
17
 
18
- variant -> { Dodopayments::CreditExpiredWebhookEvent }
18
+ variant :"credit.deducted", -> { Dodopayments::CreditDeductedWebhookEvent }
19
19
 
20
- variant -> { Dodopayments::CreditManualAdjustmentWebhookEvent }
20
+ variant :"credit.expired", -> { Dodopayments::CreditExpiredWebhookEvent }
21
21
 
22
- variant -> { Dodopayments::CreditOverageChargedWebhookEvent }
22
+ variant :"credit.manual_adjustment", -> { Dodopayments::CreditManualAdjustmentWebhookEvent }
23
23
 
24
- variant -> { Dodopayments::CreditOverageResetWebhookEvent }
24
+ variant :"credit.overage_charged", -> { Dodopayments::CreditOverageChargedWebhookEvent }
25
25
 
26
- variant -> { Dodopayments::CreditRolledOverWebhookEvent }
26
+ variant :"credit.overage_reset", -> { Dodopayments::CreditOverageResetWebhookEvent }
27
27
 
28
- variant -> { Dodopayments::CreditRolloverForfeitedWebhookEvent }
28
+ variant :"credit.rolled_over", -> { Dodopayments::CreditRolledOverWebhookEvent }
29
29
 
30
- variant -> { Dodopayments::DisputeAcceptedWebhookEvent }
30
+ variant :"credit.rollover_forfeited", -> { Dodopayments::CreditRolloverForfeitedWebhookEvent }
31
31
 
32
- variant -> { Dodopayments::DisputeCancelledWebhookEvent }
32
+ variant :"dispute.accepted", -> { Dodopayments::DisputeAcceptedWebhookEvent }
33
33
 
34
- variant -> { Dodopayments::DisputeChallengedWebhookEvent }
34
+ variant :"dispute.cancelled", -> { Dodopayments::DisputeCancelledWebhookEvent }
35
35
 
36
- variant -> { Dodopayments::DisputeExpiredWebhookEvent }
36
+ variant :"dispute.challenged", -> { Dodopayments::DisputeChallengedWebhookEvent }
37
37
 
38
- variant -> { Dodopayments::DisputeLostWebhookEvent }
38
+ variant :"dispute.expired", -> { Dodopayments::DisputeExpiredWebhookEvent }
39
39
 
40
- variant -> { Dodopayments::DisputeOpenedWebhookEvent }
40
+ variant :"dispute.lost", -> { Dodopayments::DisputeLostWebhookEvent }
41
41
 
42
- variant -> { Dodopayments::DisputeWonWebhookEvent }
42
+ variant :"dispute.opened", -> { Dodopayments::DisputeOpenedWebhookEvent }
43
43
 
44
- variant -> { Dodopayments::DunningRecoveredWebhookEvent }
44
+ variant :"dispute.won", -> { Dodopayments::DisputeWonWebhookEvent }
45
45
 
46
- variant -> { Dodopayments::DunningStartedWebhookEvent }
46
+ variant :"dunning.recovered", -> { Dodopayments::DunningRecoveredWebhookEvent }
47
47
 
48
- variant -> { Dodopayments::EntitlementGrantCreatedWebhookEvent }
48
+ variant :"dunning.started", -> { Dodopayments::DunningStartedWebhookEvent }
49
49
 
50
- variant -> { Dodopayments::EntitlementGrantDeliveredWebhookEvent }
50
+ variant :"entitlement_grant.created", -> { Dodopayments::EntitlementGrantCreatedWebhookEvent }
51
51
 
52
- variant -> { Dodopayments::EntitlementGrantFailedWebhookEvent }
52
+ variant :"entitlement_grant.delivered", -> { Dodopayments::EntitlementGrantDeliveredWebhookEvent }
53
53
 
54
- variant -> { Dodopayments::EntitlementGrantRevokedWebhookEvent }
54
+ variant :"entitlement_grant.failed", -> { Dodopayments::EntitlementGrantFailedWebhookEvent }
55
55
 
56
- variant -> { Dodopayments::LicenseKeyCreatedWebhookEvent }
56
+ variant :"entitlement_grant.revoked", -> { Dodopayments::EntitlementGrantRevokedWebhookEvent }
57
57
 
58
- variant -> { Dodopayments::PaymentCancelledWebhookEvent }
58
+ variant :"license_key.created", -> { Dodopayments::LicenseKeyCreatedWebhookEvent }
59
59
 
60
- variant -> { Dodopayments::PaymentFailedWebhookEvent }
60
+ variant :"payment.cancelled", -> { Dodopayments::PaymentCancelledWebhookEvent }
61
61
 
62
- variant -> { Dodopayments::PaymentProcessingWebhookEvent }
62
+ variant :"payment.failed", -> { Dodopayments::PaymentFailedWebhookEvent }
63
63
 
64
- variant -> { Dodopayments::PaymentSucceededWebhookEvent }
64
+ variant :"payment.processing", -> { Dodopayments::PaymentProcessingWebhookEvent }
65
65
 
66
- variant -> { Dodopayments::RefundFailedWebhookEvent }
66
+ variant :"payment.succeeded", -> { Dodopayments::PaymentSucceededWebhookEvent }
67
67
 
68
- variant -> { Dodopayments::RefundSucceededWebhookEvent }
68
+ variant :"refund.failed", -> { Dodopayments::RefundFailedWebhookEvent }
69
69
 
70
- variant -> { Dodopayments::SubscriptionActiveWebhookEvent }
70
+ variant :"refund.succeeded", -> { Dodopayments::RefundSucceededWebhookEvent }
71
71
 
72
- variant -> { Dodopayments::SubscriptionCancelledWebhookEvent }
72
+ variant :"subscription.active", -> { Dodopayments::SubscriptionActiveWebhookEvent }
73
73
 
74
- variant -> { Dodopayments::SubscriptionExpiredWebhookEvent }
74
+ variant :"subscription.cancelled", -> { Dodopayments::SubscriptionCancelledWebhookEvent }
75
75
 
76
- variant -> { Dodopayments::SubscriptionFailedWebhookEvent }
76
+ variant :"subscription.expired", -> { Dodopayments::SubscriptionExpiredWebhookEvent }
77
77
 
78
- variant -> { Dodopayments::SubscriptionOnHoldWebhookEvent }
78
+ variant :"subscription.failed", -> { Dodopayments::SubscriptionFailedWebhookEvent }
79
79
 
80
- variant -> { Dodopayments::SubscriptionPlanChangedWebhookEvent }
80
+ variant :"subscription.on_hold", -> { Dodopayments::SubscriptionOnHoldWebhookEvent }
81
81
 
82
- variant -> { Dodopayments::SubscriptionRenewedWebhookEvent }
82
+ variant :"subscription.plan_changed", -> { Dodopayments::SubscriptionPlanChangedWebhookEvent }
83
83
 
84
- variant -> { Dodopayments::SubscriptionUpdatedWebhookEvent }
84
+ variant :"subscription.renewed", -> { Dodopayments::SubscriptionRenewedWebhookEvent }
85
+
86
+ variant :"subscription.updated", -> { Dodopayments::SubscriptionUpdatedWebhookEvent }
85
87
 
86
88
  # @!method self.variants
87
89
  # @return [Array(Dodopayments::Models::AbandonedCheckoutDetectedWebhookEvent, Dodopayments::Models::AbandonedCheckoutRecoveredWebhookEvent, Dodopayments::Models::CreditAddedWebhookEvent, Dodopayments::Models::CreditBalanceLowWebhookEvent, Dodopayments::Models::CreditDeductedWebhookEvent, Dodopayments::Models::CreditExpiredWebhookEvent, Dodopayments::Models::CreditManualAdjustmentWebhookEvent, Dodopayments::Models::CreditOverageChargedWebhookEvent, Dodopayments::Models::CreditOverageResetWebhookEvent, Dodopayments::Models::CreditRolledOverWebhookEvent, Dodopayments::Models::CreditRolloverForfeitedWebhookEvent, Dodopayments::Models::DisputeAcceptedWebhookEvent, Dodopayments::Models::DisputeCancelledWebhookEvent, Dodopayments::Models::DisputeChallengedWebhookEvent, Dodopayments::Models::DisputeExpiredWebhookEvent, Dodopayments::Models::DisputeLostWebhookEvent, Dodopayments::Models::DisputeOpenedWebhookEvent, Dodopayments::Models::DisputeWonWebhookEvent, Dodopayments::Models::DunningRecoveredWebhookEvent, Dodopayments::Models::DunningStartedWebhookEvent, Dodopayments::Models::EntitlementGrantCreatedWebhookEvent, Dodopayments::Models::EntitlementGrantDeliveredWebhookEvent, Dodopayments::Models::EntitlementGrantFailedWebhookEvent, Dodopayments::Models::EntitlementGrantRevokedWebhookEvent, Dodopayments::Models::LicenseKeyCreatedWebhookEvent, Dodopayments::Models::PaymentCancelledWebhookEvent, Dodopayments::Models::PaymentFailedWebhookEvent, Dodopayments::Models::PaymentProcessingWebhookEvent, Dodopayments::Models::PaymentSucceededWebhookEvent, Dodopayments::Models::RefundFailedWebhookEvent, Dodopayments::Models::RefundSucceededWebhookEvent, Dodopayments::Models::SubscriptionActiveWebhookEvent, Dodopayments::Models::SubscriptionCancelledWebhookEvent, Dodopayments::Models::SubscriptionExpiredWebhookEvent, Dodopayments::Models::SubscriptionFailedWebhookEvent, Dodopayments::Models::SubscriptionOnHoldWebhookEvent, Dodopayments::Models::SubscriptionPlanChangedWebhookEvent, Dodopayments::Models::SubscriptionRenewedWebhookEvent, Dodopayments::Models::SubscriptionUpdatedWebhookEvent)]
@@ -37,14 +37,23 @@ module Dodopayments
37
37
  optional :addons, -> { Dodopayments::Internal::Type::ArrayOf[Dodopayments::AttachAddon] }, nil?: true
38
38
 
39
39
  # @!attribute discount_code
40
- # Optional discount code to apply to the new plan. If provided, validates and
41
- # applies the discount to the plan change. If not provided and the subscription
42
- # has an existing discount with `preserve_on_plan_change=true`, the existing
43
- # discount will be preserved (if applicable to the new product).
40
+ # @deprecated Use `discount_id` instead.
41
+ #
42
+ # DEPRECATED: Use discount_codes instead. Cannot be used together with
43
+ # discount_codes.
44
44
  #
45
45
  # @return [String, nil]
46
46
  optional :discount_code, String, nil?: true
47
47
 
48
+ # @!attribute discount_codes
49
+ # Stacked discount codes to apply to the new plan. Max 20. Cannot be used together
50
+ # with discount_code. If provided, replaces any existing discount codes. Empty
51
+ # array removes all discounts. If not provided (None), existing discounts with
52
+ # preserve_on_plan_change=true are preserved.
53
+ #
54
+ # @return [Array<String>, nil]
55
+ optional :discount_codes, Dodopayments::Internal::Type::ArrayOf[String], nil?: true
56
+
48
57
  # @!attribute effective_at
49
58
  # When to apply the plan change.
50
59
  #
@@ -75,7 +84,7 @@ module Dodopayments
75
84
  enum: -> { Dodopayments::UpdateSubscriptionPlanReq::OnPaymentFailure },
76
85
  nil?: true
77
86
 
78
- # @!method initialize(product_id:, proration_billing_mode:, quantity:, adaptive_currency_fees_inclusive: nil, addons: nil, discount_code: nil, effective_at: nil, metadata: nil, on_payment_failure: nil)
87
+ # @!method initialize(product_id:, proration_billing_mode:, quantity:, adaptive_currency_fees_inclusive: nil, addons: nil, discount_code: nil, discount_codes: nil, effective_at: nil, metadata: nil, on_payment_failure: nil)
79
88
  # Some parameter documentations has been truncated, see
80
89
  # {Dodopayments::Models::UpdateSubscriptionPlanReq} for more details.
81
90
  #
@@ -89,7 +98,9 @@ module Dodopayments
89
98
  #
90
99
  # @param addons [Array<Dodopayments::Models::AttachAddon>, nil] Addons for the new plan.
91
100
  #
92
- # @param discount_code [String, nil] Optional discount code to apply to the new plan.
101
+ # @param discount_code [String, nil] DEPRECATED: Use discount_codes instead. Cannot be used together with discount_co
102
+ #
103
+ # @param discount_codes [Array<String>, nil] Stacked discount codes to apply to the new plan. Max 20.
93
104
  #
94
105
  # @param effective_at [Symbol, Dodopayments::Models::UpdateSubscriptionPlanReq::EffectiveAt] When to apply the plan change.
95
106
  #
@@ -23,6 +23,9 @@ module Dodopayments
23
23
  SUBSCRIPTION_RENEWED = :"subscription.renewed"
24
24
  SUBSCRIPTION_ON_HOLD = :"subscription.on_hold"
25
25
  SUBSCRIPTION_CANCELLED = :"subscription.cancelled"
26
+ SUBSCRIPTION_CANCELLATION_SCHEDULED = :"subscription.cancellation_scheduled"
27
+ SUBSCRIPTION_TRIAL_ENDING = :"subscription.trial_ending"
28
+ SUBSCRIPTION_UPCOMING_RENEWAL = :"subscription.upcoming_renewal"
26
29
  SUBSCRIPTION_FAILED = :"subscription.failed"
27
30
  SUBSCRIPTION_EXPIRED = :"subscription.expired"
28
31
  SUBSCRIPTION_PLAN_CHANGED = :"subscription.plan_changed"