dub 0.10.5 → 0.12.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (110) hide show
  1. checksums.yaml +4 -4
  2. data/lib/crystalline/module.rb +4 -0
  3. data/lib/crystalline/utils.rb +13 -0
  4. data/lib/open_api_sdk/analytics.rb +1 -1
  5. data/lib/open_api_sdk/commissions.rb +2 -2
  6. data/lib/open_api_sdk/customers.rb +4 -241
  7. data/lib/open_api_sdk/domains.rb +6 -6
  8. data/lib/open_api_sdk/embed_tokens.rb +1 -1
  9. data/lib/open_api_sdk/events.rb +1 -1
  10. data/lib/open_api_sdk/folders.rb +4 -4
  11. data/lib/open_api_sdk/links.rb +10 -10
  12. data/lib/open_api_sdk/models/operations/banpartner_requestbody.rb +41 -0
  13. data/lib/open_api_sdk/models/operations/banpartner_requestbody.rbi +17 -0
  14. data/lib/open_api_sdk/models/operations/banpartner_responsebody.rb +33 -0
  15. data/lib/open_api_sdk/models/operations/banpartner_responsebody.rbi +13 -0
  16. data/lib/open_api_sdk/models/operations/createfolder_requestbody.rb +6 -2
  17. data/lib/open_api_sdk/models/operations/createfolder_requestbody.rbi +2 -0
  18. data/lib/open_api_sdk/models/operations/createlink_requestbody.rb +1 -1
  19. data/lib/open_api_sdk/models/operations/createpartner_responsebody.rb +52 -24
  20. data/lib/open_api_sdk/models/operations/createpartner_responsebody.rbi +24 -10
  21. data/lib/open_api_sdk/models/operations/listcommissions_partner.rb +6 -2
  22. data/lib/open_api_sdk/models/operations/listcommissions_partner.rbi +2 -0
  23. data/lib/open_api_sdk/models/operations/listcommissions_request.rb +6 -2
  24. data/lib/open_api_sdk/models/operations/listcommissions_request.rbi +2 -0
  25. data/lib/open_api_sdk/models/operations/listevents_request.rb +6 -2
  26. data/lib/open_api_sdk/models/operations/listevents_request.rbi +2 -0
  27. data/lib/open_api_sdk/models/operations/listpartners_queryparam_sortby.rb +11 -6
  28. data/lib/open_api_sdk/models/operations/listpartners_request.rb +3 -7
  29. data/lib/open_api_sdk/models/operations/listpartners_request.rbi +0 -2
  30. data/lib/open_api_sdk/models/operations/listpartners_responsebody.rb +52 -24
  31. data/lib/open_api_sdk/models/operations/listpartners_responsebody.rbi +24 -10
  32. data/lib/open_api_sdk/models/operations/queryparam_groupby.rb +6 -1
  33. data/lib/open_api_sdk/models/operations/reason.rb +26 -0
  34. data/lib/open_api_sdk/models/operations/reason.rbi +11 -0
  35. data/lib/open_api_sdk/models/operations/requestbody.rb +1 -1
  36. data/lib/open_api_sdk/models/operations/retrieveanalytics_request.rb +6 -2
  37. data/lib/open_api_sdk/models/operations/retrieveanalytics_request.rbi +2 -0
  38. data/lib/open_api_sdk/models/operations/retrievelinks_request.rb +2 -2
  39. data/lib/open_api_sdk/models/operations/retrievepartneranalytics_request.rb +10 -10
  40. data/lib/open_api_sdk/models/operations/retrievepartneranalytics_request.rbi +4 -4
  41. data/lib/open_api_sdk/models/operations/tracklead_requestbody.rb +1 -1
  42. data/lib/open_api_sdk/models/operations/updatecommission_partner.rb +6 -2
  43. data/lib/open_api_sdk/models/operations/updatecommission_partner.rbi +2 -0
  44. data/lib/open_api_sdk/models/operations/updatefolder_requestbody.rb +6 -2
  45. data/lib/open_api_sdk/models/operations/updatefolder_requestbody.rbi +2 -0
  46. data/lib/open_api_sdk/models/operations/updatelink_requestbody.rb +1 -1
  47. data/lib/open_api_sdk/models/operations/upsertlink_requestbody.rb +1 -1
  48. data/lib/open_api_sdk/models/operations.rb +3 -6
  49. data/lib/open_api_sdk/models/shared/analyticstopurls.rb +1 -1
  50. data/lib/open_api_sdk/models/shared/applicationformdata.rb +37 -0
  51. data/lib/open_api_sdk/models/shared/applicationformdata.rbi +15 -0
  52. data/lib/open_api_sdk/models/shared/commissioncreatedevent_partner.rb +6 -2
  53. data/lib/open_api_sdk/models/shared/commissioncreatedevent_partner.rbi +2 -0
  54. data/lib/open_api_sdk/models/shared/folderschema.rb +6 -2
  55. data/lib/open_api_sdk/models/shared/folderschema.rbi +2 -0
  56. data/lib/open_api_sdk/models/shared/leadcreatedevent_link.rb +15 -11
  57. data/lib/open_api_sdk/models/shared/leadcreatedevent_link.rbi +6 -4
  58. data/lib/open_api_sdk/models/shared/leadevent_link.rb +15 -11
  59. data/lib/open_api_sdk/models/shared/leadevent_link.rbi +6 -4
  60. data/lib/open_api_sdk/models/shared/link.rb +15 -11
  61. data/lib/open_api_sdk/models/shared/link.rbi +6 -4
  62. data/lib/open_api_sdk/models/shared/linkclickedevent_link.rb +15 -11
  63. data/lib/open_api_sdk/models/shared/linkclickedevent_link.rbi +6 -4
  64. data/lib/open_api_sdk/models/shared/linkschema.rb +7 -3
  65. data/lib/open_api_sdk/models/shared/linkschema.rbi +2 -0
  66. data/lib/open_api_sdk/models/shared/{tagschema.rb → linktagschema.rb} +1 -1
  67. data/lib/open_api_sdk/models/shared/{tagschema.rbi → linktagschema.rbi} +2 -2
  68. data/lib/open_api_sdk/models/shared/linkwebhookevent_link.rb +15 -11
  69. data/lib/open_api_sdk/models/shared/linkwebhookevent_link.rbi +6 -4
  70. data/lib/open_api_sdk/models/shared/partner.rb +6 -2
  71. data/lib/open_api_sdk/models/shared/partner.rbi +2 -0
  72. data/lib/open_api_sdk/models/shared/partnerapplicationsubmittedevent.rb +45 -0
  73. data/lib/open_api_sdk/models/shared/partnerapplicationsubmittedevent.rbi +19 -0
  74. data/lib/open_api_sdk/models/shared/partnerapplicationsubmittedevent_data.rb +45 -0
  75. data/lib/open_api_sdk/models/shared/partnerapplicationsubmittedevent_data.rbi +19 -0
  76. data/lib/open_api_sdk/models/{operations/createcustomer_type.rb → shared/partnerapplicationsubmittedevent_event.rb} +3 -4
  77. data/lib/open_api_sdk/models/shared/partnerapplicationsubmittedevent_event.rbi +11 -0
  78. data/lib/open_api_sdk/models/shared/partnerapplicationsubmittedevent_partner.rb +89 -0
  79. data/lib/open_api_sdk/models/shared/partnerapplicationsubmittedevent_partner.rbi +41 -0
  80. data/lib/open_api_sdk/models/shared/partnerapplicationsubmittedevent_status.rb +28 -0
  81. data/lib/open_api_sdk/models/shared/partnerapplicationsubmittedevent_status.rbi +11 -0
  82. data/lib/open_api_sdk/models/shared/partnerenrolledevent_data.rb +52 -24
  83. data/lib/open_api_sdk/models/shared/partnerenrolledevent_data.rbi +24 -10
  84. data/lib/open_api_sdk/models/shared/salecreatedevent_link.rb +15 -11
  85. data/lib/open_api_sdk/models/shared/salecreatedevent_link.rbi +6 -4
  86. data/lib/open_api_sdk/models/shared/salecreatedevent_partner.rb +6 -2
  87. data/lib/open_api_sdk/models/shared/salecreatedevent_partner.rbi +2 -0
  88. data/lib/open_api_sdk/models/shared/saleevent_link.rb +15 -11
  89. data/lib/open_api_sdk/models/shared/saleevent_link.rbi +6 -4
  90. data/lib/open_api_sdk/models/shared/workspaceschema.rb +10 -2
  91. data/lib/open_api_sdk/models/shared/workspaceschema.rbi +4 -0
  92. data/lib/open_api_sdk/models/shared.rb +7 -1
  93. data/lib/open_api_sdk/partners.rb +241 -6
  94. data/lib/open_api_sdk/qr_codes.rb +1 -1
  95. data/lib/open_api_sdk/sdkconfiguration.rb +3 -3
  96. data/lib/open_api_sdk/tags.rb +10 -10
  97. data/lib/open_api_sdk/track.rb +2 -2
  98. data/lib/open_api_sdk/workspaces.rb +2 -2
  99. metadata +22 -16
  100. data/lib/open_api_sdk/models/operations/createcustomer_discount.rb +0 -61
  101. data/lib/open_api_sdk/models/operations/createcustomer_discount.rbi +0 -27
  102. data/lib/open_api_sdk/models/operations/createcustomer_link.rb +0 -53
  103. data/lib/open_api_sdk/models/operations/createcustomer_link.rbi +0 -23
  104. data/lib/open_api_sdk/models/operations/createcustomer_partner.rb +0 -45
  105. data/lib/open_api_sdk/models/operations/createcustomer_partner.rbi +0 -19
  106. data/lib/open_api_sdk/models/operations/createcustomer_requestbody.rb +0 -49
  107. data/lib/open_api_sdk/models/operations/createcustomer_requestbody.rbi +0 -21
  108. data/lib/open_api_sdk/models/operations/createcustomer_responsebody.rb +0 -81
  109. data/lib/open_api_sdk/models/operations/createcustomer_responsebody.rbi +0 -37
  110. data/lib/open_api_sdk/models/operations/createcustomer_type.rbi +0 -11
@@ -28,6 +28,8 @@ module OpenApiSDK
28
28
 
29
29
  field :expires_at, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('expiresAt'), required: true } }
30
30
 
31
+ field :disabled_at, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('disabledAt'), required: true } }
32
+
31
33
  field :proxy, Crystalline::Boolean.new, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('proxy'), required: true } }
32
34
 
33
35
  field :rewrite, Crystalline::Boolean.new, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('rewrite'), required: true } }
@@ -41,6 +43,10 @@ module OpenApiSDK
41
43
  field :short_link, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('shortLink'), required: true } }
42
44
  # The full URL of the QR code for the short link (e.g. `https://api.dub.co/qr?url=https://dub.sh/try`).
43
45
  field :qr_code, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('qrCode'), required: true } }
46
+
47
+ field :test_started_at, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('testStartedAt'), required: true } }
48
+
49
+ field :test_completed_at, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('testCompletedAt'), required: true } }
44
50
  # The workspace ID of the short link.
45
51
  field :workspace_id, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('workspaceId'), required: true } }
46
52
 
@@ -80,7 +86,7 @@ module OpenApiSDK
80
86
  # Geo targeting information for the short link in JSON format `{[COUNTRY]: https://example.com }`. See https://d.to/geo for more information.
81
87
  field :geo, Crystalline::Nilable.new(Crystalline::Hash.new(Symbol, ::String)), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('geo'), required: true } }
82
88
  # The tags assigned to the short link.
83
- field :tags, Crystalline::Nilable.new(Crystalline::Array.new(Models::Shared::TagSchema)), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('tags'), required: true } }
89
+ field :tags, Crystalline::Nilable.new(Crystalline::Array.new(Models::Shared::LinkTagSchema)), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('tags'), required: true } }
84
90
  # The unique ID of the folder assigned to the short link.
85
91
  field :folder_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('folderId'), required: true } }
86
92
  # The comments for the short link.
@@ -96,10 +102,6 @@ module OpenApiSDK
96
102
  # The UTM content of the short link.
97
103
  field :utm_content, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('utm_content'), required: true } }
98
104
 
99
- field :test_started_at, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('testStartedAt'), required: true } }
100
-
101
- field :test_completed_at, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('testCompletedAt'), required: true } }
102
-
103
105
  field :user_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('userId'), required: true } }
104
106
  # Deprecated: Use `tags` instead. The unique ID of the tag assigned to the short link.
105
107
  #
@@ -118,8 +120,8 @@ module OpenApiSDK
118
120
  # The total dollar value of sales (in cents) generated by the short link.
119
121
  field :sale_amount, Crystalline::Nilable.new(::Float), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('saleAmount') } }
120
122
 
121
- sig { params(id: ::String, domain: ::String, key: ::String, url: ::String, track_conversion: T::Boolean, archived: T::Boolean, expires_at: ::String, proxy: T::Boolean, rewrite: T::Boolean, do_index: T::Boolean, public_stats: T::Boolean, webhook_ids: T::Array[::String], short_link: ::String, qr_code: ::String, workspace_id: ::String, last_clicked: ::String, created_at: ::String, updated_at: ::String, project_id: ::String, external_id: T.nilable(::String), tenant_id: T.nilable(::String), program_id: T.nilable(::String), partner_id: T.nilable(::String), expired_url: T.nilable(::String), password: T.nilable(::String), title: T.nilable(::String), description: T.nilable(::String), image: T.nilable(::String), video: T.nilable(::String), ios: T.nilable(::String), android: T.nilable(::String), geo: T.nilable(T::Hash[Symbol, ::String]), tags: T.nilable(T::Array[Models::Shared::TagSchema]), folder_id: T.nilable(::String), comments: T.nilable(::String), utm_source: T.nilable(::String), utm_medium: T.nilable(::String), utm_campaign: T.nilable(::String), utm_term: T.nilable(::String), utm_content: T.nilable(::String), test_started_at: T.nilable(::String), test_completed_at: T.nilable(::String), user_id: T.nilable(::String), tag_id: T.nilable(::String), test_variants: T.nilable(T::Array[Models::Shared::LeadCreatedEventTestVariants]), clicks: T.nilable(::Float), leads: T.nilable(::Float), conversions: T.nilable(::Float), sales: T.nilable(::Float), sale_amount: T.nilable(::Float)).void }
122
- def initialize(id:, domain:, key:, url:, track_conversion:, archived:, expires_at:, proxy:, rewrite:, do_index:, public_stats:, webhook_ids:, short_link:, qr_code:, workspace_id:, last_clicked:, created_at:, updated_at:, project_id:, external_id: nil, tenant_id: nil, program_id: nil, partner_id: nil, expired_url: nil, password: nil, title: nil, description: nil, image: nil, video: nil, ios: nil, android: nil, geo: nil, tags: nil, folder_id: nil, comments: nil, utm_source: nil, utm_medium: nil, utm_campaign: nil, utm_term: nil, utm_content: nil, test_started_at: nil, test_completed_at: nil, user_id: nil, tag_id: nil, test_variants: nil, clicks: 0.0, leads: 0.0, conversions: 0.0, sales: 0.0, sale_amount: 0.0)
123
+ sig { params(id: ::String, domain: ::String, key: ::String, url: ::String, track_conversion: T::Boolean, archived: T::Boolean, expires_at: ::String, disabled_at: ::String, proxy: T::Boolean, rewrite: T::Boolean, do_index: T::Boolean, public_stats: T::Boolean, webhook_ids: T::Array[::String], short_link: ::String, qr_code: ::String, test_started_at: ::String, test_completed_at: ::String, workspace_id: ::String, last_clicked: ::String, created_at: ::String, updated_at: ::String, project_id: ::String, external_id: T.nilable(::String), tenant_id: T.nilable(::String), program_id: T.nilable(::String), partner_id: T.nilable(::String), expired_url: T.nilable(::String), password: T.nilable(::String), title: T.nilable(::String), description: T.nilable(::String), image: T.nilable(::String), video: T.nilable(::String), ios: T.nilable(::String), android: T.nilable(::String), geo: T.nilable(T::Hash[Symbol, ::String]), tags: T.nilable(T::Array[Models::Shared::LinkTagSchema]), folder_id: T.nilable(::String), comments: T.nilable(::String), utm_source: T.nilable(::String), utm_medium: T.nilable(::String), utm_campaign: T.nilable(::String), utm_term: T.nilable(::String), utm_content: T.nilable(::String), user_id: T.nilable(::String), tag_id: T.nilable(::String), test_variants: T.nilable(T::Array[Models::Shared::LeadCreatedEventTestVariants]), clicks: T.nilable(::Float), leads: T.nilable(::Float), conversions: T.nilable(::Float), sales: T.nilable(::Float), sale_amount: T.nilable(::Float)).void }
124
+ def initialize(id:, domain:, key:, url:, track_conversion:, archived:, expires_at:, disabled_at:, proxy:, rewrite:, do_index:, public_stats:, webhook_ids:, short_link:, qr_code:, test_started_at:, test_completed_at:, workspace_id:, last_clicked:, created_at:, updated_at:, project_id:, external_id: nil, tenant_id: nil, program_id: nil, partner_id: nil, expired_url: nil, password: nil, title: nil, description: nil, image: nil, video: nil, ios: nil, android: nil, geo: nil, tags: nil, folder_id: nil, comments: nil, utm_source: nil, utm_medium: nil, utm_campaign: nil, utm_term: nil, utm_content: nil, user_id: nil, tag_id: nil, test_variants: nil, clicks: 0.0, leads: 0.0, conversions: 0.0, sales: 0.0, sale_amount: 0.0)
123
125
  @id = id
124
126
  @domain = domain
125
127
  @key = key
@@ -127,6 +129,7 @@ module OpenApiSDK
127
129
  @track_conversion = track_conversion
128
130
  @archived = archived
129
131
  @expires_at = expires_at
132
+ @disabled_at = disabled_at
130
133
  @proxy = proxy
131
134
  @rewrite = rewrite
132
135
  @do_index = do_index
@@ -134,6 +137,8 @@ module OpenApiSDK
134
137
  @webhook_ids = webhook_ids
135
138
  @short_link = short_link
136
139
  @qr_code = qr_code
140
+ @test_started_at = test_started_at
141
+ @test_completed_at = test_completed_at
137
142
  @workspace_id = workspace_id
138
143
  @last_clicked = last_clicked
139
144
  @created_at = created_at
@@ -160,8 +165,6 @@ module OpenApiSDK
160
165
  @utm_campaign = utm_campaign
161
166
  @utm_term = utm_term
162
167
  @utm_content = utm_content
163
- @test_started_at = test_started_at
164
- @test_completed_at = test_completed_at
165
168
  @user_id = user_id
166
169
  @tag_id = tag_id
167
170
  @test_variants = test_variants
@@ -182,6 +185,7 @@ module OpenApiSDK
182
185
  return false unless @track_conversion == other.track_conversion
183
186
  return false unless @archived == other.archived
184
187
  return false unless @expires_at == other.expires_at
188
+ return false unless @disabled_at == other.disabled_at
185
189
  return false unless @proxy == other.proxy
186
190
  return false unless @rewrite == other.rewrite
187
191
  return false unless @do_index == other.do_index
@@ -189,6 +193,8 @@ module OpenApiSDK
189
193
  return false unless @webhook_ids == other.webhook_ids
190
194
  return false unless @short_link == other.short_link
191
195
  return false unless @qr_code == other.qr_code
196
+ return false unless @test_started_at == other.test_started_at
197
+ return false unless @test_completed_at == other.test_completed_at
192
198
  return false unless @workspace_id == other.workspace_id
193
199
  return false unless @last_clicked == other.last_clicked
194
200
  return false unless @created_at == other.created_at
@@ -215,8 +221,6 @@ module OpenApiSDK
215
221
  return false unless @utm_campaign == other.utm_campaign
216
222
  return false unless @utm_term == other.utm_term
217
223
  return false unless @utm_content == other.utm_content
218
- return false unless @test_started_at == other.test_started_at
219
- return false unless @test_completed_at == other.test_completed_at
220
224
  return false unless @user_id == other.user_id
221
225
  return false unless @tag_id == other.tag_id
222
226
  return false unless @test_variants == other.test_variants
@@ -22,6 +22,8 @@ class OpenApiSDK::Models::Shared::LeadCreatedEventLink
22
22
  def archived=(str_); end
23
23
  def expires_at(); end
24
24
  def expires_at=(str_); end
25
+ def disabled_at(); end
26
+ def disabled_at=(str_); end
25
27
  def proxy(); end
26
28
  def proxy=(str_); end
27
29
  def rewrite(); end
@@ -36,6 +38,10 @@ class OpenApiSDK::Models::Shared::LeadCreatedEventLink
36
38
  def short_link=(str_); end
37
39
  def qr_code(); end
38
40
  def qr_code=(str_); end
41
+ def test_started_at(); end
42
+ def test_started_at=(str_); end
43
+ def test_completed_at(); end
44
+ def test_completed_at=(str_); end
39
45
  def workspace_id(); end
40
46
  def workspace_id=(str_); end
41
47
  def last_clicked(); end
@@ -88,10 +94,6 @@ class OpenApiSDK::Models::Shared::LeadCreatedEventLink
88
94
  def utm_term=(str_); end
89
95
  def utm_content(); end
90
96
  def utm_content=(str_); end
91
- def test_started_at(); end
92
- def test_started_at=(str_); end
93
- def test_completed_at(); end
94
- def test_completed_at=(str_); end
95
97
  def user_id(); end
96
98
  def user_id=(str_); end
97
99
  def tag_id(); end
@@ -28,6 +28,8 @@ module OpenApiSDK
28
28
 
29
29
  field :expires_at, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('expiresAt'), required: true } }
30
30
 
31
+ field :disabled_at, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('disabledAt'), required: true } }
32
+
31
33
  field :proxy, Crystalline::Boolean.new, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('proxy'), required: true } }
32
34
 
33
35
  field :rewrite, Crystalline::Boolean.new, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('rewrite'), required: true } }
@@ -41,6 +43,10 @@ module OpenApiSDK
41
43
  field :short_link, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('shortLink'), required: true } }
42
44
  # The full URL of the QR code for the short link (e.g. `https://api.dub.co/qr?url=https://dub.sh/try`).
43
45
  field :qr_code, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('qrCode'), required: true } }
46
+
47
+ field :test_started_at, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('testStartedAt'), required: true } }
48
+
49
+ field :test_completed_at, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('testCompletedAt'), required: true } }
44
50
  # The workspace ID of the short link.
45
51
  field :workspace_id, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('workspaceId'), required: true } }
46
52
 
@@ -80,7 +86,7 @@ module OpenApiSDK
80
86
  # Geo targeting information for the short link in JSON format `{[COUNTRY]: https://example.com }`. See https://d.to/geo for more information.
81
87
  field :geo, Crystalline::Nilable.new(Crystalline::Hash.new(Symbol, ::String)), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('geo'), required: true } }
82
88
  # The tags assigned to the short link.
83
- field :tags, Crystalline::Nilable.new(Crystalline::Array.new(Models::Shared::TagSchema)), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('tags'), required: true } }
89
+ field :tags, Crystalline::Nilable.new(Crystalline::Array.new(Models::Shared::LinkTagSchema)), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('tags'), required: true } }
84
90
  # The unique ID of the folder assigned to the short link.
85
91
  field :folder_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('folderId'), required: true } }
86
92
  # The comments for the short link.
@@ -96,10 +102,6 @@ module OpenApiSDK
96
102
  # The UTM content of the short link.
97
103
  field :utm_content, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('utm_content'), required: true } }
98
104
 
99
- field :test_started_at, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('testStartedAt'), required: true } }
100
-
101
- field :test_completed_at, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('testCompletedAt'), required: true } }
102
-
103
105
  field :user_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('userId'), required: true } }
104
106
  # Deprecated: Use `tags` instead. The unique ID of the tag assigned to the short link.
105
107
  #
@@ -118,8 +120,8 @@ module OpenApiSDK
118
120
  # The total dollar value of sales (in cents) generated by the short link.
119
121
  field :sale_amount, Crystalline::Nilable.new(::Float), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('saleAmount') } }
120
122
 
121
- sig { params(id: ::String, domain: ::String, key: ::String, url: ::String, track_conversion: T::Boolean, archived: T::Boolean, expires_at: ::String, proxy: T::Boolean, rewrite: T::Boolean, do_index: T::Boolean, public_stats: T::Boolean, webhook_ids: T::Array[::String], short_link: ::String, qr_code: ::String, workspace_id: ::String, last_clicked: ::String, created_at: ::String, updated_at: ::String, project_id: ::String, external_id: T.nilable(::String), tenant_id: T.nilable(::String), program_id: T.nilable(::String), partner_id: T.nilable(::String), expired_url: T.nilable(::String), password: T.nilable(::String), title: T.nilable(::String), description: T.nilable(::String), image: T.nilable(::String), video: T.nilable(::String), ios: T.nilable(::String), android: T.nilable(::String), geo: T.nilable(T::Hash[Symbol, ::String]), tags: T.nilable(T::Array[Models::Shared::TagSchema]), folder_id: T.nilable(::String), comments: T.nilable(::String), utm_source: T.nilable(::String), utm_medium: T.nilable(::String), utm_campaign: T.nilable(::String), utm_term: T.nilable(::String), utm_content: T.nilable(::String), test_started_at: T.nilable(::String), test_completed_at: T.nilable(::String), user_id: T.nilable(::String), tag_id: T.nilable(::String), test_variants: T.nilable(T::Array[Models::Shared::LeadEventTestVariants]), clicks: T.nilable(::Float), leads: T.nilable(::Float), conversions: T.nilable(::Float), sales: T.nilable(::Float), sale_amount: T.nilable(::Float)).void }
122
- def initialize(id:, domain:, key:, url:, track_conversion:, archived:, expires_at:, proxy:, rewrite:, do_index:, public_stats:, webhook_ids:, short_link:, qr_code:, workspace_id:, last_clicked:, created_at:, updated_at:, project_id:, external_id: nil, tenant_id: nil, program_id: nil, partner_id: nil, expired_url: nil, password: nil, title: nil, description: nil, image: nil, video: nil, ios: nil, android: nil, geo: nil, tags: nil, folder_id: nil, comments: nil, utm_source: nil, utm_medium: nil, utm_campaign: nil, utm_term: nil, utm_content: nil, test_started_at: nil, test_completed_at: nil, user_id: nil, tag_id: nil, test_variants: nil, clicks: 0.0, leads: 0.0, conversions: 0.0, sales: 0.0, sale_amount: 0.0)
123
+ sig { params(id: ::String, domain: ::String, key: ::String, url: ::String, track_conversion: T::Boolean, archived: T::Boolean, expires_at: ::String, disabled_at: ::String, proxy: T::Boolean, rewrite: T::Boolean, do_index: T::Boolean, public_stats: T::Boolean, webhook_ids: T::Array[::String], short_link: ::String, qr_code: ::String, test_started_at: ::String, test_completed_at: ::String, workspace_id: ::String, last_clicked: ::String, created_at: ::String, updated_at: ::String, project_id: ::String, external_id: T.nilable(::String), tenant_id: T.nilable(::String), program_id: T.nilable(::String), partner_id: T.nilable(::String), expired_url: T.nilable(::String), password: T.nilable(::String), title: T.nilable(::String), description: T.nilable(::String), image: T.nilable(::String), video: T.nilable(::String), ios: T.nilable(::String), android: T.nilable(::String), geo: T.nilable(T::Hash[Symbol, ::String]), tags: T.nilable(T::Array[Models::Shared::LinkTagSchema]), folder_id: T.nilable(::String), comments: T.nilable(::String), utm_source: T.nilable(::String), utm_medium: T.nilable(::String), utm_campaign: T.nilable(::String), utm_term: T.nilable(::String), utm_content: T.nilable(::String), user_id: T.nilable(::String), tag_id: T.nilable(::String), test_variants: T.nilable(T::Array[Models::Shared::LeadEventTestVariants]), clicks: T.nilable(::Float), leads: T.nilable(::Float), conversions: T.nilable(::Float), sales: T.nilable(::Float), sale_amount: T.nilable(::Float)).void }
124
+ def initialize(id:, domain:, key:, url:, track_conversion:, archived:, expires_at:, disabled_at:, proxy:, rewrite:, do_index:, public_stats:, webhook_ids:, short_link:, qr_code:, test_started_at:, test_completed_at:, workspace_id:, last_clicked:, created_at:, updated_at:, project_id:, external_id: nil, tenant_id: nil, program_id: nil, partner_id: nil, expired_url: nil, password: nil, title: nil, description: nil, image: nil, video: nil, ios: nil, android: nil, geo: nil, tags: nil, folder_id: nil, comments: nil, utm_source: nil, utm_medium: nil, utm_campaign: nil, utm_term: nil, utm_content: nil, user_id: nil, tag_id: nil, test_variants: nil, clicks: 0.0, leads: 0.0, conversions: 0.0, sales: 0.0, sale_amount: 0.0)
123
125
  @id = id
124
126
  @domain = domain
125
127
  @key = key
@@ -127,6 +129,7 @@ module OpenApiSDK
127
129
  @track_conversion = track_conversion
128
130
  @archived = archived
129
131
  @expires_at = expires_at
132
+ @disabled_at = disabled_at
130
133
  @proxy = proxy
131
134
  @rewrite = rewrite
132
135
  @do_index = do_index
@@ -134,6 +137,8 @@ module OpenApiSDK
134
137
  @webhook_ids = webhook_ids
135
138
  @short_link = short_link
136
139
  @qr_code = qr_code
140
+ @test_started_at = test_started_at
141
+ @test_completed_at = test_completed_at
137
142
  @workspace_id = workspace_id
138
143
  @last_clicked = last_clicked
139
144
  @created_at = created_at
@@ -160,8 +165,6 @@ module OpenApiSDK
160
165
  @utm_campaign = utm_campaign
161
166
  @utm_term = utm_term
162
167
  @utm_content = utm_content
163
- @test_started_at = test_started_at
164
- @test_completed_at = test_completed_at
165
168
  @user_id = user_id
166
169
  @tag_id = tag_id
167
170
  @test_variants = test_variants
@@ -182,6 +185,7 @@ module OpenApiSDK
182
185
  return false unless @track_conversion == other.track_conversion
183
186
  return false unless @archived == other.archived
184
187
  return false unless @expires_at == other.expires_at
188
+ return false unless @disabled_at == other.disabled_at
185
189
  return false unless @proxy == other.proxy
186
190
  return false unless @rewrite == other.rewrite
187
191
  return false unless @do_index == other.do_index
@@ -189,6 +193,8 @@ module OpenApiSDK
189
193
  return false unless @webhook_ids == other.webhook_ids
190
194
  return false unless @short_link == other.short_link
191
195
  return false unless @qr_code == other.qr_code
196
+ return false unless @test_started_at == other.test_started_at
197
+ return false unless @test_completed_at == other.test_completed_at
192
198
  return false unless @workspace_id == other.workspace_id
193
199
  return false unless @last_clicked == other.last_clicked
194
200
  return false unless @created_at == other.created_at
@@ -215,8 +221,6 @@ module OpenApiSDK
215
221
  return false unless @utm_campaign == other.utm_campaign
216
222
  return false unless @utm_term == other.utm_term
217
223
  return false unless @utm_content == other.utm_content
218
- return false unless @test_started_at == other.test_started_at
219
- return false unless @test_completed_at == other.test_completed_at
220
224
  return false unless @user_id == other.user_id
221
225
  return false unless @tag_id == other.tag_id
222
226
  return false unless @test_variants == other.test_variants
@@ -22,6 +22,8 @@ class OpenApiSDK::Models::Shared::LeadEventLink
22
22
  def archived=(str_); end
23
23
  def expires_at(); end
24
24
  def expires_at=(str_); end
25
+ def disabled_at(); end
26
+ def disabled_at=(str_); end
25
27
  def proxy(); end
26
28
  def proxy=(str_); end
27
29
  def rewrite(); end
@@ -36,6 +38,10 @@ class OpenApiSDK::Models::Shared::LeadEventLink
36
38
  def short_link=(str_); end
37
39
  def qr_code(); end
38
40
  def qr_code=(str_); end
41
+ def test_started_at(); end
42
+ def test_started_at=(str_); end
43
+ def test_completed_at(); end
44
+ def test_completed_at=(str_); end
39
45
  def workspace_id(); end
40
46
  def workspace_id=(str_); end
41
47
  def last_clicked(); end
@@ -88,10 +94,6 @@ class OpenApiSDK::Models::Shared::LeadEventLink
88
94
  def utm_term=(str_); end
89
95
  def utm_content(); end
90
96
  def utm_content=(str_); end
91
- def test_started_at(); end
92
- def test_started_at=(str_); end
93
- def test_completed_at(); end
94
- def test_completed_at=(str_); end
95
97
  def user_id(); end
96
98
  def user_id=(str_); end
97
99
  def tag_id(); end
@@ -28,6 +28,8 @@ module OpenApiSDK
28
28
 
29
29
  field :expires_at, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('expiresAt'), required: true } }
30
30
 
31
+ field :disabled_at, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('disabledAt'), required: true } }
32
+
31
33
  field :proxy, Crystalline::Boolean.new, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('proxy'), required: true } }
32
34
 
33
35
  field :rewrite, Crystalline::Boolean.new, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('rewrite'), required: true } }
@@ -41,6 +43,10 @@ module OpenApiSDK
41
43
  field :short_link, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('shortLink'), required: true } }
42
44
  # The full URL of the QR code for the short link (e.g. `https://api.dub.co/qr?url=https://dub.sh/try`).
43
45
  field :qr_code, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('qrCode'), required: true } }
46
+
47
+ field :test_started_at, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('testStartedAt'), required: true } }
48
+
49
+ field :test_completed_at, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('testCompletedAt'), required: true } }
44
50
  # The workspace ID of the short link.
45
51
  field :workspace_id, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('workspaceId'), required: true } }
46
52
 
@@ -80,7 +86,7 @@ module OpenApiSDK
80
86
  # Geo targeting information for the short link in JSON format `{[COUNTRY]: https://example.com }`. See https://d.to/geo for more information.
81
87
  field :geo, Crystalline::Nilable.new(Crystalline::Hash.new(Symbol, ::String)), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('geo'), required: true } }
82
88
  # The tags assigned to the short link.
83
- field :tags, Crystalline::Nilable.new(Crystalline::Array.new(Models::Shared::TagSchema)), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('tags'), required: true } }
89
+ field :tags, Crystalline::Nilable.new(Crystalline::Array.new(Models::Shared::LinkTagSchema)), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('tags'), required: true } }
84
90
  # The unique ID of the folder assigned to the short link.
85
91
  field :folder_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('folderId'), required: true } }
86
92
  # The comments for the short link.
@@ -96,10 +102,6 @@ module OpenApiSDK
96
102
  # The UTM content of the short link.
97
103
  field :utm_content, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('utm_content'), required: true } }
98
104
 
99
- field :test_started_at, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('testStartedAt'), required: true } }
100
-
101
- field :test_completed_at, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('testCompletedAt'), required: true } }
102
-
103
105
  field :user_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('userId'), required: true } }
104
106
  # Deprecated: Use `tags` instead. The unique ID of the tag assigned to the short link.
105
107
  #
@@ -118,8 +120,8 @@ module OpenApiSDK
118
120
  # The total dollar value of sales (in cents) generated by the short link.
119
121
  field :sale_amount, Crystalline::Nilable.new(::Float), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('saleAmount') } }
120
122
 
121
- sig { params(id: ::String, domain: ::String, key: ::String, url: ::String, track_conversion: T::Boolean, archived: T::Boolean, expires_at: ::String, proxy: T::Boolean, rewrite: T::Boolean, do_index: T::Boolean, public_stats: T::Boolean, webhook_ids: T::Array[::String], short_link: ::String, qr_code: ::String, workspace_id: ::String, last_clicked: ::String, created_at: ::String, updated_at: ::String, project_id: ::String, external_id: T.nilable(::String), tenant_id: T.nilable(::String), program_id: T.nilable(::String), partner_id: T.nilable(::String), expired_url: T.nilable(::String), password: T.nilable(::String), title: T.nilable(::String), description: T.nilable(::String), image: T.nilable(::String), video: T.nilable(::String), ios: T.nilable(::String), android: T.nilable(::String), geo: T.nilable(T::Hash[Symbol, ::String]), tags: T.nilable(T::Array[Models::Shared::TagSchema]), folder_id: T.nilable(::String), comments: T.nilable(::String), utm_source: T.nilable(::String), utm_medium: T.nilable(::String), utm_campaign: T.nilable(::String), utm_term: T.nilable(::String), utm_content: T.nilable(::String), test_started_at: T.nilable(::String), test_completed_at: T.nilable(::String), user_id: T.nilable(::String), tag_id: T.nilable(::String), test_variants: T.nilable(T::Array[Models::Shared::ClickEventTestVariants]), clicks: T.nilable(::Float), leads: T.nilable(::Float), conversions: T.nilable(::Float), sales: T.nilable(::Float), sale_amount: T.nilable(::Float)).void }
122
- def initialize(id:, domain:, key:, url:, track_conversion:, archived:, expires_at:, proxy:, rewrite:, do_index:, public_stats:, webhook_ids:, short_link:, qr_code:, workspace_id:, last_clicked:, created_at:, updated_at:, project_id:, external_id: nil, tenant_id: nil, program_id: nil, partner_id: nil, expired_url: nil, password: nil, title: nil, description: nil, image: nil, video: nil, ios: nil, android: nil, geo: nil, tags: nil, folder_id: nil, comments: nil, utm_source: nil, utm_medium: nil, utm_campaign: nil, utm_term: nil, utm_content: nil, test_started_at: nil, test_completed_at: nil, user_id: nil, tag_id: nil, test_variants: nil, clicks: 0.0, leads: 0.0, conversions: 0.0, sales: 0.0, sale_amount: 0.0)
123
+ sig { params(id: ::String, domain: ::String, key: ::String, url: ::String, track_conversion: T::Boolean, archived: T::Boolean, expires_at: ::String, disabled_at: ::String, proxy: T::Boolean, rewrite: T::Boolean, do_index: T::Boolean, public_stats: T::Boolean, webhook_ids: T::Array[::String], short_link: ::String, qr_code: ::String, test_started_at: ::String, test_completed_at: ::String, workspace_id: ::String, last_clicked: ::String, created_at: ::String, updated_at: ::String, project_id: ::String, external_id: T.nilable(::String), tenant_id: T.nilable(::String), program_id: T.nilable(::String), partner_id: T.nilable(::String), expired_url: T.nilable(::String), password: T.nilable(::String), title: T.nilable(::String), description: T.nilable(::String), image: T.nilable(::String), video: T.nilable(::String), ios: T.nilable(::String), android: T.nilable(::String), geo: T.nilable(T::Hash[Symbol, ::String]), tags: T.nilable(T::Array[Models::Shared::LinkTagSchema]), folder_id: T.nilable(::String), comments: T.nilable(::String), utm_source: T.nilable(::String), utm_medium: T.nilable(::String), utm_campaign: T.nilable(::String), utm_term: T.nilable(::String), utm_content: T.nilable(::String), user_id: T.nilable(::String), tag_id: T.nilable(::String), test_variants: T.nilable(T::Array[Models::Shared::ClickEventTestVariants]), clicks: T.nilable(::Float), leads: T.nilable(::Float), conversions: T.nilable(::Float), sales: T.nilable(::Float), sale_amount: T.nilable(::Float)).void }
124
+ def initialize(id:, domain:, key:, url:, track_conversion:, archived:, expires_at:, disabled_at:, proxy:, rewrite:, do_index:, public_stats:, webhook_ids:, short_link:, qr_code:, test_started_at:, test_completed_at:, workspace_id:, last_clicked:, created_at:, updated_at:, project_id:, external_id: nil, tenant_id: nil, program_id: nil, partner_id: nil, expired_url: nil, password: nil, title: nil, description: nil, image: nil, video: nil, ios: nil, android: nil, geo: nil, tags: nil, folder_id: nil, comments: nil, utm_source: nil, utm_medium: nil, utm_campaign: nil, utm_term: nil, utm_content: nil, user_id: nil, tag_id: nil, test_variants: nil, clicks: 0.0, leads: 0.0, conversions: 0.0, sales: 0.0, sale_amount: 0.0)
123
125
  @id = id
124
126
  @domain = domain
125
127
  @key = key
@@ -127,6 +129,7 @@ module OpenApiSDK
127
129
  @track_conversion = track_conversion
128
130
  @archived = archived
129
131
  @expires_at = expires_at
132
+ @disabled_at = disabled_at
130
133
  @proxy = proxy
131
134
  @rewrite = rewrite
132
135
  @do_index = do_index
@@ -134,6 +137,8 @@ module OpenApiSDK
134
137
  @webhook_ids = webhook_ids
135
138
  @short_link = short_link
136
139
  @qr_code = qr_code
140
+ @test_started_at = test_started_at
141
+ @test_completed_at = test_completed_at
137
142
  @workspace_id = workspace_id
138
143
  @last_clicked = last_clicked
139
144
  @created_at = created_at
@@ -160,8 +165,6 @@ module OpenApiSDK
160
165
  @utm_campaign = utm_campaign
161
166
  @utm_term = utm_term
162
167
  @utm_content = utm_content
163
- @test_started_at = test_started_at
164
- @test_completed_at = test_completed_at
165
168
  @user_id = user_id
166
169
  @tag_id = tag_id
167
170
  @test_variants = test_variants
@@ -182,6 +185,7 @@ module OpenApiSDK
182
185
  return false unless @track_conversion == other.track_conversion
183
186
  return false unless @archived == other.archived
184
187
  return false unless @expires_at == other.expires_at
188
+ return false unless @disabled_at == other.disabled_at
185
189
  return false unless @proxy == other.proxy
186
190
  return false unless @rewrite == other.rewrite
187
191
  return false unless @do_index == other.do_index
@@ -189,6 +193,8 @@ module OpenApiSDK
189
193
  return false unless @webhook_ids == other.webhook_ids
190
194
  return false unless @short_link == other.short_link
191
195
  return false unless @qr_code == other.qr_code
196
+ return false unless @test_started_at == other.test_started_at
197
+ return false unless @test_completed_at == other.test_completed_at
192
198
  return false unless @workspace_id == other.workspace_id
193
199
  return false unless @last_clicked == other.last_clicked
194
200
  return false unless @created_at == other.created_at
@@ -215,8 +221,6 @@ module OpenApiSDK
215
221
  return false unless @utm_campaign == other.utm_campaign
216
222
  return false unless @utm_term == other.utm_term
217
223
  return false unless @utm_content == other.utm_content
218
- return false unless @test_started_at == other.test_started_at
219
- return false unless @test_completed_at == other.test_completed_at
220
224
  return false unless @user_id == other.user_id
221
225
  return false unless @tag_id == other.tag_id
222
226
  return false unless @test_variants == other.test_variants
@@ -22,6 +22,8 @@ class OpenApiSDK::Models::Shared::Link
22
22
  def archived=(str_); end
23
23
  def expires_at(); end
24
24
  def expires_at=(str_); end
25
+ def disabled_at(); end
26
+ def disabled_at=(str_); end
25
27
  def proxy(); end
26
28
  def proxy=(str_); end
27
29
  def rewrite(); end
@@ -36,6 +38,10 @@ class OpenApiSDK::Models::Shared::Link
36
38
  def short_link=(str_); end
37
39
  def qr_code(); end
38
40
  def qr_code=(str_); end
41
+ def test_started_at(); end
42
+ def test_started_at=(str_); end
43
+ def test_completed_at(); end
44
+ def test_completed_at=(str_); end
39
45
  def workspace_id(); end
40
46
  def workspace_id=(str_); end
41
47
  def last_clicked(); end
@@ -88,10 +94,6 @@ class OpenApiSDK::Models::Shared::Link
88
94
  def utm_term=(str_); end
89
95
  def utm_content(); end
90
96
  def utm_content=(str_); end
91
- def test_started_at(); end
92
- def test_started_at=(str_); end
93
- def test_completed_at(); end
94
- def test_completed_at=(str_); end
95
97
  def user_id(); end
96
98
  def user_id=(str_); end
97
99
  def tag_id(); end
@@ -28,6 +28,8 @@ module OpenApiSDK
28
28
 
29
29
  field :expires_at, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('expiresAt'), required: true } }
30
30
 
31
+ field :disabled_at, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('disabledAt'), required: true } }
32
+
31
33
  field :proxy, Crystalline::Boolean.new, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('proxy'), required: true } }
32
34
 
33
35
  field :rewrite, Crystalline::Boolean.new, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('rewrite'), required: true } }
@@ -41,6 +43,10 @@ module OpenApiSDK
41
43
  field :short_link, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('shortLink'), required: true } }
42
44
  # The full URL of the QR code for the short link (e.g. `https://api.dub.co/qr?url=https://dub.sh/try`).
43
45
  field :qr_code, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('qrCode'), required: true } }
46
+
47
+ field :test_started_at, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('testStartedAt'), required: true } }
48
+
49
+ field :test_completed_at, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('testCompletedAt'), required: true } }
44
50
  # The workspace ID of the short link.
45
51
  field :workspace_id, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('workspaceId'), required: true } }
46
52
 
@@ -80,7 +86,7 @@ module OpenApiSDK
80
86
  # Geo targeting information for the short link in JSON format `{[COUNTRY]: https://example.com }`. See https://d.to/geo for more information.
81
87
  field :geo, Crystalline::Nilable.new(Crystalline::Hash.new(Symbol, ::String)), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('geo'), required: true } }
82
88
  # The tags assigned to the short link.
83
- field :tags, Crystalline::Nilable.new(Crystalline::Array.new(Models::Shared::TagSchema)), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('tags'), required: true } }
89
+ field :tags, Crystalline::Nilable.new(Crystalline::Array.new(Models::Shared::LinkTagSchema)), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('tags'), required: true } }
84
90
  # The unique ID of the folder assigned to the short link.
85
91
  field :folder_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('folderId'), required: true } }
86
92
  # The comments for the short link.
@@ -96,10 +102,6 @@ module OpenApiSDK
96
102
  # The UTM content of the short link.
97
103
  field :utm_content, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('utm_content'), required: true } }
98
104
 
99
- field :test_started_at, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('testStartedAt'), required: true } }
100
-
101
- field :test_completed_at, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('testCompletedAt'), required: true } }
102
-
103
105
  field :user_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('userId'), required: true } }
104
106
  # Deprecated: Use `tags` instead. The unique ID of the tag assigned to the short link.
105
107
  #
@@ -118,8 +120,8 @@ module OpenApiSDK
118
120
  # The total dollar value of sales (in cents) generated by the short link.
119
121
  field :sale_amount, Crystalline::Nilable.new(::Float), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('saleAmount') } }
120
122
 
121
- sig { params(id: ::String, domain: ::String, key: ::String, url: ::String, track_conversion: T::Boolean, archived: T::Boolean, expires_at: ::String, proxy: T::Boolean, rewrite: T::Boolean, do_index: T::Boolean, public_stats: T::Boolean, webhook_ids: T::Array[::String], short_link: ::String, qr_code: ::String, workspace_id: ::String, last_clicked: ::String, created_at: ::String, updated_at: ::String, project_id: ::String, external_id: T.nilable(::String), tenant_id: T.nilable(::String), program_id: T.nilable(::String), partner_id: T.nilable(::String), expired_url: T.nilable(::String), password: T.nilable(::String), title: T.nilable(::String), description: T.nilable(::String), image: T.nilable(::String), video: T.nilable(::String), ios: T.nilable(::String), android: T.nilable(::String), geo: T.nilable(T::Hash[Symbol, ::String]), tags: T.nilable(T::Array[Models::Shared::TagSchema]), folder_id: T.nilable(::String), comments: T.nilable(::String), utm_source: T.nilable(::String), utm_medium: T.nilable(::String), utm_campaign: T.nilable(::String), utm_term: T.nilable(::String), utm_content: T.nilable(::String), test_started_at: T.nilable(::String), test_completed_at: T.nilable(::String), user_id: T.nilable(::String), tag_id: T.nilable(::String), test_variants: T.nilable(T::Array[Models::Shared::LinkClickedEventTestVariants]), clicks: T.nilable(::Float), leads: T.nilable(::Float), conversions: T.nilable(::Float), sales: T.nilable(::Float), sale_amount: T.nilable(::Float)).void }
122
- def initialize(id:, domain:, key:, url:, track_conversion:, archived:, expires_at:, proxy:, rewrite:, do_index:, public_stats:, webhook_ids:, short_link:, qr_code:, workspace_id:, last_clicked:, created_at:, updated_at:, project_id:, external_id: nil, tenant_id: nil, program_id: nil, partner_id: nil, expired_url: nil, password: nil, title: nil, description: nil, image: nil, video: nil, ios: nil, android: nil, geo: nil, tags: nil, folder_id: nil, comments: nil, utm_source: nil, utm_medium: nil, utm_campaign: nil, utm_term: nil, utm_content: nil, test_started_at: nil, test_completed_at: nil, user_id: nil, tag_id: nil, test_variants: nil, clicks: 0.0, leads: 0.0, conversions: 0.0, sales: 0.0, sale_amount: 0.0)
123
+ sig { params(id: ::String, domain: ::String, key: ::String, url: ::String, track_conversion: T::Boolean, archived: T::Boolean, expires_at: ::String, disabled_at: ::String, proxy: T::Boolean, rewrite: T::Boolean, do_index: T::Boolean, public_stats: T::Boolean, webhook_ids: T::Array[::String], short_link: ::String, qr_code: ::String, test_started_at: ::String, test_completed_at: ::String, workspace_id: ::String, last_clicked: ::String, created_at: ::String, updated_at: ::String, project_id: ::String, external_id: T.nilable(::String), tenant_id: T.nilable(::String), program_id: T.nilable(::String), partner_id: T.nilable(::String), expired_url: T.nilable(::String), password: T.nilable(::String), title: T.nilable(::String), description: T.nilable(::String), image: T.nilable(::String), video: T.nilable(::String), ios: T.nilable(::String), android: T.nilable(::String), geo: T.nilable(T::Hash[Symbol, ::String]), tags: T.nilable(T::Array[Models::Shared::LinkTagSchema]), folder_id: T.nilable(::String), comments: T.nilable(::String), utm_source: T.nilable(::String), utm_medium: T.nilable(::String), utm_campaign: T.nilable(::String), utm_term: T.nilable(::String), utm_content: T.nilable(::String), user_id: T.nilable(::String), tag_id: T.nilable(::String), test_variants: T.nilable(T::Array[Models::Shared::LinkClickedEventTestVariants]), clicks: T.nilable(::Float), leads: T.nilable(::Float), conversions: T.nilable(::Float), sales: T.nilable(::Float), sale_amount: T.nilable(::Float)).void }
124
+ def initialize(id:, domain:, key:, url:, track_conversion:, archived:, expires_at:, disabled_at:, proxy:, rewrite:, do_index:, public_stats:, webhook_ids:, short_link:, qr_code:, test_started_at:, test_completed_at:, workspace_id:, last_clicked:, created_at:, updated_at:, project_id:, external_id: nil, tenant_id: nil, program_id: nil, partner_id: nil, expired_url: nil, password: nil, title: nil, description: nil, image: nil, video: nil, ios: nil, android: nil, geo: nil, tags: nil, folder_id: nil, comments: nil, utm_source: nil, utm_medium: nil, utm_campaign: nil, utm_term: nil, utm_content: nil, user_id: nil, tag_id: nil, test_variants: nil, clicks: 0.0, leads: 0.0, conversions: 0.0, sales: 0.0, sale_amount: 0.0)
123
125
  @id = id
124
126
  @domain = domain
125
127
  @key = key
@@ -127,6 +129,7 @@ module OpenApiSDK
127
129
  @track_conversion = track_conversion
128
130
  @archived = archived
129
131
  @expires_at = expires_at
132
+ @disabled_at = disabled_at
130
133
  @proxy = proxy
131
134
  @rewrite = rewrite
132
135
  @do_index = do_index
@@ -134,6 +137,8 @@ module OpenApiSDK
134
137
  @webhook_ids = webhook_ids
135
138
  @short_link = short_link
136
139
  @qr_code = qr_code
140
+ @test_started_at = test_started_at
141
+ @test_completed_at = test_completed_at
137
142
  @workspace_id = workspace_id
138
143
  @last_clicked = last_clicked
139
144
  @created_at = created_at
@@ -160,8 +165,6 @@ module OpenApiSDK
160
165
  @utm_campaign = utm_campaign
161
166
  @utm_term = utm_term
162
167
  @utm_content = utm_content
163
- @test_started_at = test_started_at
164
- @test_completed_at = test_completed_at
165
168
  @user_id = user_id
166
169
  @tag_id = tag_id
167
170
  @test_variants = test_variants
@@ -182,6 +185,7 @@ module OpenApiSDK
182
185
  return false unless @track_conversion == other.track_conversion
183
186
  return false unless @archived == other.archived
184
187
  return false unless @expires_at == other.expires_at
188
+ return false unless @disabled_at == other.disabled_at
185
189
  return false unless @proxy == other.proxy
186
190
  return false unless @rewrite == other.rewrite
187
191
  return false unless @do_index == other.do_index
@@ -189,6 +193,8 @@ module OpenApiSDK
189
193
  return false unless @webhook_ids == other.webhook_ids
190
194
  return false unless @short_link == other.short_link
191
195
  return false unless @qr_code == other.qr_code
196
+ return false unless @test_started_at == other.test_started_at
197
+ return false unless @test_completed_at == other.test_completed_at
192
198
  return false unless @workspace_id == other.workspace_id
193
199
  return false unless @last_clicked == other.last_clicked
194
200
  return false unless @created_at == other.created_at
@@ -215,8 +221,6 @@ module OpenApiSDK
215
221
  return false unless @utm_campaign == other.utm_campaign
216
222
  return false unless @utm_term == other.utm_term
217
223
  return false unless @utm_content == other.utm_content
218
- return false unless @test_started_at == other.test_started_at
219
- return false unless @test_completed_at == other.test_completed_at
220
224
  return false unless @user_id == other.user_id
221
225
  return false unless @tag_id == other.tag_id
222
226
  return false unless @test_variants == other.test_variants
@@ -22,6 +22,8 @@ class OpenApiSDK::Models::Shared::LinkClickedEventLink
22
22
  def archived=(str_); end
23
23
  def expires_at(); end
24
24
  def expires_at=(str_); end
25
+ def disabled_at(); end
26
+ def disabled_at=(str_); end
25
27
  def proxy(); end
26
28
  def proxy=(str_); end
27
29
  def rewrite(); end
@@ -36,6 +38,10 @@ class OpenApiSDK::Models::Shared::LinkClickedEventLink
36
38
  def short_link=(str_); end
37
39
  def qr_code(); end
38
40
  def qr_code=(str_); end
41
+ def test_started_at(); end
42
+ def test_started_at=(str_); end
43
+ def test_completed_at(); end
44
+ def test_completed_at=(str_); end
39
45
  def workspace_id(); end
40
46
  def workspace_id=(str_); end
41
47
  def last_clicked(); end
@@ -88,10 +94,6 @@ class OpenApiSDK::Models::Shared::LinkClickedEventLink
88
94
  def utm_term=(str_); end
89
95
  def utm_content(); end
90
96
  def utm_content=(str_); end
91
- def test_started_at(); end
92
- def test_started_at=(str_); end
93
- def test_completed_at(); end
94
- def test_completed_at=(str_); end
95
97
  def user_id(); end
96
98
  def user_id=(str_); end
97
99
  def tag_id(); end
@@ -49,6 +49,8 @@ module OpenApiSDK
49
49
  field :expires_at, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('expiresAt'), required: true } }
50
50
  # The URL to redirect to when the short link has expired.
51
51
  field :expired_url, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('expiredUrl'), required: true } }
52
+ # The date and time when the short link was disabled. When a short link is disabled, it will redirect to its domain's not found URL, and its stats will be excluded from your overall stats.
53
+ field :disabled_at, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('disabledAt'), required: true } }
52
54
  # The password required to access the destination URL of the short link.
53
55
  field :password, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('password'), required: true } }
54
56
  # The title of the short link. Will be used for Custom Link Previews if `proxy` is true.
@@ -66,7 +68,7 @@ module OpenApiSDK
66
68
  # Geo targeting information for the short link in JSON format `{[COUNTRY]: https://example.com }`. See https://d.to/geo for more information.
67
69
  field :geo, Crystalline::Nilable.new(Crystalline::Hash.new(Symbol, ::String)), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('geo'), required: true } }
68
70
  # The tags assigned to the short link.
69
- field :tags, Crystalline::Nilable.new(Crystalline::Array.new(Models::Shared::TagSchema)), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('tags'), required: true } }
71
+ field :tags, Crystalline::Nilable.new(Crystalline::Array.new(Models::Shared::LinkTagSchema)), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('tags'), required: true } }
70
72
  # The unique ID of the folder assigned to the short link.
71
73
  field :folder_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('folderId'), required: true } }
72
74
  # The comments for the short link.
@@ -118,8 +120,8 @@ module OpenApiSDK
118
120
  # The total dollar value of sales (in cents) generated by the short link.
119
121
  field :sale_amount, Crystalline::Nilable.new(::Float), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('saleAmount') } }
120
122
 
121
- sig { params(id: ::String, domain: ::String, key: ::String, url: ::String, webhook_ids: T::Array[::String], short_link: ::String, qr_code: ::String, workspace_id: ::String, created_at: ::String, updated_at: ::String, project_id: ::String, external_id: T.nilable(::String), tenant_id: T.nilable(::String), program_id: T.nilable(::String), partner_id: T.nilable(::String), expires_at: T.nilable(::String), expired_url: T.nilable(::String), password: T.nilable(::String), title: T.nilable(::String), description: T.nilable(::String), image: T.nilable(::String), video: T.nilable(::String), ios: T.nilable(::String), android: T.nilable(::String), geo: T.nilable(T::Hash[Symbol, ::String]), tags: T.nilable(T::Array[Models::Shared::TagSchema]), folder_id: T.nilable(::String), comments: T.nilable(::String), utm_source: T.nilable(::String), utm_medium: T.nilable(::String), utm_campaign: T.nilable(::String), utm_term: T.nilable(::String), utm_content: T.nilable(::String), user_id: T.nilable(::String), last_clicked: T.nilable(::String), tag_id: T.nilable(::String), track_conversion: T.nilable(T::Boolean), archived: T.nilable(T::Boolean), proxy: T.nilable(T::Boolean), rewrite: T.nilable(T::Boolean), do_index: T.nilable(T::Boolean), public_stats: T.nilable(T::Boolean), test_variants: T.nilable(T::Array[Models::Shared::TestVariants]), test_started_at: T.nilable(::String), test_completed_at: T.nilable(::String), clicks: T.nilable(::Float), leads: T.nilable(::Float), conversions: T.nilable(::Float), sales: T.nilable(::Float), sale_amount: T.nilable(::Float)).void }
122
- def initialize(id:, domain:, key:, url:, webhook_ids:, short_link:, qr_code:, workspace_id:, created_at:, updated_at:, project_id:, external_id: nil, tenant_id: nil, program_id: nil, partner_id: nil, expires_at: nil, expired_url: nil, password: nil, title: nil, description: nil, image: nil, video: nil, ios: nil, android: nil, geo: nil, tags: nil, folder_id: nil, comments: nil, utm_source: nil, utm_medium: nil, utm_campaign: nil, utm_term: nil, utm_content: nil, user_id: nil, last_clicked: nil, tag_id: nil, track_conversion: false, archived: false, proxy: false, rewrite: false, do_index: false, public_stats: false, test_variants: nil, test_started_at: nil, test_completed_at: nil, clicks: 0.0, leads: 0.0, conversions: 0.0, sales: 0.0, sale_amount: 0.0)
123
+ sig { params(id: ::String, domain: ::String, key: ::String, url: ::String, webhook_ids: T::Array[::String], short_link: ::String, qr_code: ::String, workspace_id: ::String, created_at: ::String, updated_at: ::String, project_id: ::String, external_id: T.nilable(::String), tenant_id: T.nilable(::String), program_id: T.nilable(::String), partner_id: T.nilable(::String), expires_at: T.nilable(::String), expired_url: T.nilable(::String), disabled_at: T.nilable(::String), password: T.nilable(::String), title: T.nilable(::String), description: T.nilable(::String), image: T.nilable(::String), video: T.nilable(::String), ios: T.nilable(::String), android: T.nilable(::String), geo: T.nilable(T::Hash[Symbol, ::String]), tags: T.nilable(T::Array[Models::Shared::LinkTagSchema]), folder_id: T.nilable(::String), comments: T.nilable(::String), utm_source: T.nilable(::String), utm_medium: T.nilable(::String), utm_campaign: T.nilable(::String), utm_term: T.nilable(::String), utm_content: T.nilable(::String), user_id: T.nilable(::String), last_clicked: T.nilable(::String), tag_id: T.nilable(::String), track_conversion: T.nilable(T::Boolean), archived: T.nilable(T::Boolean), proxy: T.nilable(T::Boolean), rewrite: T.nilable(T::Boolean), do_index: T.nilable(T::Boolean), public_stats: T.nilable(T::Boolean), test_variants: T.nilable(T::Array[Models::Shared::TestVariants]), test_started_at: T.nilable(::String), test_completed_at: T.nilable(::String), clicks: T.nilable(::Float), leads: T.nilable(::Float), conversions: T.nilable(::Float), sales: T.nilable(::Float), sale_amount: T.nilable(::Float)).void }
124
+ def initialize(id:, domain:, key:, url:, webhook_ids:, short_link:, qr_code:, workspace_id:, created_at:, updated_at:, project_id:, external_id: nil, tenant_id: nil, program_id: nil, partner_id: nil, expires_at: nil, expired_url: nil, disabled_at: nil, password: nil, title: nil, description: nil, image: nil, video: nil, ios: nil, android: nil, geo: nil, tags: nil, folder_id: nil, comments: nil, utm_source: nil, utm_medium: nil, utm_campaign: nil, utm_term: nil, utm_content: nil, user_id: nil, last_clicked: nil, tag_id: nil, track_conversion: false, archived: false, proxy: false, rewrite: false, do_index: false, public_stats: false, test_variants: nil, test_started_at: nil, test_completed_at: nil, clicks: 0.0, leads: 0.0, conversions: 0.0, sales: 0.0, sale_amount: 0.0)
123
125
  @id = id
124
126
  @domain = domain
125
127
  @key = key
@@ -137,6 +139,7 @@ module OpenApiSDK
137
139
  @partner_id = partner_id
138
140
  @expires_at = expires_at
139
141
  @expired_url = expired_url
142
+ @disabled_at = disabled_at
140
143
  @password = password
141
144
  @title = title
142
145
  @description = description
@@ -192,6 +195,7 @@ module OpenApiSDK
192
195
  return false unless @partner_id == other.partner_id
193
196
  return false unless @expires_at == other.expires_at
194
197
  return false unless @expired_url == other.expired_url
198
+ return false unless @disabled_at == other.disabled_at
195
199
  return false unless @password == other.password
196
200
  return false unless @title == other.title
197
201
  return false unless @description == other.description
@@ -42,6 +42,8 @@ class OpenApiSDK::Models::Shared::LinkSchema
42
42
  def expires_at=(str_); end
43
43
  def expired_url(); end
44
44
  def expired_url=(str_); end
45
+ def disabled_at(); end
46
+ def disabled_at=(str_); end
45
47
  def password(); end
46
48
  def password=(str_); end
47
49
  def title(); end
@@ -9,7 +9,7 @@ module OpenApiSDK
9
9
  module Shared
10
10
 
11
11
 
12
- class TagSchema
12
+ class LinkTagSchema
13
13
  extend T::Sig
14
14
  include Crystalline::MetadataFields
15
15