dodopayments 2.9.0 → 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 (219) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +23 -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/digital_product_delivery.rb +14 -7
  19. data/lib/dodopayments/models/digital_product_delivery_file.rb +12 -5
  20. data/lib/dodopayments/models/dispute_accepted_webhook_event.rb +4 -16
  21. data/lib/dodopayments/models/dispute_cancelled_webhook_event.rb +4 -16
  22. data/lib/dodopayments/models/dispute_challenged_webhook_event.rb +4 -16
  23. data/lib/dodopayments/models/dispute_expired_webhook_event.rb +4 -16
  24. data/lib/dodopayments/models/dispute_lost_webhook_event.rb +4 -16
  25. data/lib/dodopayments/models/dispute_opened_webhook_event.rb +4 -16
  26. data/lib/dodopayments/models/dispute_won_webhook_event.rb +4 -16
  27. data/lib/dodopayments/models/dunning_recovered_webhook_event.rb +4 -16
  28. data/lib/dodopayments/models/dunning_started_webhook_event.rb +4 -16
  29. data/lib/dodopayments/models/entitlement.rb +31 -20
  30. data/lib/dodopayments/models/entitlement_create_params.rb +3 -3
  31. data/lib/dodopayments/models/entitlement_grant_created_webhook_event.rb +10 -17
  32. data/lib/dodopayments/models/entitlement_grant_delivered_webhook_event.rb +10 -17
  33. data/lib/dodopayments/models/entitlement_grant_failed_webhook_event.rb +10 -17
  34. data/lib/dodopayments/models/entitlement_grant_revoked_webhook_event.rb +10 -17
  35. data/lib/dodopayments/models/entitlement_update_params.rb +3 -3
  36. data/lib/dodopayments/models/entitlements/entitlement_grant.rb +50 -32
  37. data/lib/dodopayments/models/entitlements/file_upload_response.rb +3 -3
  38. data/lib/dodopayments/models/entitlements/license_key_grant.rb +14 -9
  39. data/lib/dodopayments/models/integration_config.rb +70 -27
  40. data/lib/dodopayments/models/integration_config_response.rb +88 -48
  41. data/lib/dodopayments/models/license_key_created_webhook_event.rb +4 -16
  42. data/lib/dodopayments/models/payment.rb +153 -3
  43. data/lib/dodopayments/models/payment_cancelled_webhook_event.rb +4 -16
  44. data/lib/dodopayments/models/payment_create_params.rb +15 -3
  45. data/lib/dodopayments/models/payment_create_response.rb +14 -3
  46. data/lib/dodopayments/models/payment_failed_webhook_event.rb +4 -16
  47. data/lib/dodopayments/models/payment_processing_webhook_event.rb +4 -16
  48. data/lib/dodopayments/models/payment_succeeded_webhook_event.rb +4 -16
  49. data/lib/dodopayments/models/payout_list_response.rb +6 -3
  50. data/lib/dodopayments/models/price.rb +20 -48
  51. data/lib/dodopayments/models/product.rb +6 -8
  52. data/lib/dodopayments/models/product_create_params.rb +3 -3
  53. data/lib/dodopayments/models/product_entitlement_summary.rb +5 -5
  54. data/lib/dodopayments/models/product_item_req.rb +42 -1
  55. data/lib/dodopayments/models/product_update_params.rb +3 -3
  56. data/lib/dodopayments/models/refund_failed_webhook_event.rb +4 -16
  57. data/lib/dodopayments/models/refund_succeeded_webhook_event.rb +4 -16
  58. data/lib/dodopayments/models/subscription.rb +153 -5
  59. data/lib/dodopayments/models/subscription_active_webhook_event.rb +4 -16
  60. data/lib/dodopayments/models/subscription_cancelled_webhook_event.rb +4 -16
  61. data/lib/dodopayments/models/subscription_create_params.rb +15 -3
  62. data/lib/dodopayments/models/subscription_create_response.rb +14 -3
  63. data/lib/dodopayments/models/subscription_expired_webhook_event.rb +4 -16
  64. data/lib/dodopayments/models/subscription_failed_webhook_event.rb +4 -16
  65. data/lib/dodopayments/models/subscription_list_response.rb +36 -5
  66. data/lib/dodopayments/models/subscription_on_hold_webhook_event.rb +4 -16
  67. data/lib/dodopayments/models/subscription_plan_changed_webhook_event.rb +4 -16
  68. data/lib/dodopayments/models/subscription_preview_change_plan_response.rb +21 -49
  69. data/lib/dodopayments/models/subscription_renewed_webhook_event.rb +4 -16
  70. data/lib/dodopayments/models/subscription_update_payment_method_params.rb +12 -30
  71. data/lib/dodopayments/models/subscription_updated_webhook_event.rb +4 -16
  72. data/lib/dodopayments/models/unsafe_unwrap_webhook_event.rb +41 -39
  73. data/lib/dodopayments/models/unwrap_webhook_event.rb +41 -39
  74. data/lib/dodopayments/models/update_subscription_plan_req.rb +17 -6
  75. data/lib/dodopayments/models/webhook_event_type.rb +3 -0
  76. data/lib/dodopayments/models/webhook_payload.rb +57 -143
  77. data/lib/dodopayments/resources/checkout_sessions.rb +8 -4
  78. data/lib/dodopayments/resources/entitlements/files.rb +3 -10
  79. data/lib/dodopayments/resources/entitlements/grants.rb +2 -4
  80. data/lib/dodopayments/resources/entitlements.rb +2 -2
  81. data/lib/dodopayments/resources/payments.rb +4 -2
  82. data/lib/dodopayments/resources/subscriptions.rb +12 -6
  83. data/lib/dodopayments/version.rb +1 -1
  84. data/rbi/dodopayments/models/abandoned_checkout_detected_webhook_event.rbi +4 -40
  85. data/rbi/dodopayments/models/abandoned_checkout_recovered_webhook_event.rbi +4 -40
  86. data/rbi/dodopayments/models/checkout_session_request.rbi +14 -0
  87. data/rbi/dodopayments/models/credit_added_webhook_event.rbi +4 -29
  88. data/rbi/dodopayments/models/credit_balance_low_webhook_event.rbi +4 -33
  89. data/rbi/dodopayments/models/credit_deducted_webhook_event.rbi +4 -33
  90. data/rbi/dodopayments/models/credit_expired_webhook_event.rbi +4 -33
  91. data/rbi/dodopayments/models/credit_manual_adjustment_webhook_event.rbi +4 -39
  92. data/rbi/dodopayments/models/credit_overage_charged_webhook_event.rbi +4 -36
  93. data/rbi/dodopayments/models/credit_overage_reset_webhook_event.rbi +4 -36
  94. data/rbi/dodopayments/models/credit_rolled_over_webhook_event.rbi +4 -33
  95. data/rbi/dodopayments/models/credit_rollover_forfeited_webhook_event.rbi +4 -40
  96. data/rbi/dodopayments/models/digital_product_delivery.rbi +15 -5
  97. data/rbi/dodopayments/models/digital_product_delivery_file.rbi +11 -0
  98. data/rbi/dodopayments/models/dispute_accepted_webhook_event.rbi +4 -33
  99. data/rbi/dodopayments/models/dispute_cancelled_webhook_event.rbi +4 -33
  100. data/rbi/dodopayments/models/dispute_challenged_webhook_event.rbi +4 -34
  101. data/rbi/dodopayments/models/dispute_expired_webhook_event.rbi +4 -33
  102. data/rbi/dodopayments/models/dispute_lost_webhook_event.rbi +4 -29
  103. data/rbi/dodopayments/models/dispute_opened_webhook_event.rbi +4 -33
  104. data/rbi/dodopayments/models/dispute_won_webhook_event.rbi +4 -29
  105. data/rbi/dodopayments/models/dunning_recovered_webhook_event.rbi +4 -33
  106. data/rbi/dodopayments/models/dunning_started_webhook_event.rbi +4 -33
  107. data/rbi/dodopayments/models/entitlement.rbi +35 -20
  108. data/rbi/dodopayments/models/entitlement_create_params.rbi +8 -5
  109. data/rbi/dodopayments/models/entitlement_grant_created_webhook_event.rbi +8 -40
  110. data/rbi/dodopayments/models/entitlement_grant_delivered_webhook_event.rbi +8 -40
  111. data/rbi/dodopayments/models/entitlement_grant_failed_webhook_event.rbi +8 -39
  112. data/rbi/dodopayments/models/entitlement_grant_revoked_webhook_event.rbi +8 -40
  113. data/rbi/dodopayments/models/entitlement_update_params.rbi +4 -4
  114. data/rbi/dodopayments/models/entitlements/entitlement_grant.rbi +54 -20
  115. data/rbi/dodopayments/models/entitlements/file_upload_response.rbi +4 -4
  116. data/rbi/dodopayments/models/entitlements/license_key_grant.rbi +10 -4
  117. data/rbi/dodopayments/models/integration_config.rbi +141 -26
  118. data/rbi/dodopayments/models/integration_config_response.rbi +153 -38
  119. data/rbi/dodopayments/models/license_key_created_webhook_event.rbi +4 -34
  120. data/rbi/dodopayments/models/payment.rbi +170 -2
  121. data/rbi/dodopayments/models/payment_cancelled_webhook_event.rbi +4 -33
  122. data/rbi/dodopayments/models/payment_create_params.rbi +14 -2
  123. data/rbi/dodopayments/models/payment_create_response.rbi +12 -2
  124. data/rbi/dodopayments/models/payment_failed_webhook_event.rbi +4 -33
  125. data/rbi/dodopayments/models/payment_processing_webhook_event.rbi +4 -34
  126. data/rbi/dodopayments/models/payment_succeeded_webhook_event.rbi +4 -33
  127. data/rbi/dodopayments/models/price.rbi +18 -90
  128. data/rbi/dodopayments/models/product.rbi +4 -8
  129. data/rbi/dodopayments/models/product_entitlement_summary.rbi +8 -8
  130. data/rbi/dodopayments/models/product_item_req.rbi +74 -3
  131. data/rbi/dodopayments/models/refund_failed_webhook_event.rbi +4 -31
  132. data/rbi/dodopayments/models/refund_succeeded_webhook_event.rbi +4 -33
  133. data/rbi/dodopayments/models/subscription.rbi +173 -4
  134. data/rbi/dodopayments/models/subscription_active_webhook_event.rbi +4 -36
  135. data/rbi/dodopayments/models/subscription_cancelled_webhook_event.rbi +4 -36
  136. data/rbi/dodopayments/models/subscription_create_params.rbi +14 -2
  137. data/rbi/dodopayments/models/subscription_create_response.rbi +12 -2
  138. data/rbi/dodopayments/models/subscription_expired_webhook_event.rbi +4 -36
  139. data/rbi/dodopayments/models/subscription_failed_webhook_event.rbi +4 -36
  140. data/rbi/dodopayments/models/subscription_list_response.rbi +67 -4
  141. data/rbi/dodopayments/models/subscription_on_hold_webhook_event.rbi +4 -36
  142. data/rbi/dodopayments/models/subscription_plan_changed_webhook_event.rbi +4 -40
  143. data/rbi/dodopayments/models/subscription_preview_change_plan_response.rbi +18 -123
  144. data/rbi/dodopayments/models/subscription_renewed_webhook_event.rbi +4 -36
  145. data/rbi/dodopayments/models/subscription_update_payment_method_params.rbi +12 -96
  146. data/rbi/dodopayments/models/subscription_updated_webhook_event.rbi +4 -36
  147. data/rbi/dodopayments/models/update_subscription_plan_req.rbi +18 -8
  148. data/rbi/dodopayments/models/webhook_event_type.rbi +15 -0
  149. data/rbi/dodopayments/models/webhook_payload.rbi +48 -466
  150. data/rbi/dodopayments/resources/checkout_sessions.rbi +12 -0
  151. data/rbi/dodopayments/resources/entitlements/files.rbi +3 -10
  152. data/rbi/dodopayments/resources/entitlements/grants.rbi +2 -4
  153. data/rbi/dodopayments/resources/entitlements.rbi +4 -4
  154. data/rbi/dodopayments/resources/payments.rbi +6 -1
  155. data/rbi/dodopayments/resources/subscriptions.rbi +22 -9
  156. data/sig/dodopayments/models/abandoned_checkout_detected_webhook_event.rbs +4 -14
  157. data/sig/dodopayments/models/abandoned_checkout_recovered_webhook_event.rbs +4 -14
  158. data/sig/dodopayments/models/checkout_session_request.rbs +5 -0
  159. data/sig/dodopayments/models/credit_added_webhook_event.rbs +4 -14
  160. data/sig/dodopayments/models/credit_balance_low_webhook_event.rbs +4 -14
  161. data/sig/dodopayments/models/credit_deducted_webhook_event.rbs +4 -14
  162. data/sig/dodopayments/models/credit_expired_webhook_event.rbs +4 -14
  163. data/sig/dodopayments/models/credit_manual_adjustment_webhook_event.rbs +4 -14
  164. data/sig/dodopayments/models/credit_overage_charged_webhook_event.rbs +4 -14
  165. data/sig/dodopayments/models/credit_overage_reset_webhook_event.rbs +4 -14
  166. data/sig/dodopayments/models/credit_rolled_over_webhook_event.rbs +4 -14
  167. data/sig/dodopayments/models/credit_rollover_forfeited_webhook_event.rbs +4 -14
  168. data/sig/dodopayments/models/dispute_accepted_webhook_event.rbs +4 -14
  169. data/sig/dodopayments/models/dispute_cancelled_webhook_event.rbs +4 -14
  170. data/sig/dodopayments/models/dispute_challenged_webhook_event.rbs +4 -14
  171. data/sig/dodopayments/models/dispute_expired_webhook_event.rbs +4 -14
  172. data/sig/dodopayments/models/dispute_lost_webhook_event.rbs +4 -14
  173. data/sig/dodopayments/models/dispute_opened_webhook_event.rbs +4 -14
  174. data/sig/dodopayments/models/dispute_won_webhook_event.rbs +4 -14
  175. data/sig/dodopayments/models/dunning_recovered_webhook_event.rbs +4 -14
  176. data/sig/dodopayments/models/dunning_started_webhook_event.rbs +4 -14
  177. data/sig/dodopayments/models/entitlement.rbs +8 -10
  178. data/sig/dodopayments/models/entitlement_create_params.rbs +6 -4
  179. data/sig/dodopayments/models/entitlement_grant_created_webhook_event.rbs +4 -14
  180. data/sig/dodopayments/models/entitlement_grant_delivered_webhook_event.rbs +4 -14
  181. data/sig/dodopayments/models/entitlement_grant_failed_webhook_event.rbs +4 -14
  182. data/sig/dodopayments/models/entitlement_grant_revoked_webhook_event.rbs +4 -14
  183. data/sig/dodopayments/models/entitlements/entitlement_grant.rbs +4 -11
  184. data/sig/dodopayments/models/integration_config.rbs +28 -4
  185. data/sig/dodopayments/models/integration_config_response.rbs +28 -9
  186. data/sig/dodopayments/models/license_key_created_webhook_event.rbs +4 -14
  187. data/sig/dodopayments/models/payment.rbs +97 -0
  188. data/sig/dodopayments/models/payment_cancelled_webhook_event.rbs +4 -14
  189. data/sig/dodopayments/models/payment_create_params.rbs +5 -0
  190. data/sig/dodopayments/models/payment_create_response.rbs +5 -0
  191. data/sig/dodopayments/models/payment_failed_webhook_event.rbs +4 -14
  192. data/sig/dodopayments/models/payment_processing_webhook_event.rbs +4 -14
  193. data/sig/dodopayments/models/payment_succeeded_webhook_event.rbs +4 -14
  194. data/sig/dodopayments/models/price.rbs +15 -45
  195. data/sig/dodopayments/models/product_item_req.rbs +27 -3
  196. data/sig/dodopayments/models/refund_failed_webhook_event.rbs +4 -14
  197. data/sig/dodopayments/models/refund_succeeded_webhook_event.rbs +4 -14
  198. data/sig/dodopayments/models/subscription.rbs +97 -0
  199. data/sig/dodopayments/models/subscription_active_webhook_event.rbs +4 -14
  200. data/sig/dodopayments/models/subscription_cancelled_webhook_event.rbs +4 -14
  201. data/sig/dodopayments/models/subscription_create_params.rbs +5 -0
  202. data/sig/dodopayments/models/subscription_create_response.rbs +5 -0
  203. data/sig/dodopayments/models/subscription_expired_webhook_event.rbs +4 -14
  204. data/sig/dodopayments/models/subscription_failed_webhook_event.rbs +4 -14
  205. data/sig/dodopayments/models/subscription_list_response.rbs +24 -0
  206. data/sig/dodopayments/models/subscription_on_hold_webhook_event.rbs +4 -14
  207. data/sig/dodopayments/models/subscription_plan_changed_webhook_event.rbs +4 -14
  208. data/sig/dodopayments/models/subscription_preview_change_plan_response.rbs +15 -45
  209. data/sig/dodopayments/models/subscription_renewed_webhook_event.rbs +4 -14
  210. data/sig/dodopayments/models/subscription_update_payment_method_params.rbs +8 -48
  211. data/sig/dodopayments/models/subscription_updated_webhook_event.rbs +4 -14
  212. data/sig/dodopayments/models/update_subscription_plan_req.rbs +5 -0
  213. data/sig/dodopayments/models/webhook_event_type.rbs +6 -0
  214. data/sig/dodopayments/models/webhook_payload.rbs +50 -213
  215. data/sig/dodopayments/resources/checkout_sessions.rbs +2 -0
  216. data/sig/dodopayments/resources/entitlements.rbs +1 -1
  217. data/sig/dodopayments/resources/payments.rbs +1 -0
  218. data/sig/dodopayments/resources/subscriptions.rbs +3 -0
  219. metadata +2 -2
@@ -5,7 +5,7 @@ module Dodopayments
5
5
  business_id: String,
6
6
  data: Dodopayments::Payment,
7
7
  timestamp: Time,
8
- type: Dodopayments::Models::PaymentSucceededWebhookEvent::type_
8
+ type: :"payment.succeeded"
9
9
  }
10
10
 
11
11
  class PaymentSucceededWebhookEvent < Dodopayments::Internal::Type::BaseModel
@@ -15,31 +15,21 @@ module Dodopayments
15
15
 
16
16
  attr_accessor timestamp: Time
17
17
 
18
- attr_accessor type: Dodopayments::Models::PaymentSucceededWebhookEvent::type_
18
+ attr_accessor type: :"payment.succeeded"
19
19
 
20
20
  def initialize: (
21
21
  business_id: String,
22
22
  data: Dodopayments::Payment,
23
23
  timestamp: Time,
24
- type: Dodopayments::Models::PaymentSucceededWebhookEvent::type_
24
+ ?type: :"payment.succeeded"
25
25
  ) -> void
26
26
 
27
27
  def to_hash: -> {
28
28
  business_id: String,
29
29
  data: Dodopayments::Payment,
30
30
  timestamp: Time,
31
- type: Dodopayments::Models::PaymentSucceededWebhookEvent::type_
31
+ type: :"payment.succeeded"
32
32
  }
33
-
34
- type type_ = :"payment.succeeded"
35
-
36
- module Type
37
- extend Dodopayments::Internal::Type::Enum
38
-
39
- PAYMENT_SUCCEEDED: :"payment.succeeded"
40
-
41
- def self?.values: -> ::Array[Dodopayments::Models::PaymentSucceededWebhookEvent::type_]
42
- end
43
33
  end
44
34
  end
45
35
  end
@@ -14,7 +14,7 @@ module Dodopayments
14
14
  discount: Integer,
15
15
  price: Integer,
16
16
  purchasing_power_parity: bool,
17
- type: Dodopayments::Models::Price::OneTimePrice::type_,
17
+ type: :one_time_price,
18
18
  pay_what_you_want: bool,
19
19
  suggested_price: Integer?,
20
20
  tax_inclusive: bool?
@@ -29,7 +29,7 @@ module Dodopayments
29
29
 
30
30
  attr_accessor purchasing_power_parity: bool
31
31
 
32
- attr_accessor type: Dodopayments::Models::Price::OneTimePrice::type_
32
+ attr_accessor type: :one_time_price
33
33
 
34
34
  attr_reader pay_what_you_want: bool?
35
35
 
@@ -44,10 +44,10 @@ module Dodopayments
44
44
  discount: Integer,
45
45
  price: Integer,
46
46
  purchasing_power_parity: bool,
47
- type: Dodopayments::Models::Price::OneTimePrice::type_,
48
47
  ?pay_what_you_want: bool,
49
48
  ?suggested_price: Integer?,
50
- ?tax_inclusive: bool?
49
+ ?tax_inclusive: bool?,
50
+ ?type: :one_time_price
51
51
  ) -> void
52
52
 
53
53
  def to_hash: -> {
@@ -55,21 +55,11 @@ module Dodopayments
55
55
  discount: Integer,
56
56
  price: Integer,
57
57
  purchasing_power_parity: bool,
58
- type: Dodopayments::Models::Price::OneTimePrice::type_,
58
+ type: :one_time_price,
59
59
  pay_what_you_want: bool,
60
60
  suggested_price: Integer?,
61
61
  tax_inclusive: bool?
62
62
  }
63
-
64
- type type_ = :one_time_price
65
-
66
- module Type
67
- extend Dodopayments::Internal::Type::Enum
68
-
69
- ONE_TIME_PRICE: :one_time_price
70
-
71
- def self?.values: -> ::Array[Dodopayments::Models::Price::OneTimePrice::type_]
72
- end
73
63
  end
74
64
 
75
65
  type recurring_price =
@@ -82,7 +72,7 @@ module Dodopayments
82
72
  purchasing_power_parity: bool,
83
73
  subscription_period_count: Integer,
84
74
  subscription_period_interval: Dodopayments::Models::time_interval,
85
- type: Dodopayments::Models::Price::RecurringPrice::type_,
75
+ type: :recurring_price,
86
76
  tax_inclusive: bool?,
87
77
  trial_period_days: Integer
88
78
  }
@@ -104,7 +94,7 @@ module Dodopayments
104
94
 
105
95
  attr_accessor subscription_period_interval: Dodopayments::Models::time_interval
106
96
 
107
- attr_accessor type: Dodopayments::Models::Price::RecurringPrice::type_
97
+ attr_accessor type: :recurring_price
108
98
 
109
99
  attr_accessor tax_inclusive: bool?
110
100
 
@@ -121,9 +111,9 @@ module Dodopayments
121
111
  purchasing_power_parity: bool,
122
112
  subscription_period_count: Integer,
123
113
  subscription_period_interval: Dodopayments::Models::time_interval,
124
- type: Dodopayments::Models::Price::RecurringPrice::type_,
125
114
  ?tax_inclusive: bool?,
126
- ?trial_period_days: Integer
115
+ ?trial_period_days: Integer,
116
+ ?type: :recurring_price
127
117
  ) -> void
128
118
 
129
119
  def to_hash: -> {
@@ -135,20 +125,10 @@ module Dodopayments
135
125
  purchasing_power_parity: bool,
136
126
  subscription_period_count: Integer,
137
127
  subscription_period_interval: Dodopayments::Models::time_interval,
138
- type: Dodopayments::Models::Price::RecurringPrice::type_,
128
+ type: :recurring_price,
139
129
  tax_inclusive: bool?,
140
130
  trial_period_days: Integer
141
131
  }
142
-
143
- type type_ = :recurring_price
144
-
145
- module Type
146
- extend Dodopayments::Internal::Type::Enum
147
-
148
- RECURRING_PRICE: :recurring_price
149
-
150
- def self?.values: -> ::Array[Dodopayments::Models::Price::RecurringPrice::type_]
151
- end
152
132
  end
153
133
 
154
134
  type usage_based_price =
@@ -161,7 +141,7 @@ module Dodopayments
161
141
  purchasing_power_parity: bool,
162
142
  subscription_period_count: Integer,
163
143
  subscription_period_interval: Dodopayments::Models::time_interval,
164
- type: Dodopayments::Models::Price::UsageBasedPrice::type_,
144
+ type: :usage_based_price,
165
145
  meters: ::Array[Dodopayments::AddMeterToPrice]?,
166
146
  tax_inclusive: bool?
167
147
  }
@@ -183,7 +163,7 @@ module Dodopayments
183
163
 
184
164
  attr_accessor subscription_period_interval: Dodopayments::Models::time_interval
185
165
 
186
- attr_accessor type: Dodopayments::Models::Price::UsageBasedPrice::type_
166
+ attr_accessor type: :usage_based_price
187
167
 
188
168
  attr_accessor meters: ::Array[Dodopayments::AddMeterToPrice]?
189
169
 
@@ -198,9 +178,9 @@ module Dodopayments
198
178
  purchasing_power_parity: bool,
199
179
  subscription_period_count: Integer,
200
180
  subscription_period_interval: Dodopayments::Models::time_interval,
201
- type: Dodopayments::Models::Price::UsageBasedPrice::type_,
202
181
  ?meters: ::Array[Dodopayments::AddMeterToPrice]?,
203
- ?tax_inclusive: bool?
182
+ ?tax_inclusive: bool?,
183
+ ?type: :usage_based_price
204
184
  ) -> void
205
185
 
206
186
  def to_hash: -> {
@@ -212,20 +192,10 @@ module Dodopayments
212
192
  purchasing_power_parity: bool,
213
193
  subscription_period_count: Integer,
214
194
  subscription_period_interval: Dodopayments::Models::time_interval,
215
- type: Dodopayments::Models::Price::UsageBasedPrice::type_,
195
+ type: :usage_based_price,
216
196
  meters: ::Array[Dodopayments::AddMeterToPrice]?,
217
197
  tax_inclusive: bool?
218
198
  }
219
-
220
- type type_ = :usage_based_price
221
-
222
- module Type
223
- extend Dodopayments::Internal::Type::Enum
224
-
225
- USAGE_BASED_PRICE: :usage_based_price
226
-
227
- def self?.values: -> ::Array[Dodopayments::Models::Price::UsageBasedPrice::type_]
228
- end
229
199
  end
230
200
 
231
201
  def self?.variants: -> ::Array[Dodopayments::Models::price]
@@ -5,7 +5,8 @@ module Dodopayments
5
5
  product_id: String,
6
6
  quantity: Integer,
7
7
  addons: ::Array[Dodopayments::AttachAddon]?,
8
- amount: Integer?
8
+ amount: Integer?,
9
+ credit_entitlements: ::Array[Dodopayments::ProductItemReq::CreditEntitlement]?
9
10
  }
10
11
 
11
12
  class ProductItemReq < Dodopayments::Internal::Type::BaseModel
@@ -17,19 +18,42 @@ module Dodopayments
17
18
 
18
19
  attr_accessor amount: Integer?
19
20
 
21
+ attr_accessor credit_entitlements: ::Array[Dodopayments::ProductItemReq::CreditEntitlement]?
22
+
20
23
  def initialize: (
21
24
  product_id: String,
22
25
  quantity: Integer,
23
26
  ?addons: ::Array[Dodopayments::AttachAddon]?,
24
- ?amount: Integer?
27
+ ?amount: Integer?,
28
+ ?credit_entitlements: ::Array[Dodopayments::ProductItemReq::CreditEntitlement]?
25
29
  ) -> void
26
30
 
27
31
  def to_hash: -> {
28
32
  product_id: String,
29
33
  quantity: Integer,
30
34
  addons: ::Array[Dodopayments::AttachAddon]?,
31
- amount: Integer?
35
+ amount: Integer?,
36
+ credit_entitlements: ::Array[Dodopayments::ProductItemReq::CreditEntitlement]?
32
37
  }
38
+
39
+ type credit_entitlement =
40
+ { credit_entitlement_id: String, credits_amount: String }
41
+
42
+ class CreditEntitlement < Dodopayments::Internal::Type::BaseModel
43
+ attr_accessor credit_entitlement_id: String
44
+
45
+ attr_accessor credits_amount: String
46
+
47
+ def initialize: (
48
+ credit_entitlement_id: String,
49
+ credits_amount: String
50
+ ) -> void
51
+
52
+ def to_hash: -> {
53
+ credit_entitlement_id: String,
54
+ credits_amount: String
55
+ }
56
+ end
33
57
  end
34
58
  end
35
59
  end
@@ -5,7 +5,7 @@ module Dodopayments
5
5
  business_id: String,
6
6
  data: Dodopayments::Refund,
7
7
  timestamp: Time,
8
- type: Dodopayments::Models::RefundFailedWebhookEvent::type_
8
+ type: :"refund.failed"
9
9
  }
10
10
 
11
11
  class RefundFailedWebhookEvent < Dodopayments::Internal::Type::BaseModel
@@ -15,31 +15,21 @@ module Dodopayments
15
15
 
16
16
  attr_accessor timestamp: Time
17
17
 
18
- attr_accessor type: Dodopayments::Models::RefundFailedWebhookEvent::type_
18
+ attr_accessor type: :"refund.failed"
19
19
 
20
20
  def initialize: (
21
21
  business_id: String,
22
22
  data: Dodopayments::Refund,
23
23
  timestamp: Time,
24
- type: Dodopayments::Models::RefundFailedWebhookEvent::type_
24
+ ?type: :"refund.failed"
25
25
  ) -> void
26
26
 
27
27
  def to_hash: -> {
28
28
  business_id: String,
29
29
  data: Dodopayments::Refund,
30
30
  timestamp: Time,
31
- type: Dodopayments::Models::RefundFailedWebhookEvent::type_
31
+ type: :"refund.failed"
32
32
  }
33
-
34
- type type_ = :"refund.failed"
35
-
36
- module Type
37
- extend Dodopayments::Internal::Type::Enum
38
-
39
- REFUND_FAILED: :"refund.failed"
40
-
41
- def self?.values: -> ::Array[Dodopayments::Models::RefundFailedWebhookEvent::type_]
42
- end
43
33
  end
44
34
  end
45
35
  end
@@ -5,7 +5,7 @@ module Dodopayments
5
5
  business_id: String,
6
6
  data: Dodopayments::Refund,
7
7
  timestamp: Time,
8
- type: Dodopayments::Models::RefundSucceededWebhookEvent::type_
8
+ type: :"refund.succeeded"
9
9
  }
10
10
 
11
11
  class RefundSucceededWebhookEvent < Dodopayments::Internal::Type::BaseModel
@@ -15,31 +15,21 @@ module Dodopayments
15
15
 
16
16
  attr_accessor timestamp: Time
17
17
 
18
- attr_accessor type: Dodopayments::Models::RefundSucceededWebhookEvent::type_
18
+ attr_accessor type: :"refund.succeeded"
19
19
 
20
20
  def initialize: (
21
21
  business_id: String,
22
22
  data: Dodopayments::Refund,
23
23
  timestamp: Time,
24
- type: Dodopayments::Models::RefundSucceededWebhookEvent::type_
24
+ ?type: :"refund.succeeded"
25
25
  ) -> void
26
26
 
27
27
  def to_hash: -> {
28
28
  business_id: String,
29
29
  data: Dodopayments::Refund,
30
30
  timestamp: Time,
31
- type: Dodopayments::Models::RefundSucceededWebhookEvent::type_
31
+ type: :"refund.succeeded"
32
32
  }
33
-
34
- type type_ = :"refund.succeeded"
35
-
36
- module Type
37
- extend Dodopayments::Internal::Type::Enum
38
-
39
- REFUND_SUCCEEDED: :"refund.succeeded"
40
-
41
- def self?.values: -> ::Array[Dodopayments::Models::RefundSucceededWebhookEvent::type_]
42
- end
43
33
  end
44
34
  end
45
35
  end
@@ -32,6 +32,7 @@ module Dodopayments
32
32
  custom_field_responses: ::Array[Dodopayments::CustomFieldResponse]?,
33
33
  discount_cycles_remaining: Integer?,
34
34
  discount_id: String?,
35
+ discounts: ::Array[Dodopayments::Subscription::Discount]?,
35
36
  expires_at: Time?,
36
37
  payment_method_id: String?,
37
38
  scheduled_change: Dodopayments::ScheduledPlanChange?,
@@ -99,6 +100,8 @@ module Dodopayments
99
100
 
100
101
  attr_accessor discount_id: String?
101
102
 
103
+ attr_accessor discounts: ::Array[Dodopayments::Subscription::Discount]?
104
+
102
105
  attr_accessor expires_at: Time?
103
106
 
104
107
  attr_accessor payment_method_id: String?
@@ -138,6 +141,7 @@ module Dodopayments
138
141
  ?custom_field_responses: ::Array[Dodopayments::CustomFieldResponse]?,
139
142
  ?discount_cycles_remaining: Integer?,
140
143
  ?discount_id: String?,
144
+ ?discounts: ::Array[Dodopayments::Subscription::Discount]?,
141
145
  ?expires_at: Time?,
142
146
  ?payment_method_id: String?,
143
147
  ?scheduled_change: Dodopayments::ScheduledPlanChange?,
@@ -175,11 +179,104 @@ module Dodopayments
175
179
  custom_field_responses: ::Array[Dodopayments::CustomFieldResponse]?,
176
180
  discount_cycles_remaining: Integer?,
177
181
  discount_id: String?,
182
+ discounts: ::Array[Dodopayments::Subscription::Discount]?,
178
183
  expires_at: Time?,
179
184
  payment_method_id: String?,
180
185
  scheduled_change: Dodopayments::ScheduledPlanChange?,
181
186
  tax_id: String?
182
187
  }
188
+
189
+ type discount =
190
+ {
191
+ amount: Integer,
192
+ business_id: String,
193
+ code: String,
194
+ created_at: Time,
195
+ discount_id: String,
196
+ metadata: ::Hash[Symbol, String],
197
+ position: Integer,
198
+ preserve_on_plan_change: bool,
199
+ restricted_to: ::Array[String],
200
+ times_used: Integer,
201
+ type: Dodopayments::Models::discount_type,
202
+ cycles_remaining: Integer?,
203
+ expires_at: Time?,
204
+ name: String?,
205
+ subscription_cycles: Integer?,
206
+ usage_limit: Integer?
207
+ }
208
+
209
+ class Discount < Dodopayments::Internal::Type::BaseModel
210
+ attr_accessor amount: Integer
211
+
212
+ attr_accessor business_id: String
213
+
214
+ attr_accessor code: String
215
+
216
+ attr_accessor created_at: Time
217
+
218
+ attr_accessor discount_id: String
219
+
220
+ attr_accessor metadata: ::Hash[Symbol, String]
221
+
222
+ attr_accessor position: Integer
223
+
224
+ attr_accessor preserve_on_plan_change: bool
225
+
226
+ attr_accessor restricted_to: ::Array[String]
227
+
228
+ attr_accessor times_used: Integer
229
+
230
+ attr_accessor type: Dodopayments::Models::discount_type
231
+
232
+ attr_accessor cycles_remaining: Integer?
233
+
234
+ attr_accessor expires_at: Time?
235
+
236
+ attr_accessor name: String?
237
+
238
+ attr_accessor subscription_cycles: Integer?
239
+
240
+ attr_accessor usage_limit: Integer?
241
+
242
+ def initialize: (
243
+ amount: Integer,
244
+ business_id: String,
245
+ code: String,
246
+ created_at: Time,
247
+ discount_id: String,
248
+ metadata: ::Hash[Symbol, String],
249
+ position: Integer,
250
+ preserve_on_plan_change: bool,
251
+ restricted_to: ::Array[String],
252
+ times_used: Integer,
253
+ type: Dodopayments::Models::discount_type,
254
+ ?cycles_remaining: Integer?,
255
+ ?expires_at: Time?,
256
+ ?name: String?,
257
+ ?subscription_cycles: Integer?,
258
+ ?usage_limit: Integer?
259
+ ) -> void
260
+
261
+ def to_hash: -> {
262
+ amount: Integer,
263
+ business_id: String,
264
+ code: String,
265
+ created_at: Time,
266
+ discount_id: String,
267
+ metadata: ::Hash[Symbol, String],
268
+ position: Integer,
269
+ preserve_on_plan_change: bool,
270
+ restricted_to: ::Array[String],
271
+ times_used: Integer,
272
+ type: Dodopayments::Models::discount_type,
273
+ cycles_remaining: Integer?,
274
+ expires_at: Time?,
275
+ name: String?,
276
+ subscription_cycles: Integer?,
277
+ usage_limit: Integer?
278
+ }
279
+ end
183
280
  end
184
281
  end
185
282
  end
@@ -5,7 +5,7 @@ module Dodopayments
5
5
  business_id: String,
6
6
  data: Dodopayments::Subscription,
7
7
  timestamp: Time,
8
- type: Dodopayments::Models::SubscriptionActiveWebhookEvent::type_
8
+ type: :"subscription.active"
9
9
  }
10
10
 
11
11
  class SubscriptionActiveWebhookEvent < Dodopayments::Internal::Type::BaseModel
@@ -15,31 +15,21 @@ module Dodopayments
15
15
 
16
16
  attr_accessor timestamp: Time
17
17
 
18
- attr_accessor type: Dodopayments::Models::SubscriptionActiveWebhookEvent::type_
18
+ attr_accessor type: :"subscription.active"
19
19
 
20
20
  def initialize: (
21
21
  business_id: String,
22
22
  data: Dodopayments::Subscription,
23
23
  timestamp: Time,
24
- type: Dodopayments::Models::SubscriptionActiveWebhookEvent::type_
24
+ ?type: :"subscription.active"
25
25
  ) -> void
26
26
 
27
27
  def to_hash: -> {
28
28
  business_id: String,
29
29
  data: Dodopayments::Subscription,
30
30
  timestamp: Time,
31
- type: Dodopayments::Models::SubscriptionActiveWebhookEvent::type_
31
+ type: :"subscription.active"
32
32
  }
33
-
34
- type type_ = :"subscription.active"
35
-
36
- module Type
37
- extend Dodopayments::Internal::Type::Enum
38
-
39
- SUBSCRIPTION_ACTIVE: :"subscription.active"
40
-
41
- def self?.values: -> ::Array[Dodopayments::Models::SubscriptionActiveWebhookEvent::type_]
42
- end
43
33
  end
44
34
  end
45
35
  end
@@ -5,7 +5,7 @@ module Dodopayments
5
5
  business_id: String,
6
6
  data: Dodopayments::Subscription,
7
7
  timestamp: Time,
8
- type: Dodopayments::Models::SubscriptionCancelledWebhookEvent::type_
8
+ type: :"subscription.cancelled"
9
9
  }
10
10
 
11
11
  class SubscriptionCancelledWebhookEvent < Dodopayments::Internal::Type::BaseModel
@@ -15,31 +15,21 @@ module Dodopayments
15
15
 
16
16
  attr_accessor timestamp: Time
17
17
 
18
- attr_accessor type: Dodopayments::Models::SubscriptionCancelledWebhookEvent::type_
18
+ attr_accessor type: :"subscription.cancelled"
19
19
 
20
20
  def initialize: (
21
21
  business_id: String,
22
22
  data: Dodopayments::Subscription,
23
23
  timestamp: Time,
24
- type: Dodopayments::Models::SubscriptionCancelledWebhookEvent::type_
24
+ ?type: :"subscription.cancelled"
25
25
  ) -> void
26
26
 
27
27
  def to_hash: -> {
28
28
  business_id: String,
29
29
  data: Dodopayments::Subscription,
30
30
  timestamp: Time,
31
- type: Dodopayments::Models::SubscriptionCancelledWebhookEvent::type_
31
+ type: :"subscription.cancelled"
32
32
  }
33
-
34
- type type_ = :"subscription.cancelled"
35
-
36
- module Type
37
- extend Dodopayments::Internal::Type::Enum
38
-
39
- SUBSCRIPTION_CANCELLED: :"subscription.cancelled"
40
-
41
- def self?.values: -> ::Array[Dodopayments::Models::SubscriptionCancelledWebhookEvent::type_]
42
- end
43
33
  end
44
34
  end
45
35
  end
@@ -10,6 +10,7 @@ module Dodopayments
10
10
  allowed_payment_method_types: ::Array[Dodopayments::Models::payment_method_types]?,
11
11
  billing_currency: Dodopayments::Models::currency?,
12
12
  discount_code: String?,
13
+ discount_codes: ::Array[String]?,
13
14
  :force_3ds => bool?,
14
15
  mandate_min_amount_inr_paise: Integer?,
15
16
  metadata: ::Hash[Symbol, String],
@@ -47,6 +48,8 @@ module Dodopayments
47
48
 
48
49
  attr_accessor discount_code: String?
49
50
 
51
+ attr_accessor discount_codes: ::Array[String]?
52
+
50
53
  attr_accessor force_3ds: bool?
51
54
 
52
55
  attr_accessor mandate_min_amount_inr_paise: Integer?
@@ -92,6 +95,7 @@ module Dodopayments
92
95
  ?allowed_payment_method_types: ::Array[Dodopayments::Models::payment_method_types]?,
93
96
  ?billing_currency: Dodopayments::Models::currency?,
94
97
  ?discount_code: String?,
98
+ ?discount_codes: ::Array[String]?,
95
99
  ?force_3ds: bool?,
96
100
  ?mandate_min_amount_inr_paise: Integer?,
97
101
  ?metadata: ::Hash[Symbol, String],
@@ -118,6 +122,7 @@ module Dodopayments
118
122
  allowed_payment_method_types: ::Array[Dodopayments::Models::payment_method_types]?,
119
123
  billing_currency: Dodopayments::Models::currency?,
120
124
  discount_code: String?,
125
+ discount_codes: ::Array[String]?,
121
126
  :force_3ds => bool?,
122
127
  mandate_min_amount_inr_paise: Integer?,
123
128
  metadata: ::Hash[Symbol, String],
@@ -10,6 +10,7 @@ module Dodopayments
10
10
  subscription_id: String,
11
11
  client_secret: String?,
12
12
  discount_id: String?,
13
+ discount_ids: ::Array[String]?,
13
14
  expires_on: Time?,
14
15
  one_time_product_cart: ::Array[Dodopayments::Models::SubscriptionCreateResponse::OneTimeProductCart]?,
15
16
  payment_link: String?
@@ -32,6 +33,8 @@ module Dodopayments
32
33
 
33
34
  attr_accessor discount_id: String?
34
35
 
36
+ attr_accessor discount_ids: ::Array[String]?
37
+
35
38
  attr_accessor expires_on: Time?
36
39
 
37
40
  attr_accessor one_time_product_cart: ::Array[Dodopayments::Models::SubscriptionCreateResponse::OneTimeProductCart]?
@@ -47,6 +50,7 @@ module Dodopayments
47
50
  subscription_id: String,
48
51
  ?client_secret: String?,
49
52
  ?discount_id: String?,
53
+ ?discount_ids: ::Array[String]?,
50
54
  ?expires_on: Time?,
51
55
  ?one_time_product_cart: ::Array[Dodopayments::Models::SubscriptionCreateResponse::OneTimeProductCart]?,
52
56
  ?payment_link: String?
@@ -61,6 +65,7 @@ module Dodopayments
61
65
  subscription_id: String,
62
66
  client_secret: String?,
63
67
  discount_id: String?,
68
+ discount_ids: ::Array[String]?,
64
69
  expires_on: Time?,
65
70
  one_time_product_cart: ::Array[Dodopayments::Models::SubscriptionCreateResponse::OneTimeProductCart]?,
66
71
  payment_link: String?
@@ -5,7 +5,7 @@ module Dodopayments
5
5
  business_id: String,
6
6
  data: Dodopayments::Subscription,
7
7
  timestamp: Time,
8
- type: Dodopayments::Models::SubscriptionExpiredWebhookEvent::type_
8
+ type: :"subscription.expired"
9
9
  }
10
10
 
11
11
  class SubscriptionExpiredWebhookEvent < Dodopayments::Internal::Type::BaseModel
@@ -15,31 +15,21 @@ module Dodopayments
15
15
 
16
16
  attr_accessor timestamp: Time
17
17
 
18
- attr_accessor type: Dodopayments::Models::SubscriptionExpiredWebhookEvent::type_
18
+ attr_accessor type: :"subscription.expired"
19
19
 
20
20
  def initialize: (
21
21
  business_id: String,
22
22
  data: Dodopayments::Subscription,
23
23
  timestamp: Time,
24
- type: Dodopayments::Models::SubscriptionExpiredWebhookEvent::type_
24
+ ?type: :"subscription.expired"
25
25
  ) -> void
26
26
 
27
27
  def to_hash: -> {
28
28
  business_id: String,
29
29
  data: Dodopayments::Subscription,
30
30
  timestamp: Time,
31
- type: Dodopayments::Models::SubscriptionExpiredWebhookEvent::type_
31
+ type: :"subscription.expired"
32
32
  }
33
-
34
- type type_ = :"subscription.expired"
35
-
36
- module Type
37
- extend Dodopayments::Internal::Type::Enum
38
-
39
- SUBSCRIPTION_EXPIRED: :"subscription.expired"
40
-
41
- def self?.values: -> ::Array[Dodopayments::Models::SubscriptionExpiredWebhookEvent::type_]
42
- end
43
33
  end
44
34
  end
45
35
  end