dub 0.2.2.pre.alpha.83 → 0.2.2.pre.alpha.87

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 (56) hide show
  1. checksums.yaml +4 -4
  2. data/lib/dub.rb +0 -1
  3. data/lib/open_api_sdk/dub.rb +1 -2
  4. data/lib/open_api_sdk/models/operations/bulkcreatelinks_testvariants.rb +27 -0
  5. data/lib/open_api_sdk/models/operations/bulkupdatelinks_testvariants.rb +27 -0
  6. data/lib/open_api_sdk/models/operations/createcustomer_responsebody.rb +5 -2
  7. data/lib/open_api_sdk/models/operations/createlink_requestbody.rb +11 -2
  8. data/lib/open_api_sdk/models/operations/{links.rb → createpartner_link.rb} +1 -1
  9. data/lib/open_api_sdk/models/operations/createpartner_responsebody.rb +2 -2
  10. data/lib/open_api_sdk/models/operations/createpartner_testvariants.rb +27 -0
  11. data/lib/open_api_sdk/models/operations/createpartnerlink_linkprops.rb +11 -2
  12. data/lib/open_api_sdk/models/operations/createpartnerlink_testvariants.rb +27 -0
  13. data/lib/open_api_sdk/models/operations/createreferralsembedtoken_linkprops.rb +11 -2
  14. data/lib/open_api_sdk/models/operations/createreferralsembedtoken_testvariants.rb +27 -0
  15. data/lib/open_api_sdk/models/operations/data.rb +11 -2
  16. data/lib/open_api_sdk/models/operations/discount.rb +2 -2
  17. data/lib/open_api_sdk/models/operations/getcustomer_responsebody.rb +5 -2
  18. data/lib/open_api_sdk/models/operations/getcustomers_link.rb +36 -0
  19. data/lib/open_api_sdk/models/operations/getcustomers_type.rb +18 -0
  20. data/lib/open_api_sdk/models/operations/getlinks_request.rb +1 -1
  21. data/lib/open_api_sdk/models/operations/getlinkscount_request.rb +1 -1
  22. data/lib/open_api_sdk/models/operations/link.rb +17 -5
  23. data/lib/open_api_sdk/models/operations/linkprops.rb +11 -2
  24. data/lib/open_api_sdk/models/operations/listevents_request.rb +5 -2
  25. data/lib/open_api_sdk/models/operations/requestbody.rb +11 -2
  26. data/lib/open_api_sdk/models/operations/responsebody.rb +6 -3
  27. data/lib/open_api_sdk/models/operations/retrieveanalytics_request.rb +5 -2
  28. data/lib/open_api_sdk/models/operations/retrievelinks_response.rb +5 -5
  29. data/lib/open_api_sdk/models/operations/testvariants.rb +27 -0
  30. data/lib/open_api_sdk/models/operations/tracklead_requestbody.rb +11 -16
  31. data/lib/open_api_sdk/models/operations/tracksale_requestbody.rb +8 -13
  32. data/lib/open_api_sdk/models/operations/type.rb +3 -2
  33. data/lib/open_api_sdk/models/operations/updatecustomer_responsebody.rb +5 -2
  34. data/lib/open_api_sdk/models/operations/updatelink_requestbody.rb +11 -2
  35. data/lib/open_api_sdk/models/operations/updatelink_testvariants.rb +27 -0
  36. data/lib/open_api_sdk/models/operations/updatepartnersale_responsebody.rb +5 -2
  37. data/lib/open_api_sdk/models/operations/upsertlink_requestbody.rb +11 -2
  38. data/lib/open_api_sdk/models/operations/upsertlink_testvariants.rb +27 -0
  39. data/lib/open_api_sdk/models/operations/upsertpartnerlink_linkprops.rb +11 -2
  40. data/lib/open_api_sdk/models/operations/upsertpartnerlink_testvariants.rb +27 -0
  41. data/lib/open_api_sdk/models/operations.rb +14 -7
  42. data/lib/open_api_sdk/models/shared/click.rb +5 -5
  43. data/lib/open_api_sdk/models/shared/clickevent.rb +5 -5
  44. data/lib/open_api_sdk/models/shared/clickevent_testvariants.rb +27 -0
  45. data/lib/open_api_sdk/models/shared/link.rb +32 -23
  46. data/lib/open_api_sdk/models/shared/linkschema.rb +14 -5
  47. data/lib/open_api_sdk/models/shared/testvariants.rb +27 -0
  48. data/lib/open_api_sdk/models/shared.rb +2 -0
  49. data/lib/open_api_sdk/partners.rb +2 -2
  50. data/lib/open_api_sdk/sdkconfiguration.rb +2 -2
  51. metadata +17 -9
  52. data/lib/open_api_sdk/metatags.rb +0 -109
  53. data/lib/open_api_sdk/models/operations/getmetatags_request.rb +0 -24
  54. data/lib/open_api_sdk/models/operations/getmetatags_response.rb +0 -33
  55. data/lib/open_api_sdk/models/operations/getmetatags_responsebody.rb +0 -30
  56. data/lib/open_api_sdk/models/operations/retrievelinks_responsebody.rb +0 -48
checksums.yaml CHANGED
@@ -1,7 +1,7 @@
1
1
  ---
2
2
  SHA256:
3
- metadata.gz: 745b95881d181e0b5dcf2436bdf9b76a572e9972948e47446688f231622439d6
4
- data.tar.gz: 7f717b4d24ee58d99a5a7bf57e52e4c5e52360d5065047fc9933f0a77bf29600
3
+ metadata.gz: eb2e4475518e02cb086312b2593f8150956f77a0618e494ef1d9d32997a6bd5b
4
+ data.tar.gz: ebe43dfc482765ce74c5882a0e129d53d976030a71b3f3697108b97d86c3fde9
5
5
  SHA512:
6
- metadata.gz: 30892af68dcd2cd5e9f7b71a5ee53fdec0567aeaabf39ad60734d7d67c61f9d37d01eb50ac74899c46b046b680ce45e9ee997f33d15f3343655bb0fd49ee5506
7
- data.tar.gz: af053b1547d15a23b91b66daa86cdf893a00d7f26faca0c72dba83a6dcf721b72a7a52a360674ec8c9e159a09218af9f232b2f393b0dc56322ae4e21f76769bf
6
+ metadata.gz: 211916755c5b3364e2687e1d818e9ad703252ab1c488c823bff60ed2d115e884102024fc5db7afa624a2f1d73efad56957f57a6494aca5845676a8d7c28c7b32
7
+ data.tar.gz: 5389e86b45bdcb18e57c7b96bbe6608f53114b690d134c5e2b87826fe587eee3bf1bf817dfa23733a40543fac44e148b32692771b26df91f50f22cebcb762345
data/lib/dub.rb CHANGED
@@ -19,7 +19,6 @@ module OpenApiSDK
19
19
  autoload :Workspaces, 'open_api_sdk/workspaces'
20
20
  autoload :EmbedTokens, 'open_api_sdk/embed_tokens'
21
21
  autoload :QRCodes, 'open_api_sdk/qr_codes'
22
- autoload :Metatags, 'open_api_sdk/metatags'
23
22
  end
24
23
 
25
24
  require_relative 'open_api_sdk/utils/utils'
@@ -16,7 +16,7 @@ module OpenApiSDK
16
16
  class Dub
17
17
  extend T::Sig
18
18
 
19
- attr_accessor :links, :analytics, :events, :tags, :folders, :domains, :track, :customers, :partners, :workspaces, :embed_tokens, :qr_codes, :metatags
19
+ attr_accessor :links, :analytics, :events, :tags, :folders, :domains, :track, :customers, :partners, :workspaces, :embed_tokens, :qr_codes
20
20
 
21
21
  sig do
22
22
  params(
@@ -93,7 +93,6 @@ module OpenApiSDK
93
93
  @workspaces = Workspaces.new(@sdk_configuration)
94
94
  @embed_tokens = EmbedTokens.new(@sdk_configuration)
95
95
  @qr_codes = QRCodes.new(@sdk_configuration)
96
- @metatags = Metatags.new(@sdk_configuration)
97
96
  end
98
97
  end
99
98
  end
@@ -0,0 +1,27 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module OpenApiSDK
8
+ module Operations
9
+
10
+
11
+ class BulkCreateLinksTestVariants < ::Crystalline::FieldAugmented
12
+ extend T::Sig
13
+
14
+
15
+ field :percentage, ::Float, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('percentage') } }
16
+
17
+ field :url, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('url') } }
18
+
19
+
20
+ sig { params(percentage: ::Float, url: ::String).void }
21
+ def initialize(percentage: nil, url: nil)
22
+ @percentage = percentage
23
+ @url = url
24
+ end
25
+ end
26
+ end
27
+ end
@@ -0,0 +1,27 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module OpenApiSDK
8
+ module Operations
9
+
10
+
11
+ class BulkUpdateLinksTestVariants < ::Crystalline::FieldAugmented
12
+ extend T::Sig
13
+
14
+
15
+ field :percentage, ::Float, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('percentage') } }
16
+
17
+ field :url, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('url') } }
18
+
19
+
20
+ sig { params(percentage: ::Float, url: ::String).void }
21
+ def initialize(percentage: nil, url: nil)
22
+ @percentage = percentage
23
+ @url = url
24
+ end
25
+ end
26
+ end
27
+ end
@@ -32,9 +32,11 @@ module OpenApiSDK
32
32
 
33
33
  field :partner, T.nilable(::OpenApiSDK::Operations::CreateCustomerPartner), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('partner') } }
34
34
 
35
+ field :program_id, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('programId') } }
35
36
 
36
- sig { params(created_at: ::String, external_id: ::String, id: ::String, name: ::String, avatar: T.nilable(::String), country: T.nilable(::String), discount: T.nilable(::OpenApiSDK::Operations::CreateCustomerDiscount), email: T.nilable(::String), link: T.nilable(::OpenApiSDK::Operations::CreateCustomerLink), partner: T.nilable(::OpenApiSDK::Operations::CreateCustomerPartner)).void }
37
- def initialize(created_at: nil, external_id: nil, id: nil, name: nil, avatar: nil, country: nil, discount: nil, email: nil, link: nil, partner: nil)
37
+
38
+ sig { params(created_at: ::String, external_id: ::String, id: ::String, name: ::String, avatar: T.nilable(::String), country: T.nilable(::String), discount: T.nilable(::OpenApiSDK::Operations::CreateCustomerDiscount), email: T.nilable(::String), link: T.nilable(::OpenApiSDK::Operations::CreateCustomerLink), partner: T.nilable(::OpenApiSDK::Operations::CreateCustomerPartner), program_id: T.nilable(::String)).void }
39
+ def initialize(created_at: nil, external_id: nil, id: nil, name: nil, avatar: nil, country: nil, discount: nil, email: nil, link: nil, partner: nil, program_id: nil)
38
40
  @created_at = created_at
39
41
  @external_id = external_id
40
42
  @id = id
@@ -45,6 +47,7 @@ module OpenApiSDK
45
47
  @email = email
46
48
  @link = link
47
49
  @partner = partner
50
+ @program_id = program_id
48
51
  end
49
52
  end
50
53
  end
@@ -69,6 +69,12 @@ module OpenApiSDK
69
69
  field :tag_names, T.nilable(::Object), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('tagNames') } }
70
70
  # The ID of the tenant that created the link inside your system. If set, it can be used to fetch all links for a tenant.
71
71
  field :tenant_id, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('tenantId') } }
72
+ # The date and time when the tests were or will be completed.
73
+ field :test_completed_at, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('testCompletedAt') } }
74
+ # The date and time when the tests started.
75
+ field :test_started_at, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('testStartedAt') } }
76
+ # An array of A/B test URLs and the percentage of traffic to send to each URL.
77
+ field :test_variants, T.nilable(T::Array[::OpenApiSDK::Operations::TestVariants]), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('testVariants') } }
72
78
  # The custom link preview title (og:title). Will be used for Custom Social Media Cards if `proxy` is true. Learn more: https://d.to/og
73
79
  field :title, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('title') } }
74
80
  # Whether to track conversions for the short link. Defaults to `false` if not provided.
@@ -89,8 +95,8 @@ module OpenApiSDK
89
95
  field :webhook_ids, T.nilable(T::Array[::String]), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('webhookIds') } }
90
96
 
91
97
 
92
- sig { params(url: ::String, android: T.nilable(::String), archived: T.nilable(T::Boolean), comments: T.nilable(::String), description: T.nilable(::String), do_index: T.nilable(T::Boolean), domain: T.nilable(::String), expired_url: T.nilable(::String), expires_at: T.nilable(::String), external_id: T.nilable(::String), folder_id: T.nilable(::String), geo: T.nilable(::OpenApiSDK::Shared::LinkGeoTargeting), image: T.nilable(::String), ios: T.nilable(::String), key: T.nilable(::String), partner_id: T.nilable(::String), password: T.nilable(::String), prefix: T.nilable(::String), program_id: T.nilable(::String), proxy: T.nilable(T::Boolean), public_stats: T.nilable(T::Boolean), ref: T.nilable(::String), rewrite: T.nilable(T::Boolean), tag_id: T.nilable(::String), tag_ids: T.nilable(::Object), tag_names: T.nilable(::Object), tenant_id: T.nilable(::String), title: T.nilable(::String), track_conversion: T.nilable(T::Boolean), utm_campaign: T.nilable(::String), utm_content: T.nilable(::String), utm_medium: T.nilable(::String), utm_source: T.nilable(::String), utm_term: T.nilable(::String), video: T.nilable(::String), webhook_ids: T.nilable(T::Array[::String])).void }
93
- def initialize(url: nil, android: nil, archived: nil, comments: nil, description: nil, do_index: nil, domain: nil, expired_url: nil, expires_at: nil, external_id: nil, folder_id: nil, geo: nil, image: nil, ios: nil, key: nil, partner_id: nil, password: nil, prefix: nil, program_id: nil, proxy: nil, public_stats: nil, ref: nil, rewrite: nil, tag_id: nil, tag_ids: nil, tag_names: nil, tenant_id: nil, title: nil, track_conversion: nil, utm_campaign: nil, utm_content: nil, utm_medium: nil, utm_source: nil, utm_term: nil, video: nil, webhook_ids: nil)
98
+ sig { params(url: ::String, android: T.nilable(::String), archived: T.nilable(T::Boolean), comments: T.nilable(::String), description: T.nilable(::String), do_index: T.nilable(T::Boolean), domain: T.nilable(::String), expired_url: T.nilable(::String), expires_at: T.nilable(::String), external_id: T.nilable(::String), folder_id: T.nilable(::String), geo: T.nilable(::OpenApiSDK::Shared::LinkGeoTargeting), image: T.nilable(::String), ios: T.nilable(::String), key: T.nilable(::String), partner_id: T.nilable(::String), password: T.nilable(::String), prefix: T.nilable(::String), program_id: T.nilable(::String), proxy: T.nilable(T::Boolean), public_stats: T.nilable(T::Boolean), ref: T.nilable(::String), rewrite: T.nilable(T::Boolean), tag_id: T.nilable(::String), tag_ids: T.nilable(::Object), tag_names: T.nilable(::Object), tenant_id: T.nilable(::String), test_completed_at: T.nilable(::String), test_started_at: T.nilable(::String), test_variants: T.nilable(T::Array[::OpenApiSDK::Operations::TestVariants]), title: T.nilable(::String), track_conversion: T.nilable(T::Boolean), utm_campaign: T.nilable(::String), utm_content: T.nilable(::String), utm_medium: T.nilable(::String), utm_source: T.nilable(::String), utm_term: T.nilable(::String), video: T.nilable(::String), webhook_ids: T.nilable(T::Array[::String])).void }
99
+ def initialize(url: nil, android: nil, archived: nil, comments: nil, description: nil, do_index: nil, domain: nil, expired_url: nil, expires_at: nil, external_id: nil, folder_id: nil, geo: nil, image: nil, ios: nil, key: nil, partner_id: nil, password: nil, prefix: nil, program_id: nil, proxy: nil, public_stats: nil, ref: nil, rewrite: nil, tag_id: nil, tag_ids: nil, tag_names: nil, tenant_id: nil, test_completed_at: nil, test_started_at: nil, test_variants: nil, title: nil, track_conversion: nil, utm_campaign: nil, utm_content: nil, utm_medium: nil, utm_source: nil, utm_term: nil, video: nil, webhook_ids: nil)
94
100
  @url = url
95
101
  @android = android
96
102
  @archived = archived
@@ -118,6 +124,9 @@ module OpenApiSDK
118
124
  @tag_ids = tag_ids
119
125
  @tag_names = tag_names
120
126
  @tenant_id = tenant_id
127
+ @test_completed_at = test_completed_at
128
+ @test_started_at = test_started_at
129
+ @test_variants = test_variants
121
130
  @title = title
122
131
  @track_conversion = track_conversion
123
132
  @utm_campaign = utm_campaign
@@ -8,7 +8,7 @@ module OpenApiSDK
8
8
  module Operations
9
9
 
10
10
 
11
- class Links < ::Crystalline::FieldAugmented
11
+ class CreatePartnerLink < ::Crystalline::FieldAugmented
12
12
  extend T::Sig
13
13
 
14
14
  # The number of clicks on the short link.
@@ -28,7 +28,7 @@ module OpenApiSDK
28
28
 
29
29
  field :leads, ::Float, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('leads') } }
30
30
 
31
- field :links, T::Array[::OpenApiSDK::Operations::Links], { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('links') } }
31
+ field :links, T::Array[::OpenApiSDK::Operations::CreatePartnerLink], { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('links') } }
32
32
 
33
33
  field :name, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('name') } }
34
34
 
@@ -49,7 +49,7 @@ module OpenApiSDK
49
49
  field :description, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('description') } }
50
50
 
51
51
 
52
- sig { params(clicks: ::Float, country: ::String, created_at: ::String, earnings: ::Float, email: ::String, id: ::String, image: ::String, leads: ::Float, links: T::Array[::OpenApiSDK::Operations::Links], name: ::String, payouts_enabled_at: ::String, program_id: ::String, sale_amount: ::Float, sales: ::Float, status: ::OpenApiSDK::Operations::Status, tenant_id: ::String, application_id: T.nilable(::String), description: T.nilable(::String)).void }
52
+ sig { params(clicks: ::Float, country: ::String, created_at: ::String, earnings: ::Float, email: ::String, id: ::String, image: ::String, leads: ::Float, links: T::Array[::OpenApiSDK::Operations::CreatePartnerLink], name: ::String, payouts_enabled_at: ::String, program_id: ::String, sale_amount: ::Float, sales: ::Float, status: ::OpenApiSDK::Operations::Status, tenant_id: ::String, application_id: T.nilable(::String), description: T.nilable(::String)).void }
53
53
  def initialize(clicks: nil, country: nil, created_at: nil, earnings: nil, email: nil, id: nil, image: nil, leads: nil, links: nil, name: nil, payouts_enabled_at: nil, program_id: nil, sale_amount: nil, sales: nil, status: nil, tenant_id: nil, application_id: nil, description: nil)
54
54
  @clicks = clicks
55
55
  @country = country
@@ -0,0 +1,27 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module OpenApiSDK
8
+ module Operations
9
+
10
+
11
+ class CreatePartnerTestVariants < ::Crystalline::FieldAugmented
12
+ extend T::Sig
13
+
14
+
15
+ field :percentage, ::Float, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('percentage') } }
16
+
17
+ field :url, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('url') } }
18
+
19
+
20
+ sig { params(percentage: ::Float, url: ::String).void }
21
+ def initialize(percentage: nil, url: nil)
22
+ @percentage = percentage
23
+ @url = url
24
+ end
25
+ end
26
+ end
27
+ end
@@ -49,6 +49,12 @@ module OpenApiSDK
49
49
  field :tag_names, T.nilable(::Object), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('tagNames') } }
50
50
  # The ID of the tenant that created the link inside your system. If set, it can be used to fetch all links for a tenant.
51
51
  field :tenant_id, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('tenantId') } }
52
+ # The date and time when the tests were or will be completed.
53
+ field :test_completed_at, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('testCompletedAt') } }
54
+ # The date and time when the tests started.
55
+ field :test_started_at, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('testStartedAt') } }
56
+ # An array of A/B test URLs and the percentage of traffic to send to each URL.
57
+ field :test_variants, T.nilable(T::Array[::OpenApiSDK::Operations::CreatePartnerLinkTestVariants]), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('testVariants') } }
52
58
  # The custom link preview title (og:title). Will be used for Custom Social Media Cards if `proxy` is true. Learn more: https://d.to/og
53
59
  field :title, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('title') } }
54
60
  # The UTM campaign of the short link. If set, this will populate or override the UTM campaign in the destination URL.
@@ -65,8 +71,8 @@ module OpenApiSDK
65
71
  field :video, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('video') } }
66
72
 
67
73
 
68
- sig { params(android: T.nilable(::String), archived: T.nilable(T::Boolean), comments: T.nilable(::String), description: T.nilable(::String), do_index: T.nilable(T::Boolean), expired_url: T.nilable(::String), expires_at: T.nilable(::String), external_id: T.nilable(::String), folder_id: T.nilable(::String), image: T.nilable(::String), ios: T.nilable(::String), password: T.nilable(::String), prefix: T.nilable(::String), proxy: T.nilable(T::Boolean), ref: T.nilable(::String), rewrite: T.nilable(T::Boolean), tag_ids: T.nilable(::Object), tag_names: T.nilable(::Object), tenant_id: T.nilable(::String), title: T.nilable(::String), utm_campaign: T.nilable(::String), utm_content: T.nilable(::String), utm_medium: T.nilable(::String), utm_source: T.nilable(::String), utm_term: T.nilable(::String), video: T.nilable(::String)).void }
69
- def initialize(android: nil, archived: nil, comments: nil, description: nil, do_index: nil, expired_url: nil, expires_at: nil, external_id: nil, folder_id: nil, image: nil, ios: nil, password: nil, prefix: nil, proxy: nil, ref: nil, rewrite: nil, tag_ids: nil, tag_names: nil, tenant_id: nil, title: nil, utm_campaign: nil, utm_content: nil, utm_medium: nil, utm_source: nil, utm_term: nil, video: nil)
74
+ sig { params(android: T.nilable(::String), archived: T.nilable(T::Boolean), comments: T.nilable(::String), description: T.nilable(::String), do_index: T.nilable(T::Boolean), expired_url: T.nilable(::String), expires_at: T.nilable(::String), external_id: T.nilable(::String), folder_id: T.nilable(::String), image: T.nilable(::String), ios: T.nilable(::String), password: T.nilable(::String), prefix: T.nilable(::String), proxy: T.nilable(T::Boolean), ref: T.nilable(::String), rewrite: T.nilable(T::Boolean), tag_ids: T.nilable(::Object), tag_names: T.nilable(::Object), tenant_id: T.nilable(::String), test_completed_at: T.nilable(::String), test_started_at: T.nilable(::String), test_variants: T.nilable(T::Array[::OpenApiSDK::Operations::CreatePartnerLinkTestVariants]), title: T.nilable(::String), utm_campaign: T.nilable(::String), utm_content: T.nilable(::String), utm_medium: T.nilable(::String), utm_source: T.nilable(::String), utm_term: T.nilable(::String), video: T.nilable(::String)).void }
75
+ def initialize(android: nil, archived: nil, comments: nil, description: nil, do_index: nil, expired_url: nil, expires_at: nil, external_id: nil, folder_id: nil, image: nil, ios: nil, password: nil, prefix: nil, proxy: nil, ref: nil, rewrite: nil, tag_ids: nil, tag_names: nil, tenant_id: nil, test_completed_at: nil, test_started_at: nil, test_variants: nil, title: nil, utm_campaign: nil, utm_content: nil, utm_medium: nil, utm_source: nil, utm_term: nil, video: nil)
70
76
  @android = android
71
77
  @archived = archived
72
78
  @comments = comments
@@ -86,6 +92,9 @@ module OpenApiSDK
86
92
  @tag_ids = tag_ids
87
93
  @tag_names = tag_names
88
94
  @tenant_id = tenant_id
95
+ @test_completed_at = test_completed_at
96
+ @test_started_at = test_started_at
97
+ @test_variants = test_variants
89
98
  @title = title
90
99
  @utm_campaign = utm_campaign
91
100
  @utm_content = utm_content
@@ -0,0 +1,27 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module OpenApiSDK
8
+ module Operations
9
+
10
+
11
+ class CreatePartnerLinkTestVariants < ::Crystalline::FieldAugmented
12
+ extend T::Sig
13
+
14
+
15
+ field :percentage, ::Float, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('percentage') } }
16
+
17
+ field :url, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('url') } }
18
+
19
+
20
+ sig { params(percentage: ::Float, url: ::String).void }
21
+ def initialize(percentage: nil, url: nil)
22
+ @percentage = percentage
23
+ @url = url
24
+ end
25
+ end
26
+ end
27
+ end
@@ -49,6 +49,12 @@ module OpenApiSDK
49
49
  field :tag_names, T.nilable(::Object), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('tagNames') } }
50
50
  # The ID of the tenant that created the link inside your system. If set, it can be used to fetch all links for a tenant.
51
51
  field :tenant_id, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('tenantId') } }
52
+ # The date and time when the tests were or will be completed.
53
+ field :test_completed_at, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('testCompletedAt') } }
54
+ # The date and time when the tests started.
55
+ field :test_started_at, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('testStartedAt') } }
56
+ # An array of A/B test URLs and the percentage of traffic to send to each URL.
57
+ field :test_variants, T.nilable(T::Array[::OpenApiSDK::Operations::CreateReferralsEmbedTokenTestVariants]), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('testVariants') } }
52
58
  # The custom link preview title (og:title). Will be used for Custom Social Media Cards if `proxy` is true. Learn more: https://d.to/og
53
59
  field :title, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('title') } }
54
60
  # The UTM campaign of the short link. If set, this will populate or override the UTM campaign in the destination URL.
@@ -65,8 +71,8 @@ module OpenApiSDK
65
71
  field :video, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('video') } }
66
72
 
67
73
 
68
- sig { params(android: T.nilable(::String), archived: T.nilable(T::Boolean), comments: T.nilable(::String), description: T.nilable(::String), do_index: T.nilable(T::Boolean), expired_url: T.nilable(::String), expires_at: T.nilable(::String), external_id: T.nilable(::String), folder_id: T.nilable(::String), image: T.nilable(::String), ios: T.nilable(::String), password: T.nilable(::String), prefix: T.nilable(::String), proxy: T.nilable(T::Boolean), ref: T.nilable(::String), rewrite: T.nilable(T::Boolean), tag_ids: T.nilable(::Object), tag_names: T.nilable(::Object), tenant_id: T.nilable(::String), title: T.nilable(::String), utm_campaign: T.nilable(::String), utm_content: T.nilable(::String), utm_medium: T.nilable(::String), utm_source: T.nilable(::String), utm_term: T.nilable(::String), video: T.nilable(::String)).void }
69
- def initialize(android: nil, archived: nil, comments: nil, description: nil, do_index: nil, expired_url: nil, expires_at: nil, external_id: nil, folder_id: nil, image: nil, ios: nil, password: nil, prefix: nil, proxy: nil, ref: nil, rewrite: nil, tag_ids: nil, tag_names: nil, tenant_id: nil, title: nil, utm_campaign: nil, utm_content: nil, utm_medium: nil, utm_source: nil, utm_term: nil, video: nil)
74
+ sig { params(android: T.nilable(::String), archived: T.nilable(T::Boolean), comments: T.nilable(::String), description: T.nilable(::String), do_index: T.nilable(T::Boolean), expired_url: T.nilable(::String), expires_at: T.nilable(::String), external_id: T.nilable(::String), folder_id: T.nilable(::String), image: T.nilable(::String), ios: T.nilable(::String), password: T.nilable(::String), prefix: T.nilable(::String), proxy: T.nilable(T::Boolean), ref: T.nilable(::String), rewrite: T.nilable(T::Boolean), tag_ids: T.nilable(::Object), tag_names: T.nilable(::Object), tenant_id: T.nilable(::String), test_completed_at: T.nilable(::String), test_started_at: T.nilable(::String), test_variants: T.nilable(T::Array[::OpenApiSDK::Operations::CreateReferralsEmbedTokenTestVariants]), title: T.nilable(::String), utm_campaign: T.nilable(::String), utm_content: T.nilable(::String), utm_medium: T.nilable(::String), utm_source: T.nilable(::String), utm_term: T.nilable(::String), video: T.nilable(::String)).void }
75
+ def initialize(android: nil, archived: nil, comments: nil, description: nil, do_index: nil, expired_url: nil, expires_at: nil, external_id: nil, folder_id: nil, image: nil, ios: nil, password: nil, prefix: nil, proxy: nil, ref: nil, rewrite: nil, tag_ids: nil, tag_names: nil, tenant_id: nil, test_completed_at: nil, test_started_at: nil, test_variants: nil, title: nil, utm_campaign: nil, utm_content: nil, utm_medium: nil, utm_source: nil, utm_term: nil, video: nil)
70
76
  @android = android
71
77
  @archived = archived
72
78
  @comments = comments
@@ -86,6 +92,9 @@ module OpenApiSDK
86
92
  @tag_ids = tag_ids
87
93
  @tag_names = tag_names
88
94
  @tenant_id = tenant_id
95
+ @test_completed_at = test_completed_at
96
+ @test_started_at = test_started_at
97
+ @test_variants = test_variants
89
98
  @title = title
90
99
  @utm_campaign = utm_campaign
91
100
  @utm_content = utm_content
@@ -0,0 +1,27 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module OpenApiSDK
8
+ module Operations
9
+
10
+
11
+ class CreateReferralsEmbedTokenTestVariants < ::Crystalline::FieldAugmented
12
+ extend T::Sig
13
+
14
+
15
+ field :percentage, ::Float, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('percentage') } }
16
+
17
+ field :url, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('url') } }
18
+
19
+
20
+ sig { params(percentage: ::Float, url: ::String).void }
21
+ def initialize(percentage: nil, url: nil)
22
+ @percentage = percentage
23
+ @url = url
24
+ end
25
+ end
26
+ end
27
+ end
@@ -59,6 +59,12 @@ module OpenApiSDK
59
59
  field :tag_names, T.nilable(::Object), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('tagNames') } }
60
60
  # The ID of the tenant that created the link inside your system. If set, it can be used to fetch all links for a tenant.
61
61
  field :tenant_id, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('tenantId') } }
62
+ # The date and time when the tests were or will be completed.
63
+ field :test_completed_at, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('testCompletedAt') } }
64
+ # The date and time when the tests started.
65
+ field :test_started_at, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('testStartedAt') } }
66
+ # An array of A/B test URLs and the percentage of traffic to send to each URL.
67
+ field :test_variants, T.nilable(T::Array[::OpenApiSDK::Operations::BulkUpdateLinksTestVariants]), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('testVariants') } }
62
68
  # The custom link preview title (og:title). Will be used for Custom Social Media Cards if `proxy` is true. Learn more: https://d.to/og
63
69
  field :title, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('title') } }
64
70
  # Whether to track conversions for the short link. Defaults to `false` if not provided.
@@ -81,8 +87,8 @@ module OpenApiSDK
81
87
  field :webhook_ids, T.nilable(T::Array[::String]), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('webhookIds') } }
82
88
 
83
89
 
84
- sig { params(android: T.nilable(::String), archived: T.nilable(T::Boolean), comments: T.nilable(::String), description: T.nilable(::String), do_index: T.nilable(T::Boolean), expired_url: T.nilable(::String), expires_at: T.nilable(::String), folder_id: T.nilable(::String), geo: T.nilable(::OpenApiSDK::Shared::LinkGeoTargeting), image: T.nilable(::String), ios: T.nilable(::String), partner_id: T.nilable(::String), password: T.nilable(::String), program_id: T.nilable(::String), proxy: T.nilable(T::Boolean), public_stats: T.nilable(T::Boolean), ref: T.nilable(::String), rewrite: T.nilable(T::Boolean), tag_id: T.nilable(::String), tag_ids: T.nilable(::Object), tag_names: T.nilable(::Object), tenant_id: T.nilable(::String), title: T.nilable(::String), track_conversion: T.nilable(T::Boolean), url: T.nilable(::String), utm_campaign: T.nilable(::String), utm_content: T.nilable(::String), utm_medium: T.nilable(::String), utm_source: T.nilable(::String), utm_term: T.nilable(::String), video: T.nilable(::String), webhook_ids: T.nilable(T::Array[::String])).void }
85
- def initialize(android: nil, archived: nil, comments: nil, description: nil, do_index: nil, expired_url: nil, expires_at: nil, folder_id: nil, geo: nil, image: nil, ios: nil, partner_id: nil, password: nil, program_id: nil, proxy: nil, public_stats: nil, ref: nil, rewrite: nil, tag_id: nil, tag_ids: nil, tag_names: nil, tenant_id: nil, title: nil, track_conversion: nil, url: nil, utm_campaign: nil, utm_content: nil, utm_medium: nil, utm_source: nil, utm_term: nil, video: nil, webhook_ids: nil)
90
+ sig { params(android: T.nilable(::String), archived: T.nilable(T::Boolean), comments: T.nilable(::String), description: T.nilable(::String), do_index: T.nilable(T::Boolean), expired_url: T.nilable(::String), expires_at: T.nilable(::String), folder_id: T.nilable(::String), geo: T.nilable(::OpenApiSDK::Shared::LinkGeoTargeting), image: T.nilable(::String), ios: T.nilable(::String), partner_id: T.nilable(::String), password: T.nilable(::String), program_id: T.nilable(::String), proxy: T.nilable(T::Boolean), public_stats: T.nilable(T::Boolean), ref: T.nilable(::String), rewrite: T.nilable(T::Boolean), tag_id: T.nilable(::String), tag_ids: T.nilable(::Object), tag_names: T.nilable(::Object), tenant_id: T.nilable(::String), test_completed_at: T.nilable(::String), test_started_at: T.nilable(::String), test_variants: T.nilable(T::Array[::OpenApiSDK::Operations::BulkUpdateLinksTestVariants]), title: T.nilable(::String), track_conversion: T.nilable(T::Boolean), url: T.nilable(::String), utm_campaign: T.nilable(::String), utm_content: T.nilable(::String), utm_medium: T.nilable(::String), utm_source: T.nilable(::String), utm_term: T.nilable(::String), video: T.nilable(::String), webhook_ids: T.nilable(T::Array[::String])).void }
91
+ def initialize(android: nil, archived: nil, comments: nil, description: nil, do_index: nil, expired_url: nil, expires_at: nil, folder_id: nil, geo: nil, image: nil, ios: nil, partner_id: nil, password: nil, program_id: nil, proxy: nil, public_stats: nil, ref: nil, rewrite: nil, tag_id: nil, tag_ids: nil, tag_names: nil, tenant_id: nil, test_completed_at: nil, test_started_at: nil, test_variants: nil, title: nil, track_conversion: nil, url: nil, utm_campaign: nil, utm_content: nil, utm_medium: nil, utm_source: nil, utm_term: nil, video: nil, webhook_ids: nil)
86
92
  @android = android
87
93
  @archived = archived
88
94
  @comments = comments
@@ -105,6 +111,9 @@ module OpenApiSDK
105
111
  @tag_ids = tag_ids
106
112
  @tag_names = tag_names
107
113
  @tenant_id = tenant_id
114
+ @test_completed_at = test_completed_at
115
+ @test_started_at = test_started_at
116
+ @test_variants = test_variants
108
117
  @title = title
109
118
  @track_conversion = track_conversion
110
119
  @url = url
@@ -22,14 +22,14 @@ module OpenApiSDK
22
22
 
23
23
  field :max_duration, ::Float, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('maxDuration') } }
24
24
 
25
- field :type, ::OpenApiSDK::Operations::Type, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('type'), 'decoder': Utils.enum_from_string(::OpenApiSDK::Operations::Type, false) } }
25
+ field :type, ::OpenApiSDK::Operations::GetCustomersType, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('type'), 'decoder': Utils.enum_from_string(::OpenApiSDK::Operations::GetCustomersType, false) } }
26
26
 
27
27
  field :description, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('description') } }
28
28
 
29
29
  field :partners_count, T.nilable(::Float), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('partnersCount') } }
30
30
 
31
31
 
32
- sig { params(amount: ::Float, coupon_id: ::String, coupon_test_id: ::String, id: ::String, max_duration: ::Float, type: ::OpenApiSDK::Operations::Type, description: T.nilable(::String), partners_count: T.nilable(::Float)).void }
32
+ sig { params(amount: ::Float, coupon_id: ::String, coupon_test_id: ::String, id: ::String, max_duration: ::Float, type: ::OpenApiSDK::Operations::GetCustomersType, description: T.nilable(::String), partners_count: T.nilable(::Float)).void }
33
33
  def initialize(amount: nil, coupon_id: nil, coupon_test_id: nil, id: nil, max_duration: nil, type: nil, description: nil, partners_count: nil)
34
34
  @amount = amount
35
35
  @coupon_id = coupon_id
@@ -32,9 +32,11 @@ module OpenApiSDK
32
32
 
33
33
  field :partner, T.nilable(::OpenApiSDK::Operations::GetCustomerPartner), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('partner') } }
34
34
 
35
+ field :program_id, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('programId') } }
35
36
 
36
- sig { params(created_at: ::String, external_id: ::String, id: ::String, name: ::String, avatar: T.nilable(::String), country: T.nilable(::String), discount: T.nilable(::OpenApiSDK::Operations::GetCustomerDiscount), email: T.nilable(::String), link: T.nilable(::OpenApiSDK::Operations::GetCustomerLink), partner: T.nilable(::OpenApiSDK::Operations::GetCustomerPartner)).void }
37
- def initialize(created_at: nil, external_id: nil, id: nil, name: nil, avatar: nil, country: nil, discount: nil, email: nil, link: nil, partner: nil)
37
+
38
+ sig { params(created_at: ::String, external_id: ::String, id: ::String, name: ::String, avatar: T.nilable(::String), country: T.nilable(::String), discount: T.nilable(::OpenApiSDK::Operations::GetCustomerDiscount), email: T.nilable(::String), link: T.nilable(::OpenApiSDK::Operations::GetCustomerLink), partner: T.nilable(::OpenApiSDK::Operations::GetCustomerPartner), program_id: T.nilable(::String)).void }
39
+ def initialize(created_at: nil, external_id: nil, id: nil, name: nil, avatar: nil, country: nil, discount: nil, email: nil, link: nil, partner: nil, program_id: nil)
38
40
  @created_at = created_at
39
41
  @external_id = external_id
40
42
  @id = id
@@ -45,6 +47,7 @@ module OpenApiSDK
45
47
  @email = email
46
48
  @link = link
47
49
  @partner = partner
50
+ @program_id = program_id
48
51
  end
49
52
  end
50
53
  end
@@ -0,0 +1,36 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module OpenApiSDK
8
+ module Operations
9
+
10
+
11
+ class GetCustomersLink < ::Crystalline::FieldAugmented
12
+ extend T::Sig
13
+
14
+ # The domain of the short link. If not provided, the primary domain for the workspace will be used (or `dub.sh` if the workspace has no domains).
15
+ field :domain, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('domain') } }
16
+ # The unique ID of the short link.
17
+ field :id, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('id') } }
18
+ # The short link slug. If not provided, a random 7-character slug will be generated.
19
+ field :key, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('key') } }
20
+ # The ID of the program the short link is associated with.
21
+ field :program_id, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('programId') } }
22
+ # The full URL of the short link, including the https protocol (e.g. `https://dub.sh/try`).
23
+ field :short_link, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('shortLink') } }
24
+
25
+
26
+ sig { params(domain: ::String, id: ::String, key: ::String, program_id: ::String, short_link: ::String).void }
27
+ def initialize(domain: nil, id: nil, key: nil, program_id: nil, short_link: nil)
28
+ @domain = domain
29
+ @id = id
30
+ @key = key
31
+ @program_id = program_id
32
+ @short_link = short_link
33
+ end
34
+ end
35
+ end
36
+ end
@@ -0,0 +1,18 @@
1
+ # Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
2
+
3
+ # typed: true
4
+ # frozen_string_literal: true
5
+
6
+
7
+ module OpenApiSDK
8
+ module Operations
9
+
10
+
11
+ class GetCustomersType < T::Enum
12
+ enums do
13
+ PERCENTAGE = new('percentage')
14
+ FLAT = new('flat')
15
+ end
16
+ end
17
+ end
18
+ end
@@ -32,7 +32,7 @@ module OpenApiSDK
32
32
  # Deprecated. Use `tagIds` instead. The tag ID to filter the links by.
33
33
  field :tag_id, T.nilable(::String), { 'query_param': { 'field_name': 'tagId', 'style': 'form', 'explode': true } }
34
34
  # The tag IDs to filter the links by.
35
- field :tag_ids, T.nilable(::Object), { 'query_param': { 'field_name': 'tagIds', 'style': 'form', 'explode': false } }
35
+ field :tag_ids, T.nilable(::Object), { 'query_param': { 'field_name': 'tagIds', 'style': 'form', 'explode': true } }
36
36
  # The unique name of the tags assigned to the short link (case insensitive).
37
37
  field :tag_names, T.nilable(::Object), { 'query_param': { 'field_name': 'tagNames', 'style': 'form', 'explode': true } }
38
38
  # The ID of the tenant that created the link inside your system. If set, will only return links for the specified tenant.
@@ -24,7 +24,7 @@ module OpenApiSDK
24
24
  # Deprecated. Use `tagIds` instead. The tag ID to filter the links by.
25
25
  field :tag_id, T.nilable(::String), { 'query_param': { 'field_name': 'tagId', 'style': 'form', 'explode': true } }
26
26
  # The tag IDs to filter the links by.
27
- field :tag_ids, T.nilable(::Object), { 'query_param': { 'field_name': 'tagIds', 'style': 'form', 'explode': false } }
27
+ field :tag_ids, T.nilable(::Object), { 'query_param': { 'field_name': 'tagIds', 'style': 'form', 'explode': true } }
28
28
  # The unique name of the tags assigned to the short link (case insensitive).
29
29
  field :tag_names, T.nilable(::Object), { 'query_param': { 'field_name': 'tagNames', 'style': 'form', 'explode': true } }
30
30
  # The ID of the tenant that created the link inside your system. If set, will only return links for the specified tenant.
@@ -11,25 +11,37 @@ module OpenApiSDK
11
11
  class Link < ::Crystalline::FieldAugmented
12
12
  extend T::Sig
13
13
 
14
+ # The number of clicks on the short link.
15
+ field :clicks, ::Float, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('clicks') } }
14
16
  # The domain of the short link. If not provided, the primary domain for the workspace will be used (or `dub.sh` if the workspace has no domains).
15
17
  field :domain, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('domain') } }
16
18
  # The unique ID of the short link.
17
19
  field :id, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('id') } }
18
20
  # The short link slug. If not provided, a random 7-character slug will be generated.
19
21
  field :key, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('key') } }
20
- # The ID of the program the short link is associated with.
21
- field :program_id, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('programId') } }
22
+ # The number of leads the short links has generated.
23
+ field :leads, ::Float, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('leads') } }
24
+ # The total dollar amount of sales the short links has generated (in cents).
25
+ field :sale_amount, ::Float, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('saleAmount') } }
26
+ # The number of sales the short links has generated.
27
+ field :sales, ::Float, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('sales') } }
22
28
  # The full URL of the short link, including the https protocol (e.g. `https://dub.sh/try`).
23
29
  field :short_link, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('shortLink') } }
30
+ # The destination URL of the short link.
31
+ field :url, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('url') } }
24
32
 
25
33
 
26
- sig { params(domain: ::String, id: ::String, key: ::String, program_id: ::String, short_link: ::String).void }
27
- def initialize(domain: nil, id: nil, key: nil, program_id: nil, short_link: nil)
34
+ sig { params(clicks: ::Float, domain: ::String, id: ::String, key: ::String, leads: ::Float, sale_amount: ::Float, sales: ::Float, short_link: ::String, url: ::String).void }
35
+ def initialize(clicks: nil, domain: nil, id: nil, key: nil, leads: nil, sale_amount: nil, sales: nil, short_link: nil, url: nil)
36
+ @clicks = clicks
28
37
  @domain = domain
29
38
  @id = id
30
39
  @key = key
31
- @program_id = program_id
40
+ @leads = leads
41
+ @sale_amount = sale_amount
42
+ @sales = sales
32
43
  @short_link = short_link
44
+ @url = url
33
45
  end
34
46
  end
35
47
  end
@@ -49,6 +49,12 @@ module OpenApiSDK
49
49
  field :tag_names, T.nilable(::Object), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('tagNames') } }
50
50
  # The ID of the tenant that created the link inside your system. If set, it can be used to fetch all links for a tenant.
51
51
  field :tenant_id, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('tenantId') } }
52
+ # The date and time when the tests were or will be completed.
53
+ field :test_completed_at, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('testCompletedAt') } }
54
+ # The date and time when the tests started.
55
+ field :test_started_at, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('testStartedAt') } }
56
+ # An array of A/B test URLs and the percentage of traffic to send to each URL.
57
+ field :test_variants, T.nilable(T::Array[::OpenApiSDK::Operations::CreatePartnerTestVariants]), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('testVariants') } }
52
58
  # The custom link preview title (og:title). Will be used for Custom Social Media Cards if `proxy` is true. Learn more: https://d.to/og
53
59
  field :title, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('title') } }
54
60
  # The UTM campaign of the short link. If set, this will populate or override the UTM campaign in the destination URL.
@@ -65,8 +71,8 @@ module OpenApiSDK
65
71
  field :video, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('video') } }
66
72
 
67
73
 
68
- sig { params(android: T.nilable(::String), archived: T.nilable(T::Boolean), comments: T.nilable(::String), description: T.nilable(::String), do_index: T.nilable(T::Boolean), expired_url: T.nilable(::String), expires_at: T.nilable(::String), external_id: T.nilable(::String), folder_id: T.nilable(::String), image: T.nilable(::String), ios: T.nilable(::String), password: T.nilable(::String), prefix: T.nilable(::String), proxy: T.nilable(T::Boolean), ref: T.nilable(::String), rewrite: T.nilable(T::Boolean), tag_ids: T.nilable(::Object), tag_names: T.nilable(::Object), tenant_id: T.nilable(::String), title: T.nilable(::String), utm_campaign: T.nilable(::String), utm_content: T.nilable(::String), utm_medium: T.nilable(::String), utm_source: T.nilable(::String), utm_term: T.nilable(::String), video: T.nilable(::String)).void }
69
- def initialize(android: nil, archived: nil, comments: nil, description: nil, do_index: nil, expired_url: nil, expires_at: nil, external_id: nil, folder_id: nil, image: nil, ios: nil, password: nil, prefix: nil, proxy: nil, ref: nil, rewrite: nil, tag_ids: nil, tag_names: nil, tenant_id: nil, title: nil, utm_campaign: nil, utm_content: nil, utm_medium: nil, utm_source: nil, utm_term: nil, video: nil)
74
+ sig { params(android: T.nilable(::String), archived: T.nilable(T::Boolean), comments: T.nilable(::String), description: T.nilable(::String), do_index: T.nilable(T::Boolean), expired_url: T.nilable(::String), expires_at: T.nilable(::String), external_id: T.nilable(::String), folder_id: T.nilable(::String), image: T.nilable(::String), ios: T.nilable(::String), password: T.nilable(::String), prefix: T.nilable(::String), proxy: T.nilable(T::Boolean), ref: T.nilable(::String), rewrite: T.nilable(T::Boolean), tag_ids: T.nilable(::Object), tag_names: T.nilable(::Object), tenant_id: T.nilable(::String), test_completed_at: T.nilable(::String), test_started_at: T.nilable(::String), test_variants: T.nilable(T::Array[::OpenApiSDK::Operations::CreatePartnerTestVariants]), title: T.nilable(::String), utm_campaign: T.nilable(::String), utm_content: T.nilable(::String), utm_medium: T.nilable(::String), utm_source: T.nilable(::String), utm_term: T.nilable(::String), video: T.nilable(::String)).void }
75
+ def initialize(android: nil, archived: nil, comments: nil, description: nil, do_index: nil, expired_url: nil, expires_at: nil, external_id: nil, folder_id: nil, image: nil, ios: nil, password: nil, prefix: nil, proxy: nil, ref: nil, rewrite: nil, tag_ids: nil, tag_names: nil, tenant_id: nil, test_completed_at: nil, test_started_at: nil, test_variants: nil, title: nil, utm_campaign: nil, utm_content: nil, utm_medium: nil, utm_source: nil, utm_term: nil, video: nil)
70
76
  @android = android
71
77
  @archived = archived
72
78
  @comments = comments
@@ -86,6 +92,9 @@ module OpenApiSDK
86
92
  @tag_ids = tag_ids
87
93
  @tag_names = tag_names
88
94
  @tenant_id = tenant_id
95
+ @test_completed_at = test_completed_at
96
+ @test_started_at = test_started_at
97
+ @test_variants = test_variants
89
98
  @title = title
90
99
  @utm_campaign = utm_campaign
91
100
  @utm_content = utm_content