dodopayments 2.8.0 → 2.9.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 +17 -0
- data/README.md +1 -1
- data/lib/dodopayments/client.rb +4 -0
- data/lib/dodopayments/models/attach_product_entitlement.rb +22 -0
- data/lib/dodopayments/models/cancellation_feedback.rb +21 -0
- data/lib/dodopayments/models/checkout_session_flags.rb +12 -1
- data/lib/dodopayments/models/checkout_session_request.rb +14 -1
- data/lib/dodopayments/models/credit_entitlements/credit_ledger_entry.rb +1 -0
- data/lib/dodopayments/models/credit_overage_reset_webhook_event.rb +52 -0
- data/lib/dodopayments/models/customer_list_entitlements_params.rb +20 -0
- data/lib/dodopayments/models/customer_list_entitlements_response.rb +105 -0
- data/lib/dodopayments/models/digital_product_delivery.rb +13 -15
- data/lib/dodopayments/models/digital_product_delivery_file.rb +32 -8
- data/lib/dodopayments/models/entitlement.rb +86 -0
- data/lib/dodopayments/models/entitlement_create_params.rb +54 -0
- data/lib/dodopayments/models/entitlement_delete_params.rb +20 -0
- data/lib/dodopayments/models/entitlement_grant_created_webhook_event.rb +51 -0
- data/lib/dodopayments/models/entitlement_grant_delivered_webhook_event.rb +51 -0
- data/lib/dodopayments/models/entitlement_grant_failed_webhook_event.rb +51 -0
- data/lib/dodopayments/models/entitlement_grant_revoked_webhook_event.rb +51 -0
- data/lib/dodopayments/models/entitlement_integration_type.rb +21 -0
- data/lib/dodopayments/models/entitlement_list_params.rb +55 -0
- data/lib/dodopayments/models/entitlement_retrieve_params.rb +20 -0
- data/lib/dodopayments/models/entitlement_update_params.rb +54 -0
- data/lib/dodopayments/models/entitlements/entitlement_grant.rb +172 -0
- data/lib/dodopayments/models/entitlements/file_delete_params.rb +28 -0
- data/lib/dodopayments/models/entitlements/file_upload_params.rb +22 -0
- data/lib/dodopayments/models/entitlements/file_upload_response.rb +23 -0
- data/lib/dodopayments/models/entitlements/grant_list_params.rb +68 -0
- data/lib/dodopayments/models/entitlements/grant_revoke_params.rb +28 -0
- data/lib/dodopayments/models/entitlements/license_key_grant.rb +40 -0
- data/lib/dodopayments/models/integration_config.rb +174 -0
- data/lib/dodopayments/models/integration_config_response.rb +238 -0
- data/lib/dodopayments/models/license_key_instance_list_params.rb +9 -1
- data/lib/dodopayments/models/one_time_product_cart_item.rb +15 -1
- data/lib/dodopayments/models/payment.rb +19 -3
- data/lib/dodopayments/models/payment_create_params.rb +23 -35
- data/lib/dodopayments/models/payment_create_response.rb +3 -33
- data/lib/dodopayments/models/product.rb +12 -217
- data/lib/dodopayments/models/product_create_params.rb +25 -6
- data/lib/dodopayments/models/product_entitlement_summary.rb +57 -0
- data/lib/dodopayments/models/product_list_response.rb +3 -218
- data/lib/dodopayments/models/product_update_params.rb +21 -7
- data/lib/dodopayments/models/scheduled_plan_change.rb +99 -0
- data/lib/dodopayments/models/subscription.rb +20 -102
- data/lib/dodopayments/models/subscription_create_params.rb +27 -37
- data/lib/dodopayments/models/subscription_create_response.rb +19 -3
- data/lib/dodopayments/models/subscription_list_response.rb +3 -103
- data/lib/dodopayments/models/subscription_update_params.rb +23 -1
- data/lib/dodopayments/models/unsafe_unwrap_webhook_event.rb +11 -1
- data/lib/dodopayments/models/unwrap_webhook_event.rb +11 -1
- data/lib/dodopayments/models/update_subscription_plan_req.rb +10 -1
- data/lib/dodopayments/models/webhook_event_type.rb +1 -0
- data/lib/dodopayments/models/webhook_payload.rb +2 -154
- data/lib/dodopayments/models.rb +40 -0
- data/lib/dodopayments/resources/checkout_sessions.rb +6 -2
- data/lib/dodopayments/resources/customers.rb +20 -0
- data/lib/dodopayments/resources/entitlements/files.rb +70 -0
- data/lib/dodopayments/resources/entitlements/grants.rb +78 -0
- data/lib/dodopayments/resources/entitlements.rb +153 -0
- data/lib/dodopayments/resources/license_key_instances.rb +3 -1
- data/lib/dodopayments/resources/payments.rb +6 -2
- data/lib/dodopayments/resources/products.rb +4 -4
- data/lib/dodopayments/resources/subscriptions.rb +20 -5
- data/lib/dodopayments/resources/webhooks.rb +2 -2
- data/lib/dodopayments/version.rb +1 -1
- data/lib/dodopayments.rb +30 -0
- data/rbi/dodopayments/client.rbi +3 -0
- data/rbi/dodopayments/models/attach_product_entitlement.rbi +35 -0
- data/rbi/dodopayments/models/cancellation_feedback.rbi +45 -0
- data/rbi/dodopayments/models/checkout_session_flags.rbi +20 -3
- data/rbi/dodopayments/models/checkout_session_request.rbi +18 -0
- data/rbi/dodopayments/models/credit_entitlements/credit_ledger_entry.rbi +5 -0
- data/rbi/dodopayments/models/credit_overage_reset_webhook_event.rbi +103 -0
- data/rbi/dodopayments/models/customer_list_entitlements_params.rbi +38 -0
- data/rbi/dodopayments/models/customer_list_entitlements_response.rbi +189 -0
- data/rbi/dodopayments/models/digital_product_delivery.rbi +10 -22
- data/rbi/dodopayments/models/digital_product_delivery_file.rbi +40 -8
- data/rbi/dodopayments/models/entitlement.rbi +112 -0
- data/rbi/dodopayments/models/entitlement_create_params.rbi +112 -0
- data/rbi/dodopayments/models/entitlement_delete_params.rbi +38 -0
- data/rbi/dodopayments/models/entitlement_grant_created_webhook_event.rbi +103 -0
- data/rbi/dodopayments/models/entitlement_grant_delivered_webhook_event.rbi +103 -0
- data/rbi/dodopayments/models/entitlement_grant_failed_webhook_event.rbi +102 -0
- data/rbi/dodopayments/models/entitlement_grant_revoked_webhook_event.rbi +103 -0
- data/rbi/dodopayments/models/entitlement_integration_type.rbi +44 -0
- data/rbi/dodopayments/models/entitlement_list_params.rbi +146 -0
- data/rbi/dodopayments/models/entitlement_retrieve_params.rbi +38 -0
- data/rbi/dodopayments/models/entitlement_update_params.rbi +111 -0
- data/rbi/dodopayments/models/entitlements/entitlement_grant.rbi +235 -0
- data/rbi/dodopayments/models/entitlements/file_delete_params.rbi +48 -0
- data/rbi/dodopayments/models/entitlements/file_upload_params.rbi +40 -0
- data/rbi/dodopayments/models/entitlements/file_upload_response.rbi +34 -0
- data/rbi/dodopayments/models/entitlements/grant_list_params.rbi +145 -0
- data/rbi/dodopayments/models/entitlements/grant_revoke_params.rbi +48 -0
- data/rbi/dodopayments/models/entitlements/license_key_grant.rbi +62 -0
- data/rbi/dodopayments/models/integration_config.rbi +296 -0
- data/rbi/dodopayments/models/integration_config_response.rbi +416 -0
- data/rbi/dodopayments/models/license_key_instance_list_params.rbi +8 -0
- data/rbi/dodopayments/models/one_time_product_cart_item.rbi +24 -3
- data/rbi/dodopayments/models/payment.rbi +31 -3
- data/rbi/dodopayments/models/payment_create_params.rbi +28 -56
- data/rbi/dodopayments/models/payment_create_response.rbi +3 -68
- data/rbi/dodopayments/models/product.rbi +12 -420
- data/rbi/dodopayments/models/product_create_params.rbi +43 -7
- data/rbi/dodopayments/models/product_entitlement_summary.rbi +88 -0
- data/rbi/dodopayments/models/product_list_response.rbi +3 -430
- data/rbi/dodopayments/models/product_update_params.rbi +35 -9
- data/rbi/dodopayments/models/scheduled_plan_change.rbi +141 -0
- data/rbi/dodopayments/models/subscription.rbi +24 -149
- data/rbi/dodopayments/models/subscription_create_params.rbi +36 -68
- data/rbi/dodopayments/models/subscription_create_response.rbi +47 -3
- data/rbi/dodopayments/models/subscription_list_response.rbi +4 -167
- data/rbi/dodopayments/models/subscription_update_params.rbi +27 -0
- data/rbi/dodopayments/models/unsafe_unwrap_webhook_event.rbi +5 -0
- data/rbi/dodopayments/models/unwrap_webhook_event.rbi +5 -0
- data/rbi/dodopayments/models/update_subscription_plan_req.rbi +10 -0
- data/rbi/dodopayments/models/webhook_event_type.rbi +5 -0
- data/rbi/dodopayments/models/webhook_payload.rbi +4 -197
- data/rbi/dodopayments/models.rbi +46 -0
- data/rbi/dodopayments/resources/checkout_sessions.rbi +16 -0
- data/rbi/dodopayments/resources/customers.rbi +14 -0
- data/rbi/dodopayments/resources/entitlements/files.rbi +52 -0
- data/rbi/dodopayments/resources/entitlements/grants.rbi +65 -0
- data/rbi/dodopayments/resources/entitlements.rbi +143 -0
- data/rbi/dodopayments/resources/license_key_instances.rbi +3 -0
- data/rbi/dodopayments/resources/payments.rbi +10 -2
- data/rbi/dodopayments/resources/products.rbi +34 -7
- data/rbi/dodopayments/resources/subscriptions.rbi +31 -5
- data/rbi/dodopayments/resources/webhooks.rbi +10 -0
- data/sig/dodopayments/client.rbs +2 -0
- data/sig/dodopayments/models/attach_product_entitlement.rbs +13 -0
- data/sig/dodopayments/models/cancellation_feedback.rbs +28 -0
- data/sig/dodopayments/models/checkout_session_flags.rbs +10 -3
- data/sig/dodopayments/models/checkout_session_request.rbs +5 -0
- data/sig/dodopayments/models/credit_entitlements/credit_ledger_entry.rbs +2 -0
- data/sig/dodopayments/models/credit_overage_reset_webhook_event.rbs +45 -0
- data/sig/dodopayments/models/customer_list_entitlements_params.rbs +23 -0
- data/sig/dodopayments/models/customer_list_entitlements_response.rbs +95 -0
- data/sig/dodopayments/models/digital_product_delivery.rbs +5 -5
- data/sig/dodopayments/models/digital_product_delivery_file.rbs +32 -5
- data/sig/dodopayments/models/entitlement.rbs +67 -0
- data/sig/dodopayments/models/entitlement_create_params.rbs +46 -0
- data/sig/dodopayments/models/entitlement_delete_params.rbs +23 -0
- data/sig/dodopayments/models/entitlement_grant_created_webhook_event.rbs +45 -0
- data/sig/dodopayments/models/entitlement_grant_delivered_webhook_event.rbs +45 -0
- data/sig/dodopayments/models/entitlement_grant_failed_webhook_event.rbs +45 -0
- data/sig/dodopayments/models/entitlement_grant_revoked_webhook_event.rbs +45 -0
- data/sig/dodopayments/models/entitlement_integration_type.rbs +28 -0
- data/sig/dodopayments/models/entitlement_list_params.rbs +69 -0
- data/sig/dodopayments/models/entitlement_retrieve_params.rbs +23 -0
- data/sig/dodopayments/models/entitlement_update_params.rbs +46 -0
- data/sig/dodopayments/models/entitlements/entitlement_grant.rbs +134 -0
- data/sig/dodopayments/models/entitlements/file_delete_params.rbs +30 -0
- data/sig/dodopayments/models/entitlements/file_upload_params.rbs +25 -0
- data/sig/dodopayments/models/entitlements/file_upload_response.rbs +15 -0
- data/sig/dodopayments/models/entitlements/grant_list_params.rbs +71 -0
- data/sig/dodopayments/models/entitlements/grant_revoke_params.rbs +30 -0
- data/sig/dodopayments/models/entitlements/license_key_grant.rbs +37 -0
- data/sig/dodopayments/models/integration_config.rbs +147 -0
- data/sig/dodopayments/models/integration_config_response.rbs +206 -0
- data/sig/dodopayments/models/license_key_instance_list_params.rbs +10 -1
- data/sig/dodopayments/models/one_time_product_cart_item.rbs +14 -3
- data/sig/dodopayments/models/payment.rbs +16 -4
- data/sig/dodopayments/models/payment_create_params.rbs +16 -27
- data/sig/dodopayments/models/payment_create_response.rbs +4 -27
- data/sig/dodopayments/models/product.rbs +4 -205
- data/sig/dodopayments/models/product_create_params.rbs +4 -4
- data/sig/dodopayments/models/product_entitlement_summary.rbs +40 -0
- data/sig/dodopayments/models/product_list_response.rbs +4 -205
- data/sig/dodopayments/models/product_update_params.rbs +4 -4
- data/sig/dodopayments/models/scheduled_plan_change.rbs +73 -0
- data/sig/dodopayments/models/subscription.rbs +14 -74
- data/sig/dodopayments/models/subscription_create_params.rbs +16 -27
- data/sig/dodopayments/models/subscription_create_response.rbs +16 -4
- data/sig/dodopayments/models/subscription_list_response.rbs +4 -74
- data/sig/dodopayments/models/subscription_update_params.rbs +12 -0
- data/sig/dodopayments/models/unsafe_unwrap_webhook_event.rbs +5 -0
- data/sig/dodopayments/models/unwrap_webhook_event.rbs +5 -0
- data/sig/dodopayments/models/update_subscription_plan_req.rbs +5 -0
- data/sig/dodopayments/models/webhook_event_type.rbs +2 -0
- data/sig/dodopayments/models/webhook_payload.rbs +8 -134
- data/sig/dodopayments/models.rbs +40 -0
- data/sig/dodopayments/resources/checkout_sessions.rbs +2 -0
- data/sig/dodopayments/resources/customers.rbs +5 -0
- data/sig/dodopayments/resources/entitlements/files.rbs +20 -0
- data/sig/dodopayments/resources/entitlements/grants.rbs +24 -0
- data/sig/dodopayments/resources/entitlements.rbs +46 -0
- data/sig/dodopayments/resources/license_key_instances.rbs +1 -0
- data/sig/dodopayments/resources/payments.rbs +3 -1
- data/sig/dodopayments/resources/products.rbs +2 -2
- data/sig/dodopayments/resources/subscriptions.rbs +7 -1
- data/sig/dodopayments/resources/webhooks.rbs +10 -0
- metadata +92 -2
|
@@ -0,0 +1,88 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module Dodopayments
|
|
4
|
+
module Models
|
|
5
|
+
class ProductEntitlementSummary < Dodopayments::Internal::Type::BaseModel
|
|
6
|
+
OrHash =
|
|
7
|
+
T.type_alias do
|
|
8
|
+
T.any(
|
|
9
|
+
Dodopayments::ProductEntitlementSummary,
|
|
10
|
+
Dodopayments::Internal::AnyHash
|
|
11
|
+
)
|
|
12
|
+
end
|
|
13
|
+
|
|
14
|
+
sig { returns(String) }
|
|
15
|
+
attr_accessor :id
|
|
16
|
+
|
|
17
|
+
# Public-facing variant of [`IntegrationConfig`]. Mirrors every variant shape on
|
|
18
|
+
# the wire EXCEPT `DigitalFiles`, which is replaced with a hydrated
|
|
19
|
+
# `digital_files` object (resolved download URLs etc.). The persisted JSONB stays
|
|
20
|
+
# ID-only via [`IntegrationConfig`]; this enum is response-only.
|
|
21
|
+
sig { returns(Dodopayments::IntegrationConfigResponse::Variants) }
|
|
22
|
+
attr_accessor :integration_config
|
|
23
|
+
|
|
24
|
+
sig { returns(Dodopayments::EntitlementIntegrationType::TaggedSymbol) }
|
|
25
|
+
attr_accessor :integration_type
|
|
26
|
+
|
|
27
|
+
sig { returns(String) }
|
|
28
|
+
attr_accessor :name
|
|
29
|
+
|
|
30
|
+
sig { returns(T.nilable(String)) }
|
|
31
|
+
attr_accessor :description
|
|
32
|
+
|
|
33
|
+
# Summary of an entitlement attached to a product.
|
|
34
|
+
#
|
|
35
|
+
# `integration_config` uses [`IntegrationConfigResponse`] (NOT the persisted
|
|
36
|
+
# [`IntegrationConfig`]) so digital_files entitlements embed the resolved
|
|
37
|
+
# `digital_files` object — matching what `GET /entitlements/{id}` returns. All
|
|
38
|
+
# other variants pass through unchanged via `#[serde(untagged)]`.
|
|
39
|
+
sig do
|
|
40
|
+
params(
|
|
41
|
+
id: String,
|
|
42
|
+
integration_config:
|
|
43
|
+
T.any(
|
|
44
|
+
Dodopayments::IntegrationConfigResponse::GitHubConfig::OrHash,
|
|
45
|
+
Dodopayments::IntegrationConfigResponse::DiscordConfig::OrHash,
|
|
46
|
+
Dodopayments::IntegrationConfigResponse::TelegramConfig::OrHash,
|
|
47
|
+
Dodopayments::IntegrationConfigResponse::FigmaConfig::OrHash,
|
|
48
|
+
Dodopayments::IntegrationConfigResponse::FramerConfig::OrHash,
|
|
49
|
+
Dodopayments::IntegrationConfigResponse::NotionConfig::OrHash,
|
|
50
|
+
Dodopayments::IntegrationConfigResponse::DigitalFilesConfig::OrHash,
|
|
51
|
+
Dodopayments::IntegrationConfigResponse::LicenseKeyConfig::OrHash
|
|
52
|
+
),
|
|
53
|
+
integration_type: Dodopayments::EntitlementIntegrationType::OrSymbol,
|
|
54
|
+
name: String,
|
|
55
|
+
description: T.nilable(String)
|
|
56
|
+
).returns(T.attached_class)
|
|
57
|
+
end
|
|
58
|
+
def self.new(
|
|
59
|
+
id:,
|
|
60
|
+
# Public-facing variant of [`IntegrationConfig`]. Mirrors every variant shape on
|
|
61
|
+
# the wire EXCEPT `DigitalFiles`, which is replaced with a hydrated
|
|
62
|
+
# `digital_files` object (resolved download URLs etc.). The persisted JSONB stays
|
|
63
|
+
# ID-only via [`IntegrationConfig`]; this enum is response-only.
|
|
64
|
+
integration_config:,
|
|
65
|
+
integration_type:,
|
|
66
|
+
name:,
|
|
67
|
+
description: nil
|
|
68
|
+
)
|
|
69
|
+
end
|
|
70
|
+
|
|
71
|
+
sig do
|
|
72
|
+
override.returns(
|
|
73
|
+
{
|
|
74
|
+
id: String,
|
|
75
|
+
integration_config:
|
|
76
|
+
Dodopayments::IntegrationConfigResponse::Variants,
|
|
77
|
+
integration_type:
|
|
78
|
+
Dodopayments::EntitlementIntegrationType::TaggedSymbol,
|
|
79
|
+
name: String,
|
|
80
|
+
description: T.nilable(String)
|
|
81
|
+
}
|
|
82
|
+
)
|
|
83
|
+
end
|
|
84
|
+
def to_hash
|
|
85
|
+
end
|
|
86
|
+
end
|
|
87
|
+
end
|
|
88
|
+
end
|
|
@@ -20,11 +20,7 @@ module Dodopayments
|
|
|
20
20
|
attr_accessor :created_at
|
|
21
21
|
|
|
22
22
|
# Entitlements linked to this product
|
|
23
|
-
sig
|
|
24
|
-
returns(
|
|
25
|
-
T::Array[Dodopayments::Models::ProductListResponse::Entitlement]
|
|
26
|
-
)
|
|
27
|
-
end
|
|
23
|
+
sig { returns(T::Array[Dodopayments::ProductEntitlementSummary]) }
|
|
28
24
|
attr_accessor :entitlements
|
|
29
25
|
|
|
30
26
|
# Indicates if the product is recurring (e.g., subscriptions).
|
|
@@ -89,9 +85,7 @@ module Dodopayments
|
|
|
89
85
|
business_id: String,
|
|
90
86
|
created_at: Time,
|
|
91
87
|
entitlements:
|
|
92
|
-
T::Array[
|
|
93
|
-
Dodopayments::Models::ProductListResponse::Entitlement::OrHash
|
|
94
|
-
],
|
|
88
|
+
T::Array[Dodopayments::ProductEntitlementSummary::OrHash],
|
|
95
89
|
is_recurring: T::Boolean,
|
|
96
90
|
metadata: T::Hash[Symbol, String],
|
|
97
91
|
product_id: String,
|
|
@@ -161,8 +155,7 @@ module Dodopayments
|
|
|
161
155
|
{
|
|
162
156
|
business_id: String,
|
|
163
157
|
created_at: Time,
|
|
164
|
-
entitlements:
|
|
165
|
-
T::Array[Dodopayments::Models::ProductListResponse::Entitlement],
|
|
158
|
+
entitlements: T::Array[Dodopayments::ProductEntitlementSummary],
|
|
166
159
|
is_recurring: T::Boolean,
|
|
167
160
|
metadata: T::Hash[Symbol, String],
|
|
168
161
|
product_id: String,
|
|
@@ -180,426 +173,6 @@ module Dodopayments
|
|
|
180
173
|
end
|
|
181
174
|
def to_hash
|
|
182
175
|
end
|
|
183
|
-
|
|
184
|
-
class Entitlement < Dodopayments::Internal::Type::BaseModel
|
|
185
|
-
OrHash =
|
|
186
|
-
T.type_alias do
|
|
187
|
-
T.any(
|
|
188
|
-
Dodopayments::Models::ProductListResponse::Entitlement,
|
|
189
|
-
Dodopayments::Internal::AnyHash
|
|
190
|
-
)
|
|
191
|
-
end
|
|
192
|
-
|
|
193
|
-
sig { returns(String) }
|
|
194
|
-
attr_accessor :id
|
|
195
|
-
|
|
196
|
-
# Platform-specific configuration for an entitlement. Each variant uses unique
|
|
197
|
-
# field names so `#[serde(untagged)]` can disambiguate correctly.
|
|
198
|
-
sig do
|
|
199
|
-
returns(
|
|
200
|
-
Dodopayments::Models::ProductListResponse::Entitlement::IntegrationConfig::Variants
|
|
201
|
-
)
|
|
202
|
-
end
|
|
203
|
-
attr_accessor :integration_config
|
|
204
|
-
|
|
205
|
-
sig do
|
|
206
|
-
returns(
|
|
207
|
-
Dodopayments::Models::ProductListResponse::Entitlement::IntegrationType::TaggedSymbol
|
|
208
|
-
)
|
|
209
|
-
end
|
|
210
|
-
attr_accessor :integration_type
|
|
211
|
-
|
|
212
|
-
sig { returns(String) }
|
|
213
|
-
attr_accessor :name
|
|
214
|
-
|
|
215
|
-
sig { returns(T.nilable(String)) }
|
|
216
|
-
attr_accessor :description
|
|
217
|
-
|
|
218
|
-
# Summary of an entitlement attached to a product
|
|
219
|
-
sig do
|
|
220
|
-
params(
|
|
221
|
-
id: String,
|
|
222
|
-
integration_config:
|
|
223
|
-
T.any(
|
|
224
|
-
Dodopayments::Models::ProductListResponse::Entitlement::IntegrationConfig::GitHubConfig::OrHash,
|
|
225
|
-
Dodopayments::Models::ProductListResponse::Entitlement::IntegrationConfig::DiscordConfig::OrHash,
|
|
226
|
-
Dodopayments::Models::ProductListResponse::Entitlement::IntegrationConfig::TelegramConfig::OrHash,
|
|
227
|
-
Dodopayments::Models::ProductListResponse::Entitlement::IntegrationConfig::FigmaConfig::OrHash,
|
|
228
|
-
Dodopayments::Models::ProductListResponse::Entitlement::IntegrationConfig::FramerConfig::OrHash,
|
|
229
|
-
Dodopayments::Models::ProductListResponse::Entitlement::IntegrationConfig::NotionConfig::OrHash,
|
|
230
|
-
Dodopayments::Models::ProductListResponse::Entitlement::IntegrationConfig::DigitalFilesConfig::OrHash,
|
|
231
|
-
Dodopayments::Models::ProductListResponse::Entitlement::IntegrationConfig::LicenseKeyConfig::OrHash
|
|
232
|
-
),
|
|
233
|
-
integration_type:
|
|
234
|
-
Dodopayments::Models::ProductListResponse::Entitlement::IntegrationType::OrSymbol,
|
|
235
|
-
name: String,
|
|
236
|
-
description: T.nilable(String)
|
|
237
|
-
).returns(T.attached_class)
|
|
238
|
-
end
|
|
239
|
-
def self.new(
|
|
240
|
-
id:,
|
|
241
|
-
# Platform-specific configuration for an entitlement. Each variant uses unique
|
|
242
|
-
# field names so `#[serde(untagged)]` can disambiguate correctly.
|
|
243
|
-
integration_config:,
|
|
244
|
-
integration_type:,
|
|
245
|
-
name:,
|
|
246
|
-
description: nil
|
|
247
|
-
)
|
|
248
|
-
end
|
|
249
|
-
|
|
250
|
-
sig do
|
|
251
|
-
override.returns(
|
|
252
|
-
{
|
|
253
|
-
id: String,
|
|
254
|
-
integration_config:
|
|
255
|
-
Dodopayments::Models::ProductListResponse::Entitlement::IntegrationConfig::Variants,
|
|
256
|
-
integration_type:
|
|
257
|
-
Dodopayments::Models::ProductListResponse::Entitlement::IntegrationType::TaggedSymbol,
|
|
258
|
-
name: String,
|
|
259
|
-
description: T.nilable(String)
|
|
260
|
-
}
|
|
261
|
-
)
|
|
262
|
-
end
|
|
263
|
-
def to_hash
|
|
264
|
-
end
|
|
265
|
-
|
|
266
|
-
# Platform-specific configuration for an entitlement. Each variant uses unique
|
|
267
|
-
# field names so `#[serde(untagged)]` can disambiguate correctly.
|
|
268
|
-
module IntegrationConfig
|
|
269
|
-
extend Dodopayments::Internal::Type::Union
|
|
270
|
-
|
|
271
|
-
Variants =
|
|
272
|
-
T.type_alias do
|
|
273
|
-
T.any(
|
|
274
|
-
Dodopayments::Models::ProductListResponse::Entitlement::IntegrationConfig::GitHubConfig,
|
|
275
|
-
Dodopayments::Models::ProductListResponse::Entitlement::IntegrationConfig::DiscordConfig,
|
|
276
|
-
Dodopayments::Models::ProductListResponse::Entitlement::IntegrationConfig::TelegramConfig,
|
|
277
|
-
Dodopayments::Models::ProductListResponse::Entitlement::IntegrationConfig::FigmaConfig,
|
|
278
|
-
Dodopayments::Models::ProductListResponse::Entitlement::IntegrationConfig::FramerConfig,
|
|
279
|
-
Dodopayments::Models::ProductListResponse::Entitlement::IntegrationConfig::NotionConfig,
|
|
280
|
-
Dodopayments::Models::ProductListResponse::Entitlement::IntegrationConfig::DigitalFilesConfig,
|
|
281
|
-
Dodopayments::Models::ProductListResponse::Entitlement::IntegrationConfig::LicenseKeyConfig
|
|
282
|
-
)
|
|
283
|
-
end
|
|
284
|
-
|
|
285
|
-
class GitHubConfig < Dodopayments::Internal::Type::BaseModel
|
|
286
|
-
OrHash =
|
|
287
|
-
T.type_alias do
|
|
288
|
-
T.any(
|
|
289
|
-
Dodopayments::Models::ProductListResponse::Entitlement::IntegrationConfig::GitHubConfig,
|
|
290
|
-
Dodopayments::Internal::AnyHash
|
|
291
|
-
)
|
|
292
|
-
end
|
|
293
|
-
|
|
294
|
-
# One of: pull, push, admin, maintain, triage
|
|
295
|
-
sig { returns(String) }
|
|
296
|
-
attr_accessor :permission
|
|
297
|
-
|
|
298
|
-
sig { returns(String) }
|
|
299
|
-
attr_accessor :target_id
|
|
300
|
-
|
|
301
|
-
sig do
|
|
302
|
-
params(permission: String, target_id: String).returns(
|
|
303
|
-
T.attached_class
|
|
304
|
-
)
|
|
305
|
-
end
|
|
306
|
-
def self.new(
|
|
307
|
-
# One of: pull, push, admin, maintain, triage
|
|
308
|
-
permission:,
|
|
309
|
-
target_id:
|
|
310
|
-
)
|
|
311
|
-
end
|
|
312
|
-
|
|
313
|
-
sig { override.returns({ permission: String, target_id: String }) }
|
|
314
|
-
def to_hash
|
|
315
|
-
end
|
|
316
|
-
end
|
|
317
|
-
|
|
318
|
-
class DiscordConfig < Dodopayments::Internal::Type::BaseModel
|
|
319
|
-
OrHash =
|
|
320
|
-
T.type_alias do
|
|
321
|
-
T.any(
|
|
322
|
-
Dodopayments::Models::ProductListResponse::Entitlement::IntegrationConfig::DiscordConfig,
|
|
323
|
-
Dodopayments::Internal::AnyHash
|
|
324
|
-
)
|
|
325
|
-
end
|
|
326
|
-
|
|
327
|
-
sig { returns(String) }
|
|
328
|
-
attr_accessor :guild_id
|
|
329
|
-
|
|
330
|
-
sig { returns(T.nilable(String)) }
|
|
331
|
-
attr_accessor :role_id
|
|
332
|
-
|
|
333
|
-
sig do
|
|
334
|
-
params(guild_id: String, role_id: T.nilable(String)).returns(
|
|
335
|
-
T.attached_class
|
|
336
|
-
)
|
|
337
|
-
end
|
|
338
|
-
def self.new(guild_id:, role_id: nil)
|
|
339
|
-
end
|
|
340
|
-
|
|
341
|
-
sig do
|
|
342
|
-
override.returns({ guild_id: String, role_id: T.nilable(String) })
|
|
343
|
-
end
|
|
344
|
-
def to_hash
|
|
345
|
-
end
|
|
346
|
-
end
|
|
347
|
-
|
|
348
|
-
class TelegramConfig < Dodopayments::Internal::Type::BaseModel
|
|
349
|
-
OrHash =
|
|
350
|
-
T.type_alias do
|
|
351
|
-
T.any(
|
|
352
|
-
Dodopayments::Models::ProductListResponse::Entitlement::IntegrationConfig::TelegramConfig,
|
|
353
|
-
Dodopayments::Internal::AnyHash
|
|
354
|
-
)
|
|
355
|
-
end
|
|
356
|
-
|
|
357
|
-
sig { returns(String) }
|
|
358
|
-
attr_accessor :chat_id
|
|
359
|
-
|
|
360
|
-
sig { params(chat_id: String).returns(T.attached_class) }
|
|
361
|
-
def self.new(chat_id:)
|
|
362
|
-
end
|
|
363
|
-
|
|
364
|
-
sig { override.returns({ chat_id: String }) }
|
|
365
|
-
def to_hash
|
|
366
|
-
end
|
|
367
|
-
end
|
|
368
|
-
|
|
369
|
-
class FigmaConfig < Dodopayments::Internal::Type::BaseModel
|
|
370
|
-
OrHash =
|
|
371
|
-
T.type_alias do
|
|
372
|
-
T.any(
|
|
373
|
-
Dodopayments::Models::ProductListResponse::Entitlement::IntegrationConfig::FigmaConfig,
|
|
374
|
-
Dodopayments::Internal::AnyHash
|
|
375
|
-
)
|
|
376
|
-
end
|
|
377
|
-
|
|
378
|
-
sig { returns(String) }
|
|
379
|
-
attr_accessor :figma_file_id
|
|
380
|
-
|
|
381
|
-
sig { params(figma_file_id: String).returns(T.attached_class) }
|
|
382
|
-
def self.new(figma_file_id:)
|
|
383
|
-
end
|
|
384
|
-
|
|
385
|
-
sig { override.returns({ figma_file_id: String }) }
|
|
386
|
-
def to_hash
|
|
387
|
-
end
|
|
388
|
-
end
|
|
389
|
-
|
|
390
|
-
class FramerConfig < Dodopayments::Internal::Type::BaseModel
|
|
391
|
-
OrHash =
|
|
392
|
-
T.type_alias do
|
|
393
|
-
T.any(
|
|
394
|
-
Dodopayments::Models::ProductListResponse::Entitlement::IntegrationConfig::FramerConfig,
|
|
395
|
-
Dodopayments::Internal::AnyHash
|
|
396
|
-
)
|
|
397
|
-
end
|
|
398
|
-
|
|
399
|
-
sig { returns(String) }
|
|
400
|
-
attr_accessor :framer_template_id
|
|
401
|
-
|
|
402
|
-
sig { params(framer_template_id: String).returns(T.attached_class) }
|
|
403
|
-
def self.new(framer_template_id:)
|
|
404
|
-
end
|
|
405
|
-
|
|
406
|
-
sig { override.returns({ framer_template_id: String }) }
|
|
407
|
-
def to_hash
|
|
408
|
-
end
|
|
409
|
-
end
|
|
410
|
-
|
|
411
|
-
class NotionConfig < Dodopayments::Internal::Type::BaseModel
|
|
412
|
-
OrHash =
|
|
413
|
-
T.type_alias do
|
|
414
|
-
T.any(
|
|
415
|
-
Dodopayments::Models::ProductListResponse::Entitlement::IntegrationConfig::NotionConfig,
|
|
416
|
-
Dodopayments::Internal::AnyHash
|
|
417
|
-
)
|
|
418
|
-
end
|
|
419
|
-
|
|
420
|
-
sig { returns(String) }
|
|
421
|
-
attr_accessor :notion_template_id
|
|
422
|
-
|
|
423
|
-
sig { params(notion_template_id: String).returns(T.attached_class) }
|
|
424
|
-
def self.new(notion_template_id:)
|
|
425
|
-
end
|
|
426
|
-
|
|
427
|
-
sig { override.returns({ notion_template_id: String }) }
|
|
428
|
-
def to_hash
|
|
429
|
-
end
|
|
430
|
-
end
|
|
431
|
-
|
|
432
|
-
class DigitalFilesConfig < Dodopayments::Internal::Type::BaseModel
|
|
433
|
-
OrHash =
|
|
434
|
-
T.type_alias do
|
|
435
|
-
T.any(
|
|
436
|
-
Dodopayments::Models::ProductListResponse::Entitlement::IntegrationConfig::DigitalFilesConfig,
|
|
437
|
-
Dodopayments::Internal::AnyHash
|
|
438
|
-
)
|
|
439
|
-
end
|
|
440
|
-
|
|
441
|
-
sig { returns(T::Array[String]) }
|
|
442
|
-
attr_accessor :digital_file_ids
|
|
443
|
-
|
|
444
|
-
sig { returns(T.nilable(String)) }
|
|
445
|
-
attr_accessor :external_url
|
|
446
|
-
|
|
447
|
-
sig { returns(T.nilable(String)) }
|
|
448
|
-
attr_accessor :instructions
|
|
449
|
-
|
|
450
|
-
sig do
|
|
451
|
-
params(
|
|
452
|
-
digital_file_ids: T::Array[String],
|
|
453
|
-
external_url: T.nilable(String),
|
|
454
|
-
instructions: T.nilable(String)
|
|
455
|
-
).returns(T.attached_class)
|
|
456
|
-
end
|
|
457
|
-
def self.new(
|
|
458
|
-
digital_file_ids:,
|
|
459
|
-
external_url: nil,
|
|
460
|
-
instructions: nil
|
|
461
|
-
)
|
|
462
|
-
end
|
|
463
|
-
|
|
464
|
-
sig do
|
|
465
|
-
override.returns(
|
|
466
|
-
{
|
|
467
|
-
digital_file_ids: T::Array[String],
|
|
468
|
-
external_url: T.nilable(String),
|
|
469
|
-
instructions: T.nilable(String)
|
|
470
|
-
}
|
|
471
|
-
)
|
|
472
|
-
end
|
|
473
|
-
def to_hash
|
|
474
|
-
end
|
|
475
|
-
end
|
|
476
|
-
|
|
477
|
-
class LicenseKeyConfig < Dodopayments::Internal::Type::BaseModel
|
|
478
|
-
OrHash =
|
|
479
|
-
T.type_alias do
|
|
480
|
-
T.any(
|
|
481
|
-
Dodopayments::Models::ProductListResponse::Entitlement::IntegrationConfig::LicenseKeyConfig,
|
|
482
|
-
Dodopayments::Internal::AnyHash
|
|
483
|
-
)
|
|
484
|
-
end
|
|
485
|
-
|
|
486
|
-
sig { returns(T.nilable(String)) }
|
|
487
|
-
attr_accessor :activation_message
|
|
488
|
-
|
|
489
|
-
sig { returns(T.nilable(Integer)) }
|
|
490
|
-
attr_accessor :activations_limit
|
|
491
|
-
|
|
492
|
-
sig { returns(T.nilable(Integer)) }
|
|
493
|
-
attr_accessor :duration_count
|
|
494
|
-
|
|
495
|
-
sig { returns(T.nilable(String)) }
|
|
496
|
-
attr_accessor :duration_interval
|
|
497
|
-
|
|
498
|
-
sig do
|
|
499
|
-
params(
|
|
500
|
-
activation_message: T.nilable(String),
|
|
501
|
-
activations_limit: T.nilable(Integer),
|
|
502
|
-
duration_count: T.nilable(Integer),
|
|
503
|
-
duration_interval: T.nilable(String)
|
|
504
|
-
).returns(T.attached_class)
|
|
505
|
-
end
|
|
506
|
-
def self.new(
|
|
507
|
-
activation_message: nil,
|
|
508
|
-
activations_limit: nil,
|
|
509
|
-
duration_count: nil,
|
|
510
|
-
duration_interval: nil
|
|
511
|
-
)
|
|
512
|
-
end
|
|
513
|
-
|
|
514
|
-
sig do
|
|
515
|
-
override.returns(
|
|
516
|
-
{
|
|
517
|
-
activation_message: T.nilable(String),
|
|
518
|
-
activations_limit: T.nilable(Integer),
|
|
519
|
-
duration_count: T.nilable(Integer),
|
|
520
|
-
duration_interval: T.nilable(String)
|
|
521
|
-
}
|
|
522
|
-
)
|
|
523
|
-
end
|
|
524
|
-
def to_hash
|
|
525
|
-
end
|
|
526
|
-
end
|
|
527
|
-
|
|
528
|
-
sig do
|
|
529
|
-
override.returns(
|
|
530
|
-
T::Array[
|
|
531
|
-
Dodopayments::Models::ProductListResponse::Entitlement::IntegrationConfig::Variants
|
|
532
|
-
]
|
|
533
|
-
)
|
|
534
|
-
end
|
|
535
|
-
def self.variants
|
|
536
|
-
end
|
|
537
|
-
end
|
|
538
|
-
|
|
539
|
-
module IntegrationType
|
|
540
|
-
extend Dodopayments::Internal::Type::Enum
|
|
541
|
-
|
|
542
|
-
TaggedSymbol =
|
|
543
|
-
T.type_alias do
|
|
544
|
-
T.all(
|
|
545
|
-
Symbol,
|
|
546
|
-
Dodopayments::Models::ProductListResponse::Entitlement::IntegrationType
|
|
547
|
-
)
|
|
548
|
-
end
|
|
549
|
-
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
550
|
-
|
|
551
|
-
DISCORD =
|
|
552
|
-
T.let(
|
|
553
|
-
:discord,
|
|
554
|
-
Dodopayments::Models::ProductListResponse::Entitlement::IntegrationType::TaggedSymbol
|
|
555
|
-
)
|
|
556
|
-
TELEGRAM =
|
|
557
|
-
T.let(
|
|
558
|
-
:telegram,
|
|
559
|
-
Dodopayments::Models::ProductListResponse::Entitlement::IntegrationType::TaggedSymbol
|
|
560
|
-
)
|
|
561
|
-
GITHUB =
|
|
562
|
-
T.let(
|
|
563
|
-
:github,
|
|
564
|
-
Dodopayments::Models::ProductListResponse::Entitlement::IntegrationType::TaggedSymbol
|
|
565
|
-
)
|
|
566
|
-
FIGMA =
|
|
567
|
-
T.let(
|
|
568
|
-
:figma,
|
|
569
|
-
Dodopayments::Models::ProductListResponse::Entitlement::IntegrationType::TaggedSymbol
|
|
570
|
-
)
|
|
571
|
-
FRAMER =
|
|
572
|
-
T.let(
|
|
573
|
-
:framer,
|
|
574
|
-
Dodopayments::Models::ProductListResponse::Entitlement::IntegrationType::TaggedSymbol
|
|
575
|
-
)
|
|
576
|
-
NOTION =
|
|
577
|
-
T.let(
|
|
578
|
-
:notion,
|
|
579
|
-
Dodopayments::Models::ProductListResponse::Entitlement::IntegrationType::TaggedSymbol
|
|
580
|
-
)
|
|
581
|
-
DIGITAL_FILES =
|
|
582
|
-
T.let(
|
|
583
|
-
:digital_files,
|
|
584
|
-
Dodopayments::Models::ProductListResponse::Entitlement::IntegrationType::TaggedSymbol
|
|
585
|
-
)
|
|
586
|
-
LICENSE_KEY =
|
|
587
|
-
T.let(
|
|
588
|
-
:license_key,
|
|
589
|
-
Dodopayments::Models::ProductListResponse::Entitlement::IntegrationType::TaggedSymbol
|
|
590
|
-
)
|
|
591
|
-
|
|
592
|
-
sig do
|
|
593
|
-
override.returns(
|
|
594
|
-
T::Array[
|
|
595
|
-
Dodopayments::Models::ProductListResponse::Entitlement::IntegrationType::TaggedSymbol
|
|
596
|
-
]
|
|
597
|
-
)
|
|
598
|
-
end
|
|
599
|
-
def self.values
|
|
600
|
-
end
|
|
601
|
-
end
|
|
602
|
-
end
|
|
603
176
|
end
|
|
604
177
|
end
|
|
605
178
|
end
|
|
@@ -36,6 +36,8 @@ module Dodopayments
|
|
|
36
36
|
attr_accessor :description
|
|
37
37
|
|
|
38
38
|
# Choose how you would like you digital product delivered
|
|
39
|
+
#
|
|
40
|
+
# deprecated: use entitlements instead
|
|
39
41
|
sig do
|
|
40
42
|
returns(
|
|
41
43
|
T.nilable(Dodopayments::ProductUpdateParams::DigitalProductDelivery)
|
|
@@ -53,10 +55,12 @@ module Dodopayments
|
|
|
53
55
|
end
|
|
54
56
|
attr_writer :digital_product_delivery
|
|
55
57
|
|
|
56
|
-
#
|
|
57
|
-
#
|
|
58
|
-
sig
|
|
59
|
-
|
|
58
|
+
# Entitlements to attach (replaces all existing when present) Send empty array to
|
|
59
|
+
# remove all, omit field to leave unchanged
|
|
60
|
+
sig do
|
|
61
|
+
returns(T.nilable(T::Array[Dodopayments::AttachProductEntitlement]))
|
|
62
|
+
end
|
|
63
|
+
attr_accessor :entitlements
|
|
60
64
|
|
|
61
65
|
# Product image id after its uploaded to S3
|
|
62
66
|
sig { returns(T.nilable(String)) }
|
|
@@ -66,6 +70,8 @@ module Dodopayments
|
|
|
66
70
|
#
|
|
67
71
|
# Only applicable if `license_key_enabled` is `true`. This message contains
|
|
68
72
|
# instructions for activating the license key.
|
|
73
|
+
#
|
|
74
|
+
# deprecated: use entitlements instead
|
|
69
75
|
sig { returns(T.nilable(String)) }
|
|
70
76
|
attr_accessor :license_key_activation_message
|
|
71
77
|
|
|
@@ -73,6 +79,8 @@ module Dodopayments
|
|
|
73
79
|
#
|
|
74
80
|
# Only applicable if `license_key_enabled` is `true`. Represents the maximum
|
|
75
81
|
# number of times the license key can be activated.
|
|
82
|
+
#
|
|
83
|
+
# deprecated: use entitlements instead
|
|
76
84
|
sig { returns(T.nilable(Integer)) }
|
|
77
85
|
attr_accessor :license_key_activations_limit
|
|
78
86
|
|
|
@@ -80,6 +88,8 @@ module Dodopayments
|
|
|
80
88
|
#
|
|
81
89
|
# Only applicable if `license_key_enabled` is `true`. Represents the duration in
|
|
82
90
|
# days for which the license key is valid.
|
|
91
|
+
#
|
|
92
|
+
# deprecated: use entitlements instead
|
|
83
93
|
sig { returns(T.nilable(Dodopayments::LicenseKeyDuration)) }
|
|
84
94
|
attr_reader :license_key_duration
|
|
85
95
|
|
|
@@ -95,6 +105,8 @@ module Dodopayments
|
|
|
95
105
|
#
|
|
96
106
|
# If `true`, additional fields related to license key (duration, activations
|
|
97
107
|
# limit, activation message) become applicable.
|
|
108
|
+
#
|
|
109
|
+
# deprecated: use entitlements instead
|
|
98
110
|
sig { returns(T.nilable(T::Boolean)) }
|
|
99
111
|
attr_accessor :license_key_enabled
|
|
100
112
|
|
|
@@ -136,7 +148,8 @@ module Dodopayments
|
|
|
136
148
|
T.nilable(
|
|
137
149
|
Dodopayments::ProductUpdateParams::DigitalProductDelivery::OrHash
|
|
138
150
|
),
|
|
139
|
-
|
|
151
|
+
entitlements:
|
|
152
|
+
T.nilable(T::Array[Dodopayments::AttachProductEntitlement::OrHash]),
|
|
140
153
|
image_id: T.nilable(String),
|
|
141
154
|
license_key_activation_message: T.nilable(String),
|
|
142
155
|
license_key_activations_limit: T.nilable(Integer),
|
|
@@ -168,31 +181,41 @@ module Dodopayments
|
|
|
168
181
|
# Description of the product, optional and must be at most 1000 characters.
|
|
169
182
|
description: nil,
|
|
170
183
|
# Choose how you would like you digital product delivered
|
|
184
|
+
#
|
|
185
|
+
# deprecated: use entitlements instead
|
|
171
186
|
digital_product_delivery: nil,
|
|
172
|
-
#
|
|
173
|
-
#
|
|
174
|
-
|
|
187
|
+
# Entitlements to attach (replaces all existing when present) Send empty array to
|
|
188
|
+
# remove all, omit field to leave unchanged
|
|
189
|
+
entitlements: nil,
|
|
175
190
|
# Product image id after its uploaded to S3
|
|
176
191
|
image_id: nil,
|
|
177
192
|
# Message sent to the customer upon license key activation.
|
|
178
193
|
#
|
|
179
194
|
# Only applicable if `license_key_enabled` is `true`. This message contains
|
|
180
195
|
# instructions for activating the license key.
|
|
196
|
+
#
|
|
197
|
+
# deprecated: use entitlements instead
|
|
181
198
|
license_key_activation_message: nil,
|
|
182
199
|
# Limit for the number of activations for the license key.
|
|
183
200
|
#
|
|
184
201
|
# Only applicable if `license_key_enabled` is `true`. Represents the maximum
|
|
185
202
|
# number of times the license key can be activated.
|
|
203
|
+
#
|
|
204
|
+
# deprecated: use entitlements instead
|
|
186
205
|
license_key_activations_limit: nil,
|
|
187
206
|
# Duration of the license key if enabled.
|
|
188
207
|
#
|
|
189
208
|
# Only applicable if `license_key_enabled` is `true`. Represents the duration in
|
|
190
209
|
# days for which the license key is valid.
|
|
210
|
+
#
|
|
211
|
+
# deprecated: use entitlements instead
|
|
191
212
|
license_key_duration: nil,
|
|
192
213
|
# Whether the product requires a license key.
|
|
193
214
|
#
|
|
194
215
|
# If `true`, additional fields related to license key (duration, activations
|
|
195
216
|
# limit, activation message) become applicable.
|
|
217
|
+
#
|
|
218
|
+
# deprecated: use entitlements instead
|
|
196
219
|
license_key_enabled: nil,
|
|
197
220
|
# Additional metadata for the product
|
|
198
221
|
metadata: nil,
|
|
@@ -219,7 +242,8 @@ module Dodopayments
|
|
|
219
242
|
T.nilable(
|
|
220
243
|
Dodopayments::ProductUpdateParams::DigitalProductDelivery
|
|
221
244
|
),
|
|
222
|
-
|
|
245
|
+
entitlements:
|
|
246
|
+
T.nilable(T::Array[Dodopayments::AttachProductEntitlement]),
|
|
223
247
|
image_id: T.nilable(String),
|
|
224
248
|
license_key_activation_message: T.nilable(String),
|
|
225
249
|
license_key_activations_limit: T.nilable(Integer),
|
|
@@ -265,6 +289,8 @@ module Dodopayments
|
|
|
265
289
|
attr_accessor :instructions
|
|
266
290
|
|
|
267
291
|
# Choose how you would like you digital product delivered
|
|
292
|
+
#
|
|
293
|
+
# deprecated: use entitlements instead
|
|
268
294
|
sig do
|
|
269
295
|
params(
|
|
270
296
|
external_url: T.nilable(String),
|