dodopayments 1.69.0 → 1.71.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 (102) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +26 -0
  3. data/README.md +10 -1
  4. data/lib/dodopayments/models/checkout_session_request.rb +10 -1
  5. data/lib/dodopayments/models/checkout_session_response.rb +8 -8
  6. data/lib/dodopayments/models/customer_retrieve_payment_methods_response.rb +9 -18
  7. data/lib/dodopayments/models/dispute_accepted_webhook_event.rb +3 -28
  8. data/lib/dodopayments/models/dispute_cancelled_webhook_event.rb +3 -28
  9. data/lib/dodopayments/models/dispute_challenged_webhook_event.rb +3 -28
  10. data/lib/dodopayments/models/dispute_expired_webhook_event.rb +3 -28
  11. data/lib/dodopayments/models/dispute_lost_webhook_event.rb +3 -28
  12. data/lib/dodopayments/models/dispute_opened_webhook_event.rb +3 -28
  13. data/lib/dodopayments/models/dispute_won_webhook_event.rb +3 -28
  14. data/lib/dodopayments/models/license_key_created_webhook_event.rb +3 -28
  15. data/lib/dodopayments/models/payment.rb +9 -1
  16. data/lib/dodopayments/models/payment_cancelled_webhook_event.rb +3 -28
  17. data/lib/dodopayments/models/payment_create_params.rb +11 -1
  18. data/lib/dodopayments/models/payment_failed_webhook_event.rb +3 -28
  19. data/lib/dodopayments/models/payment_method_types.rb +98 -13
  20. data/lib/dodopayments/models/payment_processing_webhook_event.rb +3 -28
  21. data/lib/dodopayments/models/payment_succeeded_webhook_event.rb +3 -28
  22. data/lib/dodopayments/models/refund_failed_webhook_event.rb +3 -28
  23. data/lib/dodopayments/models/refund_succeeded_webhook_event.rb +3 -28
  24. data/lib/dodopayments/models/subscription_active_webhook_event.rb +4 -28
  25. data/lib/dodopayments/models/subscription_cancelled_webhook_event.rb +4 -28
  26. data/lib/dodopayments/models/subscription_create_params.rb +11 -1
  27. data/lib/dodopayments/models/subscription_expired_webhook_event.rb +4 -28
  28. data/lib/dodopayments/models/subscription_failed_webhook_event.rb +4 -28
  29. data/lib/dodopayments/models/subscription_on_hold_webhook_event.rb +4 -28
  30. data/lib/dodopayments/models/subscription_plan_changed_webhook_event.rb +4 -28
  31. data/lib/dodopayments/models/subscription_renewed_webhook_event.rb +4 -28
  32. data/lib/dodopayments/models/subscription_updated_webhook_event.rb +4 -28
  33. data/lib/dodopayments/resources/checkout_sessions.rb +3 -1
  34. data/lib/dodopayments/resources/payments.rb +3 -1
  35. data/lib/dodopayments/resources/subscriptions.rb +3 -1
  36. data/lib/dodopayments/version.rb +1 -1
  37. data/lib/dodopayments.rb +3 -3
  38. data/rbi/dodopayments/models/checkout_session_request.rbi +10 -0
  39. data/rbi/dodopayments/models/checkout_session_response.rbi +13 -9
  40. data/rbi/dodopayments/models/customer_retrieve_payment_methods_response.rbi +6 -9
  41. data/rbi/dodopayments/models/dispute_accepted_webhook_event.rbi +4 -92
  42. data/rbi/dodopayments/models/dispute_cancelled_webhook_event.rbi +4 -92
  43. data/rbi/dodopayments/models/dispute_challenged_webhook_event.rbi +4 -92
  44. data/rbi/dodopayments/models/dispute_expired_webhook_event.rbi +4 -92
  45. data/rbi/dodopayments/models/dispute_lost_webhook_event.rbi +4 -90
  46. data/rbi/dodopayments/models/dispute_opened_webhook_event.rbi +4 -90
  47. data/rbi/dodopayments/models/dispute_won_webhook_event.rbi +4 -90
  48. data/rbi/dodopayments/models/license_key_created_webhook_event.rbi +4 -92
  49. data/rbi/dodopayments/models/payment.rbi +8 -0
  50. data/rbi/dodopayments/models/payment_cancelled_webhook_event.rbi +4 -92
  51. data/rbi/dodopayments/models/payment_create_params.rbi +12 -0
  52. data/rbi/dodopayments/models/payment_failed_webhook_event.rbi +4 -90
  53. data/rbi/dodopayments/models/payment_method_types.rbi +186 -18
  54. data/rbi/dodopayments/models/payment_processing_webhook_event.rbi +4 -92
  55. data/rbi/dodopayments/models/payment_succeeded_webhook_event.rbi +4 -92
  56. data/rbi/dodopayments/models/refund_failed_webhook_event.rbi +4 -90
  57. data/rbi/dodopayments/models/refund_succeeded_webhook_event.rbi +4 -92
  58. data/rbi/dodopayments/models/subscription_active_webhook_event.rbi +6 -92
  59. data/rbi/dodopayments/models/subscription_cancelled_webhook_event.rbi +6 -92
  60. data/rbi/dodopayments/models/subscription_create_params.rbi +12 -0
  61. data/rbi/dodopayments/models/subscription_expired_webhook_event.rbi +6 -92
  62. data/rbi/dodopayments/models/subscription_failed_webhook_event.rbi +6 -92
  63. data/rbi/dodopayments/models/subscription_on_hold_webhook_event.rbi +6 -92
  64. data/rbi/dodopayments/models/subscription_plan_changed_webhook_event.rbi +6 -92
  65. data/rbi/dodopayments/models/subscription_renewed_webhook_event.rbi +6 -92
  66. data/rbi/dodopayments/models/subscription_updated_webhook_event.rbi +6 -92
  67. data/rbi/dodopayments/resources/checkout_sessions.rbi +4 -0
  68. data/rbi/dodopayments/resources/payments.rbi +5 -0
  69. data/rbi/dodopayments/resources/subscriptions.rbi +5 -0
  70. data/sig/dodopayments/models/checkout_session_request.rbs +5 -0
  71. data/sig/dodopayments/models/checkout_session_response.rbs +5 -5
  72. data/sig/dodopayments/models/customer_retrieve_payment_methods_response.rbs +5 -0
  73. data/sig/dodopayments/models/dispute_accepted_webhook_event.rbs +4 -35
  74. data/sig/dodopayments/models/dispute_cancelled_webhook_event.rbs +4 -35
  75. data/sig/dodopayments/models/dispute_challenged_webhook_event.rbs +4 -35
  76. data/sig/dodopayments/models/dispute_expired_webhook_event.rbs +4 -35
  77. data/sig/dodopayments/models/dispute_lost_webhook_event.rbs +4 -35
  78. data/sig/dodopayments/models/dispute_opened_webhook_event.rbs +4 -35
  79. data/sig/dodopayments/models/dispute_won_webhook_event.rbs +4 -35
  80. data/sig/dodopayments/models/license_key_created_webhook_event.rbs +4 -35
  81. data/sig/dodopayments/models/payment.rbs +5 -0
  82. data/sig/dodopayments/models/payment_cancelled_webhook_event.rbs +4 -35
  83. data/sig/dodopayments/models/payment_create_params.rbs +5 -0
  84. data/sig/dodopayments/models/payment_failed_webhook_event.rbs +4 -35
  85. data/sig/dodopayments/models/payment_method_types.rbs +196 -26
  86. data/sig/dodopayments/models/payment_processing_webhook_event.rbs +4 -35
  87. data/sig/dodopayments/models/payment_succeeded_webhook_event.rbs +4 -35
  88. data/sig/dodopayments/models/refund_failed_webhook_event.rbs +4 -35
  89. data/sig/dodopayments/models/refund_succeeded_webhook_event.rbs +4 -35
  90. data/sig/dodopayments/models/subscription_active_webhook_event.rbs +4 -35
  91. data/sig/dodopayments/models/subscription_cancelled_webhook_event.rbs +4 -35
  92. data/sig/dodopayments/models/subscription_create_params.rbs +5 -0
  93. data/sig/dodopayments/models/subscription_expired_webhook_event.rbs +4 -35
  94. data/sig/dodopayments/models/subscription_failed_webhook_event.rbs +4 -35
  95. data/sig/dodopayments/models/subscription_on_hold_webhook_event.rbs +4 -35
  96. data/sig/dodopayments/models/subscription_plan_changed_webhook_event.rbs +4 -35
  97. data/sig/dodopayments/models/subscription_renewed_webhook_event.rbs +4 -35
  98. data/sig/dodopayments/models/subscription_updated_webhook_event.rbs +4 -35
  99. data/sig/dodopayments/resources/checkout_sessions.rbs +1 -0
  100. data/sig/dodopayments/resources/payments.rbs +1 -0
  101. data/sig/dodopayments/resources/subscriptions.rbs +1 -0
  102. metadata +2 -2
@@ -15,15 +15,10 @@ module Dodopayments
15
15
  sig { returns(String) }
16
16
  attr_accessor :business_id
17
17
 
18
- # Event-specific data
19
- sig { returns(Dodopayments::RefundSucceededWebhookEvent::Data) }
18
+ sig { returns(Dodopayments::Refund) }
20
19
  attr_reader :data
21
20
 
22
- sig do
23
- params(
24
- data: Dodopayments::RefundSucceededWebhookEvent::Data::OrHash
25
- ).void
26
- end
21
+ sig { params(data: Dodopayments::Refund::OrHash).void }
27
22
  attr_writer :data
28
23
 
29
24
  # The timestamp of when the event occurred
@@ -39,7 +34,7 @@ module Dodopayments
39
34
  sig do
40
35
  params(
41
36
  business_id: String,
42
- data: Dodopayments::RefundSucceededWebhookEvent::Data::OrHash,
37
+ data: Dodopayments::Refund::OrHash,
43
38
  timestamp: Time,
44
39
  type: Dodopayments::RefundSucceededWebhookEvent::Type::OrSymbol
45
40
  ).returns(T.attached_class)
@@ -47,7 +42,6 @@ module Dodopayments
47
42
  def self.new(
48
43
  # The business identifier
49
44
  business_id:,
50
- # Event-specific data
51
45
  data:,
52
46
  # The timestamp of when the event occurred
53
47
  timestamp:,
@@ -60,7 +54,7 @@ module Dodopayments
60
54
  override.returns(
61
55
  {
62
56
  business_id: String,
63
- data: Dodopayments::RefundSucceededWebhookEvent::Data,
57
+ data: Dodopayments::Refund,
64
58
  timestamp: Time,
65
59
  type: Dodopayments::RefundSucceededWebhookEvent::Type::TaggedSymbol
66
60
  }
@@ -69,88 +63,6 @@ module Dodopayments
69
63
  def to_hash
70
64
  end
71
65
 
72
- class Data < Dodopayments::Models::Refund
73
- OrHash =
74
- T.type_alias do
75
- T.any(
76
- Dodopayments::RefundSucceededWebhookEvent::Data,
77
- Dodopayments::Internal::AnyHash
78
- )
79
- end
80
-
81
- # The type of payload in the data field
82
- sig do
83
- returns(
84
- T.nilable(
85
- Dodopayments::RefundSucceededWebhookEvent::Data::PayloadType::TaggedSymbol
86
- )
87
- )
88
- end
89
- attr_reader :payload_type
90
-
91
- sig do
92
- params(
93
- payload_type:
94
- Dodopayments::RefundSucceededWebhookEvent::Data::PayloadType::OrSymbol
95
- ).void
96
- end
97
- attr_writer :payload_type
98
-
99
- # Event-specific data
100
- sig do
101
- params(
102
- payload_type:
103
- Dodopayments::RefundSucceededWebhookEvent::Data::PayloadType::OrSymbol
104
- ).returns(T.attached_class)
105
- end
106
- def self.new(
107
- # The type of payload in the data field
108
- payload_type: nil
109
- )
110
- end
111
-
112
- sig do
113
- override.returns(
114
- {
115
- payload_type:
116
- Dodopayments::RefundSucceededWebhookEvent::Data::PayloadType::TaggedSymbol
117
- }
118
- )
119
- end
120
- def to_hash
121
- end
122
-
123
- # The type of payload in the data field
124
- module PayloadType
125
- extend Dodopayments::Internal::Type::Enum
126
-
127
- TaggedSymbol =
128
- T.type_alias do
129
- T.all(
130
- Symbol,
131
- Dodopayments::RefundSucceededWebhookEvent::Data::PayloadType
132
- )
133
- end
134
- OrSymbol = T.type_alias { T.any(Symbol, String) }
135
-
136
- REFUND =
137
- T.let(
138
- :Refund,
139
- Dodopayments::RefundSucceededWebhookEvent::Data::PayloadType::TaggedSymbol
140
- )
141
-
142
- sig do
143
- override.returns(
144
- T::Array[
145
- Dodopayments::RefundSucceededWebhookEvent::Data::PayloadType::TaggedSymbol
146
- ]
147
- )
148
- end
149
- def self.values
150
- end
151
- end
152
- end
153
-
154
66
  # The event type
155
67
  module Type
156
68
  extend Dodopayments::Internal::Type::Enum
@@ -15,15 +15,11 @@ module Dodopayments
15
15
  sig { returns(String) }
16
16
  attr_accessor :business_id
17
17
 
18
- # Event-specific data
19
- sig { returns(Dodopayments::SubscriptionActiveWebhookEvent::Data) }
18
+ # Response struct representing subscription details
19
+ sig { returns(Dodopayments::Subscription) }
20
20
  attr_reader :data
21
21
 
22
- sig do
23
- params(
24
- data: Dodopayments::SubscriptionActiveWebhookEvent::Data::OrHash
25
- ).void
26
- end
22
+ sig { params(data: Dodopayments::Subscription::OrHash).void }
27
23
  attr_writer :data
28
24
 
29
25
  # The timestamp of when the event occurred
@@ -41,7 +37,7 @@ module Dodopayments
41
37
  sig do
42
38
  params(
43
39
  business_id: String,
44
- data: Dodopayments::SubscriptionActiveWebhookEvent::Data::OrHash,
40
+ data: Dodopayments::Subscription::OrHash,
45
41
  timestamp: Time,
46
42
  type: Dodopayments::SubscriptionActiveWebhookEvent::Type::OrSymbol
47
43
  ).returns(T.attached_class)
@@ -49,7 +45,7 @@ module Dodopayments
49
45
  def self.new(
50
46
  # The business identifier
51
47
  business_id:,
52
- # Event-specific data
48
+ # Response struct representing subscription details
53
49
  data:,
54
50
  # The timestamp of when the event occurred
55
51
  timestamp:,
@@ -62,7 +58,7 @@ module Dodopayments
62
58
  override.returns(
63
59
  {
64
60
  business_id: String,
65
- data: Dodopayments::SubscriptionActiveWebhookEvent::Data,
61
+ data: Dodopayments::Subscription,
66
62
  timestamp: Time,
67
63
  type:
68
64
  Dodopayments::SubscriptionActiveWebhookEvent::Type::TaggedSymbol
@@ -72,88 +68,6 @@ module Dodopayments
72
68
  def to_hash
73
69
  end
74
70
 
75
- class Data < Dodopayments::Models::Subscription
76
- OrHash =
77
- T.type_alias do
78
- T.any(
79
- Dodopayments::SubscriptionActiveWebhookEvent::Data,
80
- Dodopayments::Internal::AnyHash
81
- )
82
- end
83
-
84
- # The type of payload in the data field
85
- sig do
86
- returns(
87
- T.nilable(
88
- Dodopayments::SubscriptionActiveWebhookEvent::Data::PayloadType::TaggedSymbol
89
- )
90
- )
91
- end
92
- attr_reader :payload_type
93
-
94
- sig do
95
- params(
96
- payload_type:
97
- Dodopayments::SubscriptionActiveWebhookEvent::Data::PayloadType::OrSymbol
98
- ).void
99
- end
100
- attr_writer :payload_type
101
-
102
- # Event-specific data
103
- sig do
104
- params(
105
- payload_type:
106
- Dodopayments::SubscriptionActiveWebhookEvent::Data::PayloadType::OrSymbol
107
- ).returns(T.attached_class)
108
- end
109
- def self.new(
110
- # The type of payload in the data field
111
- payload_type: nil
112
- )
113
- end
114
-
115
- sig do
116
- override.returns(
117
- {
118
- payload_type:
119
- Dodopayments::SubscriptionActiveWebhookEvent::Data::PayloadType::TaggedSymbol
120
- }
121
- )
122
- end
123
- def to_hash
124
- end
125
-
126
- # The type of payload in the data field
127
- module PayloadType
128
- extend Dodopayments::Internal::Type::Enum
129
-
130
- TaggedSymbol =
131
- T.type_alias do
132
- T.all(
133
- Symbol,
134
- Dodopayments::SubscriptionActiveWebhookEvent::Data::PayloadType
135
- )
136
- end
137
- OrSymbol = T.type_alias { T.any(Symbol, String) }
138
-
139
- SUBSCRIPTION =
140
- T.let(
141
- :Subscription,
142
- Dodopayments::SubscriptionActiveWebhookEvent::Data::PayloadType::TaggedSymbol
143
- )
144
-
145
- sig do
146
- override.returns(
147
- T::Array[
148
- Dodopayments::SubscriptionActiveWebhookEvent::Data::PayloadType::TaggedSymbol
149
- ]
150
- )
151
- end
152
- def self.values
153
- end
154
- end
155
- end
156
-
157
71
  # The event type
158
72
  module Type
159
73
  extend Dodopayments::Internal::Type::Enum
@@ -15,15 +15,11 @@ module Dodopayments
15
15
  sig { returns(String) }
16
16
  attr_accessor :business_id
17
17
 
18
- # Event-specific data
19
- sig { returns(Dodopayments::SubscriptionCancelledWebhookEvent::Data) }
18
+ # Response struct representing subscription details
19
+ sig { returns(Dodopayments::Subscription) }
20
20
  attr_reader :data
21
21
 
22
- sig do
23
- params(
24
- data: Dodopayments::SubscriptionCancelledWebhookEvent::Data::OrHash
25
- ).void
26
- end
22
+ sig { params(data: Dodopayments::Subscription::OrHash).void }
27
23
  attr_writer :data
28
24
 
29
25
  # The timestamp of when the event occurred
@@ -41,7 +37,7 @@ module Dodopayments
41
37
  sig do
42
38
  params(
43
39
  business_id: String,
44
- data: Dodopayments::SubscriptionCancelledWebhookEvent::Data::OrHash,
40
+ data: Dodopayments::Subscription::OrHash,
45
41
  timestamp: Time,
46
42
  type: Dodopayments::SubscriptionCancelledWebhookEvent::Type::OrSymbol
47
43
  ).returns(T.attached_class)
@@ -49,7 +45,7 @@ module Dodopayments
49
45
  def self.new(
50
46
  # The business identifier
51
47
  business_id:,
52
- # Event-specific data
48
+ # Response struct representing subscription details
53
49
  data:,
54
50
  # The timestamp of when the event occurred
55
51
  timestamp:,
@@ -62,7 +58,7 @@ module Dodopayments
62
58
  override.returns(
63
59
  {
64
60
  business_id: String,
65
- data: Dodopayments::SubscriptionCancelledWebhookEvent::Data,
61
+ data: Dodopayments::Subscription,
66
62
  timestamp: Time,
67
63
  type:
68
64
  Dodopayments::SubscriptionCancelledWebhookEvent::Type::TaggedSymbol
@@ -72,88 +68,6 @@ module Dodopayments
72
68
  def to_hash
73
69
  end
74
70
 
75
- class Data < Dodopayments::Models::Subscription
76
- OrHash =
77
- T.type_alias do
78
- T.any(
79
- Dodopayments::SubscriptionCancelledWebhookEvent::Data,
80
- Dodopayments::Internal::AnyHash
81
- )
82
- end
83
-
84
- # The type of payload in the data field
85
- sig do
86
- returns(
87
- T.nilable(
88
- Dodopayments::SubscriptionCancelledWebhookEvent::Data::PayloadType::TaggedSymbol
89
- )
90
- )
91
- end
92
- attr_reader :payload_type
93
-
94
- sig do
95
- params(
96
- payload_type:
97
- Dodopayments::SubscriptionCancelledWebhookEvent::Data::PayloadType::OrSymbol
98
- ).void
99
- end
100
- attr_writer :payload_type
101
-
102
- # Event-specific data
103
- sig do
104
- params(
105
- payload_type:
106
- Dodopayments::SubscriptionCancelledWebhookEvent::Data::PayloadType::OrSymbol
107
- ).returns(T.attached_class)
108
- end
109
- def self.new(
110
- # The type of payload in the data field
111
- payload_type: nil
112
- )
113
- end
114
-
115
- sig do
116
- override.returns(
117
- {
118
- payload_type:
119
- Dodopayments::SubscriptionCancelledWebhookEvent::Data::PayloadType::TaggedSymbol
120
- }
121
- )
122
- end
123
- def to_hash
124
- end
125
-
126
- # The type of payload in the data field
127
- module PayloadType
128
- extend Dodopayments::Internal::Type::Enum
129
-
130
- TaggedSymbol =
131
- T.type_alias do
132
- T.all(
133
- Symbol,
134
- Dodopayments::SubscriptionCancelledWebhookEvent::Data::PayloadType
135
- )
136
- end
137
- OrSymbol = T.type_alias { T.any(Symbol, String) }
138
-
139
- SUBSCRIPTION =
140
- T.let(
141
- :Subscription,
142
- Dodopayments::SubscriptionCancelledWebhookEvent::Data::PayloadType::TaggedSymbol
143
- )
144
-
145
- sig do
146
- override.returns(
147
- T::Array[
148
- Dodopayments::SubscriptionCancelledWebhookEvent::Data::PayloadType::TaggedSymbol
149
- ]
150
- )
151
- end
152
- def self.values
153
- end
154
- end
155
- end
156
-
157
71
  # The event type
158
72
  module Type
159
73
  extend Dodopayments::Internal::Type::Enum
@@ -91,6 +91,12 @@ module Dodopayments
91
91
  sig { returns(T.nilable(T::Boolean)) }
92
92
  attr_accessor :payment_link
93
93
 
94
+ # Optional payment method ID to use for this subscription. If provided,
95
+ # customer_id must also be provided (via AttachExistingCustomer). The payment
96
+ # method will be validated for eligibility with the subscription's currency.
97
+ sig { returns(T.nilable(String)) }
98
+ attr_accessor :payment_method_id
99
+
94
100
  # If true, redirects the customer immediately after payment completion False by
95
101
  # default
96
102
  sig { returns(T.nilable(T::Boolean)) }
@@ -145,6 +151,7 @@ module Dodopayments
145
151
  one_time_product_cart:
146
152
  T.nilable(T::Array[Dodopayments::OneTimeProductCartItem::OrHash]),
147
153
  payment_link: T.nilable(T::Boolean),
154
+ payment_method_id: T.nilable(String),
148
155
  redirect_immediately: T::Boolean,
149
156
  return_url: T.nilable(String),
150
157
  short_link: T.nilable(T::Boolean),
@@ -187,6 +194,10 @@ module Dodopayments
187
194
  one_time_product_cart: nil,
188
195
  # If true, generates a payment link. Defaults to false if not specified.
189
196
  payment_link: nil,
197
+ # Optional payment method ID to use for this subscription. If provided,
198
+ # customer_id must also be provided (via AttachExistingCustomer). The payment
199
+ # method will be validated for eligibility with the subscription's currency.
200
+ payment_method_id: nil,
190
201
  # If true, redirects the customer immediately after payment completion False by
191
202
  # default
192
203
  redirect_immediately: nil,
@@ -228,6 +239,7 @@ module Dodopayments
228
239
  one_time_product_cart:
229
240
  T.nilable(T::Array[Dodopayments::OneTimeProductCartItem]),
230
241
  payment_link: T.nilable(T::Boolean),
242
+ payment_method_id: T.nilable(String),
231
243
  redirect_immediately: T::Boolean,
232
244
  return_url: T.nilable(String),
233
245
  short_link: T.nilable(T::Boolean),
@@ -15,15 +15,11 @@ module Dodopayments
15
15
  sig { returns(String) }
16
16
  attr_accessor :business_id
17
17
 
18
- # Event-specific data
19
- sig { returns(Dodopayments::SubscriptionExpiredWebhookEvent::Data) }
18
+ # Response struct representing subscription details
19
+ sig { returns(Dodopayments::Subscription) }
20
20
  attr_reader :data
21
21
 
22
- sig do
23
- params(
24
- data: Dodopayments::SubscriptionExpiredWebhookEvent::Data::OrHash
25
- ).void
26
- end
22
+ sig { params(data: Dodopayments::Subscription::OrHash).void }
27
23
  attr_writer :data
28
24
 
29
25
  # The timestamp of when the event occurred
@@ -41,7 +37,7 @@ module Dodopayments
41
37
  sig do
42
38
  params(
43
39
  business_id: String,
44
- data: Dodopayments::SubscriptionExpiredWebhookEvent::Data::OrHash,
40
+ data: Dodopayments::Subscription::OrHash,
45
41
  timestamp: Time,
46
42
  type: Dodopayments::SubscriptionExpiredWebhookEvent::Type::OrSymbol
47
43
  ).returns(T.attached_class)
@@ -49,7 +45,7 @@ module Dodopayments
49
45
  def self.new(
50
46
  # The business identifier
51
47
  business_id:,
52
- # Event-specific data
48
+ # Response struct representing subscription details
53
49
  data:,
54
50
  # The timestamp of when the event occurred
55
51
  timestamp:,
@@ -62,7 +58,7 @@ module Dodopayments
62
58
  override.returns(
63
59
  {
64
60
  business_id: String,
65
- data: Dodopayments::SubscriptionExpiredWebhookEvent::Data,
61
+ data: Dodopayments::Subscription,
66
62
  timestamp: Time,
67
63
  type:
68
64
  Dodopayments::SubscriptionExpiredWebhookEvent::Type::TaggedSymbol
@@ -72,88 +68,6 @@ module Dodopayments
72
68
  def to_hash
73
69
  end
74
70
 
75
- class Data < Dodopayments::Models::Subscription
76
- OrHash =
77
- T.type_alias do
78
- T.any(
79
- Dodopayments::SubscriptionExpiredWebhookEvent::Data,
80
- Dodopayments::Internal::AnyHash
81
- )
82
- end
83
-
84
- # The type of payload in the data field
85
- sig do
86
- returns(
87
- T.nilable(
88
- Dodopayments::SubscriptionExpiredWebhookEvent::Data::PayloadType::TaggedSymbol
89
- )
90
- )
91
- end
92
- attr_reader :payload_type
93
-
94
- sig do
95
- params(
96
- payload_type:
97
- Dodopayments::SubscriptionExpiredWebhookEvent::Data::PayloadType::OrSymbol
98
- ).void
99
- end
100
- attr_writer :payload_type
101
-
102
- # Event-specific data
103
- sig do
104
- params(
105
- payload_type:
106
- Dodopayments::SubscriptionExpiredWebhookEvent::Data::PayloadType::OrSymbol
107
- ).returns(T.attached_class)
108
- end
109
- def self.new(
110
- # The type of payload in the data field
111
- payload_type: nil
112
- )
113
- end
114
-
115
- sig do
116
- override.returns(
117
- {
118
- payload_type:
119
- Dodopayments::SubscriptionExpiredWebhookEvent::Data::PayloadType::TaggedSymbol
120
- }
121
- )
122
- end
123
- def to_hash
124
- end
125
-
126
- # The type of payload in the data field
127
- module PayloadType
128
- extend Dodopayments::Internal::Type::Enum
129
-
130
- TaggedSymbol =
131
- T.type_alias do
132
- T.all(
133
- Symbol,
134
- Dodopayments::SubscriptionExpiredWebhookEvent::Data::PayloadType
135
- )
136
- end
137
- OrSymbol = T.type_alias { T.any(Symbol, String) }
138
-
139
- SUBSCRIPTION =
140
- T.let(
141
- :Subscription,
142
- Dodopayments::SubscriptionExpiredWebhookEvent::Data::PayloadType::TaggedSymbol
143
- )
144
-
145
- sig do
146
- override.returns(
147
- T::Array[
148
- Dodopayments::SubscriptionExpiredWebhookEvent::Data::PayloadType::TaggedSymbol
149
- ]
150
- )
151
- end
152
- def self.values
153
- end
154
- end
155
- end
156
-
157
71
  # The event type
158
72
  module Type
159
73
  extend Dodopayments::Internal::Type::Enum
@@ -15,15 +15,11 @@ module Dodopayments
15
15
  sig { returns(String) }
16
16
  attr_accessor :business_id
17
17
 
18
- # Event-specific data
19
- sig { returns(Dodopayments::SubscriptionFailedWebhookEvent::Data) }
18
+ # Response struct representing subscription details
19
+ sig { returns(Dodopayments::Subscription) }
20
20
  attr_reader :data
21
21
 
22
- sig do
23
- params(
24
- data: Dodopayments::SubscriptionFailedWebhookEvent::Data::OrHash
25
- ).void
26
- end
22
+ sig { params(data: Dodopayments::Subscription::OrHash).void }
27
23
  attr_writer :data
28
24
 
29
25
  # The timestamp of when the event occurred
@@ -41,7 +37,7 @@ module Dodopayments
41
37
  sig do
42
38
  params(
43
39
  business_id: String,
44
- data: Dodopayments::SubscriptionFailedWebhookEvent::Data::OrHash,
40
+ data: Dodopayments::Subscription::OrHash,
45
41
  timestamp: Time,
46
42
  type: Dodopayments::SubscriptionFailedWebhookEvent::Type::OrSymbol
47
43
  ).returns(T.attached_class)
@@ -49,7 +45,7 @@ module Dodopayments
49
45
  def self.new(
50
46
  # The business identifier
51
47
  business_id:,
52
- # Event-specific data
48
+ # Response struct representing subscription details
53
49
  data:,
54
50
  # The timestamp of when the event occurred
55
51
  timestamp:,
@@ -62,7 +58,7 @@ module Dodopayments
62
58
  override.returns(
63
59
  {
64
60
  business_id: String,
65
- data: Dodopayments::SubscriptionFailedWebhookEvent::Data,
61
+ data: Dodopayments::Subscription,
66
62
  timestamp: Time,
67
63
  type:
68
64
  Dodopayments::SubscriptionFailedWebhookEvent::Type::TaggedSymbol
@@ -72,88 +68,6 @@ module Dodopayments
72
68
  def to_hash
73
69
  end
74
70
 
75
- class Data < Dodopayments::Models::Subscription
76
- OrHash =
77
- T.type_alias do
78
- T.any(
79
- Dodopayments::SubscriptionFailedWebhookEvent::Data,
80
- Dodopayments::Internal::AnyHash
81
- )
82
- end
83
-
84
- # The type of payload in the data field
85
- sig do
86
- returns(
87
- T.nilable(
88
- Dodopayments::SubscriptionFailedWebhookEvent::Data::PayloadType::TaggedSymbol
89
- )
90
- )
91
- end
92
- attr_reader :payload_type
93
-
94
- sig do
95
- params(
96
- payload_type:
97
- Dodopayments::SubscriptionFailedWebhookEvent::Data::PayloadType::OrSymbol
98
- ).void
99
- end
100
- attr_writer :payload_type
101
-
102
- # Event-specific data
103
- sig do
104
- params(
105
- payload_type:
106
- Dodopayments::SubscriptionFailedWebhookEvent::Data::PayloadType::OrSymbol
107
- ).returns(T.attached_class)
108
- end
109
- def self.new(
110
- # The type of payload in the data field
111
- payload_type: nil
112
- )
113
- end
114
-
115
- sig do
116
- override.returns(
117
- {
118
- payload_type:
119
- Dodopayments::SubscriptionFailedWebhookEvent::Data::PayloadType::TaggedSymbol
120
- }
121
- )
122
- end
123
- def to_hash
124
- end
125
-
126
- # The type of payload in the data field
127
- module PayloadType
128
- extend Dodopayments::Internal::Type::Enum
129
-
130
- TaggedSymbol =
131
- T.type_alias do
132
- T.all(
133
- Symbol,
134
- Dodopayments::SubscriptionFailedWebhookEvent::Data::PayloadType
135
- )
136
- end
137
- OrSymbol = T.type_alias { T.any(Symbol, String) }
138
-
139
- SUBSCRIPTION =
140
- T.let(
141
- :Subscription,
142
- Dodopayments::SubscriptionFailedWebhookEvent::Data::PayloadType::TaggedSymbol
143
- )
144
-
145
- sig do
146
- override.returns(
147
- T::Array[
148
- Dodopayments::SubscriptionFailedWebhookEvent::Data::PayloadType::TaggedSymbol
149
- ]
150
- )
151
- end
152
- def self.values
153
- end
154
- end
155
- end
156
-
157
71
  # The event type
158
72
  module Type
159
73
  extend Dodopayments::Internal::Type::Enum