dodopayments 2.17.1 → 2.18.1

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 (119) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +16 -0
  3. data/README.md +1 -1
  4. data/lib/dodopayments/models/attach_addon.rb +3 -1
  5. data/lib/dodopayments/models/checkout_session_flags.rb +12 -1
  6. data/lib/dodopayments/models/credit_entitlement.rb +2 -1
  7. data/lib/dodopayments/models/credit_entitlement_cart_response.rb +2 -1
  8. data/lib/dodopayments/models/credit_entitlements/credit_ledger_entry.rb +14 -1
  9. data/lib/dodopayments/models/entitlements/grant_fulfill_license_key_params.rb +53 -0
  10. data/lib/dodopayments/models/license_key_duration.rb +3 -1
  11. data/lib/dodopayments/models/metadata.rb +8 -0
  12. data/lib/dodopayments/models/payment.rb +2 -2
  13. data/lib/dodopayments/models/payment_method_types.rb +1 -0
  14. data/lib/dodopayments/models/product.rb +3 -17
  15. data/lib/dodopayments/models/product_create_params.rb +3 -16
  16. data/lib/dodopayments/models/product_list_response.rb +3 -17
  17. data/lib/dodopayments/models/product_update_params.rb +3 -16
  18. data/lib/dodopayments/models/products/list_localized_prices_response.rb +18 -0
  19. data/lib/dodopayments/models/products/localized_price.rb +75 -0
  20. data/lib/dodopayments/models/products/localized_price_archive_params.rb +28 -0
  21. data/lib/dodopayments/models/products/localized_price_create_params.rb +51 -0
  22. data/lib/dodopayments/models/products/localized_price_list_params.rb +22 -0
  23. data/lib/dodopayments/models/products/localized_price_retrieve_params.rb +28 -0
  24. data/lib/dodopayments/models/products/localized_price_update_params.rb +42 -0
  25. data/lib/dodopayments/models/products/pricing_mode.rb +17 -0
  26. data/lib/dodopayments/models/subscription_update_params.rb +12 -1
  27. data/lib/dodopayments/models/time_interval.rb +1 -0
  28. data/lib/dodopayments/models.rb +3 -0
  29. data/lib/dodopayments/resources/entitlements/grants.rb +35 -0
  30. data/lib/dodopayments/resources/products/localized_prices.rb +144 -0
  31. data/lib/dodopayments/resources/products.rb +6 -2
  32. data/lib/dodopayments/version.rb +1 -1
  33. data/lib/dodopayments.rb +11 -0
  34. data/rbi/dodopayments/models/attach_addon.rbi +6 -1
  35. data/rbi/dodopayments/models/checkout_session_flags.rbi +17 -0
  36. data/rbi/dodopayments/models/credit_entitlement.rbi +2 -0
  37. data/rbi/dodopayments/models/credit_entitlement_cart_response.rbi +2 -0
  38. data/rbi/dodopayments/models/credit_entitlements/credit_ledger_entry.rbi +12 -0
  39. data/rbi/dodopayments/models/entitlements/grant_fulfill_license_key_params.rbi +74 -0
  40. data/rbi/dodopayments/models/license_key_duration.rbi +6 -1
  41. data/rbi/dodopayments/models/metadata.rbi +11 -0
  42. data/rbi/dodopayments/models/payment.rbi +2 -2
  43. data/rbi/dodopayments/models/payment_method_types.rbi +2 -0
  44. data/rbi/dodopayments/models/product.rbi +4 -26
  45. data/rbi/dodopayments/models/product_create_params.rbi +3 -43
  46. data/rbi/dodopayments/models/product_list_response.rbi +3 -47
  47. data/rbi/dodopayments/models/product_update_params.rbi +3 -43
  48. data/rbi/dodopayments/models/products/list_localized_prices_response.rbi +36 -0
  49. data/rbi/dodopayments/models/products/localized_price.rbi +98 -0
  50. data/rbi/dodopayments/models/products/localized_price_archive_params.rbi +48 -0
  51. data/rbi/dodopayments/models/products/localized_price_create_params.rbi +72 -0
  52. data/rbi/dodopayments/models/products/localized_price_list_params.rbi +43 -0
  53. data/rbi/dodopayments/models/products/localized_price_retrieve_params.rbi +48 -0
  54. data/rbi/dodopayments/models/products/localized_price_update_params.rbi +62 -0
  55. data/rbi/dodopayments/models/products/pricing_mode.rbi +28 -0
  56. data/rbi/dodopayments/models/subscription_update_params.rbi +2 -0
  57. data/rbi/dodopayments/models/time_interval.rbi +1 -0
  58. data/rbi/dodopayments/models.rbi +6 -0
  59. data/rbi/dodopayments/resources/entitlements/grants.rbi +28 -0
  60. data/rbi/dodopayments/resources/products/localized_prices.rbi +103 -0
  61. data/rbi/dodopayments/resources/products.rbi +5 -2
  62. data/sig/dodopayments/models/checkout_session_flags.rbs +7 -0
  63. data/sig/dodopayments/models/checkout_session_request.rbs +4 -4
  64. data/sig/dodopayments/models/credit_entitlements/balance_create_ledger_entry_params.rbs +4 -4
  65. data/sig/dodopayments/models/credit_entitlements/balance_list_grants_response.rbs +4 -4
  66. data/sig/dodopayments/models/credit_entitlements/credit_ledger_entry.rbs +5 -0
  67. data/sig/dodopayments/models/customer.rbs +7 -5
  68. data/sig/dodopayments/models/customer_create_params.rbs +7 -5
  69. data/sig/dodopayments/models/customer_limited_details.rbs +7 -5
  70. data/sig/dodopayments/models/customer_update_params.rbs +4 -4
  71. data/sig/dodopayments/models/discount.rbs +4 -4
  72. data/sig/dodopayments/models/discount_create_params.rbs +7 -5
  73. data/sig/dodopayments/models/discount_detail.rbs +4 -4
  74. data/sig/dodopayments/models/discount_update_params.rbs +4 -4
  75. data/sig/dodopayments/models/entitlement.rbs +4 -4
  76. data/sig/dodopayments/models/entitlement_create_params.rbs +7 -5
  77. data/sig/dodopayments/models/entitlement_update_params.rbs +4 -4
  78. data/sig/dodopayments/models/entitlements/entitlement_grant.rbs +4 -4
  79. data/sig/dodopayments/models/entitlements/grant_fulfill_license_key_params.rbs +43 -0
  80. data/sig/dodopayments/models/metadata.rbs +7 -0
  81. data/sig/dodopayments/models/payment.rbs +4 -4
  82. data/sig/dodopayments/models/payment_create_params.rbs +7 -5
  83. data/sig/dodopayments/models/payment_create_response.rbs +4 -4
  84. data/sig/dodopayments/models/payment_list_response.rbs +4 -4
  85. data/sig/dodopayments/models/payment_method_types.rbs +2 -0
  86. data/sig/dodopayments/models/product.rbs +8 -19
  87. data/sig/dodopayments/models/product_create_params.rbs +11 -20
  88. data/sig/dodopayments/models/product_list_response.rbs +8 -19
  89. data/sig/dodopayments/models/product_update_params.rbs +8 -19
  90. data/sig/dodopayments/models/products/list_localized_prices_response.rbs +20 -0
  91. data/sig/dodopayments/models/products/localized_price.rbs +57 -0
  92. data/sig/dodopayments/models/products/localized_price_archive_params.rbs +30 -0
  93. data/sig/dodopayments/models/products/localized_price_create_params.rbs +43 -0
  94. data/sig/dodopayments/models/products/localized_price_list_params.rbs +26 -0
  95. data/sig/dodopayments/models/products/localized_price_retrieve_params.rbs +30 -0
  96. data/sig/dodopayments/models/products/localized_price_update_params.rbs +34 -0
  97. data/sig/dodopayments/models/products/pricing_mode.rbs +16 -0
  98. data/sig/dodopayments/models/refund.rbs +4 -4
  99. data/sig/dodopayments/models/refund_create_params.rbs +7 -5
  100. data/sig/dodopayments/models/subscription.rbs +4 -4
  101. data/sig/dodopayments/models/subscription_charge_params.rbs +4 -4
  102. data/sig/dodopayments/models/subscription_create_params.rbs +7 -5
  103. data/sig/dodopayments/models/subscription_create_response.rbs +4 -4
  104. data/sig/dodopayments/models/subscription_list_response.rbs +4 -4
  105. data/sig/dodopayments/models/subscription_update_params.rbs +4 -4
  106. data/sig/dodopayments/models/update_subscription_plan_req.rbs +4 -4
  107. data/sig/dodopayments/models.rbs +2 -0
  108. data/sig/dodopayments/resources/checkout_sessions.rbs +2 -2
  109. data/sig/dodopayments/resources/credit_entitlements/balances.rbs +1 -1
  110. data/sig/dodopayments/resources/customers.rbs +2 -2
  111. data/sig/dodopayments/resources/discounts.rbs +2 -2
  112. data/sig/dodopayments/resources/entitlements/grants.rbs +8 -0
  113. data/sig/dodopayments/resources/entitlements.rbs +2 -2
  114. data/sig/dodopayments/resources/payments.rbs +1 -1
  115. data/sig/dodopayments/resources/products/localized_prices.rbs +41 -0
  116. data/sig/dodopayments/resources/products.rbs +6 -4
  117. data/sig/dodopayments/resources/refunds.rbs +1 -1
  118. data/sig/dodopayments/resources/subscriptions.rbs +5 -5
  119. metadata +35 -2
@@ -0,0 +1,28 @@
1
+ # typed: strong
2
+
3
+ module Dodopayments
4
+ module Models
5
+ module Products
6
+ module PricingMode
7
+ extend Dodopayments::Internal::Type::Enum
8
+
9
+ TaggedSymbol =
10
+ T.type_alias { T.all(Symbol, Dodopayments::Products::PricingMode) }
11
+ OrSymbol = T.type_alias { T.any(Symbol, String) }
12
+
13
+ BY_CURRENCY =
14
+ T.let(:by_currency, Dodopayments::Products::PricingMode::TaggedSymbol)
15
+ BY_COUNTRY =
16
+ T.let(:by_country, Dodopayments::Products::PricingMode::TaggedSymbol)
17
+
18
+ sig do
19
+ override.returns(
20
+ T::Array[Dodopayments::Products::PricingMode::TaggedSymbol]
21
+ )
22
+ end
23
+ def self.values
24
+ end
25
+ end
26
+ end
27
+ end
28
+ end
@@ -275,6 +275,7 @@ module Dodopayments
275
275
  sig { returns(T.nilable(Integer)) }
276
276
  attr_accessor :rollover_timeframe_count
277
277
 
278
+ # Unit of a duration count (e.g. license-key validity period).
278
279
  sig { returns(T.nilable(Dodopayments::TimeInterval::OrSymbol)) }
279
280
  attr_accessor :rollover_timeframe_interval
280
281
 
@@ -305,6 +306,7 @@ module Dodopayments
305
306
  rollover_enabled: nil,
306
307
  rollover_percentage: nil,
307
308
  rollover_timeframe_count: nil,
309
+ # Unit of a duration count (e.g. license-key validity period).
308
310
  rollover_timeframe_interval: nil
309
311
  )
310
312
  end
@@ -2,6 +2,7 @@
2
2
 
3
3
  module Dodopayments
4
4
  module Models
5
+ # Unit of a duration count (e.g. license-key validity period).
5
6
  module TimeInterval
6
7
  extend Dodopayments::Internal::Type::Enum
7
8
 
@@ -310,6 +310,12 @@ module Dodopayments
310
310
 
311
311
  LicenseValidateParams = Dodopayments::Models::LicenseValidateParams
312
312
 
313
+ Metadata =
314
+ T.let(
315
+ Dodopayments::Models::Metadata,
316
+ Dodopayments::Internal::Type::Converter
317
+ )
318
+
313
319
  Meter = Dodopayments::Models::Meter
314
320
 
315
321
  MeterAggregation = Dodopayments::Models::MeterAggregation
@@ -35,6 +35,34 @@ module Dodopayments
35
35
  )
36
36
  end
37
37
 
38
+ # For entitlements whose license-key config uses `manual` fulfillment, grants are
39
+ # created in the `pending` state without a key. Call this endpoint to deliver the
40
+ # key: the grant moves to `delivered`, the customer is emailed the key, and the
41
+ # `license_key.created` and `entitlement_grant.delivered` webhook events are sent.
42
+ sig do
43
+ params(
44
+ grant_id: String,
45
+ key: String,
46
+ activations_limit: T.nilable(Integer),
47
+ expires_at: T.nilable(Time),
48
+ request_options: Dodopayments::RequestOptions::OrHash
49
+ ).returns(Dodopayments::Entitlements::EntitlementGrant)
50
+ end
51
+ def fulfill_license_key(
52
+ # Grant ID
53
+ grant_id,
54
+ # The license key value to deliver to the customer.
55
+ key:,
56
+ # Per-key activation limit. Defaults to the entitlement's license-key
57
+ # configuration.
58
+ activations_limit: nil,
59
+ # When the key expires. Defaults to the duration in the entitlement's license-key
60
+ # configuration.
61
+ expires_at: nil,
62
+ request_options: {}
63
+ )
64
+ end
65
+
38
66
  # Revoke a single grant. Idempotent: re-revoking an already-revoked grant returns
39
67
  # the grant in its current state.
40
68
  sig do
@@ -0,0 +1,103 @@
1
+ # typed: strong
2
+
3
+ module Dodopayments
4
+ module Resources
5
+ class Products
6
+ class LocalizedPrices
7
+ sig do
8
+ params(
9
+ product_id: String,
10
+ amount: Integer,
11
+ currency: Dodopayments::Currency::OrSymbol,
12
+ country_code: T.nilable(Dodopayments::CountryCode::OrSymbol),
13
+ request_options: Dodopayments::RequestOptions::OrHash
14
+ ).returns(Dodopayments::Products::LocalizedPrice)
15
+ end
16
+ def create(
17
+ # Product Id
18
+ product_id,
19
+ # Amount in the smallest currency unit (e.g., cents). Must be greater than zero.
20
+ amount:,
21
+ # Currency to charge in. Must be a supported currency.
22
+ currency:,
23
+ # Required when the product's pricing_mode is by_country; forbidden when
24
+ # by_currency.
25
+ country_code: nil,
26
+ request_options: {}
27
+ )
28
+ end
29
+
30
+ sig do
31
+ params(
32
+ id: String,
33
+ product_id: String,
34
+ request_options: Dodopayments::RequestOptions::OrHash
35
+ ).returns(Dodopayments::Products::LocalizedPrice)
36
+ end
37
+ def retrieve(
38
+ # Localized Price Id
39
+ id,
40
+ # Product Id
41
+ product_id:,
42
+ request_options: {}
43
+ )
44
+ end
45
+
46
+ sig do
47
+ params(
48
+ id: String,
49
+ product_id: String,
50
+ amount: T.nilable(Integer),
51
+ request_options: Dodopayments::RequestOptions::OrHash
52
+ ).returns(Dodopayments::Products::LocalizedPrice)
53
+ end
54
+ def update(
55
+ # Path param: Localized Price Id
56
+ id,
57
+ # Path param: Product Id
58
+ product_id:,
59
+ # Body param: New amount in the smallest currency unit (e.g., cents). Must be
60
+ # greater than zero. The currency and country_code of an existing rule cannot be
61
+ # changed.
62
+ amount: nil,
63
+ request_options: {}
64
+ )
65
+ end
66
+
67
+ sig do
68
+ params(
69
+ product_id: String,
70
+ request_options: Dodopayments::RequestOptions::OrHash
71
+ ).returns(Dodopayments::Products::ListLocalizedPricesResponse)
72
+ end
73
+ def list(
74
+ # Product Id
75
+ product_id,
76
+ request_options: {}
77
+ )
78
+ end
79
+
80
+ sig do
81
+ params(
82
+ id: String,
83
+ product_id: String,
84
+ request_options: Dodopayments::RequestOptions::OrHash
85
+ ).void
86
+ end
87
+ def archive(
88
+ # Localized Price Id
89
+ id,
90
+ # Product Id
91
+ product_id:,
92
+ request_options: {}
93
+ )
94
+ end
95
+
96
+ # @api private
97
+ sig { params(client: Dodopayments::Client).returns(T.attached_class) }
98
+ def self.new(client:)
99
+ end
100
+ end
101
+ end
102
+ end
103
+ end
@@ -9,6 +9,9 @@ module Dodopayments
9
9
  sig { returns(Dodopayments::Resources::Products::ShortLinks) }
10
10
  attr_reader :short_links
11
11
 
12
+ sig { returns(Dodopayments::Resources::Products::LocalizedPrices) }
13
+ attr_reader :localized_prices
14
+
12
15
  sig do
13
16
  params(
14
17
  name: String,
@@ -37,7 +40,7 @@ module Dodopayments
37
40
  license_key_enabled: T.nilable(T::Boolean),
38
41
  metadata: T::Hash[Symbol, String],
39
42
  pricing_mode:
40
- T.nilable(Dodopayments::ProductCreateParams::PricingMode::OrSymbol),
43
+ T.nilable(Dodopayments::Products::PricingMode::OrSymbol),
41
44
  request_options: Dodopayments::RequestOptions::OrHash
42
45
  ).returns(Dodopayments::Product)
43
46
  end
@@ -139,7 +142,7 @@ module Dodopayments
139
142
  )
140
143
  ),
141
144
  pricing_mode:
142
- T.nilable(Dodopayments::ProductUpdateParams::PricingMode::OrSymbol),
145
+ T.nilable(Dodopayments::Products::PricingMode::OrSymbol),
143
146
  tax_category: T.nilable(Dodopayments::TaxCategory::OrSymbol),
144
147
  request_options: Dodopayments::RequestOptions::OrHash
145
148
  ).void
@@ -13,6 +13,7 @@ module Dodopayments
13
13
  allow_customer_editing_tax_id: bool,
14
14
  allow_customer_editing_zipcode: bool,
15
15
  allow_discount_code: bool,
16
+ allow_editing_addons: bool,
16
17
  allow_phone_number_collection: bool,
17
18
  allow_tax_id: bool,
18
19
  always_create_new_customer: bool,
@@ -65,6 +66,10 @@ module Dodopayments
65
66
 
66
67
  def allow_discount_code=: (bool) -> bool
67
68
 
69
+ attr_reader allow_editing_addons: bool?
70
+
71
+ def allow_editing_addons=: (bool) -> bool
72
+
68
73
  attr_reader allow_phone_number_collection: bool?
69
74
 
70
75
  def allow_phone_number_collection=: (bool) -> bool
@@ -97,6 +102,7 @@ module Dodopayments
97
102
  ?allow_customer_editing_tax_id: bool,
98
103
  ?allow_customer_editing_zipcode: bool,
99
104
  ?allow_discount_code: bool,
105
+ ?allow_editing_addons: bool,
100
106
  ?allow_phone_number_collection: bool,
101
107
  ?allow_tax_id: bool,
102
108
  ?always_create_new_customer: bool,
@@ -116,6 +122,7 @@ module Dodopayments
116
122
  allow_customer_editing_tax_id: bool,
117
123
  allow_customer_editing_zipcode: bool,
118
124
  allow_discount_code: bool,
125
+ allow_editing_addons: bool,
119
126
  allow_phone_number_collection: bool,
120
127
  allow_tax_id: bool,
121
128
  always_create_new_customer: bool,
@@ -17,7 +17,7 @@ module Dodopayments
17
17
  feature_flags: Dodopayments::CheckoutSessionFlags,
18
18
  :force_3ds => bool?,
19
19
  mandate_min_amount_inr_paise: Integer?,
20
- metadata: ::Hash[Symbol, String]?,
20
+ metadata: Dodopayments::Models::metadata?,
21
21
  minimal_address: bool,
22
22
  payment_method_id: String?,
23
23
  product_collection_id: String?,
@@ -69,7 +69,7 @@ module Dodopayments
69
69
 
70
70
  attr_accessor mandate_min_amount_inr_paise: Integer?
71
71
 
72
- attr_accessor metadata: ::Hash[Symbol, String]?
72
+ attr_accessor metadata: Dodopayments::Models::metadata?
73
73
 
74
74
  attr_reader minimal_address: bool?
75
75
 
@@ -109,7 +109,7 @@ module Dodopayments
109
109
  ?feature_flags: Dodopayments::CheckoutSessionFlags,
110
110
  ?force_3ds: bool?,
111
111
  ?mandate_min_amount_inr_paise: Integer?,
112
- ?metadata: ::Hash[Symbol, String]?,
112
+ ?metadata: Dodopayments::Models::metadata?,
113
113
  ?minimal_address: bool,
114
114
  ?payment_method_id: String?,
115
115
  ?product_collection_id: String?,
@@ -136,7 +136,7 @@ module Dodopayments
136
136
  feature_flags: Dodopayments::CheckoutSessionFlags,
137
137
  :force_3ds => bool?,
138
138
  mandate_min_amount_inr_paise: Integer?,
139
- metadata: ::Hash[Symbol, String]?,
139
+ metadata: Dodopayments::Models::metadata?,
140
140
  minimal_address: bool,
141
141
  payment_method_id: String?,
142
142
  product_collection_id: String?,
@@ -9,7 +9,7 @@ module Dodopayments
9
9
  entry_type: Dodopayments::Models::CreditEntitlements::ledger_entry_type,
10
10
  expires_at: Time?,
11
11
  idempotency_key: String?,
12
- metadata: ::Hash[Symbol, String]?,
12
+ metadata: Dodopayments::Models::metadata?,
13
13
  reason: String?
14
14
  }
15
15
  & Dodopayments::Internal::Type::request_parameters
@@ -30,7 +30,7 @@ module Dodopayments
30
30
 
31
31
  attr_accessor idempotency_key: String?
32
32
 
33
- attr_accessor metadata: ::Hash[Symbol, String]?
33
+ attr_accessor metadata: Dodopayments::Models::metadata?
34
34
 
35
35
  attr_accessor reason: String?
36
36
 
@@ -41,7 +41,7 @@ module Dodopayments
41
41
  entry_type: Dodopayments::Models::CreditEntitlements::ledger_entry_type,
42
42
  ?expires_at: Time?,
43
43
  ?idempotency_key: String?,
44
- ?metadata: ::Hash[Symbol, String]?,
44
+ ?metadata: Dodopayments::Models::metadata?,
45
45
  ?reason: String?,
46
46
  ?request_options: Dodopayments::request_opts
47
47
  ) -> void
@@ -53,7 +53,7 @@ module Dodopayments
53
53
  entry_type: Dodopayments::Models::CreditEntitlements::ledger_entry_type,
54
54
  expires_at: Time?,
55
55
  idempotency_key: String?,
56
- metadata: ::Hash[Symbol, String]?,
56
+ metadata: Dodopayments::Models::metadata?,
57
57
  reason: String?,
58
58
  request_options: Dodopayments::RequestOptions
59
59
  }
@@ -15,7 +15,7 @@ module Dodopayments
15
15
  source_type: Dodopayments::Models::CreditEntitlements::BalanceListGrantsResponse::source_type,
16
16
  updated_at: Time,
17
17
  expires_at: Time?,
18
- metadata: ::Hash[Symbol, String]?,
18
+ metadata: Dodopayments::Models::metadata?,
19
19
  parent_grant_id: String?,
20
20
  source_id: String?
21
21
  }
@@ -45,7 +45,7 @@ module Dodopayments
45
45
 
46
46
  attr_accessor expires_at: Time?
47
47
 
48
- attr_accessor metadata: ::Hash[Symbol, String]?
48
+ attr_accessor metadata: Dodopayments::Models::metadata?
49
49
 
50
50
  attr_accessor parent_grant_id: String?
51
51
 
@@ -64,7 +64,7 @@ module Dodopayments
64
64
  source_type: Dodopayments::Models::CreditEntitlements::BalanceListGrantsResponse::source_type,
65
65
  updated_at: Time,
66
66
  ?expires_at: Time?,
67
- ?metadata: ::Hash[Symbol, String]?,
67
+ ?metadata: Dodopayments::Models::metadata?,
68
68
  ?parent_grant_id: String?,
69
69
  ?source_id: String?
70
70
  ) -> void
@@ -82,7 +82,7 @@ module Dodopayments
82
82
  source_type: Dodopayments::Models::CreditEntitlements::BalanceListGrantsResponse::source_type,
83
83
  updated_at: Time,
84
84
  expires_at: Time?,
85
- metadata: ::Hash[Symbol, String]?,
85
+ metadata: Dodopayments::Models::metadata?,
86
86
  parent_grant_id: String?,
87
87
  source_id: String?
88
88
  }
@@ -13,6 +13,7 @@ module Dodopayments
13
13
  credit_entitlement_id: String,
14
14
  customer_id: String,
15
15
  is_credit: bool,
16
+ metadata: Dodopayments::Models::metadata,
16
17
  overage_after: String,
17
18
  overage_before: String,
18
19
  transaction_type: Dodopayments::Models::CreditEntitlements::CreditLedgerEntry::transaction_type,
@@ -43,6 +44,8 @@ module Dodopayments
43
44
 
44
45
  attr_accessor is_credit: bool
45
46
 
47
+ attr_accessor metadata: Dodopayments::Models::metadata
48
+
46
49
  attr_accessor overage_after: String
47
50
 
48
51
  attr_accessor overage_before: String
@@ -68,6 +71,7 @@ module Dodopayments
68
71
  credit_entitlement_id: String,
69
72
  customer_id: String,
70
73
  is_credit: bool,
74
+ metadata: Dodopayments::Models::metadata,
71
75
  overage_after: String,
72
76
  overage_before: String,
73
77
  transaction_type: Dodopayments::Models::CreditEntitlements::CreditLedgerEntry::transaction_type,
@@ -88,6 +92,7 @@ module Dodopayments
88
92
  credit_entitlement_id: String,
89
93
  customer_id: String,
90
94
  is_credit: bool,
95
+ metadata: Dodopayments::Models::metadata,
91
96
  overage_after: String,
92
97
  overage_before: String,
93
98
  transaction_type: Dodopayments::Models::CreditEntitlements::CreditLedgerEntry::transaction_type,
@@ -7,7 +7,7 @@ module Dodopayments
7
7
  customer_id: String,
8
8
  email: String,
9
9
  name: String,
10
- metadata: ::Hash[Symbol, String],
10
+ metadata: Dodopayments::Models::metadata,
11
11
  phone_number: String?
12
12
  }
13
13
 
@@ -22,9 +22,11 @@ module Dodopayments
22
22
 
23
23
  attr_accessor name: String
24
24
 
25
- attr_reader metadata: ::Hash[Symbol, String]?
25
+ attr_reader metadata: Dodopayments::Models::metadata?
26
26
 
27
- def metadata=: (::Hash[Symbol, String]) -> ::Hash[Symbol, String]
27
+ def metadata=: (
28
+ Dodopayments::Models::metadata
29
+ ) -> Dodopayments::Models::metadata
28
30
 
29
31
  attr_accessor phone_number: String?
30
32
 
@@ -34,7 +36,7 @@ module Dodopayments
34
36
  customer_id: String,
35
37
  email: String,
36
38
  name: String,
37
- ?metadata: ::Hash[Symbol, String],
39
+ ?metadata: Dodopayments::Models::metadata,
38
40
  ?phone_number: String?
39
41
  ) -> void
40
42
 
@@ -44,7 +46,7 @@ module Dodopayments
44
46
  customer_id: String,
45
47
  email: String,
46
48
  name: String,
47
- metadata: ::Hash[Symbol, String],
49
+ metadata: Dodopayments::Models::metadata,
48
50
  phone_number: String?
49
51
  }
50
52
  end
@@ -4,7 +4,7 @@ module Dodopayments
4
4
  {
5
5
  email: String,
6
6
  name: String,
7
- metadata: ::Hash[Symbol, String],
7
+ metadata: Dodopayments::Models::metadata,
8
8
  phone_number: String?
9
9
  }
10
10
  & Dodopayments::Internal::Type::request_parameters
@@ -17,16 +17,18 @@ module Dodopayments
17
17
 
18
18
  attr_accessor name: String
19
19
 
20
- attr_reader metadata: ::Hash[Symbol, String]?
20
+ attr_reader metadata: Dodopayments::Models::metadata?
21
21
 
22
- def metadata=: (::Hash[Symbol, String]) -> ::Hash[Symbol, String]
22
+ def metadata=: (
23
+ Dodopayments::Models::metadata
24
+ ) -> Dodopayments::Models::metadata
23
25
 
24
26
  attr_accessor phone_number: String?
25
27
 
26
28
  def initialize: (
27
29
  email: String,
28
30
  name: String,
29
- ?metadata: ::Hash[Symbol, String],
31
+ ?metadata: Dodopayments::Models::metadata,
30
32
  ?phone_number: String?,
31
33
  ?request_options: Dodopayments::request_opts
32
34
  ) -> void
@@ -34,7 +36,7 @@ module Dodopayments
34
36
  def to_hash: -> {
35
37
  email: String,
36
38
  name: String,
37
- metadata: ::Hash[Symbol, String],
39
+ metadata: Dodopayments::Models::metadata,
38
40
  phone_number: String?,
39
41
  request_options: Dodopayments::RequestOptions
40
42
  }
@@ -5,7 +5,7 @@ module Dodopayments
5
5
  customer_id: String,
6
6
  email: String,
7
7
  name: String,
8
- metadata: ::Hash[Symbol, String],
8
+ metadata: Dodopayments::Models::metadata,
9
9
  phone_number: String?
10
10
  }
11
11
 
@@ -16,9 +16,11 @@ module Dodopayments
16
16
 
17
17
  attr_accessor name: String
18
18
 
19
- attr_reader metadata: ::Hash[Symbol, String]?
19
+ attr_reader metadata: Dodopayments::Models::metadata?
20
20
 
21
- def metadata=: (::Hash[Symbol, String]) -> ::Hash[Symbol, String]
21
+ def metadata=: (
22
+ Dodopayments::Models::metadata
23
+ ) -> Dodopayments::Models::metadata
22
24
 
23
25
  attr_accessor phone_number: String?
24
26
 
@@ -26,7 +28,7 @@ module Dodopayments
26
28
  customer_id: String,
27
29
  email: String,
28
30
  name: String,
29
- ?metadata: ::Hash[Symbol, String],
31
+ ?metadata: Dodopayments::Models::metadata,
30
32
  ?phone_number: String?
31
33
  ) -> void
32
34
 
@@ -34,7 +36,7 @@ module Dodopayments
34
36
  customer_id: String,
35
37
  email: String,
36
38
  name: String,
37
- metadata: ::Hash[Symbol, String],
39
+ metadata: Dodopayments::Models::metadata,
38
40
  phone_number: String?
39
41
  }
40
42
  end
@@ -4,7 +4,7 @@ module Dodopayments
4
4
  {
5
5
  customer_id: String,
6
6
  email: String?,
7
- metadata: ::Hash[Symbol, String]?,
7
+ metadata: Dodopayments::Models::metadata?,
8
8
  name: String?,
9
9
  phone_number: String?
10
10
  }
@@ -18,7 +18,7 @@ module Dodopayments
18
18
 
19
19
  attr_accessor email: String?
20
20
 
21
- attr_accessor metadata: ::Hash[Symbol, String]?
21
+ attr_accessor metadata: Dodopayments::Models::metadata?
22
22
 
23
23
  attr_accessor name: String?
24
24
 
@@ -27,7 +27,7 @@ module Dodopayments
27
27
  def initialize: (
28
28
  customer_id: String,
29
29
  ?email: String?,
30
- ?metadata: ::Hash[Symbol, String]?,
30
+ ?metadata: Dodopayments::Models::metadata?,
31
31
  ?name: String?,
32
32
  ?phone_number: String?,
33
33
  ?request_options: Dodopayments::request_opts
@@ -36,7 +36,7 @@ module Dodopayments
36
36
  def to_hash: -> {
37
37
  customer_id: String,
38
38
  email: String?,
39
- metadata: ::Hash[Symbol, String]?,
39
+ metadata: Dodopayments::Models::metadata?,
40
40
  name: String?,
41
41
  phone_number: String?,
42
42
  request_options: Dodopayments::RequestOptions
@@ -7,7 +7,7 @@ module Dodopayments
7
7
  code: String,
8
8
  created_at: Time,
9
9
  discount_id: String,
10
- metadata: ::Hash[Symbol, String],
10
+ metadata: Dodopayments::Models::metadata,
11
11
  preserve_on_plan_change: bool,
12
12
  restricted_to: ::Array[String],
13
13
  times_used: Integer,
@@ -29,7 +29,7 @@ module Dodopayments
29
29
 
30
30
  attr_accessor discount_id: String
31
31
 
32
- attr_accessor metadata: ::Hash[Symbol, String]
32
+ attr_accessor metadata: Dodopayments::Models::metadata
33
33
 
34
34
  attr_accessor preserve_on_plan_change: bool
35
35
 
@@ -53,7 +53,7 @@ module Dodopayments
53
53
  code: String,
54
54
  created_at: Time,
55
55
  discount_id: String,
56
- metadata: ::Hash[Symbol, String],
56
+ metadata: Dodopayments::Models::metadata,
57
57
  preserve_on_plan_change: bool,
58
58
  restricted_to: ::Array[String],
59
59
  times_used: Integer,
@@ -70,7 +70,7 @@ module Dodopayments
70
70
  code: String,
71
71
  created_at: Time,
72
72
  discount_id: String,
73
- metadata: ::Hash[Symbol, String],
73
+ metadata: Dodopayments::Models::metadata,
74
74
  preserve_on_plan_change: bool,
75
75
  restricted_to: ::Array[String],
76
76
  times_used: Integer,
@@ -6,7 +6,7 @@ module Dodopayments
6
6
  type: Dodopayments::Models::discount_type,
7
7
  code: String?,
8
8
  expires_at: Time?,
9
- metadata: ::Hash[Symbol, String],
9
+ metadata: Dodopayments::Models::metadata,
10
10
  name: String?,
11
11
  preserve_on_plan_change: bool,
12
12
  restricted_to: ::Array[String]?,
@@ -27,9 +27,11 @@ module Dodopayments
27
27
 
28
28
  attr_accessor expires_at: Time?
29
29
 
30
- attr_reader metadata: ::Hash[Symbol, String]?
30
+ attr_reader metadata: Dodopayments::Models::metadata?
31
31
 
32
- def metadata=: (::Hash[Symbol, String]) -> ::Hash[Symbol, String]
32
+ def metadata=: (
33
+ Dodopayments::Models::metadata
34
+ ) -> Dodopayments::Models::metadata
33
35
 
34
36
  attr_accessor name: String?
35
37
 
@@ -48,7 +50,7 @@ module Dodopayments
48
50
  type: Dodopayments::Models::discount_type,
49
51
  ?code: String?,
50
52
  ?expires_at: Time?,
51
- ?metadata: ::Hash[Symbol, String],
53
+ ?metadata: Dodopayments::Models::metadata,
52
54
  ?name: String?,
53
55
  ?preserve_on_plan_change: bool,
54
56
  ?restricted_to: ::Array[String]?,
@@ -62,7 +64,7 @@ module Dodopayments
62
64
  type: Dodopayments::Models::discount_type,
63
65
  code: String?,
64
66
  expires_at: Time?,
65
- metadata: ::Hash[Symbol, String],
67
+ metadata: Dodopayments::Models::metadata,
66
68
  name: String?,
67
69
  preserve_on_plan_change: bool,
68
70
  restricted_to: ::Array[String]?,
@@ -7,7 +7,7 @@ module Dodopayments
7
7
  code: String,
8
8
  created_at: Time,
9
9
  discount_id: String,
10
- metadata: ::Hash[Symbol, String],
10
+ metadata: Dodopayments::Models::metadata,
11
11
  position: Integer,
12
12
  preserve_on_plan_change: bool,
13
13
  restricted_to: ::Array[String],
@@ -31,7 +31,7 @@ module Dodopayments
31
31
 
32
32
  attr_accessor discount_id: String
33
33
 
34
- attr_accessor metadata: ::Hash[Symbol, String]
34
+ attr_accessor metadata: Dodopayments::Models::metadata
35
35
 
36
36
  attr_accessor position: Integer
37
37
 
@@ -59,7 +59,7 @@ module Dodopayments
59
59
  code: String,
60
60
  created_at: Time,
61
61
  discount_id: String,
62
- metadata: ::Hash[Symbol, String],
62
+ metadata: Dodopayments::Models::metadata,
63
63
  position: Integer,
64
64
  preserve_on_plan_change: bool,
65
65
  restricted_to: ::Array[String],
@@ -78,7 +78,7 @@ module Dodopayments
78
78
  code: String,
79
79
  created_at: Time,
80
80
  discount_id: String,
81
- metadata: ::Hash[Symbol, String],
81
+ metadata: Dodopayments::Models::metadata,
82
82
  position: Integer,
83
83
  preserve_on_plan_change: bool,
84
84
  restricted_to: ::Array[String],