dodopayments 2.5.0 → 2.7.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.
- checksums.yaml +4 -4
- data/CHANGELOG.md +21 -0
- data/README.md +1 -1
- data/lib/dodopayments/internal/util.rb +3 -1
- data/lib/dodopayments/models/discount.rb +8 -1
- data/lib/dodopayments/models/discount_create_params.rb +9 -1
- data/lib/dodopayments/models/discount_update_params.rb +9 -1
- data/lib/dodopayments/models/license_key.rb +33 -10
- data/lib/dodopayments/models/license_key_create_params.rb +54 -0
- data/lib/dodopayments/models/license_key_list_params.rb +20 -1
- data/lib/dodopayments/models/product.rb +228 -1
- data/lib/dodopayments/models/product_create_params.rb +15 -1
- data/lib/dodopayments/models/product_list_response.rb +225 -1
- data/lib/dodopayments/models/product_update_params.rb +16 -1
- data/lib/dodopayments/models/webhook_event_type.rb +4 -0
- data/lib/dodopayments/models/webhook_payload.rb +176 -3
- data/lib/dodopayments/models.rb +2 -0
- data/lib/dodopayments/resources/discounts.rb +6 -2
- data/lib/dodopayments/resources/license_keys.rb +37 -1
- data/lib/dodopayments/resources/products.rb +6 -2
- data/lib/dodopayments/version.rb +1 -1
- data/lib/dodopayments.rb +1 -0
- data/rbi/dodopayments/models/discount.rbi +6 -0
- data/rbi/dodopayments/models/discount_create_params.rbi +11 -0
- data/rbi/dodopayments/models/discount_update_params.rbi +8 -0
- data/rbi/dodopayments/models/license_key.rbi +39 -8
- data/rbi/dodopayments/models/license_key_create_params.rbi +78 -0
- data/rbi/dodopayments/models/license_key_list_params.rbi +44 -0
- data/rbi/dodopayments/models/product.rbi +425 -0
- data/rbi/dodopayments/models/product_create_params.rbi +8 -0
- data/rbi/dodopayments/models/product_list_response.rbi +436 -0
- data/rbi/dodopayments/models/product_update_params.rbi +10 -0
- data/rbi/dodopayments/models/webhook_event_type.rbi +20 -0
- data/rbi/dodopayments/models/webhook_payload.rbi +267 -4
- data/rbi/dodopayments/models.rbi +2 -0
- data/rbi/dodopayments/resources/discounts.rbi +6 -0
- data/rbi/dodopayments/resources/license_keys.rbi +28 -0
- data/rbi/dodopayments/resources/products.rbi +7 -0
- data/sig/dodopayments/models/discount.rbs +5 -0
- data/sig/dodopayments/models/discount_create_params.rbs +7 -0
- data/sig/dodopayments/models/discount_update_params.rbs +5 -0
- data/sig/dodopayments/models/license_key.rbs +21 -5
- data/sig/dodopayments/models/license_key_create_params.rbs +46 -0
- data/sig/dodopayments/models/license_key_list_params.rbs +20 -0
- data/sig/dodopayments/models/product.rbs +206 -0
- data/sig/dodopayments/models/product_create_params.rbs +5 -0
- data/sig/dodopayments/models/product_list_response.rbs +206 -0
- data/sig/dodopayments/models/product_update_params.rbs +5 -0
- data/sig/dodopayments/models/webhook_event_type.rbs +8 -0
- data/sig/dodopayments/models/webhook_payload.rbs +158 -0
- data/sig/dodopayments/models.rbs +2 -0
- data/sig/dodopayments/resources/discounts.rbs +2 -0
- data/sig/dodopayments/resources/license_keys.rbs +10 -0
- data/sig/dodopayments/resources/products.rbs +2 -0
- metadata +5 -2
|
@@ -3,6 +3,36 @@
|
|
|
3
3
|
module Dodopayments
|
|
4
4
|
module Resources
|
|
5
5
|
class LicenseKeys
|
|
6
|
+
# @overload create(customer_id:, key:, product_id:, activations_limit: nil, expires_at: nil, request_options: {})
|
|
7
|
+
#
|
|
8
|
+
# @param customer_id [String] The customer this license key belongs to.
|
|
9
|
+
#
|
|
10
|
+
# @param key [String] The license key string to import.
|
|
11
|
+
#
|
|
12
|
+
# @param product_id [String] The product this license key is for.
|
|
13
|
+
#
|
|
14
|
+
# @param activations_limit [Integer, nil] Maximum number of activations allowed. Null means unlimited.
|
|
15
|
+
#
|
|
16
|
+
# @param expires_at [Time, nil] Expiration timestamp. Null means the key never expires.
|
|
17
|
+
#
|
|
18
|
+
# @param request_options [Dodopayments::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
19
|
+
#
|
|
20
|
+
# @return [Dodopayments::Models::LicenseKey]
|
|
21
|
+
#
|
|
22
|
+
# @see Dodopayments::Models::LicenseKeyCreateParams
|
|
23
|
+
def create(params)
|
|
24
|
+
parsed, options = Dodopayments::LicenseKeyCreateParams.dump_request(params)
|
|
25
|
+
@client.request(
|
|
26
|
+
method: :post,
|
|
27
|
+
path: "license_keys",
|
|
28
|
+
body: parsed,
|
|
29
|
+
model: Dodopayments::LicenseKey,
|
|
30
|
+
options: options
|
|
31
|
+
)
|
|
32
|
+
end
|
|
33
|
+
|
|
34
|
+
# @deprecated
|
|
35
|
+
#
|
|
6
36
|
# @overload retrieve(id, request_options: {})
|
|
7
37
|
#
|
|
8
38
|
# @param id [String] License key ID
|
|
@@ -21,6 +51,8 @@ module Dodopayments
|
|
|
21
51
|
)
|
|
22
52
|
end
|
|
23
53
|
|
|
54
|
+
# @deprecated
|
|
55
|
+
#
|
|
24
56
|
# Some parameter documentations has been truncated, see
|
|
25
57
|
# {Dodopayments::Models::LicenseKeyUpdateParams} for more details.
|
|
26
58
|
#
|
|
@@ -50,7 +82,9 @@ module Dodopayments
|
|
|
50
82
|
)
|
|
51
83
|
end
|
|
52
84
|
|
|
53
|
-
# @
|
|
85
|
+
# @deprecated
|
|
86
|
+
#
|
|
87
|
+
# @overload list(created_at_gte: nil, created_at_lte: nil, customer_id: nil, page_number: nil, page_size: nil, product_id: nil, source: nil, status: nil, request_options: {})
|
|
54
88
|
#
|
|
55
89
|
# @param created_at_gte [Time] Filter license keys created on or after this timestamp
|
|
56
90
|
#
|
|
@@ -64,6 +98,8 @@ module Dodopayments
|
|
|
64
98
|
#
|
|
65
99
|
# @param product_id [String] Filter by product ID
|
|
66
100
|
#
|
|
101
|
+
# @param source [Symbol, Dodopayments::Models::LicenseKeyListParams::Source] Filter by license key source
|
|
102
|
+
#
|
|
67
103
|
# @param status [Symbol, Dodopayments::Models::LicenseKeyListParams::Status] Filter by license key status
|
|
68
104
|
#
|
|
69
105
|
# @param request_options [Dodopayments::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
@@ -12,7 +12,7 @@ module Dodopayments
|
|
|
12
12
|
# Some parameter documentations has been truncated, see
|
|
13
13
|
# {Dodopayments::Models::ProductCreateParams} for more details.
|
|
14
14
|
#
|
|
15
|
-
# @overload create(name:, price:, tax_category:, addons: nil, brand_id: nil, credit_entitlements: nil, description: nil, digital_product_delivery: nil, license_key_activation_message: nil, license_key_activations_limit: nil, license_key_duration: nil, license_key_enabled: nil, metadata: nil, request_options: {})
|
|
15
|
+
# @overload create(name:, price:, tax_category:, addons: nil, brand_id: nil, credit_entitlements: nil, description: nil, digital_product_delivery: nil, entitlement_ids: nil, license_key_activation_message: nil, license_key_activations_limit: nil, license_key_duration: nil, license_key_enabled: nil, metadata: nil, request_options: {})
|
|
16
16
|
#
|
|
17
17
|
# @param name [String] Name of the product
|
|
18
18
|
#
|
|
@@ -30,6 +30,8 @@ module Dodopayments
|
|
|
30
30
|
#
|
|
31
31
|
# @param digital_product_delivery [Dodopayments::Models::ProductCreateParams::DigitalProductDelivery, nil] Choose how you would like you digital product delivered
|
|
32
32
|
#
|
|
33
|
+
# @param entitlement_ids [Array<String>, nil] Optional entitlement IDs to attach to this product (max 20)
|
|
34
|
+
#
|
|
33
35
|
# @param license_key_activation_message [String, nil] Optional message displayed during license key activation
|
|
34
36
|
#
|
|
35
37
|
# @param license_key_activations_limit [Integer, nil] The number of times the license key can be activated.
|
|
@@ -77,7 +79,7 @@ module Dodopayments
|
|
|
77
79
|
# Some parameter documentations has been truncated, see
|
|
78
80
|
# {Dodopayments::Models::ProductUpdateParams} for more details.
|
|
79
81
|
#
|
|
80
|
-
# @overload update(id, addons: nil, brand_id: nil, credit_entitlements: nil, description: nil, digital_product_delivery: nil, image_id: nil, license_key_activation_message: nil, license_key_activations_limit: nil, license_key_duration: nil, license_key_enabled: nil, metadata: nil, name: nil, price: nil, tax_category: nil, request_options: {})
|
|
82
|
+
# @overload update(id, addons: nil, brand_id: nil, credit_entitlements: nil, description: nil, digital_product_delivery: nil, entitlement_ids: nil, image_id: nil, license_key_activation_message: nil, license_key_activations_limit: nil, license_key_duration: nil, license_key_enabled: nil, metadata: nil, name: nil, price: nil, tax_category: nil, request_options: {})
|
|
81
83
|
#
|
|
82
84
|
# @param id [String]
|
|
83
85
|
#
|
|
@@ -91,6 +93,8 @@ module Dodopayments
|
|
|
91
93
|
#
|
|
92
94
|
# @param digital_product_delivery [Dodopayments::Models::ProductUpdateParams::DigitalProductDelivery, nil] Choose how you would like you digital product delivered
|
|
93
95
|
#
|
|
96
|
+
# @param entitlement_ids [Array<String>, nil] Entitlement IDs to attach (replaces all existing when present)
|
|
97
|
+
#
|
|
94
98
|
# @param image_id [String, nil] Product image id after its uploaded to S3
|
|
95
99
|
#
|
|
96
100
|
# @param license_key_activation_message [String, nil] Message sent to the customer upon license key activation.
|
data/lib/dodopayments/version.rb
CHANGED
data/lib/dodopayments.rb
CHANGED
|
@@ -186,6 +186,7 @@ require_relative "dodopayments/models/license_activate_params"
|
|
|
186
186
|
require_relative "dodopayments/models/license_activate_response"
|
|
187
187
|
require_relative "dodopayments/models/license_deactivate_params"
|
|
188
188
|
require_relative "dodopayments/models/license_key_created_webhook_event"
|
|
189
|
+
require_relative "dodopayments/models/license_key_create_params"
|
|
189
190
|
require_relative "dodopayments/models/license_key_duration"
|
|
190
191
|
require_relative "dodopayments/models/license_key_instance"
|
|
191
192
|
require_relative "dodopayments/models/license_key_instance_list_params"
|
|
@@ -32,6 +32,9 @@ module Dodopayments
|
|
|
32
32
|
sig { returns(String) }
|
|
33
33
|
attr_accessor :discount_id
|
|
34
34
|
|
|
35
|
+
sig { returns(T::Hash[Symbol, String]) }
|
|
36
|
+
attr_accessor :metadata
|
|
37
|
+
|
|
35
38
|
# Whether this discount should be preserved when a subscription changes plans.
|
|
36
39
|
# Default: false (discount is removed on plan change)
|
|
37
40
|
sig { returns(T::Boolean) }
|
|
@@ -74,6 +77,7 @@ module Dodopayments
|
|
|
74
77
|
code: String,
|
|
75
78
|
created_at: Time,
|
|
76
79
|
discount_id: String,
|
|
80
|
+
metadata: T::Hash[Symbol, String],
|
|
77
81
|
preserve_on_plan_change: T::Boolean,
|
|
78
82
|
restricted_to: T::Array[String],
|
|
79
83
|
times_used: Integer,
|
|
@@ -99,6 +103,7 @@ module Dodopayments
|
|
|
99
103
|
created_at:,
|
|
100
104
|
# The unique discount ID
|
|
101
105
|
discount_id:,
|
|
106
|
+
metadata:,
|
|
102
107
|
# Whether this discount should be preserved when a subscription changes plans.
|
|
103
108
|
# Default: false (discount is removed on plan change)
|
|
104
109
|
preserve_on_plan_change:,
|
|
@@ -129,6 +134,7 @@ module Dodopayments
|
|
|
129
134
|
code: String,
|
|
130
135
|
created_at: Time,
|
|
131
136
|
discount_id: String,
|
|
137
|
+
metadata: T::Hash[Symbol, String],
|
|
132
138
|
preserve_on_plan_change: T::Boolean,
|
|
133
139
|
restricted_to: T::Array[String],
|
|
134
140
|
times_used: Integer,
|
|
@@ -40,6 +40,13 @@ module Dodopayments
|
|
|
40
40
|
sig { returns(T.nilable(Time)) }
|
|
41
41
|
attr_accessor :expires_at
|
|
42
42
|
|
|
43
|
+
# Additional metadata for the discount
|
|
44
|
+
sig { returns(T.nilable(T::Hash[Symbol, String])) }
|
|
45
|
+
attr_reader :metadata
|
|
46
|
+
|
|
47
|
+
sig { params(metadata: T::Hash[Symbol, String]).void }
|
|
48
|
+
attr_writer :metadata
|
|
49
|
+
|
|
43
50
|
sig { returns(T.nilable(String)) }
|
|
44
51
|
attr_accessor :name
|
|
45
52
|
|
|
@@ -71,6 +78,7 @@ module Dodopayments
|
|
|
71
78
|
type: Dodopayments::DiscountType::OrSymbol,
|
|
72
79
|
code: T.nilable(String),
|
|
73
80
|
expires_at: T.nilable(Time),
|
|
81
|
+
metadata: T::Hash[Symbol, String],
|
|
74
82
|
name: T.nilable(String),
|
|
75
83
|
preserve_on_plan_change: T::Boolean,
|
|
76
84
|
restricted_to: T.nilable(T::Array[String]),
|
|
@@ -98,6 +106,8 @@ module Dodopayments
|
|
|
98
106
|
code: nil,
|
|
99
107
|
# When the discount expires, if ever.
|
|
100
108
|
expires_at: nil,
|
|
109
|
+
# Additional metadata for the discount
|
|
110
|
+
metadata: nil,
|
|
101
111
|
name: nil,
|
|
102
112
|
# Whether this discount should be preserved when a subscription changes plans.
|
|
103
113
|
# Default: false (discount is removed on plan change)
|
|
@@ -121,6 +131,7 @@ module Dodopayments
|
|
|
121
131
|
type: Dodopayments::DiscountType::OrSymbol,
|
|
122
132
|
code: T.nilable(String),
|
|
123
133
|
expires_at: T.nilable(Time),
|
|
134
|
+
metadata: T::Hash[Symbol, String],
|
|
124
135
|
name: T.nilable(String),
|
|
125
136
|
preserve_on_plan_change: T::Boolean,
|
|
126
137
|
restricted_to: T.nilable(T::Array[String]),
|
|
@@ -34,6 +34,10 @@ module Dodopayments
|
|
|
34
34
|
sig { returns(T.nilable(Time)) }
|
|
35
35
|
attr_accessor :expires_at
|
|
36
36
|
|
|
37
|
+
# Additional metadata for the discount
|
|
38
|
+
sig { returns(T.nilable(T::Hash[Symbol, String])) }
|
|
39
|
+
attr_accessor :metadata
|
|
40
|
+
|
|
37
41
|
sig { returns(T.nilable(String)) }
|
|
38
42
|
attr_accessor :name
|
|
39
43
|
|
|
@@ -66,6 +70,7 @@ module Dodopayments
|
|
|
66
70
|
amount: T.nilable(Integer),
|
|
67
71
|
code: T.nilable(String),
|
|
68
72
|
expires_at: T.nilable(Time),
|
|
73
|
+
metadata: T.nilable(T::Hash[Symbol, String]),
|
|
69
74
|
name: T.nilable(String),
|
|
70
75
|
preserve_on_plan_change: T.nilable(T::Boolean),
|
|
71
76
|
restricted_to: T.nilable(T::Array[String]),
|
|
@@ -88,6 +93,8 @@ module Dodopayments
|
|
|
88
93
|
# If present, update the discount code (uppercase).
|
|
89
94
|
code: nil,
|
|
90
95
|
expires_at: nil,
|
|
96
|
+
# Additional metadata for the discount
|
|
97
|
+
metadata: nil,
|
|
91
98
|
name: nil,
|
|
92
99
|
# Whether this discount should be preserved when a subscription changes plans. If
|
|
93
100
|
# not provided, the existing value is kept.
|
|
@@ -113,6 +120,7 @@ module Dodopayments
|
|
|
113
120
|
amount: T.nilable(Integer),
|
|
114
121
|
code: T.nilable(String),
|
|
115
122
|
expires_at: T.nilable(Time),
|
|
123
|
+
metadata: T.nilable(T::Hash[Symbol, String]),
|
|
116
124
|
name: T.nilable(String),
|
|
117
125
|
preserve_on_plan_change: T.nilable(T::Boolean),
|
|
118
126
|
restricted_to: T.nilable(T::Array[String]),
|
|
@@ -32,14 +32,15 @@ module Dodopayments
|
|
|
32
32
|
sig { returns(String) }
|
|
33
33
|
attr_accessor :key
|
|
34
34
|
|
|
35
|
-
# The unique identifier of the payment associated with the license key.
|
|
36
|
-
sig { returns(String) }
|
|
37
|
-
attr_accessor :payment_id
|
|
38
|
-
|
|
39
35
|
# The unique identifier of the product associated with the license key.
|
|
40
36
|
sig { returns(String) }
|
|
41
37
|
attr_accessor :product_id
|
|
42
38
|
|
|
39
|
+
# The source of the license key - 'auto' for keys generated by
|
|
40
|
+
# payment/subscription flows, 'import' for merchant-imported keys.
|
|
41
|
+
sig { returns(Dodopayments::LicenseKey::Source::TaggedSymbol) }
|
|
42
|
+
attr_accessor :source
|
|
43
|
+
|
|
43
44
|
# The current status of the license key (e.g., active, inactive, expired).
|
|
44
45
|
sig { returns(Dodopayments::LicenseKeyStatus::TaggedSymbol) }
|
|
45
46
|
attr_accessor :status
|
|
@@ -52,6 +53,10 @@ module Dodopayments
|
|
|
52
53
|
sig { returns(T.nilable(Time)) }
|
|
53
54
|
attr_accessor :expires_at
|
|
54
55
|
|
|
56
|
+
# The unique identifier of the payment associated with the license key, if any.
|
|
57
|
+
sig { returns(T.nilable(String)) }
|
|
58
|
+
attr_accessor :payment_id
|
|
59
|
+
|
|
55
60
|
# The unique identifier of the subscription associated with the license key, if
|
|
56
61
|
# any.
|
|
57
62
|
sig { returns(T.nilable(String)) }
|
|
@@ -65,11 +70,12 @@ module Dodopayments
|
|
|
65
70
|
customer_id: String,
|
|
66
71
|
instances_count: Integer,
|
|
67
72
|
key: String,
|
|
68
|
-
payment_id: String,
|
|
69
73
|
product_id: String,
|
|
74
|
+
source: Dodopayments::LicenseKey::Source::OrSymbol,
|
|
70
75
|
status: Dodopayments::LicenseKeyStatus::OrSymbol,
|
|
71
76
|
activations_limit: T.nilable(Integer),
|
|
72
77
|
expires_at: T.nilable(Time),
|
|
78
|
+
payment_id: T.nilable(String),
|
|
73
79
|
subscription_id: T.nilable(String)
|
|
74
80
|
).returns(T.attached_class)
|
|
75
81
|
end
|
|
@@ -86,16 +92,19 @@ module Dodopayments
|
|
|
86
92
|
instances_count:,
|
|
87
93
|
# The license key string.
|
|
88
94
|
key:,
|
|
89
|
-
# The unique identifier of the payment associated with the license key.
|
|
90
|
-
payment_id:,
|
|
91
95
|
# The unique identifier of the product associated with the license key.
|
|
92
96
|
product_id:,
|
|
97
|
+
# The source of the license key - 'auto' for keys generated by
|
|
98
|
+
# payment/subscription flows, 'import' for merchant-imported keys.
|
|
99
|
+
source:,
|
|
93
100
|
# The current status of the license key (e.g., active, inactive, expired).
|
|
94
101
|
status:,
|
|
95
102
|
# The maximum number of activations allowed for this license key.
|
|
96
103
|
activations_limit: nil,
|
|
97
104
|
# The timestamp indicating when the license key expires, in UTC.
|
|
98
105
|
expires_at: nil,
|
|
106
|
+
# The unique identifier of the payment associated with the license key, if any.
|
|
107
|
+
payment_id: nil,
|
|
99
108
|
# The unique identifier of the subscription associated with the license key, if
|
|
100
109
|
# any.
|
|
101
110
|
subscription_id: nil
|
|
@@ -111,17 +120,39 @@ module Dodopayments
|
|
|
111
120
|
customer_id: String,
|
|
112
121
|
instances_count: Integer,
|
|
113
122
|
key: String,
|
|
114
|
-
payment_id: String,
|
|
115
123
|
product_id: String,
|
|
124
|
+
source: Dodopayments::LicenseKey::Source::TaggedSymbol,
|
|
116
125
|
status: Dodopayments::LicenseKeyStatus::TaggedSymbol,
|
|
117
126
|
activations_limit: T.nilable(Integer),
|
|
118
127
|
expires_at: T.nilable(Time),
|
|
128
|
+
payment_id: T.nilable(String),
|
|
119
129
|
subscription_id: T.nilable(String)
|
|
120
130
|
}
|
|
121
131
|
)
|
|
122
132
|
end
|
|
123
133
|
def to_hash
|
|
124
134
|
end
|
|
135
|
+
|
|
136
|
+
# The source of the license key - 'auto' for keys generated by
|
|
137
|
+
# payment/subscription flows, 'import' for merchant-imported keys.
|
|
138
|
+
module Source
|
|
139
|
+
extend Dodopayments::Internal::Type::Enum
|
|
140
|
+
|
|
141
|
+
TaggedSymbol =
|
|
142
|
+
T.type_alias { T.all(Symbol, Dodopayments::LicenseKey::Source) }
|
|
143
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
144
|
+
|
|
145
|
+
AUTO = T.let(:auto, Dodopayments::LicenseKey::Source::TaggedSymbol)
|
|
146
|
+
IMPORT = T.let(:import, Dodopayments::LicenseKey::Source::TaggedSymbol)
|
|
147
|
+
|
|
148
|
+
sig do
|
|
149
|
+
override.returns(
|
|
150
|
+
T::Array[Dodopayments::LicenseKey::Source::TaggedSymbol]
|
|
151
|
+
)
|
|
152
|
+
end
|
|
153
|
+
def self.values
|
|
154
|
+
end
|
|
155
|
+
end
|
|
125
156
|
end
|
|
126
157
|
end
|
|
127
158
|
end
|
|
@@ -0,0 +1,78 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module Dodopayments
|
|
4
|
+
module Models
|
|
5
|
+
class LicenseKeyCreateParams < Dodopayments::Internal::Type::BaseModel
|
|
6
|
+
extend Dodopayments::Internal::Type::RequestParameters::Converter
|
|
7
|
+
include Dodopayments::Internal::Type::RequestParameters
|
|
8
|
+
|
|
9
|
+
OrHash =
|
|
10
|
+
T.type_alias do
|
|
11
|
+
T.any(
|
|
12
|
+
Dodopayments::LicenseKeyCreateParams,
|
|
13
|
+
Dodopayments::Internal::AnyHash
|
|
14
|
+
)
|
|
15
|
+
end
|
|
16
|
+
|
|
17
|
+
# The customer this license key belongs to.
|
|
18
|
+
sig { returns(String) }
|
|
19
|
+
attr_accessor :customer_id
|
|
20
|
+
|
|
21
|
+
# The license key string to import.
|
|
22
|
+
sig { returns(String) }
|
|
23
|
+
attr_accessor :key
|
|
24
|
+
|
|
25
|
+
# The product this license key is for.
|
|
26
|
+
sig { returns(String) }
|
|
27
|
+
attr_accessor :product_id
|
|
28
|
+
|
|
29
|
+
# Maximum number of activations allowed. Null means unlimited.
|
|
30
|
+
sig { returns(T.nilable(Integer)) }
|
|
31
|
+
attr_accessor :activations_limit
|
|
32
|
+
|
|
33
|
+
# Expiration timestamp. Null means the key never expires.
|
|
34
|
+
sig { returns(T.nilable(Time)) }
|
|
35
|
+
attr_accessor :expires_at
|
|
36
|
+
|
|
37
|
+
sig do
|
|
38
|
+
params(
|
|
39
|
+
customer_id: String,
|
|
40
|
+
key: String,
|
|
41
|
+
product_id: String,
|
|
42
|
+
activations_limit: T.nilable(Integer),
|
|
43
|
+
expires_at: T.nilable(Time),
|
|
44
|
+
request_options: Dodopayments::RequestOptions::OrHash
|
|
45
|
+
).returns(T.attached_class)
|
|
46
|
+
end
|
|
47
|
+
def self.new(
|
|
48
|
+
# The customer this license key belongs to.
|
|
49
|
+
customer_id:,
|
|
50
|
+
# The license key string to import.
|
|
51
|
+
key:,
|
|
52
|
+
# The product this license key is for.
|
|
53
|
+
product_id:,
|
|
54
|
+
# Maximum number of activations allowed. Null means unlimited.
|
|
55
|
+
activations_limit: nil,
|
|
56
|
+
# Expiration timestamp. Null means the key never expires.
|
|
57
|
+
expires_at: nil,
|
|
58
|
+
request_options: {}
|
|
59
|
+
)
|
|
60
|
+
end
|
|
61
|
+
|
|
62
|
+
sig do
|
|
63
|
+
override.returns(
|
|
64
|
+
{
|
|
65
|
+
customer_id: String,
|
|
66
|
+
key: String,
|
|
67
|
+
product_id: String,
|
|
68
|
+
activations_limit: T.nilable(Integer),
|
|
69
|
+
expires_at: T.nilable(Time),
|
|
70
|
+
request_options: Dodopayments::RequestOptions
|
|
71
|
+
}
|
|
72
|
+
)
|
|
73
|
+
end
|
|
74
|
+
def to_hash
|
|
75
|
+
end
|
|
76
|
+
end
|
|
77
|
+
end
|
|
78
|
+
end
|
|
@@ -56,6 +56,19 @@ module Dodopayments
|
|
|
56
56
|
sig { params(product_id: String).void }
|
|
57
57
|
attr_writer :product_id
|
|
58
58
|
|
|
59
|
+
# Filter by license key source
|
|
60
|
+
sig do
|
|
61
|
+
returns(T.nilable(Dodopayments::LicenseKeyListParams::Source::OrSymbol))
|
|
62
|
+
end
|
|
63
|
+
attr_reader :source
|
|
64
|
+
|
|
65
|
+
sig do
|
|
66
|
+
params(
|
|
67
|
+
source: Dodopayments::LicenseKeyListParams::Source::OrSymbol
|
|
68
|
+
).void
|
|
69
|
+
end
|
|
70
|
+
attr_writer :source
|
|
71
|
+
|
|
59
72
|
# Filter by license key status
|
|
60
73
|
sig do
|
|
61
74
|
returns(T.nilable(Dodopayments::LicenseKeyListParams::Status::OrSymbol))
|
|
@@ -77,6 +90,7 @@ module Dodopayments
|
|
|
77
90
|
page_number: Integer,
|
|
78
91
|
page_size: Integer,
|
|
79
92
|
product_id: String,
|
|
93
|
+
source: Dodopayments::LicenseKeyListParams::Source::OrSymbol,
|
|
80
94
|
status: Dodopayments::LicenseKeyListParams::Status::OrSymbol,
|
|
81
95
|
request_options: Dodopayments::RequestOptions::OrHash
|
|
82
96
|
).returns(T.attached_class)
|
|
@@ -94,6 +108,8 @@ module Dodopayments
|
|
|
94
108
|
page_size: nil,
|
|
95
109
|
# Filter by product ID
|
|
96
110
|
product_id: nil,
|
|
111
|
+
# Filter by license key source
|
|
112
|
+
source: nil,
|
|
97
113
|
# Filter by license key status
|
|
98
114
|
status: nil,
|
|
99
115
|
request_options: {}
|
|
@@ -109,6 +125,7 @@ module Dodopayments
|
|
|
109
125
|
page_number: Integer,
|
|
110
126
|
page_size: Integer,
|
|
111
127
|
product_id: String,
|
|
128
|
+
source: Dodopayments::LicenseKeyListParams::Source::OrSymbol,
|
|
112
129
|
status: Dodopayments::LicenseKeyListParams::Status::OrSymbol,
|
|
113
130
|
request_options: Dodopayments::RequestOptions
|
|
114
131
|
}
|
|
@@ -117,6 +134,33 @@ module Dodopayments
|
|
|
117
134
|
def to_hash
|
|
118
135
|
end
|
|
119
136
|
|
|
137
|
+
# Filter by license key source
|
|
138
|
+
module Source
|
|
139
|
+
extend Dodopayments::Internal::Type::Enum
|
|
140
|
+
|
|
141
|
+
TaggedSymbol =
|
|
142
|
+
T.type_alias do
|
|
143
|
+
T.all(Symbol, Dodopayments::LicenseKeyListParams::Source)
|
|
144
|
+
end
|
|
145
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
146
|
+
|
|
147
|
+
AUTO =
|
|
148
|
+
T.let(:auto, Dodopayments::LicenseKeyListParams::Source::TaggedSymbol)
|
|
149
|
+
IMPORT =
|
|
150
|
+
T.let(
|
|
151
|
+
:import,
|
|
152
|
+
Dodopayments::LicenseKeyListParams::Source::TaggedSymbol
|
|
153
|
+
)
|
|
154
|
+
|
|
155
|
+
sig do
|
|
156
|
+
override.returns(
|
|
157
|
+
T::Array[Dodopayments::LicenseKeyListParams::Source::TaggedSymbol]
|
|
158
|
+
)
|
|
159
|
+
end
|
|
160
|
+
def self.values
|
|
161
|
+
end
|
|
162
|
+
end
|
|
163
|
+
|
|
120
164
|
# Filter by license key status
|
|
121
165
|
module Status
|
|
122
166
|
extend Dodopayments::Internal::Type::Enum
|