dub 0.2.2.pre.alpha.82 → 0.2.2.pre.alpha.85

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 (49) 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/createpartner_testvariants.rb +27 -0
  9. data/lib/open_api_sdk/models/operations/createpartnerlink_linkprops.rb +11 -2
  10. data/lib/open_api_sdk/models/operations/createpartnerlink_testvariants.rb +27 -0
  11. data/lib/open_api_sdk/models/operations/createreferralsembedtoken_linkprops.rb +11 -2
  12. data/lib/open_api_sdk/models/operations/createreferralsembedtoken_testvariants.rb +27 -0
  13. data/lib/open_api_sdk/models/operations/data.rb +11 -2
  14. data/lib/open_api_sdk/models/operations/discount.rb +2 -2
  15. data/lib/open_api_sdk/models/operations/getcustomer_responsebody.rb +5 -2
  16. data/lib/open_api_sdk/models/operations/getcustomers_type.rb +18 -0
  17. data/lib/open_api_sdk/models/operations/linkprops.rb +11 -2
  18. data/lib/open_api_sdk/models/operations/listevents_request.rb +5 -2
  19. data/lib/open_api_sdk/models/operations/requestbody.rb +11 -2
  20. data/lib/open_api_sdk/models/operations/responsebody.rb +5 -2
  21. data/lib/open_api_sdk/models/operations/retrieveanalytics_request.rb +5 -2
  22. data/lib/open_api_sdk/models/operations/retrievelinks_request.rb +30 -0
  23. data/lib/open_api_sdk/models/operations/retrievelinks_response.rb +60 -0
  24. data/lib/open_api_sdk/models/operations/retrievelinks_responsebody.rb +48 -0
  25. data/lib/open_api_sdk/models/operations/testvariants.rb +27 -0
  26. data/lib/open_api_sdk/models/operations/tracklead_requestbody.rb +11 -16
  27. data/lib/open_api_sdk/models/operations/tracksale_requestbody.rb +8 -13
  28. data/lib/open_api_sdk/models/operations/type.rb +3 -2
  29. data/lib/open_api_sdk/models/operations/updatecustomer_responsebody.rb +5 -2
  30. data/lib/open_api_sdk/models/operations/updatelink_requestbody.rb +11 -2
  31. data/lib/open_api_sdk/models/operations/updatelink_testvariants.rb +27 -0
  32. data/lib/open_api_sdk/models/operations/updatepartnersale_responsebody.rb +5 -2
  33. data/lib/open_api_sdk/models/operations/upsertlink_requestbody.rb +11 -2
  34. data/lib/open_api_sdk/models/operations/upsertlink_testvariants.rb +27 -0
  35. data/lib/open_api_sdk/models/operations/upsertpartnerlink_linkprops.rb +11 -2
  36. data/lib/open_api_sdk/models/operations/upsertpartnerlink_testvariants.rb +27 -0
  37. data/lib/open_api_sdk/models/operations.rb +14 -4
  38. data/lib/open_api_sdk/models/shared/clickevent_testvariants.rb +27 -0
  39. data/lib/open_api_sdk/models/shared/link.rb +14 -5
  40. data/lib/open_api_sdk/models/shared/linkschema.rb +14 -5
  41. data/lib/open_api_sdk/models/shared/testvariants.rb +27 -0
  42. data/lib/open_api_sdk/models/shared.rb +2 -0
  43. data/lib/open_api_sdk/partners.rb +130 -0
  44. data/lib/open_api_sdk/sdkconfiguration.rb +2 -2
  45. metadata +18 -7
  46. data/lib/open_api_sdk/metatags.rb +0 -109
  47. data/lib/open_api_sdk/models/operations/getmetatags_request.rb +0 -24
  48. data/lib/open_api_sdk/models/operations/getmetatags_response.rb +0 -33
  49. data/lib/open_api_sdk/models/operations/getmetatags_responsebody.rb +0 -30
@@ -0,0 +1,60 @@
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 RetrieveLinksResponse < ::Crystalline::FieldAugmented
12
+ extend T::Sig
13
+
14
+ # HTTP response content type for this operation
15
+ field :content_type, ::String
16
+ # Raw HTTP response; suitable for custom response parsing
17
+ field :raw_response, ::Faraday::Response
18
+ # HTTP response status code for this operation
19
+ field :status_code, ::Integer
20
+ # The server cannot or will not process the request due to something that is perceived to be a client error (e.g., malformed request syntax, invalid request message framing, or deceptive request routing).
21
+ field :bad_request, T.nilable(::OpenApiSDK::Shared::BadRequest)
22
+ # This response is sent when a request conflicts with the current state of the server.
23
+ field :conflict, T.nilable(::OpenApiSDK::Shared::Conflict)
24
+ # The client does not have access rights to the content; that is, it is unauthorized, so the server is refusing to give the requested resource. Unlike 401 Unauthorized, the client's identity is known to the server.
25
+ field :forbidden, T.nilable(::OpenApiSDK::Shared::Forbidden)
26
+ # The server has encountered a situation it does not know how to handle.
27
+ field :internal_server_error, T.nilable(::OpenApiSDK::Shared::InternalServerError)
28
+ # This response is sent when the requested content has been permanently deleted from server, with no forwarding address.
29
+ field :invite_expired, T.nilable(::OpenApiSDK::Shared::InviteExpired)
30
+ # The server cannot find the requested resource.
31
+ field :not_found, T.nilable(::OpenApiSDK::Shared::NotFound)
32
+ # The user has sent too many requests in a given amount of time ("rate limiting")
33
+ field :rate_limit_exceeded, T.nilable(::OpenApiSDK::Shared::RateLimitExceeded)
34
+ # The retrieved partner links.
35
+ field :response_bodies, T.nilable(T::Array[::OpenApiSDK::Operations::RetrieveLinksResponseBody])
36
+ # Although the HTTP standard specifies "unauthorized", semantically this response means "unauthenticated". That is, the client must authenticate itself to get the requested response.
37
+ field :unauthorized, T.nilable(::OpenApiSDK::Shared::Unauthorized)
38
+ # The request was well-formed but was unable to be followed due to semantic errors.
39
+ field :unprocessable_entity, T.nilable(::OpenApiSDK::Shared::UnprocessableEntity)
40
+
41
+
42
+ sig { params(content_type: ::String, raw_response: ::Faraday::Response, status_code: ::Integer, bad_request: T.nilable(::OpenApiSDK::Shared::BadRequest), conflict: T.nilable(::OpenApiSDK::Shared::Conflict), forbidden: T.nilable(::OpenApiSDK::Shared::Forbidden), internal_server_error: T.nilable(::OpenApiSDK::Shared::InternalServerError), invite_expired: T.nilable(::OpenApiSDK::Shared::InviteExpired), not_found: T.nilable(::OpenApiSDK::Shared::NotFound), rate_limit_exceeded: T.nilable(::OpenApiSDK::Shared::RateLimitExceeded), response_bodies: T.nilable(T::Array[::OpenApiSDK::Operations::RetrieveLinksResponseBody]), unauthorized: T.nilable(::OpenApiSDK::Shared::Unauthorized), unprocessable_entity: T.nilable(::OpenApiSDK::Shared::UnprocessableEntity)).void }
43
+ def initialize(content_type: nil, raw_response: nil, status_code: nil, bad_request: nil, conflict: nil, forbidden: nil, internal_server_error: nil, invite_expired: nil, not_found: nil, rate_limit_exceeded: nil, response_bodies: nil, unauthorized: nil, unprocessable_entity: nil)
44
+ @content_type = content_type
45
+ @raw_response = raw_response
46
+ @status_code = status_code
47
+ @bad_request = bad_request
48
+ @conflict = conflict
49
+ @forbidden = forbidden
50
+ @internal_server_error = internal_server_error
51
+ @invite_expired = invite_expired
52
+ @not_found = not_found
53
+ @rate_limit_exceeded = rate_limit_exceeded
54
+ @response_bodies = response_bodies
55
+ @unauthorized = unauthorized
56
+ @unprocessable_entity = unprocessable_entity
57
+ end
58
+ end
59
+ end
60
+ end
@@ -0,0 +1,48 @@
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 RetrieveLinksResponseBody < ::Crystalline::FieldAugmented
12
+ extend T::Sig
13
+
14
+ # The number of clicks on the short link.
15
+ field :clicks, ::Float, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('clicks') } }
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).
17
+ field :domain, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('domain') } }
18
+ # The unique ID of the short link.
19
+ field :id, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('id') } }
20
+ # The short link slug. If not provided, a random 7-character slug will be generated.
21
+ field :key, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('key') } }
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') } }
28
+ # The full URL of the short link, including the https protocol (e.g. `https://dub.sh/try`).
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') } }
32
+
33
+
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
37
+ @domain = domain
38
+ @id = id
39
+ @key = key
40
+ @leads = leads
41
+ @sale_amount = sale_amount
42
+ @sales = sales
43
+ @short_link = short_link
44
+ @url = url
45
+ end
46
+ end
47
+ end
48
+ 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 TestVariants < ::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
@@ -11,40 +11,35 @@ module OpenApiSDK
11
11
  class TrackLeadRequestBody < ::Crystalline::FieldAugmented
12
12
  extend T::Sig
13
13
 
14
- # The ID of the click in Dub. You can read this value from `dub_id` cookie.
14
+ # The unique ID of the click that the lead conversion event is attributed to. You can read this value from `dub_id` cookie.
15
15
  field :click_id, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('clickId') } }
16
- # The name of the lead event to track.
16
+ # The name of the lead event to track. Can also be used as a unique identifier to associate a given lead event for a customer for a subsequent sale event (via the `leadEventName` prop in `/track/sale`).
17
17
  field :event_name, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('eventName') } }
18
- # Avatar of the customer in the client's app.
18
+ # The unique ID of the customer in your system. Will be used to identify and attribute all future events to this customer.
19
+ field :external_id, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('externalId') } }
20
+ # The avatar URL of the customer.
19
21
  field :customer_avatar, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('customerAvatar') } }
20
- # Email of the customer in the client's app.
22
+ # The email address of the customer.
21
23
  field :customer_email, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('customerEmail') } }
22
- # This is the unique identifier for the customer in the client's app. This is used to track the customer's journey.
23
- #
24
- # @deprecated true: This will be removed in a future release, please migrate away from it as soon as possible.
25
- field :customer_id, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('customerId') } }
26
- # Name of the customer in the client's app.
24
+ # The name of the customer. If not passed, a random name will be generated (e.g. “Big Red Caribou”).
27
25
  field :customer_name, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('customerName') } }
28
26
  # The numerical value associated with this lead event (e.g., number of provisioned seats in a free trial). If defined as N, the lead event will be tracked N times.
29
27
  field :event_quantity, T.nilable(::Float), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('eventQuantity') } }
30
- # This is the unique identifier for the customer in the client's app. This is used to track the customer's journey.
31
- field :external_id, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('externalId') } }
32
- # Additional metadata to be stored with the lead event
28
+ # Additional metadata to be stored with the lead event. Max 10,000 characters.
33
29
  field :metadata, T.nilable(T::Hash[Symbol, ::Object]), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('metadata') } }
34
30
  # The mode to use for tracking the lead event. `async` will not block the request; `wait` will block the request until the lead event is fully recorded in Dub.
35
31
  field :mode, T.nilable(::OpenApiSDK::Operations::Mode), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('mode'), 'decoder': Utils.enum_from_string(::OpenApiSDK::Operations::Mode, true) } }
36
32
 
37
33
 
38
- sig { params(click_id: ::String, event_name: ::String, customer_avatar: T.nilable(::String), customer_email: T.nilable(::String), customer_id: T.nilable(::String), customer_name: T.nilable(::String), event_quantity: T.nilable(::Float), external_id: T.nilable(::String), metadata: T.nilable(T::Hash[Symbol, ::Object]), mode: T.nilable(::OpenApiSDK::Operations::Mode)).void }
39
- def initialize(click_id: nil, event_name: nil, customer_avatar: nil, customer_email: nil, customer_id: nil, customer_name: nil, event_quantity: nil, external_id: nil, metadata: nil, mode: nil)
34
+ sig { params(click_id: ::String, event_name: ::String, external_id: ::String, customer_avatar: T.nilable(::String), customer_email: T.nilable(::String), customer_name: T.nilable(::String), event_quantity: T.nilable(::Float), metadata: T.nilable(T::Hash[Symbol, ::Object]), mode: T.nilable(::OpenApiSDK::Operations::Mode)).void }
35
+ def initialize(click_id: nil, event_name: nil, external_id: nil, customer_avatar: nil, customer_email: nil, customer_name: nil, event_quantity: nil, metadata: nil, mode: nil)
40
36
  @click_id = click_id
41
37
  @event_name = event_name
38
+ @external_id = external_id
42
39
  @customer_avatar = customer_avatar
43
40
  @customer_email = customer_email
44
- @customer_id = customer_id
45
41
  @customer_name = customer_name
46
42
  @event_quantity = event_quantity
47
- @external_id = external_id
48
43
  @metadata = metadata
49
44
  @mode = mode
50
45
  end
@@ -11,36 +11,31 @@ module OpenApiSDK
11
11
  class TrackSaleRequestBody < ::Crystalline::FieldAugmented
12
12
  extend T::Sig
13
13
 
14
- # The amount of the sale. Should be passed in cents.
14
+ # The amount of the sale in cents.
15
15
  field :amount, ::Integer, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('amount') } }
16
+ # The unique ID of the customer in your system. Will be used to identify and attribute all future events to this customer.
17
+ field :external_id, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('externalId') } }
16
18
  # The payment processor via which the sale was made.
17
19
  field :payment_processor, ::OpenApiSDK::Operations::PaymentProcessor, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('paymentProcessor'), 'decoder': Utils.enum_from_string(::OpenApiSDK::Operations::PaymentProcessor, false) } }
18
20
  # The currency of the sale. Accepts ISO 4217 currency codes.
19
21
  field :currency, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('currency') } }
20
- # This is the unique identifier for the customer in the client's app. This is used to track the customer's journey.
21
- #
22
- # @deprecated true: This will be removed in a future release, please migrate away from it as soon as possible.
23
- field :customer_id, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('customerId') } }
24
- # The name of the sale event. It can be used to track different types of event for example 'Purchase', 'Upgrade', 'Payment', etc.
22
+ # The name of the sale event.
25
23
  field :event_name, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('eventName') } }
26
- # This is the unique identifier for the customer in the client's app. This is used to track the customer's journey.
27
- field :external_id, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('externalId') } }
28
24
  # The invoice ID of the sale. Can be used as a idempotency key – only one sale event can be recorded for a given invoice ID.
29
25
  field :invoice_id, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('invoiceId') } }
30
26
  # The name of the lead event that occurred before the sale (case-sensitive). This is used to associate the sale event with a particular lead event (instead of the latest lead event, which is the default behavior).
31
27
  field :lead_event_name, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('leadEventName') } }
32
- # Additional metadata to be stored with the sale event.
28
+ # Additional metadata to be stored with the sale event. Max 10,000 characters.
33
29
  field :metadata, T.nilable(T::Hash[Symbol, ::Object]), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('metadata') } }
34
30
 
35
31
 
36
- sig { params(amount: ::Integer, payment_processor: ::OpenApiSDK::Operations::PaymentProcessor, currency: T.nilable(::String), customer_id: T.nilable(::String), event_name: T.nilable(::String), external_id: T.nilable(::String), invoice_id: T.nilable(::String), lead_event_name: T.nilable(::String), metadata: T.nilable(T::Hash[Symbol, ::Object])).void }
37
- def initialize(amount: nil, payment_processor: nil, currency: nil, customer_id: nil, event_name: nil, external_id: nil, invoice_id: nil, lead_event_name: nil, metadata: nil)
32
+ sig { params(amount: ::Integer, external_id: ::String, payment_processor: ::OpenApiSDK::Operations::PaymentProcessor, currency: T.nilable(::String), event_name: T.nilable(::String), invoice_id: T.nilable(::String), lead_event_name: T.nilable(::String), metadata: T.nilable(T::Hash[Symbol, ::Object])).void }
33
+ def initialize(amount: nil, external_id: nil, payment_processor: nil, currency: nil, event_name: nil, invoice_id: nil, lead_event_name: nil, metadata: nil)
38
34
  @amount = amount
35
+ @external_id = external_id
39
36
  @payment_processor = payment_processor
40
37
  @currency = currency
41
- @customer_id = customer_id
42
38
  @event_name = event_name
43
- @external_id = external_id
44
39
  @invoice_id = invoice_id
45
40
  @lead_event_name = lead_event_name
46
41
  @metadata = metadata
@@ -10,8 +10,9 @@ module OpenApiSDK
10
10
 
11
11
  class Type < T::Enum
12
12
  enums do
13
- PERCENTAGE = new('percentage')
14
- FLAT = new('flat')
13
+ CLICK = new('click')
14
+ LEAD = new('lead')
15
+ SALE = new('sale')
15
16
  end
16
17
  end
17
18
  end
@@ -32,9 +32,11 @@ module OpenApiSDK
32
32
 
33
33
  field :partner, T.nilable(::OpenApiSDK::Operations::UpdateCustomerPartner), { '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::UpdateCustomerDiscount), email: T.nilable(::String), link: T.nilable(::OpenApiSDK::Operations::UpdateCustomerLink), partner: T.nilable(::OpenApiSDK::Operations::UpdateCustomerPartner)).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::UpdateCustomerDiscount), email: T.nilable(::String), link: T.nilable(::OpenApiSDK::Operations::UpdateCustomerLink), partner: T.nilable(::OpenApiSDK::Operations::UpdateCustomerPartner), 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
@@ -67,6 +67,12 @@ module OpenApiSDK
67
67
  field :tag_names, T.nilable(::Object), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('tagNames') } }
68
68
  # 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.
69
69
  field :tenant_id, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('tenantId') } }
70
+ # The date and time when the tests were or will be completed.
71
+ field :test_completed_at, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('testCompletedAt') } }
72
+ # The date and time when the tests started.
73
+ field :test_started_at, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('testStartedAt') } }
74
+ # An array of A/B test URLs and the percentage of traffic to send to each URL.
75
+ field :test_variants, T.nilable(T::Array[::OpenApiSDK::Operations::UpdateLinkTestVariants]), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('testVariants') } }
70
76
  # 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
71
77
  field :title, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('title') } }
72
78
  # 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(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), 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 }
93
- def initialize(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, url: nil, utm_campaign: nil, utm_content: nil, utm_medium: nil, utm_source: nil, utm_term: nil, video: nil, webhook_ids: nil)
98
+ 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), 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::UpdateLinkTestVariants]), 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 }
99
+ def initialize(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, url: nil, utm_campaign: nil, utm_content: nil, utm_medium: nil, utm_source: nil, utm_term: nil, video: nil, webhook_ids: nil)
94
100
  @android = android
95
101
  @archived = archived
96
102
  @comments = comments
@@ -117,6 +123,9 @@ module OpenApiSDK
117
123
  @tag_ids = tag_ids
118
124
  @tag_names = tag_names
119
125
  @tenant_id = tenant_id
126
+ @test_completed_at = test_completed_at
127
+ @test_started_at = test_started_at
128
+ @test_variants = test_variants
120
129
  @title = title
121
130
  @track_conversion = track_conversion
122
131
  @url = url
@@ -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 UpdateLinkTestVariants < ::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
@@ -28,9 +28,11 @@ module OpenApiSDK
28
28
 
29
29
  field :invoice_id, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('invoiceId') } }
30
30
 
31
+ field :type, T.nilable(::OpenApiSDK::Operations::Type), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('type'), 'decoder': Utils.enum_from_string(::OpenApiSDK::Operations::Type, true) } }
31
32
 
32
- sig { params(amount: ::Float, created_at: ::String, currency: ::String, earnings: ::Float, id: ::String, status: ::OpenApiSDK::Operations::UpdatePartnerSaleStatus, updated_at: ::String, invoice_id: T.nilable(::String)).void }
33
- def initialize(amount: nil, created_at: nil, currency: nil, earnings: nil, id: nil, status: nil, updated_at: nil, invoice_id: nil)
33
+
34
+ sig { params(amount: ::Float, created_at: ::String, currency: ::String, earnings: ::Float, id: ::String, status: ::OpenApiSDK::Operations::UpdatePartnerSaleStatus, updated_at: ::String, invoice_id: T.nilable(::String), type: T.nilable(::OpenApiSDK::Operations::Type)).void }
35
+ def initialize(amount: nil, created_at: nil, currency: nil, earnings: nil, id: nil, status: nil, updated_at: nil, invoice_id: nil, type: nil)
34
36
  @amount = amount
35
37
  @created_at = created_at
36
38
  @currency = currency
@@ -39,6 +41,7 @@ module OpenApiSDK
39
41
  @status = status
40
42
  @updated_at = updated_at
41
43
  @invoice_id = invoice_id
44
+ @type = type
42
45
  end
43
46
  end
44
47
  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::UpsertLinkTestVariants]), { '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::UpsertLinkTestVariants]), 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
@@ -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 UpsertLinkTestVariants < ::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::UpsertPartnerLinkTestVariants]), { '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::UpsertPartnerLinkTestVariants]), 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 UpsertPartnerLinkTestVariants < ::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
@@ -5,6 +5,7 @@
5
5
 
6
6
  module OpenApiSDK
7
7
  module Operations
8
+ autoload :TestVariants, 'open_api_sdk/models/operations/testvariants.rb'
8
9
  autoload :CreateLinkRequestBody, 'open_api_sdk/models/operations/createlink_requestbody.rb'
9
10
  autoload :CreateLinkResponse, 'open_api_sdk/models/operations/createlink_response.rb'
10
11
  autoload :SortBy, 'open_api_sdk/models/operations/sortby.rb'
@@ -16,20 +17,24 @@ module OpenApiSDK
16
17
  autoload :GetLinksCountResponse, 'open_api_sdk/models/operations/getlinkscount_response.rb'
17
18
  autoload :GetLinkInfoRequest, 'open_api_sdk/models/operations/getlinkinfo_request.rb'
18
19
  autoload :GetLinkInfoResponse, 'open_api_sdk/models/operations/getlinkinfo_response.rb'
20
+ autoload :UpdateLinkTestVariants, 'open_api_sdk/models/operations/updatelink_testvariants.rb'
19
21
  autoload :UpdateLinkRequestBody, 'open_api_sdk/models/operations/updatelink_requestbody.rb'
20
22
  autoload :UpdateLinkRequest, 'open_api_sdk/models/operations/updatelink_request.rb'
21
23
  autoload :UpdateLinkResponse, 'open_api_sdk/models/operations/updatelink_response.rb'
22
24
  autoload :DeleteLinkRequest, 'open_api_sdk/models/operations/deletelink_request.rb'
23
25
  autoload :DeleteLinkResponseBody, 'open_api_sdk/models/operations/deletelink_responsebody.rb'
24
26
  autoload :DeleteLinkResponse, 'open_api_sdk/models/operations/deletelink_response.rb'
27
+ autoload :BulkCreateLinksTestVariants, 'open_api_sdk/models/operations/bulkcreatelinks_testvariants.rb'
25
28
  autoload :RequestBody, 'open_api_sdk/models/operations/requestbody.rb'
26
29
  autoload :BulkCreateLinksResponse, 'open_api_sdk/models/operations/bulkcreatelinks_response.rb'
30
+ autoload :BulkUpdateLinksTestVariants, 'open_api_sdk/models/operations/bulkupdatelinks_testvariants.rb'
27
31
  autoload :Data, 'open_api_sdk/models/operations/data.rb'
28
32
  autoload :BulkUpdateLinksRequestBody, 'open_api_sdk/models/operations/bulkupdatelinks_requestbody.rb'
29
33
  autoload :BulkUpdateLinksResponse, 'open_api_sdk/models/operations/bulkupdatelinks_response.rb'
30
34
  autoload :BulkDeleteLinksRequest, 'open_api_sdk/models/operations/bulkdeletelinks_request.rb'
31
35
  autoload :BulkDeleteLinksResponseBody, 'open_api_sdk/models/operations/bulkdeletelinks_responsebody.rb'
32
36
  autoload :BulkDeleteLinksResponse, 'open_api_sdk/models/operations/bulkdeletelinks_response.rb'
37
+ autoload :UpsertLinkTestVariants, 'open_api_sdk/models/operations/upsertlink_testvariants.rb'
33
38
  autoload :UpsertLinkRequestBody, 'open_api_sdk/models/operations/upsertlink_requestbody.rb'
34
39
  autoload :UpsertLinkResponse, 'open_api_sdk/models/operations/upsertlink_response.rb'
35
40
  autoload :Event, 'open_api_sdk/models/operations/event.rb'
@@ -97,7 +102,7 @@ module OpenApiSDK
97
102
  autoload :GetCustomersRequest, 'open_api_sdk/models/operations/getcustomers_request.rb'
98
103
  autoload :Link, 'open_api_sdk/models/operations/link.rb'
99
104
  autoload :GetCustomersPartner, 'open_api_sdk/models/operations/getcustomers_partner.rb'
100
- autoload :Type, 'open_api_sdk/models/operations/type.rb'
105
+ autoload :GetCustomersType, 'open_api_sdk/models/operations/getcustomers_type.rb'
101
106
  autoload :Discount, 'open_api_sdk/models/operations/discount.rb'
102
107
  autoload :ResponseBody, 'open_api_sdk/models/operations/responsebody.rb'
103
108
  autoload :GetCustomersResponse, 'open_api_sdk/models/operations/getcustomers_response.rb'
@@ -127,15 +132,21 @@ module OpenApiSDK
127
132
  autoload :DeleteCustomerResponseBody, 'open_api_sdk/models/operations/deletecustomer_responsebody.rb'
128
133
  autoload :DeleteCustomerResponse, 'open_api_sdk/models/operations/deletecustomer_response.rb'
129
134
  autoload :Country, 'open_api_sdk/models/operations/country.rb'
135
+ autoload :CreatePartnerTestVariants, 'open_api_sdk/models/operations/createpartner_testvariants.rb'
130
136
  autoload :LinkProps, 'open_api_sdk/models/operations/linkprops.rb'
131
137
  autoload :CreatePartnerRequestBody, 'open_api_sdk/models/operations/createpartner_requestbody.rb'
132
138
  autoload :Status, 'open_api_sdk/models/operations/status.rb'
133
139
  autoload :Links, 'open_api_sdk/models/operations/links.rb'
134
140
  autoload :CreatePartnerResponseBody, 'open_api_sdk/models/operations/createpartner_responsebody.rb'
135
141
  autoload :CreatePartnerResponse, 'open_api_sdk/models/operations/createpartner_response.rb'
142
+ autoload :CreatePartnerLinkTestVariants, 'open_api_sdk/models/operations/createpartnerlink_testvariants.rb'
136
143
  autoload :CreatePartnerLinkLinkProps, 'open_api_sdk/models/operations/createpartnerlink_linkprops.rb'
137
144
  autoload :CreatePartnerLinkRequestBody, 'open_api_sdk/models/operations/createpartnerlink_requestbody.rb'
138
145
  autoload :CreatePartnerLinkResponse, 'open_api_sdk/models/operations/createpartnerlink_response.rb'
146
+ autoload :RetrieveLinksRequest, 'open_api_sdk/models/operations/retrievelinks_request.rb'
147
+ autoload :RetrieveLinksResponseBody, 'open_api_sdk/models/operations/retrievelinks_responsebody.rb'
148
+ autoload :RetrieveLinksResponse, 'open_api_sdk/models/operations/retrievelinks_response.rb'
149
+ autoload :UpsertPartnerLinkTestVariants, 'open_api_sdk/models/operations/upsertpartnerlink_testvariants.rb'
139
150
  autoload :UpsertPartnerLinkLinkProps, 'open_api_sdk/models/operations/upsertpartnerlink_linkprops.rb'
140
151
  autoload :UpsertPartnerLinkRequestBody, 'open_api_sdk/models/operations/upsertpartnerlink_requestbody.rb'
141
152
  autoload :UpsertPartnerLinkResponse, 'open_api_sdk/models/operations/upsertpartnerlink_response.rb'
@@ -144,6 +155,7 @@ module OpenApiSDK
144
155
  autoload :RetrievePartnerAnalyticsRequest, 'open_api_sdk/models/operations/retrievepartneranalytics_request.rb'
145
156
  autoload :RetrievePartnerAnalyticsResponse, 'open_api_sdk/models/operations/retrievepartneranalytics_response.rb'
146
157
  autoload :UpdatePartnerSaleRequestBody, 'open_api_sdk/models/operations/updatepartnersale_requestbody.rb'
158
+ autoload :Type, 'open_api_sdk/models/operations/type.rb'
147
159
  autoload :UpdatePartnerSaleStatus, 'open_api_sdk/models/operations/updatepartnersale_status.rb'
148
160
  autoload :UpdatePartnerSaleResponseBody, 'open_api_sdk/models/operations/updatepartnersale_responsebody.rb'
149
161
  autoload :UpdatePartnerSaleResponse, 'open_api_sdk/models/operations/updatepartnersale_response.rb'
@@ -153,6 +165,7 @@ module OpenApiSDK
153
165
  autoload :UpdateWorkspaceRequest, 'open_api_sdk/models/operations/updateworkspace_request.rb'
154
166
  autoload :UpdateWorkspaceResponse, 'open_api_sdk/models/operations/updateworkspace_response.rb'
155
167
  autoload :CreateReferralsEmbedTokenCountry, 'open_api_sdk/models/operations/createreferralsembedtoken_country.rb'
168
+ autoload :CreateReferralsEmbedTokenTestVariants, 'open_api_sdk/models/operations/createreferralsembedtoken_testvariants.rb'
156
169
  autoload :CreateReferralsEmbedTokenLinkProps, 'open_api_sdk/models/operations/createreferralsembedtoken_linkprops.rb'
157
170
  autoload :Partner, 'open_api_sdk/models/operations/partner.rb'
158
171
  autoload :CreateReferralsEmbedTokenRequestBody, 'open_api_sdk/models/operations/createreferralsembedtoken_requestbody.rb'
@@ -161,8 +174,5 @@ module OpenApiSDK
161
174
  autoload :Level, 'open_api_sdk/models/operations/level.rb'
162
175
  autoload :GetQRCodeRequest, 'open_api_sdk/models/operations/getqrcode_request.rb'
163
176
  autoload :GetQRCodeResponse, 'open_api_sdk/models/operations/getqrcode_response.rb'
164
- autoload :GetMetatagsRequest, 'open_api_sdk/models/operations/getmetatags_request.rb'
165
- autoload :GetMetatagsResponseBody, 'open_api_sdk/models/operations/getmetatags_responsebody.rb'
166
- autoload :GetMetatagsResponse, 'open_api_sdk/models/operations/getmetatags_response.rb'
167
177
  end
168
178
  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 Shared
9
+
10
+
11
+ class ClickEventTestVariants < ::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