dodopayments 1.55.8 → 1.56.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 (91) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +8 -0
  3. data/README.md +1 -1
  4. data/lib/dodopayments/client.rb +4 -4
  5. data/lib/dodopayments/internal/type/union.rb +9 -7
  6. data/lib/dodopayments/models/dispute_accepted_webhook_event.rb +76 -0
  7. data/lib/dodopayments/models/dispute_cancelled_webhook_event.rb +76 -0
  8. data/lib/dodopayments/models/dispute_challenged_webhook_event.rb +76 -0
  9. data/lib/dodopayments/models/dispute_expired_webhook_event.rb +76 -0
  10. data/lib/dodopayments/models/dispute_lost_webhook_event.rb +76 -0
  11. data/lib/dodopayments/models/dispute_opened_webhook_event.rb +76 -0
  12. data/lib/dodopayments/models/dispute_won_webhook_event.rb +76 -0
  13. data/lib/dodopayments/models/license_key_created_webhook_event.rb +76 -0
  14. data/lib/dodopayments/models/payment_cancelled_webhook_event.rb +76 -0
  15. data/lib/dodopayments/models/payment_failed_webhook_event.rb +76 -0
  16. data/lib/dodopayments/models/payment_processing_webhook_event.rb +76 -0
  17. data/lib/dodopayments/models/payment_succeeded_webhook_event.rb +76 -0
  18. data/lib/dodopayments/models/refund_failed_webhook_event.rb +76 -0
  19. data/lib/dodopayments/models/refund_succeeded_webhook_event.rb +76 -0
  20. data/lib/dodopayments/models/subscription_active_webhook_event.rb +76 -0
  21. data/lib/dodopayments/models/subscription_cancelled_webhook_event.rb +76 -0
  22. data/lib/dodopayments/models/subscription_expired_webhook_event.rb +76 -0
  23. data/lib/dodopayments/models/subscription_failed_webhook_event.rb +76 -0
  24. data/lib/dodopayments/models/subscription_on_hold_webhook_event.rb +76 -0
  25. data/lib/dodopayments/models/subscription_plan_changed_webhook_event.rb +76 -0
  26. data/lib/dodopayments/models/subscription_renewed_webhook_event.rb +76 -0
  27. data/lib/dodopayments/models/unsafe_unwrap_webhook_event.rb +54 -0
  28. data/lib/dodopayments/models/unwrap_webhook_event.rb +54 -0
  29. data/lib/dodopayments/models/webhook_unsafe_unwrap_params.rb +14 -0
  30. data/lib/dodopayments/models/webhook_unwrap_params.rb +14 -0
  31. data/lib/dodopayments/models.rb +50 -0
  32. data/lib/dodopayments/resources/webhooks.rb +16 -0
  33. data/lib/dodopayments/version.rb +1 -1
  34. data/lib/dodopayments.rb +49 -3
  35. data/rbi/dodopayments/client.rbi +3 -3
  36. data/rbi/dodopayments/models/dispute_accepted_webhook_event.rbi +182 -0
  37. data/rbi/dodopayments/models/dispute_cancelled_webhook_event.rbi +182 -0
  38. data/rbi/dodopayments/models/dispute_challenged_webhook_event.rbi +183 -0
  39. data/rbi/dodopayments/models/dispute_expired_webhook_event.rbi +182 -0
  40. data/rbi/dodopayments/models/dispute_lost_webhook_event.rbi +176 -0
  41. data/rbi/dodopayments/models/dispute_opened_webhook_event.rbi +180 -0
  42. data/rbi/dodopayments/models/dispute_won_webhook_event.rbi +176 -0
  43. data/rbi/dodopayments/models/license_key_created_webhook_event.rbi +183 -0
  44. data/rbi/dodopayments/models/payment_cancelled_webhook_event.rbi +182 -0
  45. data/rbi/dodopayments/models/payment_failed_webhook_event.rbi +180 -0
  46. data/rbi/dodopayments/models/payment_processing_webhook_event.rbi +183 -0
  47. data/rbi/dodopayments/models/payment_succeeded_webhook_event.rbi +182 -0
  48. data/rbi/dodopayments/models/refund_failed_webhook_event.rbi +178 -0
  49. data/rbi/dodopayments/models/refund_succeeded_webhook_event.rbi +182 -0
  50. data/rbi/dodopayments/models/subscription_active_webhook_event.rbi +185 -0
  51. data/rbi/dodopayments/models/subscription_cancelled_webhook_event.rbi +185 -0
  52. data/rbi/dodopayments/models/subscription_expired_webhook_event.rbi +185 -0
  53. data/rbi/dodopayments/models/subscription_failed_webhook_event.rbi +185 -0
  54. data/rbi/dodopayments/models/subscription_on_hold_webhook_event.rbi +185 -0
  55. data/rbi/dodopayments/models/subscription_plan_changed_webhook_event.rbi +189 -0
  56. data/rbi/dodopayments/models/subscription_renewed_webhook_event.rbi +185 -0
  57. data/rbi/dodopayments/models/unsafe_unwrap_webhook_event.rbi +44 -0
  58. data/rbi/dodopayments/models/unwrap_webhook_event.rbi +42 -0
  59. data/rbi/dodopayments/models/webhook_unsafe_unwrap_params.rbi +32 -0
  60. data/rbi/dodopayments/models/webhook_unwrap_params.rbi +32 -0
  61. data/rbi/dodopayments/models.rbi +65 -0
  62. data/rbi/dodopayments/resources/webhooks.rbi +66 -0
  63. data/sig/dodopayments/client.rbs +2 -2
  64. data/sig/dodopayments/models/dispute_accepted_webhook_event.rbs +76 -0
  65. data/sig/dodopayments/models/dispute_cancelled_webhook_event.rbs +76 -0
  66. data/sig/dodopayments/models/dispute_challenged_webhook_event.rbs +76 -0
  67. data/sig/dodopayments/models/dispute_expired_webhook_event.rbs +76 -0
  68. data/sig/dodopayments/models/dispute_lost_webhook_event.rbs +76 -0
  69. data/sig/dodopayments/models/dispute_opened_webhook_event.rbs +76 -0
  70. data/sig/dodopayments/models/dispute_won_webhook_event.rbs +76 -0
  71. data/sig/dodopayments/models/license_key_created_webhook_event.rbs +76 -0
  72. data/sig/dodopayments/models/payment_cancelled_webhook_event.rbs +76 -0
  73. data/sig/dodopayments/models/payment_failed_webhook_event.rbs +76 -0
  74. data/sig/dodopayments/models/payment_processing_webhook_event.rbs +76 -0
  75. data/sig/dodopayments/models/payment_succeeded_webhook_event.rbs +76 -0
  76. data/sig/dodopayments/models/refund_failed_webhook_event.rbs +76 -0
  77. data/sig/dodopayments/models/refund_succeeded_webhook_event.rbs +76 -0
  78. data/sig/dodopayments/models/subscription_active_webhook_event.rbs +76 -0
  79. data/sig/dodopayments/models/subscription_cancelled_webhook_event.rbs +76 -0
  80. data/sig/dodopayments/models/subscription_expired_webhook_event.rbs +76 -0
  81. data/sig/dodopayments/models/subscription_failed_webhook_event.rbs +76 -0
  82. data/sig/dodopayments/models/subscription_on_hold_webhook_event.rbs +76 -0
  83. data/sig/dodopayments/models/subscription_plan_changed_webhook_event.rbs +76 -0
  84. data/sig/dodopayments/models/subscription_renewed_webhook_event.rbs +76 -0
  85. data/sig/dodopayments/models/unsafe_unwrap_webhook_event.rbs +32 -0
  86. data/sig/dodopayments/models/unwrap_webhook_event.rbs +32 -0
  87. data/sig/dodopayments/models/webhook_unsafe_unwrap_params.rbs +15 -0
  88. data/sig/dodopayments/models/webhook_unwrap_params.rbs +15 -0
  89. data/sig/dodopayments/models.rbs +50 -0
  90. data/sig/dodopayments/resources/webhooks.rbs +48 -0
  91. metadata +77 -2
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 3a0e945d7b450dc154627e3f0a103fc64211cc9bacd413836a13c685c6072ee4
4
- data.tar.gz: 01eb12a3362398b3cb3e79151d763ea7307c80a4c54700751dea7bf29f99dcca
3
+ metadata.gz: ce3e5943f7a051da09468b89769723b9a1ec3c8e985572676ac5ccbf1b9d6ad4
4
+ data.tar.gz: 244eb00a4c80ec77cf6aaffe5dea51207b4ebecf2afc310a26791f9471dcf997
5
5
  SHA512:
6
- metadata.gz: 15b740ff52e1790bc06d0c4ef5ac7f085295691c49749faf672eec14ac82b70a6f105fd6dc6353fba7745d5bfc3bfb811a8ef0575f9ddeb851c354d2ee2447b4
7
- data.tar.gz: da481011695dfc3d390f289935f700bf0192f43f31156c1a63b827aeb53f819f8e513fcd20d6401b88d6b12eeddbd76eb4b5933c42f8ef79f43c8e755117fd8f
6
+ metadata.gz: a5ce6a84b5bf1224822d61c145e43ff3061bfbb5c8b7e8193e7ee929e94bf968e0129db2320c08862b49d21f2a2e53be13b0ace6f484d27b0b287d111a60f667
7
+ data.tar.gz: 78ff2e68c238a62dc345a945ac0f0c36123043cc36a83dccbc78143d6d5ac71667334b5af3d981203d8425e79162daede453b00f0d40c8e8ab58a830e8e99b3e
data/CHANGELOG.md CHANGED
@@ -1,5 +1,13 @@
1
1
  # Changelog
2
2
 
3
+ ## 1.56.0 (2025-10-25)
4
+
5
+ Full Changelog: [v1.55.8...v1.56.0](https://github.com/dodopayments/dodopayments-ruby/compare/v1.55.8...v1.56.0)
6
+
7
+ ### Features
8
+
9
+ * **api:** added unwrap functions for webhooks ([3aab01b](https://github.com/dodopayments/dodopayments-ruby/commit/3aab01bd934c029ae0d533b2b28aec933f1c58bf))
10
+
3
11
  ## 1.55.8 (2025-10-24)
4
12
 
5
13
  Full Changelog: [v1.55.7...v1.55.8](https://github.com/dodopayments/dodopayments-ruby/compare/v1.55.7...v1.55.8)
data/README.md CHANGED
@@ -17,7 +17,7 @@ To use this gem, install via Bundler by adding the following to your application
17
17
  <!-- x-release-please-start-version -->
18
18
 
19
19
  ```ruby
20
- gem "dodopayments", "~> 1.55.8"
20
+ gem "dodopayments", "~> 1.56.0"
21
21
  ```
22
22
 
23
23
  <!-- x-release-please-end -->
@@ -57,9 +57,6 @@ module Dodopayments
57
57
  # @return [Dodopayments::Resources::Payouts]
58
58
  attr_reader :payouts
59
59
 
60
- # @return [Dodopayments::Resources::WebhookEvents]
61
- attr_reader :webhook_events
62
-
63
60
  # @return [Dodopayments::Resources::Products]
64
61
  attr_reader :products
65
62
 
@@ -78,6 +75,9 @@ module Dodopayments
78
75
  # @return [Dodopayments::Resources::Webhooks]
79
76
  attr_reader :webhooks
80
77
 
78
+ # @return [Dodopayments::Resources::WebhookEvents]
79
+ attr_reader :webhook_events
80
+
81
81
  # @return [Dodopayments::Resources::UsageEvents]
82
82
  attr_reader :usage_events
83
83
 
@@ -153,13 +153,13 @@ module Dodopayments
153
153
  @refunds = Dodopayments::Resources::Refunds.new(client: self)
154
154
  @disputes = Dodopayments::Resources::Disputes.new(client: self)
155
155
  @payouts = Dodopayments::Resources::Payouts.new(client: self)
156
- @webhook_events = Dodopayments::Resources::WebhookEvents.new(client: self)
157
156
  @products = Dodopayments::Resources::Products.new(client: self)
158
157
  @misc = Dodopayments::Resources::Misc.new(client: self)
159
158
  @discounts = Dodopayments::Resources::Discounts.new(client: self)
160
159
  @addons = Dodopayments::Resources::Addons.new(client: self)
161
160
  @brands = Dodopayments::Resources::Brands.new(client: self)
162
161
  @webhooks = Dodopayments::Resources::Webhooks.new(client: self)
162
+ @webhook_events = Dodopayments::Resources::WebhookEvents.new(client: self)
163
163
  @usage_events = Dodopayments::Resources::UsageEvents.new(client: self)
164
164
  @meters = Dodopayments::Resources::Meters.new(client: self)
165
165
  end
@@ -6,14 +6,16 @@ module Dodopayments
6
6
  # @api private
7
7
  #
8
8
  # @example
9
- # # `customer_request` is a `Dodopayments::CustomerRequest`
10
- # case customer_request
11
- # when Dodopayments::AttachExistingCustomer
12
- # puts(customer_request.customer_id)
13
- # when Dodopayments::NewCustomer
14
- # puts(customer_request.email)
9
+ # # `unsafe_unwrap_webhook_event` is a `Dodopayments::UnsafeUnwrapWebhookEvent`
10
+ # case unsafe_unwrap_webhook_event
11
+ # when Dodopayments::DisputeAcceptedWebhookEvent
12
+ # puts(unsafe_unwrap_webhook_event.business_id)
13
+ # when Dodopayments::DisputeCancelledWebhookEvent
14
+ # puts(unsafe_unwrap_webhook_event.data)
15
+ # when Dodopayments::DisputeChallengedWebhookEvent
16
+ # puts(unsafe_unwrap_webhook_event.timestamp)
15
17
  # else
16
- # puts(customer_request)
18
+ # puts(unsafe_unwrap_webhook_event)
17
19
  # end
18
20
  module Union
19
21
  include Dodopayments::Internal::Type::Converter
@@ -0,0 +1,76 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Dodopayments
4
+ module Models
5
+ class DisputeAcceptedWebhookEvent < Dodopayments::Internal::Type::BaseModel
6
+ # @!attribute business_id
7
+ # The business identifier
8
+ #
9
+ # @return [String]
10
+ required :business_id, String
11
+
12
+ # @!attribute data
13
+ # Event-specific data
14
+ #
15
+ # @return [Dodopayments::Models::DisputeAcceptedWebhookEvent::Data]
16
+ required :data, -> { Dodopayments::DisputeAcceptedWebhookEvent::Data }
17
+
18
+ # @!attribute timestamp
19
+ # The timestamp of when the event occurred
20
+ #
21
+ # @return [Time]
22
+ required :timestamp, Time
23
+
24
+ # @!attribute type
25
+ # The event type
26
+ #
27
+ # @return [Symbol, Dodopayments::Models::DisputeAcceptedWebhookEvent::Type]
28
+ required :type, enum: -> { Dodopayments::DisputeAcceptedWebhookEvent::Type }
29
+
30
+ # @!method initialize(business_id:, data:, timestamp:, type:)
31
+ # @param business_id [String] The business identifier
32
+ #
33
+ # @param data [Dodopayments::Models::DisputeAcceptedWebhookEvent::Data] Event-specific data
34
+ #
35
+ # @param timestamp [Time] The timestamp of when the event occurred
36
+ #
37
+ # @param type [Symbol, Dodopayments::Models::DisputeAcceptedWebhookEvent::Type] The event type
38
+
39
+ # @see Dodopayments::Models::DisputeAcceptedWebhookEvent#data
40
+ class Data < Dodopayments::Models::Dispute
41
+ # @!attribute payload_type
42
+ # The type of payload in the data field
43
+ #
44
+ # @return [Symbol, Dodopayments::Models::DisputeAcceptedWebhookEvent::Data::PayloadType, nil]
45
+ optional :payload_type, enum: -> { Dodopayments::DisputeAcceptedWebhookEvent::Data::PayloadType }
46
+
47
+ # @!method initialize(payload_type: nil)
48
+ # Event-specific data
49
+ #
50
+ # @param payload_type [Symbol, Dodopayments::Models::DisputeAcceptedWebhookEvent::Data::PayloadType] The type of payload in the data field
51
+
52
+ # The type of payload in the data field
53
+ module PayloadType
54
+ extend Dodopayments::Internal::Type::Enum
55
+
56
+ DISPUTE = :Dispute
57
+
58
+ # @!method self.values
59
+ # @return [Array<Symbol>]
60
+ end
61
+ end
62
+
63
+ # The event type
64
+ #
65
+ # @see Dodopayments::Models::DisputeAcceptedWebhookEvent#type
66
+ module Type
67
+ extend Dodopayments::Internal::Type::Enum
68
+
69
+ DISPUTE_ACCEPTED = :"dispute.accepted"
70
+
71
+ # @!method self.values
72
+ # @return [Array<Symbol>]
73
+ end
74
+ end
75
+ end
76
+ end
@@ -0,0 +1,76 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Dodopayments
4
+ module Models
5
+ class DisputeCancelledWebhookEvent < Dodopayments::Internal::Type::BaseModel
6
+ # @!attribute business_id
7
+ # The business identifier
8
+ #
9
+ # @return [String]
10
+ required :business_id, String
11
+
12
+ # @!attribute data
13
+ # Event-specific data
14
+ #
15
+ # @return [Dodopayments::Models::DisputeCancelledWebhookEvent::Data]
16
+ required :data, -> { Dodopayments::DisputeCancelledWebhookEvent::Data }
17
+
18
+ # @!attribute timestamp
19
+ # The timestamp of when the event occurred
20
+ #
21
+ # @return [Time]
22
+ required :timestamp, Time
23
+
24
+ # @!attribute type
25
+ # The event type
26
+ #
27
+ # @return [Symbol, Dodopayments::Models::DisputeCancelledWebhookEvent::Type]
28
+ required :type, enum: -> { Dodopayments::DisputeCancelledWebhookEvent::Type }
29
+
30
+ # @!method initialize(business_id:, data:, timestamp:, type:)
31
+ # @param business_id [String] The business identifier
32
+ #
33
+ # @param data [Dodopayments::Models::DisputeCancelledWebhookEvent::Data] Event-specific data
34
+ #
35
+ # @param timestamp [Time] The timestamp of when the event occurred
36
+ #
37
+ # @param type [Symbol, Dodopayments::Models::DisputeCancelledWebhookEvent::Type] The event type
38
+
39
+ # @see Dodopayments::Models::DisputeCancelledWebhookEvent#data
40
+ class Data < Dodopayments::Models::Dispute
41
+ # @!attribute payload_type
42
+ # The type of payload in the data field
43
+ #
44
+ # @return [Symbol, Dodopayments::Models::DisputeCancelledWebhookEvent::Data::PayloadType, nil]
45
+ optional :payload_type, enum: -> { Dodopayments::DisputeCancelledWebhookEvent::Data::PayloadType }
46
+
47
+ # @!method initialize(payload_type: nil)
48
+ # Event-specific data
49
+ #
50
+ # @param payload_type [Symbol, Dodopayments::Models::DisputeCancelledWebhookEvent::Data::PayloadType] The type of payload in the data field
51
+
52
+ # The type of payload in the data field
53
+ module PayloadType
54
+ extend Dodopayments::Internal::Type::Enum
55
+
56
+ DISPUTE = :Dispute
57
+
58
+ # @!method self.values
59
+ # @return [Array<Symbol>]
60
+ end
61
+ end
62
+
63
+ # The event type
64
+ #
65
+ # @see Dodopayments::Models::DisputeCancelledWebhookEvent#type
66
+ module Type
67
+ extend Dodopayments::Internal::Type::Enum
68
+
69
+ DISPUTE_CANCELLED = :"dispute.cancelled"
70
+
71
+ # @!method self.values
72
+ # @return [Array<Symbol>]
73
+ end
74
+ end
75
+ end
76
+ end
@@ -0,0 +1,76 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Dodopayments
4
+ module Models
5
+ class DisputeChallengedWebhookEvent < Dodopayments::Internal::Type::BaseModel
6
+ # @!attribute business_id
7
+ # The business identifier
8
+ #
9
+ # @return [String]
10
+ required :business_id, String
11
+
12
+ # @!attribute data
13
+ # Event-specific data
14
+ #
15
+ # @return [Dodopayments::Models::DisputeChallengedWebhookEvent::Data]
16
+ required :data, -> { Dodopayments::DisputeChallengedWebhookEvent::Data }
17
+
18
+ # @!attribute timestamp
19
+ # The timestamp of when the event occurred
20
+ #
21
+ # @return [Time]
22
+ required :timestamp, Time
23
+
24
+ # @!attribute type
25
+ # The event type
26
+ #
27
+ # @return [Symbol, Dodopayments::Models::DisputeChallengedWebhookEvent::Type]
28
+ required :type, enum: -> { Dodopayments::DisputeChallengedWebhookEvent::Type }
29
+
30
+ # @!method initialize(business_id:, data:, timestamp:, type:)
31
+ # @param business_id [String] The business identifier
32
+ #
33
+ # @param data [Dodopayments::Models::DisputeChallengedWebhookEvent::Data] Event-specific data
34
+ #
35
+ # @param timestamp [Time] The timestamp of when the event occurred
36
+ #
37
+ # @param type [Symbol, Dodopayments::Models::DisputeChallengedWebhookEvent::Type] The event type
38
+
39
+ # @see Dodopayments::Models::DisputeChallengedWebhookEvent#data
40
+ class Data < Dodopayments::Models::Dispute
41
+ # @!attribute payload_type
42
+ # The type of payload in the data field
43
+ #
44
+ # @return [Symbol, Dodopayments::Models::DisputeChallengedWebhookEvent::Data::PayloadType, nil]
45
+ optional :payload_type, enum: -> { Dodopayments::DisputeChallengedWebhookEvent::Data::PayloadType }
46
+
47
+ # @!method initialize(payload_type: nil)
48
+ # Event-specific data
49
+ #
50
+ # @param payload_type [Symbol, Dodopayments::Models::DisputeChallengedWebhookEvent::Data::PayloadType] The type of payload in the data field
51
+
52
+ # The type of payload in the data field
53
+ module PayloadType
54
+ extend Dodopayments::Internal::Type::Enum
55
+
56
+ DISPUTE = :Dispute
57
+
58
+ # @!method self.values
59
+ # @return [Array<Symbol>]
60
+ end
61
+ end
62
+
63
+ # The event type
64
+ #
65
+ # @see Dodopayments::Models::DisputeChallengedWebhookEvent#type
66
+ module Type
67
+ extend Dodopayments::Internal::Type::Enum
68
+
69
+ DISPUTE_CHALLENGED = :"dispute.challenged"
70
+
71
+ # @!method self.values
72
+ # @return [Array<Symbol>]
73
+ end
74
+ end
75
+ end
76
+ end
@@ -0,0 +1,76 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Dodopayments
4
+ module Models
5
+ class DisputeExpiredWebhookEvent < Dodopayments::Internal::Type::BaseModel
6
+ # @!attribute business_id
7
+ # The business identifier
8
+ #
9
+ # @return [String]
10
+ required :business_id, String
11
+
12
+ # @!attribute data
13
+ # Event-specific data
14
+ #
15
+ # @return [Dodopayments::Models::DisputeExpiredWebhookEvent::Data]
16
+ required :data, -> { Dodopayments::DisputeExpiredWebhookEvent::Data }
17
+
18
+ # @!attribute timestamp
19
+ # The timestamp of when the event occurred
20
+ #
21
+ # @return [Time]
22
+ required :timestamp, Time
23
+
24
+ # @!attribute type
25
+ # The event type
26
+ #
27
+ # @return [Symbol, Dodopayments::Models::DisputeExpiredWebhookEvent::Type]
28
+ required :type, enum: -> { Dodopayments::DisputeExpiredWebhookEvent::Type }
29
+
30
+ # @!method initialize(business_id:, data:, timestamp:, type:)
31
+ # @param business_id [String] The business identifier
32
+ #
33
+ # @param data [Dodopayments::Models::DisputeExpiredWebhookEvent::Data] Event-specific data
34
+ #
35
+ # @param timestamp [Time] The timestamp of when the event occurred
36
+ #
37
+ # @param type [Symbol, Dodopayments::Models::DisputeExpiredWebhookEvent::Type] The event type
38
+
39
+ # @see Dodopayments::Models::DisputeExpiredWebhookEvent#data
40
+ class Data < Dodopayments::Models::Dispute
41
+ # @!attribute payload_type
42
+ # The type of payload in the data field
43
+ #
44
+ # @return [Symbol, Dodopayments::Models::DisputeExpiredWebhookEvent::Data::PayloadType, nil]
45
+ optional :payload_type, enum: -> { Dodopayments::DisputeExpiredWebhookEvent::Data::PayloadType }
46
+
47
+ # @!method initialize(payload_type: nil)
48
+ # Event-specific data
49
+ #
50
+ # @param payload_type [Symbol, Dodopayments::Models::DisputeExpiredWebhookEvent::Data::PayloadType] The type of payload in the data field
51
+
52
+ # The type of payload in the data field
53
+ module PayloadType
54
+ extend Dodopayments::Internal::Type::Enum
55
+
56
+ DISPUTE = :Dispute
57
+
58
+ # @!method self.values
59
+ # @return [Array<Symbol>]
60
+ end
61
+ end
62
+
63
+ # The event type
64
+ #
65
+ # @see Dodopayments::Models::DisputeExpiredWebhookEvent#type
66
+ module Type
67
+ extend Dodopayments::Internal::Type::Enum
68
+
69
+ DISPUTE_EXPIRED = :"dispute.expired"
70
+
71
+ # @!method self.values
72
+ # @return [Array<Symbol>]
73
+ end
74
+ end
75
+ end
76
+ end
@@ -0,0 +1,76 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Dodopayments
4
+ module Models
5
+ class DisputeLostWebhookEvent < Dodopayments::Internal::Type::BaseModel
6
+ # @!attribute business_id
7
+ # The business identifier
8
+ #
9
+ # @return [String]
10
+ required :business_id, String
11
+
12
+ # @!attribute data
13
+ # Event-specific data
14
+ #
15
+ # @return [Dodopayments::Models::DisputeLostWebhookEvent::Data]
16
+ required :data, -> { Dodopayments::DisputeLostWebhookEvent::Data }
17
+
18
+ # @!attribute timestamp
19
+ # The timestamp of when the event occurred
20
+ #
21
+ # @return [Time]
22
+ required :timestamp, Time
23
+
24
+ # @!attribute type
25
+ # The event type
26
+ #
27
+ # @return [Symbol, Dodopayments::Models::DisputeLostWebhookEvent::Type]
28
+ required :type, enum: -> { Dodopayments::DisputeLostWebhookEvent::Type }
29
+
30
+ # @!method initialize(business_id:, data:, timestamp:, type:)
31
+ # @param business_id [String] The business identifier
32
+ #
33
+ # @param data [Dodopayments::Models::DisputeLostWebhookEvent::Data] Event-specific data
34
+ #
35
+ # @param timestamp [Time] The timestamp of when the event occurred
36
+ #
37
+ # @param type [Symbol, Dodopayments::Models::DisputeLostWebhookEvent::Type] The event type
38
+
39
+ # @see Dodopayments::Models::DisputeLostWebhookEvent#data
40
+ class Data < Dodopayments::Models::Dispute
41
+ # @!attribute payload_type
42
+ # The type of payload in the data field
43
+ #
44
+ # @return [Symbol, Dodopayments::Models::DisputeLostWebhookEvent::Data::PayloadType, nil]
45
+ optional :payload_type, enum: -> { Dodopayments::DisputeLostWebhookEvent::Data::PayloadType }
46
+
47
+ # @!method initialize(payload_type: nil)
48
+ # Event-specific data
49
+ #
50
+ # @param payload_type [Symbol, Dodopayments::Models::DisputeLostWebhookEvent::Data::PayloadType] The type of payload in the data field
51
+
52
+ # The type of payload in the data field
53
+ module PayloadType
54
+ extend Dodopayments::Internal::Type::Enum
55
+
56
+ DISPUTE = :Dispute
57
+
58
+ # @!method self.values
59
+ # @return [Array<Symbol>]
60
+ end
61
+ end
62
+
63
+ # The event type
64
+ #
65
+ # @see Dodopayments::Models::DisputeLostWebhookEvent#type
66
+ module Type
67
+ extend Dodopayments::Internal::Type::Enum
68
+
69
+ DISPUTE_LOST = :"dispute.lost"
70
+
71
+ # @!method self.values
72
+ # @return [Array<Symbol>]
73
+ end
74
+ end
75
+ end
76
+ end
@@ -0,0 +1,76 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Dodopayments
4
+ module Models
5
+ class DisputeOpenedWebhookEvent < Dodopayments::Internal::Type::BaseModel
6
+ # @!attribute business_id
7
+ # The business identifier
8
+ #
9
+ # @return [String]
10
+ required :business_id, String
11
+
12
+ # @!attribute data
13
+ # Event-specific data
14
+ #
15
+ # @return [Dodopayments::Models::DisputeOpenedWebhookEvent::Data]
16
+ required :data, -> { Dodopayments::DisputeOpenedWebhookEvent::Data }
17
+
18
+ # @!attribute timestamp
19
+ # The timestamp of when the event occurred
20
+ #
21
+ # @return [Time]
22
+ required :timestamp, Time
23
+
24
+ # @!attribute type
25
+ # The event type
26
+ #
27
+ # @return [Symbol, Dodopayments::Models::DisputeOpenedWebhookEvent::Type]
28
+ required :type, enum: -> { Dodopayments::DisputeOpenedWebhookEvent::Type }
29
+
30
+ # @!method initialize(business_id:, data:, timestamp:, type:)
31
+ # @param business_id [String] The business identifier
32
+ #
33
+ # @param data [Dodopayments::Models::DisputeOpenedWebhookEvent::Data] Event-specific data
34
+ #
35
+ # @param timestamp [Time] The timestamp of when the event occurred
36
+ #
37
+ # @param type [Symbol, Dodopayments::Models::DisputeOpenedWebhookEvent::Type] The event type
38
+
39
+ # @see Dodopayments::Models::DisputeOpenedWebhookEvent#data
40
+ class Data < Dodopayments::Models::Dispute
41
+ # @!attribute payload_type
42
+ # The type of payload in the data field
43
+ #
44
+ # @return [Symbol, Dodopayments::Models::DisputeOpenedWebhookEvent::Data::PayloadType, nil]
45
+ optional :payload_type, enum: -> { Dodopayments::DisputeOpenedWebhookEvent::Data::PayloadType }
46
+
47
+ # @!method initialize(payload_type: nil)
48
+ # Event-specific data
49
+ #
50
+ # @param payload_type [Symbol, Dodopayments::Models::DisputeOpenedWebhookEvent::Data::PayloadType] The type of payload in the data field
51
+
52
+ # The type of payload in the data field
53
+ module PayloadType
54
+ extend Dodopayments::Internal::Type::Enum
55
+
56
+ DISPUTE = :Dispute
57
+
58
+ # @!method self.values
59
+ # @return [Array<Symbol>]
60
+ end
61
+ end
62
+
63
+ # The event type
64
+ #
65
+ # @see Dodopayments::Models::DisputeOpenedWebhookEvent#type
66
+ module Type
67
+ extend Dodopayments::Internal::Type::Enum
68
+
69
+ DISPUTE_OPENED = :"dispute.opened"
70
+
71
+ # @!method self.values
72
+ # @return [Array<Symbol>]
73
+ end
74
+ end
75
+ end
76
+ end
@@ -0,0 +1,76 @@
1
+ # frozen_string_literal: true
2
+
3
+ module Dodopayments
4
+ module Models
5
+ class DisputeWonWebhookEvent < Dodopayments::Internal::Type::BaseModel
6
+ # @!attribute business_id
7
+ # The business identifier
8
+ #
9
+ # @return [String]
10
+ required :business_id, String
11
+
12
+ # @!attribute data
13
+ # Event-specific data
14
+ #
15
+ # @return [Dodopayments::Models::DisputeWonWebhookEvent::Data]
16
+ required :data, -> { Dodopayments::DisputeWonWebhookEvent::Data }
17
+
18
+ # @!attribute timestamp
19
+ # The timestamp of when the event occurred
20
+ #
21
+ # @return [Time]
22
+ required :timestamp, Time
23
+
24
+ # @!attribute type
25
+ # The event type
26
+ #
27
+ # @return [Symbol, Dodopayments::Models::DisputeWonWebhookEvent::Type]
28
+ required :type, enum: -> { Dodopayments::DisputeWonWebhookEvent::Type }
29
+
30
+ # @!method initialize(business_id:, data:, timestamp:, type:)
31
+ # @param business_id [String] The business identifier
32
+ #
33
+ # @param data [Dodopayments::Models::DisputeWonWebhookEvent::Data] Event-specific data
34
+ #
35
+ # @param timestamp [Time] The timestamp of when the event occurred
36
+ #
37
+ # @param type [Symbol, Dodopayments::Models::DisputeWonWebhookEvent::Type] The event type
38
+
39
+ # @see Dodopayments::Models::DisputeWonWebhookEvent#data
40
+ class Data < Dodopayments::Models::Dispute
41
+ # @!attribute payload_type
42
+ # The type of payload in the data field
43
+ #
44
+ # @return [Symbol, Dodopayments::Models::DisputeWonWebhookEvent::Data::PayloadType, nil]
45
+ optional :payload_type, enum: -> { Dodopayments::DisputeWonWebhookEvent::Data::PayloadType }
46
+
47
+ # @!method initialize(payload_type: nil)
48
+ # Event-specific data
49
+ #
50
+ # @param payload_type [Symbol, Dodopayments::Models::DisputeWonWebhookEvent::Data::PayloadType] The type of payload in the data field
51
+
52
+ # The type of payload in the data field
53
+ module PayloadType
54
+ extend Dodopayments::Internal::Type::Enum
55
+
56
+ DISPUTE = :Dispute
57
+
58
+ # @!method self.values
59
+ # @return [Array<Symbol>]
60
+ end
61
+ end
62
+
63
+ # The event type
64
+ #
65
+ # @see Dodopayments::Models::DisputeWonWebhookEvent#type
66
+ module Type
67
+ extend Dodopayments::Internal::Type::Enum
68
+
69
+ DISPUTE_WON = :"dispute.won"
70
+
71
+ # @!method self.values
72
+ # @return [Array<Symbol>]
73
+ end
74
+ end
75
+ end
76
+ end