dub 0.0.2
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +7 -0
- data/lib/dub.rb +23 -0
- data/lib/open_api_sdk/analytics.rb +99 -0
- data/lib/open_api_sdk/domains.rb +577 -0
- data/lib/open_api_sdk/dub.rb +107 -0
- data/lib/open_api_sdk/links.rb +724 -0
- data/lib/open_api_sdk/metatags.rb +58 -0
- data/lib/open_api_sdk/models/operations/adddomain_request.rb +30 -0
- data/lib/open_api_sdk/models/operations/adddomain_requestbody.rb +42 -0
- data/lib/open_api_sdk/models/operations/adddomain_response.rb +60 -0
- data/lib/open_api_sdk/models/operations/bulkcreatelinks_request.rb +30 -0
- data/lib/open_api_sdk/models/operations/bulkcreatelinks_response.rb +60 -0
- data/lib/open_api_sdk/models/operations/color.rb +24 -0
- data/lib/open_api_sdk/models/operations/createlink_request.rb +30 -0
- data/lib/open_api_sdk/models/operations/createlink_requestbody.rb +92 -0
- data/lib/open_api_sdk/models/operations/createlink_response.rb +60 -0
- data/lib/open_api_sdk/models/operations/createtag_request.rb +30 -0
- data/lib/open_api_sdk/models/operations/createtag_requestbody.rb +27 -0
- data/lib/open_api_sdk/models/operations/createtag_response.rb +60 -0
- data/lib/open_api_sdk/models/operations/createworkspace_requestbody.rb +30 -0
- data/lib/open_api_sdk/models/operations/createworkspace_response.rb +60 -0
- data/lib/open_api_sdk/models/operations/deletedomain_request.rb +30 -0
- data/lib/open_api_sdk/models/operations/deletedomain_response.rb +60 -0
- data/lib/open_api_sdk/models/operations/deletedomain_responsebody.rb +24 -0
- data/lib/open_api_sdk/models/operations/deletelink_request.rb +30 -0
- data/lib/open_api_sdk/models/operations/deletelink_response.rb +60 -0
- data/lib/open_api_sdk/models/operations/deletelink_responsebody.rb +24 -0
- data/lib/open_api_sdk/models/operations/event.rb +21 -0
- data/lib/open_api_sdk/models/operations/getlinkinfo_request.rb +39 -0
- data/lib/open_api_sdk/models/operations/getlinkinfo_response.rb +60 -0
- data/lib/open_api_sdk/models/operations/getlinks_request.rb +57 -0
- data/lib/open_api_sdk/models/operations/getlinks_response.rb +60 -0
- data/lib/open_api_sdk/models/operations/getlinkscount_request.rb +54 -0
- data/lib/open_api_sdk/models/operations/getlinkscount_response.rb +60 -0
- data/lib/open_api_sdk/models/operations/getmetatags_request.rb +24 -0
- data/lib/open_api_sdk/models/operations/getmetatags_response.rb +33 -0
- data/lib/open_api_sdk/models/operations/getmetatags_responsebody.rb +30 -0
- data/lib/open_api_sdk/models/operations/getqrcode_request.rb +39 -0
- data/lib/open_api_sdk/models/operations/getqrcode_response.rb +60 -0
- data/lib/open_api_sdk/models/operations/gettags_request.rb +27 -0
- data/lib/open_api_sdk/models/operations/gettags_response.rb +60 -0
- data/lib/open_api_sdk/models/operations/getworkspace_request.rb +24 -0
- data/lib/open_api_sdk/models/operations/getworkspace_response.rb +60 -0
- data/lib/open_api_sdk/models/operations/getworkspaces_response.rb +60 -0
- data/lib/open_api_sdk/models/operations/groupby.rb +28 -0
- data/lib/open_api_sdk/models/operations/interval.rb +25 -0
- data/lib/open_api_sdk/models/operations/level.rb +21 -0
- data/lib/open_api_sdk/models/operations/listdomains_request.rb +27 -0
- data/lib/open_api_sdk/models/operations/listdomains_response.rb +60 -0
- data/lib/open_api_sdk/models/operations/paymentprocessor.rb +20 -0
- data/lib/open_api_sdk/models/operations/requestbody.rb +92 -0
- data/lib/open_api_sdk/models/operations/retrieveanalytics_request.rb +87 -0
- data/lib/open_api_sdk/models/operations/retrieveanalytics_response.rb +60 -0
- data/lib/open_api_sdk/models/operations/setprimarydomain_request.rb +30 -0
- data/lib/open_api_sdk/models/operations/setprimarydomain_response.rb +60 -0
- data/lib/open_api_sdk/models/operations/sort.rb +20 -0
- data/lib/open_api_sdk/models/operations/trackcustomer_requestbody.rb +33 -0
- data/lib/open_api_sdk/models/operations/trackcustomer_response.rb +60 -0
- data/lib/open_api_sdk/models/operations/trackcustomer_responsebody.rb +33 -0
- data/lib/open_api_sdk/models/operations/tracklead_requestbody.rb +42 -0
- data/lib/open_api_sdk/models/operations/tracklead_response.rb +60 -0
- data/lib/open_api_sdk/models/operations/tracklead_responsebody.rb +42 -0
- data/lib/open_api_sdk/models/operations/tracksale_requestbody.rb +39 -0
- data/lib/open_api_sdk/models/operations/tracksale_response.rb +60 -0
- data/lib/open_api_sdk/models/operations/tracksale_responsebody.rb +39 -0
- data/lib/open_api_sdk/models/operations/transferdomain_request.rb +33 -0
- data/lib/open_api_sdk/models/operations/transferdomain_requestbody.rb +24 -0
- data/lib/open_api_sdk/models/operations/transferdomain_response.rb +60 -0
- data/lib/open_api_sdk/models/operations/type.rb +19 -0
- data/lib/open_api_sdk/models/operations/updatedomain_request.rb +33 -0
- data/lib/open_api_sdk/models/operations/updatedomain_requestbody.rb +42 -0
- data/lib/open_api_sdk/models/operations/updatedomain_response.rb +60 -0
- data/lib/open_api_sdk/models/operations/updatedomain_type.rb +19 -0
- data/lib/open_api_sdk/models/operations/updatelink_request.rb +33 -0
- data/lib/open_api_sdk/models/operations/updatelink_requestbody.rb +92 -0
- data/lib/open_api_sdk/models/operations/updatelink_response.rb +60 -0
- data/lib/open_api_sdk/models/operations/upsertlink_request.rb +30 -0
- data/lib/open_api_sdk/models/operations/upsertlink_requestbody.rb +92 -0
- data/lib/open_api_sdk/models/operations/upsertlink_response.rb +60 -0
- data/lib/open_api_sdk/models/operations.rb +81 -0
- data/lib/open_api_sdk/models/shared/badrequest.rb +24 -0
- data/lib/open_api_sdk/models/shared/code.rb +18 -0
- data/lib/open_api_sdk/models/shared/color.rb +24 -0
- data/lib/open_api_sdk/models/shared/conflict.rb +24 -0
- data/lib/open_api_sdk/models/shared/conflict_code.rb +18 -0
- data/lib/open_api_sdk/models/shared/conflict_error.rb +30 -0
- data/lib/open_api_sdk/models/shared/countrycode.rb +267 -0
- data/lib/open_api_sdk/models/shared/domains.rb +27 -0
- data/lib/open_api_sdk/models/shared/domainschema.rb +54 -0
- data/lib/open_api_sdk/models/shared/error.rb +30 -0
- data/lib/open_api_sdk/models/shared/forbidden.rb +24 -0
- data/lib/open_api_sdk/models/shared/forbidden_code.rb +18 -0
- data/lib/open_api_sdk/models/shared/forbidden_error.rb +30 -0
- data/lib/open_api_sdk/models/shared/geo.rb +771 -0
- data/lib/open_api_sdk/models/shared/internalservererror.rb +24 -0
- data/lib/open_api_sdk/models/shared/internalservererror_code.rb +18 -0
- data/lib/open_api_sdk/models/shared/internalservererror_error.rb +30 -0
- data/lib/open_api_sdk/models/shared/inviteexpired.rb +24 -0
- data/lib/open_api_sdk/models/shared/inviteexpired_code.rb +18 -0
- data/lib/open_api_sdk/models/shared/inviteexpired_error.rb +30 -0
- data/lib/open_api_sdk/models/shared/linkgeotargeting.rb +771 -0
- data/lib/open_api_sdk/models/shared/linkschema.rb +139 -0
- data/lib/open_api_sdk/models/shared/notfound.rb +24 -0
- data/lib/open_api_sdk/models/shared/notfound_code.rb +18 -0
- data/lib/open_api_sdk/models/shared/notfound_error.rb +30 -0
- data/lib/open_api_sdk/models/shared/plan.rb +24 -0
- data/lib/open_api_sdk/models/shared/ratelimitexceeded.rb +24 -0
- data/lib/open_api_sdk/models/shared/ratelimitexceeded_code.rb +18 -0
- data/lib/open_api_sdk/models/shared/ratelimitexceeded_error.rb +30 -0
- data/lib/open_api_sdk/models/shared/role.rb +19 -0
- data/lib/open_api_sdk/models/shared/security.rb +24 -0
- data/lib/open_api_sdk/models/shared/tagschema.rb +30 -0
- data/lib/open_api_sdk/models/shared/type.rb +19 -0
- data/lib/open_api_sdk/models/shared/unauthorized.rb +24 -0
- data/lib/open_api_sdk/models/shared/unauthorized_code.rb +18 -0
- data/lib/open_api_sdk/models/shared/unauthorized_error.rb +30 -0
- data/lib/open_api_sdk/models/shared/unprocessableentity.rb +24 -0
- data/lib/open_api_sdk/models/shared/unprocessableentity_code.rb +18 -0
- data/lib/open_api_sdk/models/shared/unprocessableentity_error.rb +30 -0
- data/lib/open_api_sdk/models/shared/users.rb +24 -0
- data/lib/open_api_sdk/models/shared/workspaceschema.rb +81 -0
- data/lib/open_api_sdk/models/shared.rb +50 -0
- data/lib/open_api_sdk/qr_codes.rb +97 -0
- data/lib/open_api_sdk/sdkconfiguration.rb +54 -0
- data/lib/open_api_sdk/tags.rb +197 -0
- data/lib/open_api_sdk/track.rb +276 -0
- data/lib/open_api_sdk/utils/metadata_fields.rb +150 -0
- data/lib/open_api_sdk/utils/t.rb +59 -0
- data/lib/open_api_sdk/utils/utils.rb +772 -0
- data/lib/open_api_sdk/workspaces.rb +268 -0
- metadata +300 -0
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
|
2
|
+
|
|
3
|
+
# typed: true
|
|
4
|
+
# frozen_string_literal: true
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
module OpenApiSDK
|
|
8
|
+
module Operations
|
|
9
|
+
|
|
10
|
+
# PaymentProcessor - The payment processor via which the sale was made.
|
|
11
|
+
class PaymentProcessor < T::Enum
|
|
12
|
+
enums do
|
|
13
|
+
STRIPE = new('stripe')
|
|
14
|
+
SHOPIFY = new('shopify')
|
|
15
|
+
PADDLE = new('paddle')
|
|
16
|
+
end
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
end
|
|
20
|
+
end
|
|
@@ -0,0 +1,92 @@
|
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
|
2
|
+
|
|
3
|
+
# typed: true
|
|
4
|
+
# frozen_string_literal: true
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
module OpenApiSDK
|
|
8
|
+
module Operations
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
class RequestBody < ::OpenApiSDK::Utils::FieldAugmented
|
|
12
|
+
extend T::Sig
|
|
13
|
+
|
|
14
|
+
# The destination URL of the short link.
|
|
15
|
+
field :url, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('url') } }
|
|
16
|
+
# The Android destination URL for the short link for Android device targeting.
|
|
17
|
+
field :android, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('android') } }
|
|
18
|
+
# Whether the short link is archived.
|
|
19
|
+
field :archived, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('archived') } }
|
|
20
|
+
# The comments for the short link.
|
|
21
|
+
field :comments, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('comments') } }
|
|
22
|
+
# The description of the short link generated via `api.dub.co/metatags`. Will be used for Custom Social Media Cards if `proxy` is true.
|
|
23
|
+
field :description, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('description') } }
|
|
24
|
+
# 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).
|
|
25
|
+
field :domain, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('domain') } }
|
|
26
|
+
# The URL to redirect to when the short link has expired.
|
|
27
|
+
field :expired_url, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('expiredUrl') } }
|
|
28
|
+
# The date and time when the short link will expire at.
|
|
29
|
+
field :expires_at, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('expiresAt') } }
|
|
30
|
+
# This is the ID of the link in your database. If set, it can be used to identify the link in the future. Must be prefixed with `ext_` when passed as a query parameter.
|
|
31
|
+
field :external_id, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('externalId') } }
|
|
32
|
+
# Geo targeting information for the short link in JSON format `{[COUNTRY]: https://example.com }`.
|
|
33
|
+
field :geo, T.nilable(::OpenApiSDK::Shared::LinkGeoTargeting), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('geo') } }
|
|
34
|
+
# The image of the short link generated via `api.dub.co/metatags`. Will be used for Custom Social Media Cards if `proxy` is true.
|
|
35
|
+
field :image, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('image') } }
|
|
36
|
+
# The iOS destination URL for the short link for iOS device targeting.
|
|
37
|
+
field :ios, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('ios') } }
|
|
38
|
+
# The short link slug. If not provided, a random 7-character slug will be generated.
|
|
39
|
+
field :key, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('key') } }
|
|
40
|
+
# The password required to access the destination URL of the short link.
|
|
41
|
+
field :password, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('password') } }
|
|
42
|
+
# The prefix of the short link slug for randomly-generated keys (e.g. if prefix is `/c/`, generated keys will be in the `/c/:key` format). Will be ignored if `key` is provided.
|
|
43
|
+
field :prefix, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('prefix') } }
|
|
44
|
+
# Whether the short link uses Custom Social Media Cards feature.
|
|
45
|
+
field :proxy, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('proxy') } }
|
|
46
|
+
# Whether the short link's stats are publicly accessible.
|
|
47
|
+
field :public_stats, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('publicStats') } }
|
|
48
|
+
# Whether the short link uses link cloaking.
|
|
49
|
+
field :rewrite, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('rewrite') } }
|
|
50
|
+
# The unique ID of the tag assigned to the short link. This field is deprecated – use `tagIds` instead.
|
|
51
|
+
#
|
|
52
|
+
# @deprecated true: This will be removed in a future release, please migrate away from it as soon as possible.
|
|
53
|
+
field :tag_id, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('tagId') } }
|
|
54
|
+
# The unique IDs of the tags assigned to the short link.
|
|
55
|
+
field :tag_ids, T.nilable(::Object), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('tagIds') } }
|
|
56
|
+
# The unique name of the tags assigned to the short link (case insensitive).
|
|
57
|
+
field :tag_names, T.nilable(::Object), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('tagNames') } }
|
|
58
|
+
# The title of the short link generated via `api.dub.co/metatags`. Will be used for Custom Social Media Cards if `proxy` is true.
|
|
59
|
+
field :title, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('title') } }
|
|
60
|
+
# Whether to track conversions for the short link.
|
|
61
|
+
field :track_conversion, T.nilable(T::Boolean), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('trackConversion') } }
|
|
62
|
+
|
|
63
|
+
|
|
64
|
+
sig { params(url: ::String, android: T.nilable(::String), archived: T.nilable(T::Boolean), comments: T.nilable(::String), description: T.nilable(::String), domain: T.nilable(::String), expired_url: T.nilable(::String), expires_at: T.nilable(::String), external_id: T.nilable(::String), geo: T.nilable(::OpenApiSDK::Shared::LinkGeoTargeting), image: T.nilable(::String), ios: T.nilable(::String), key: T.nilable(::String), password: T.nilable(::String), prefix: T.nilable(::String), proxy: T.nilable(T::Boolean), public_stats: T.nilable(T::Boolean), rewrite: T.nilable(T::Boolean), tag_id: T.nilable(::String), tag_ids: T.nilable(::Object), tag_names: T.nilable(::Object), title: T.nilable(::String), track_conversion: T.nilable(T::Boolean)).void }
|
|
65
|
+
def initialize(url: nil, android: nil, archived: nil, comments: nil, description: nil, domain: nil, expired_url: nil, expires_at: nil, external_id: nil, geo: nil, image: nil, ios: nil, key: nil, password: nil, prefix: nil, proxy: nil, public_stats: nil, rewrite: nil, tag_id: nil, tag_ids: nil, tag_names: nil, title: nil, track_conversion: nil)
|
|
66
|
+
@url = url
|
|
67
|
+
@android = android
|
|
68
|
+
@archived = archived
|
|
69
|
+
@comments = comments
|
|
70
|
+
@description = description
|
|
71
|
+
@domain = domain
|
|
72
|
+
@expired_url = expired_url
|
|
73
|
+
@expires_at = expires_at
|
|
74
|
+
@external_id = external_id
|
|
75
|
+
@geo = geo
|
|
76
|
+
@image = image
|
|
77
|
+
@ios = ios
|
|
78
|
+
@key = key
|
|
79
|
+
@password = password
|
|
80
|
+
@prefix = prefix
|
|
81
|
+
@proxy = proxy
|
|
82
|
+
@public_stats = public_stats
|
|
83
|
+
@rewrite = rewrite
|
|
84
|
+
@tag_id = tag_id
|
|
85
|
+
@tag_ids = tag_ids
|
|
86
|
+
@tag_names = tag_names
|
|
87
|
+
@title = title
|
|
88
|
+
@track_conversion = track_conversion
|
|
89
|
+
end
|
|
90
|
+
end
|
|
91
|
+
end
|
|
92
|
+
end
|
|
@@ -0,0 +1,87 @@
|
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
|
2
|
+
|
|
3
|
+
# typed: true
|
|
4
|
+
# frozen_string_literal: true
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
module OpenApiSDK
|
|
8
|
+
module Operations
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
class RetrieveAnalyticsRequest < ::OpenApiSDK::Utils::FieldAugmented
|
|
12
|
+
extend T::Sig
|
|
13
|
+
|
|
14
|
+
# The browser to retrieve analytics for.
|
|
15
|
+
field :browser, T.nilable(::String), { 'query_param': { 'field_name': 'browser', 'style': 'form', 'explode': true } }
|
|
16
|
+
# The city to retrieve analytics for.
|
|
17
|
+
field :city, T.nilable(::String), { 'query_param': { 'field_name': 'city', 'style': 'form', 'explode': true } }
|
|
18
|
+
# The country to retrieve analytics for.
|
|
19
|
+
field :country, T.nilable(::OpenApiSDK::Shared::CountryCode), { 'query_param': { 'field_name': 'country', 'style': 'form', 'explode': true } }
|
|
20
|
+
# The device to retrieve analytics for.
|
|
21
|
+
field :device, T.nilable(::String), { 'query_param': { 'field_name': 'device', 'style': 'form', 'explode': true } }
|
|
22
|
+
# The domain to filter analytics for.
|
|
23
|
+
field :domain, T.nilable(::String), { 'query_param': { 'field_name': 'domain', 'style': 'form', 'explode': true } }
|
|
24
|
+
# The end date and time when to retrieve analytics from. If not provided, defaults to the current date.
|
|
25
|
+
field :end_, T.nilable(::String), { 'query_param': { 'field_name': 'end', 'style': 'form', 'explode': true } }
|
|
26
|
+
# The type of event to retrieve analytics for. Defaults to 'clicks'.
|
|
27
|
+
field :event, T.nilable(::OpenApiSDK::Operations::Event), { 'query_param': { 'field_name': 'event', 'style': 'form', 'explode': true } }
|
|
28
|
+
# This is the ID of the link in the your database. Must be prefixed with 'ext_' when passed as a query parameter.
|
|
29
|
+
field :external_id, T.nilable(::String), { 'query_param': { 'field_name': 'externalId', 'style': 'form', 'explode': true } }
|
|
30
|
+
# The parameter to group the analytics data points by. Defaults to 'count' if undefined.
|
|
31
|
+
field :group_by, T.nilable(::OpenApiSDK::Operations::GroupBy), { 'query_param': { 'field_name': 'groupBy', 'style': 'form', 'explode': true } }
|
|
32
|
+
# The interval to retrieve analytics for. Takes precedence over start and end. If undefined, defaults to 24h.
|
|
33
|
+
field :interval, T.nilable(::OpenApiSDK::Operations::Interval), { 'query_param': { 'field_name': 'interval', 'style': 'form', 'explode': true } }
|
|
34
|
+
# The short link slug.
|
|
35
|
+
field :key, T.nilable(::String), { 'query_param': { 'field_name': 'key', 'style': 'form', 'explode': true } }
|
|
36
|
+
# The unique ID of the short link on Dub.
|
|
37
|
+
field :link_id, T.nilable(::String), { 'query_param': { 'field_name': 'linkId', 'style': 'form', 'explode': true } }
|
|
38
|
+
# The OS to retrieve analytics for.
|
|
39
|
+
field :os, T.nilable(::String), { 'query_param': { 'field_name': 'os', 'style': 'form', 'explode': true } }
|
|
40
|
+
# The slug of the project. This field is deprecated – use `workspaceId` instead.
|
|
41
|
+
field :project_slug, T.nilable(::String), { 'query_param': { 'field_name': 'projectSlug', 'style': 'form', 'explode': true } }
|
|
42
|
+
# Filter for QR code scans. If true, filter for QR codes only. If false, filter for links only. If undefined, return both.
|
|
43
|
+
field :qr, T.nilable(T::Boolean), { 'query_param': { 'field_name': 'qr', 'style': 'form', 'explode': true } }
|
|
44
|
+
# The referer to retrieve analytics for.
|
|
45
|
+
field :referer, T.nilable(::String), { 'query_param': { 'field_name': 'referer', 'style': 'form', 'explode': true } }
|
|
46
|
+
# Filter for root domains. If true, filter for domains only. If false, filter for links only. If undefined, return both.
|
|
47
|
+
field :root, T.nilable(T::Boolean), { 'query_param': { 'field_name': 'root', 'style': 'form', 'explode': true } }
|
|
48
|
+
# The start date and time when to retrieve analytics from.
|
|
49
|
+
field :start, T.nilable(::String), { 'query_param': { 'field_name': 'start', 'style': 'form', 'explode': true } }
|
|
50
|
+
# The tag ID to retrieve analytics for.
|
|
51
|
+
field :tag_id, T.nilable(::String), { 'query_param': { 'field_name': 'tagId', 'style': 'form', 'explode': true } }
|
|
52
|
+
# The IANA time zone code for aligning timeseries granularity (e.g. America/New_York). Defaults to UTC.
|
|
53
|
+
field :timezone, T.nilable(::String), { 'query_param': { 'field_name': 'timezone', 'style': 'form', 'explode': true } }
|
|
54
|
+
# The URL to retrieve analytics for.
|
|
55
|
+
field :url, T.nilable(::String), { 'query_param': { 'field_name': 'url', 'style': 'form', 'explode': true } }
|
|
56
|
+
# The ID of the workspace.
|
|
57
|
+
field :workspace_id, T.nilable(::String), { 'query_param': { 'field_name': 'workspaceId', 'style': 'form', 'explode': true } }
|
|
58
|
+
|
|
59
|
+
|
|
60
|
+
sig { params(browser: T.nilable(::String), city: T.nilable(::String), country: T.nilable(::OpenApiSDK::Shared::CountryCode), device: T.nilable(::String), domain: T.nilable(::String), end_: T.nilable(::String), event: T.nilable(::OpenApiSDK::Operations::Event), external_id: T.nilable(::String), group_by: T.nilable(::OpenApiSDK::Operations::GroupBy), interval: T.nilable(::OpenApiSDK::Operations::Interval), key: T.nilable(::String), link_id: T.nilable(::String), os: T.nilable(::String), project_slug: T.nilable(::String), qr: T.nilable(T::Boolean), referer: T.nilable(::String), root: T.nilable(T::Boolean), start: T.nilable(::String), tag_id: T.nilable(::String), timezone: T.nilable(::String), url: T.nilable(::String), workspace_id: T.nilable(::String)).void }
|
|
61
|
+
def initialize(browser: nil, city: nil, country: nil, device: nil, domain: nil, end_: nil, event: nil, external_id: nil, group_by: nil, interval: nil, key: nil, link_id: nil, os: nil, project_slug: nil, qr: nil, referer: nil, root: nil, start: nil, tag_id: nil, timezone: nil, url: nil, workspace_id: nil)
|
|
62
|
+
@browser = browser
|
|
63
|
+
@city = city
|
|
64
|
+
@country = country
|
|
65
|
+
@device = device
|
|
66
|
+
@domain = domain
|
|
67
|
+
@end_ = end_
|
|
68
|
+
@event = event
|
|
69
|
+
@external_id = external_id
|
|
70
|
+
@group_by = group_by
|
|
71
|
+
@interval = interval
|
|
72
|
+
@key = key
|
|
73
|
+
@link_id = link_id
|
|
74
|
+
@os = os
|
|
75
|
+
@project_slug = project_slug
|
|
76
|
+
@qr = qr
|
|
77
|
+
@referer = referer
|
|
78
|
+
@root = root
|
|
79
|
+
@start = start
|
|
80
|
+
@tag_id = tag_id
|
|
81
|
+
@timezone = timezone
|
|
82
|
+
@url = url
|
|
83
|
+
@workspace_id = workspace_id
|
|
84
|
+
end
|
|
85
|
+
end
|
|
86
|
+
end
|
|
87
|
+
end
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
|
2
|
+
|
|
3
|
+
# typed: true
|
|
4
|
+
# frozen_string_literal: true
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
module OpenApiSDK
|
|
8
|
+
module Operations
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
class RetrieveAnalyticsResponse < ::OpenApiSDK::Utils::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
|
+
# Analytics data
|
|
33
|
+
field :one_of, T.nilable(::Object)
|
|
34
|
+
# The user has sent too many requests in a given amount of time ("rate limiting")
|
|
35
|
+
field :rate_limit_exceeded, T.nilable(::OpenApiSDK::Shared::RateLimitExceeded)
|
|
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), one_of: T.nilable(::Object), rate_limit_exceeded: T.nilable(::OpenApiSDK::Shared::RateLimitExceeded), 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, one_of: nil, rate_limit_exceeded: 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
|
+
@one_of = one_of
|
|
54
|
+
@rate_limit_exceeded = rate_limit_exceeded
|
|
55
|
+
@unauthorized = unauthorized
|
|
56
|
+
@unprocessable_entity = unprocessable_entity
|
|
57
|
+
end
|
|
58
|
+
end
|
|
59
|
+
end
|
|
60
|
+
end
|
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
|
2
|
+
|
|
3
|
+
# typed: true
|
|
4
|
+
# frozen_string_literal: true
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
module OpenApiSDK
|
|
8
|
+
module Operations
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
class SetPrimaryDomainRequest < ::OpenApiSDK::Utils::FieldAugmented
|
|
12
|
+
extend T::Sig
|
|
13
|
+
|
|
14
|
+
# The domain name.
|
|
15
|
+
field :slug, ::String, { 'path_param': { 'field_name': 'slug', 'style': 'simple', 'explode': false } }
|
|
16
|
+
# The slug of the project. This field is deprecated – use `workspaceId` instead.
|
|
17
|
+
field :project_slug, T.nilable(::String), { 'query_param': { 'field_name': 'projectSlug', 'style': 'form', 'explode': true } }
|
|
18
|
+
# The ID of the workspace.
|
|
19
|
+
field :workspace_id, T.nilable(::String), { 'query_param': { 'field_name': 'workspaceId', 'style': 'form', 'explode': true } }
|
|
20
|
+
|
|
21
|
+
|
|
22
|
+
sig { params(slug: ::String, project_slug: T.nilable(::String), workspace_id: T.nilable(::String)).void }
|
|
23
|
+
def initialize(slug: nil, project_slug: nil, workspace_id: nil)
|
|
24
|
+
@slug = slug
|
|
25
|
+
@project_slug = project_slug
|
|
26
|
+
@workspace_id = workspace_id
|
|
27
|
+
end
|
|
28
|
+
end
|
|
29
|
+
end
|
|
30
|
+
end
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
|
2
|
+
|
|
3
|
+
# typed: true
|
|
4
|
+
# frozen_string_literal: true
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
module OpenApiSDK
|
|
8
|
+
module Operations
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
class SetPrimaryDomainResponse < ::OpenApiSDK::Utils::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 domain was set as primary
|
|
25
|
+
field :domain_schema, T.nilable(::OpenApiSDK::Shared::DomainSchema)
|
|
26
|
+
# 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.
|
|
27
|
+
field :forbidden, T.nilable(::OpenApiSDK::Shared::Forbidden)
|
|
28
|
+
# The server has encountered a situation it does not know how to handle.
|
|
29
|
+
field :internal_server_error, T.nilable(::OpenApiSDK::Shared::InternalServerError)
|
|
30
|
+
# This response is sent when the requested content has been permanently deleted from server, with no forwarding address.
|
|
31
|
+
field :invite_expired, T.nilable(::OpenApiSDK::Shared::InviteExpired)
|
|
32
|
+
# The server cannot find the requested resource.
|
|
33
|
+
field :not_found, T.nilable(::OpenApiSDK::Shared::NotFound)
|
|
34
|
+
# The user has sent too many requests in a given amount of time ("rate limiting")
|
|
35
|
+
field :rate_limit_exceeded, T.nilable(::OpenApiSDK::Shared::RateLimitExceeded)
|
|
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), domain_schema: T.nilable(::OpenApiSDK::Shared::DomainSchema), 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), 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, domain_schema: nil, forbidden: nil, internal_server_error: nil, invite_expired: nil, not_found: nil, rate_limit_exceeded: 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
|
+
@domain_schema = domain_schema
|
|
50
|
+
@forbidden = forbidden
|
|
51
|
+
@internal_server_error = internal_server_error
|
|
52
|
+
@invite_expired = invite_expired
|
|
53
|
+
@not_found = not_found
|
|
54
|
+
@rate_limit_exceeded = rate_limit_exceeded
|
|
55
|
+
@unauthorized = unauthorized
|
|
56
|
+
@unprocessable_entity = unprocessable_entity
|
|
57
|
+
end
|
|
58
|
+
end
|
|
59
|
+
end
|
|
60
|
+
end
|
|
@@ -0,0 +1,20 @@
|
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
|
2
|
+
|
|
3
|
+
# typed: true
|
|
4
|
+
# frozen_string_literal: true
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
module OpenApiSDK
|
|
8
|
+
module Operations
|
|
9
|
+
|
|
10
|
+
# Sort - The field to sort the links by. The default is `createdAt`, and sort order is always descending.
|
|
11
|
+
class Sort < T::Enum
|
|
12
|
+
enums do
|
|
13
|
+
CREATED_AT = new('createdAt')
|
|
14
|
+
CLICKS = new('clicks')
|
|
15
|
+
LAST_CLICKED = new('lastClicked')
|
|
16
|
+
end
|
|
17
|
+
end
|
|
18
|
+
|
|
19
|
+
end
|
|
20
|
+
end
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
|
2
|
+
|
|
3
|
+
# typed: true
|
|
4
|
+
# frozen_string_literal: true
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
module OpenApiSDK
|
|
8
|
+
module Operations
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
class TrackCustomerRequestBody < ::OpenApiSDK::Utils::FieldAugmented
|
|
12
|
+
extend T::Sig
|
|
13
|
+
|
|
14
|
+
# This is the unique identifier for the customer in the client's app. This is used to track the customer's journey.
|
|
15
|
+
field :customer_id, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('customerId') } }
|
|
16
|
+
# Avatar of the customer in the client's app.
|
|
17
|
+
field :customer_avatar, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('customerAvatar') } }
|
|
18
|
+
# Email of the customer in the client's app.
|
|
19
|
+
field :customer_email, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('customerEmail') } }
|
|
20
|
+
# Name of the customer in the client's app.
|
|
21
|
+
field :customer_name, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('customerName') } }
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
sig { params(customer_id: ::String, customer_avatar: T.nilable(::String), customer_email: T.nilable(::String), customer_name: T.nilable(::String)).void }
|
|
25
|
+
def initialize(customer_id: nil, customer_avatar: nil, customer_email: nil, customer_name: nil)
|
|
26
|
+
@customer_id = customer_id
|
|
27
|
+
@customer_avatar = customer_avatar
|
|
28
|
+
@customer_email = customer_email
|
|
29
|
+
@customer_name = customer_name
|
|
30
|
+
end
|
|
31
|
+
end
|
|
32
|
+
end
|
|
33
|
+
end
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
|
2
|
+
|
|
3
|
+
# typed: true
|
|
4
|
+
# frozen_string_literal: true
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
module OpenApiSDK
|
|
8
|
+
module Operations
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
class TrackCustomerResponse < ::OpenApiSDK::Utils::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
|
+
# A customer was tracked.
|
|
33
|
+
field :object, T.nilable(::OpenApiSDK::Operations::TrackCustomerResponseBody)
|
|
34
|
+
# The user has sent too many requests in a given amount of time ("rate limiting")
|
|
35
|
+
field :rate_limit_exceeded, T.nilable(::OpenApiSDK::Shared::RateLimitExceeded)
|
|
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), object: T.nilable(::OpenApiSDK::Operations::TrackCustomerResponseBody), rate_limit_exceeded: T.nilable(::OpenApiSDK::Shared::RateLimitExceeded), 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, object: nil, rate_limit_exceeded: 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
|
+
@object = object
|
|
54
|
+
@rate_limit_exceeded = rate_limit_exceeded
|
|
55
|
+
@unauthorized = unauthorized
|
|
56
|
+
@unprocessable_entity = unprocessable_entity
|
|
57
|
+
end
|
|
58
|
+
end
|
|
59
|
+
end
|
|
60
|
+
end
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
|
2
|
+
|
|
3
|
+
# typed: true
|
|
4
|
+
# frozen_string_literal: true
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
module OpenApiSDK
|
|
8
|
+
module Operations
|
|
9
|
+
|
|
10
|
+
# A customer was tracked.
|
|
11
|
+
class TrackCustomerResponseBody < ::OpenApiSDK::Utils::FieldAugmented
|
|
12
|
+
extend T::Sig
|
|
13
|
+
|
|
14
|
+
|
|
15
|
+
field :customer_avatar, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('customerAvatar') } }
|
|
16
|
+
|
|
17
|
+
field :customer_email, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('customerEmail') } }
|
|
18
|
+
|
|
19
|
+
field :customer_id, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('customerId') } }
|
|
20
|
+
|
|
21
|
+
field :customer_name, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('customerName') } }
|
|
22
|
+
|
|
23
|
+
|
|
24
|
+
sig { params(customer_avatar: ::String, customer_email: ::String, customer_id: ::String, customer_name: ::String).void }
|
|
25
|
+
def initialize(customer_avatar: nil, customer_email: nil, customer_id: nil, customer_name: nil)
|
|
26
|
+
@customer_avatar = customer_avatar
|
|
27
|
+
@customer_email = customer_email
|
|
28
|
+
@customer_id = customer_id
|
|
29
|
+
@customer_name = customer_name
|
|
30
|
+
end
|
|
31
|
+
end
|
|
32
|
+
end
|
|
33
|
+
end
|
|
@@ -0,0 +1,42 @@
|
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
|
2
|
+
|
|
3
|
+
# typed: true
|
|
4
|
+
# frozen_string_literal: true
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
module OpenApiSDK
|
|
8
|
+
module Operations
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
class TrackLeadRequestBody < ::OpenApiSDK::Utils::FieldAugmented
|
|
12
|
+
extend T::Sig
|
|
13
|
+
|
|
14
|
+
# The ID of the click in th Dub. You can read this value from `dclid` cookie.
|
|
15
|
+
field :click_id, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('clickId') } }
|
|
16
|
+
# This is the unique identifier for the customer in the client's app. This is used to track the customer's journey.
|
|
17
|
+
field :customer_id, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('customerId') } }
|
|
18
|
+
# The name of the event to track.
|
|
19
|
+
field :event_name, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('eventName') } }
|
|
20
|
+
# Avatar of the customer in the client's app.
|
|
21
|
+
field :customer_avatar, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('customerAvatar') } }
|
|
22
|
+
# Email of the customer in the client's app.
|
|
23
|
+
field :customer_email, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('customerEmail') } }
|
|
24
|
+
# Name of the customer in the client's app.
|
|
25
|
+
field :customer_name, T.nilable(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('customerName') } }
|
|
26
|
+
# Additional metadata to be stored with the lead event
|
|
27
|
+
field :metadata, T.nilable(T::Hash[Symbol, ::Object]), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('metadata') } }
|
|
28
|
+
|
|
29
|
+
|
|
30
|
+
sig { params(click_id: ::String, customer_id: ::String, event_name: ::String, customer_avatar: T.nilable(::String), customer_email: T.nilable(::String), customer_name: T.nilable(::String), metadata: T.nilable(T::Hash[Symbol, ::Object])).void }
|
|
31
|
+
def initialize(click_id: nil, customer_id: nil, event_name: nil, customer_avatar: nil, customer_email: nil, customer_name: nil, metadata: nil)
|
|
32
|
+
@click_id = click_id
|
|
33
|
+
@customer_id = customer_id
|
|
34
|
+
@event_name = event_name
|
|
35
|
+
@customer_avatar = customer_avatar
|
|
36
|
+
@customer_email = customer_email
|
|
37
|
+
@customer_name = customer_name
|
|
38
|
+
@metadata = metadata
|
|
39
|
+
end
|
|
40
|
+
end
|
|
41
|
+
end
|
|
42
|
+
end
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasyapi.dev). DO NOT EDIT.
|
|
2
|
+
|
|
3
|
+
# typed: true
|
|
4
|
+
# frozen_string_literal: true
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
module OpenApiSDK
|
|
8
|
+
module Operations
|
|
9
|
+
|
|
10
|
+
|
|
11
|
+
class TrackLeadResponse < ::OpenApiSDK::Utils::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
|
+
# A lead was tracked.
|
|
33
|
+
field :object, T.nilable(::OpenApiSDK::Operations::TrackLeadResponseBody)
|
|
34
|
+
# The user has sent too many requests in a given amount of time ("rate limiting")
|
|
35
|
+
field :rate_limit_exceeded, T.nilable(::OpenApiSDK::Shared::RateLimitExceeded)
|
|
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), object: T.nilable(::OpenApiSDK::Operations::TrackLeadResponseBody), rate_limit_exceeded: T.nilable(::OpenApiSDK::Shared::RateLimitExceeded), 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, object: nil, rate_limit_exceeded: 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
|
+
@object = object
|
|
54
|
+
@rate_limit_exceeded = rate_limit_exceeded
|
|
55
|
+
@unauthorized = unauthorized
|
|
56
|
+
@unprocessable_entity = unprocessable_entity
|
|
57
|
+
end
|
|
58
|
+
end
|
|
59
|
+
end
|
|
60
|
+
end
|