dub 0.12.7 → 0.12.9
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/lib/open_api_sdk/analytics.rb +4 -4
- data/lib/open_api_sdk/bounties.rb +12 -12
- data/lib/open_api_sdk/commissions.rb +251 -12
- data/lib/open_api_sdk/customers.rb +16 -16
- data/lib/open_api_sdk/domains.rb +24 -24
- data/lib/open_api_sdk/embed_tokens.rb +4 -4
- data/lib/open_api_sdk/events.rb +4 -4
- data/lib/open_api_sdk/folders.rb +16 -16
- data/lib/open_api_sdk/links.rb +40 -43
- data/lib/open_api_sdk/models/operations/accesslevel.rb +1 -1
- data/lib/open_api_sdk/models/operations/{approvepartner_requestbody.rb → approvepartnerapplication_requestbody.rb} +1 -1
- data/lib/open_api_sdk/models/operations/{approvepartner_requestbody.rbi → approvepartnerapplication_requestbody.rbi} +2 -2
- data/lib/open_api_sdk/models/operations/{approvepartner_responsebody.rb → approvepartnerapplication_responsebody.rb} +1 -1
- data/lib/open_api_sdk/models/operations/{approvepartner_responsebody.rbi → approvepartnerapplication_responsebody.rbi} +2 -2
- data/lib/open_api_sdk/models/operations/checkdomainstatus_responsebody.rb +12 -6
- data/lib/open_api_sdk/models/operations/checkdomainstatus_responsebody.rbi +4 -2
- data/lib/open_api_sdk/models/operations/createcommission_requestbody.rb +27 -0
- data/lib/open_api_sdk/models/operations/createcommission_requestbody.rbi +11 -0
- data/lib/open_api_sdk/models/operations/{gettags_queryparam_sortorder.rb → createcommission_requestbody_commissions_type.rb} +3 -4
- data/lib/open_api_sdk/models/operations/createcommission_requestbody_commissions_type.rbi +11 -0
- data/lib/open_api_sdk/models/operations/{gettags_queryparam_sortby.rb → createcommission_requestbody_type.rb} +3 -4
- data/lib/open_api_sdk/models/operations/createcommission_requestbody_type.rbi +11 -0
- data/lib/open_api_sdk/models/operations/createcommission_responsebody.rb +36 -0
- data/lib/open_api_sdk/models/operations/createcommission_responsebody.rbi +15 -0
- data/lib/open_api_sdk/models/operations/createfolder_requestbody.rb +2 -2
- data/lib/open_api_sdk/models/operations/createpartner_defaultpayoutmethod.rb +1 -0
- data/lib/open_api_sdk/models/operations/createpartner_networkstatus.rb +22 -0
- data/lib/open_api_sdk/models/operations/createpartner_networkstatus.rbi +11 -0
- data/lib/open_api_sdk/models/operations/createpartner_responsebody.rb +28 -10
- data/lib/open_api_sdk/models/operations/createpartner_responsebody.rbi +12 -4
- data/lib/open_api_sdk/models/operations/createpartner_tags.rb +36 -0
- data/lib/open_api_sdk/models/operations/createpartner_tags.rbi +15 -0
- data/lib/open_api_sdk/models/operations/customer.rb +24 -16
- data/lib/open_api_sdk/models/operations/customer.rbi +8 -4
- data/lib/open_api_sdk/models/operations/defaultpayoutmethod.rb +1 -0
- data/lib/open_api_sdk/models/operations/getcustomer_responsebody.rb +6 -6
- data/lib/open_api_sdk/models/operations/getcustomer_responsebody.rbi +2 -2
- data/lib/open_api_sdk/models/operations/getcustomers_responsebody.rb +6 -6
- data/lib/open_api_sdk/models/operations/getcustomers_responsebody.rbi +2 -2
- data/lib/open_api_sdk/models/operations/getlinks_request.rb +2 -14
- data/lib/open_api_sdk/models/operations/getlinks_request.rbi +0 -6
- data/lib/open_api_sdk/models/operations/gettags_request.rb +4 -4
- data/lib/open_api_sdk/models/operations/listcommissions_customer.rb +6 -6
- data/lib/open_api_sdk/models/operations/listcommissions_customer.rbi +2 -2
- data/lib/open_api_sdk/models/operations/listcommissions_request.rb +9 -5
- data/lib/open_api_sdk/models/operations/listcommissions_request.rbi +2 -0
- data/lib/open_api_sdk/models/operations/listcommissions_type.rb +1 -0
- data/lib/open_api_sdk/models/operations/listevents_request.rb +8 -4
- data/lib/open_api_sdk/models/operations/listevents_request.rbi +2 -0
- data/lib/open_api_sdk/models/operations/listevents_responsebody_click.rb +6 -2
- data/lib/open_api_sdk/models/operations/listevents_responsebody_click.rbi +2 -0
- data/lib/open_api_sdk/models/operations/listevents_responsebody_customer.rb +6 -6
- data/lib/open_api_sdk/models/operations/listevents_responsebody_customer.rbi +2 -2
- data/lib/open_api_sdk/models/operations/listevents_responsebody_events_click.rb +6 -2
- data/lib/open_api_sdk/models/operations/listevents_responsebody_events_click.rbi +2 -0
- data/lib/open_api_sdk/models/operations/listpartners_responsebody.rb +28 -10
- data/lib/open_api_sdk/models/operations/listpartners_responsebody.rbi +12 -4
- data/lib/open_api_sdk/models/operations/listpayouts_defaultpayoutmethod.rb +1 -0
- data/lib/open_api_sdk/models/operations/listpayouts_request.rb +6 -2
- data/lib/open_api_sdk/models/operations/listpayouts_request.rbi +2 -0
- data/lib/open_api_sdk/models/operations/method.rb +1 -0
- data/lib/open_api_sdk/models/operations/networkstatus.rb +22 -0
- data/lib/open_api_sdk/models/operations/networkstatus.rbi +11 -0
- data/lib/open_api_sdk/models/operations/paymentprocessor.rb +2 -0
- data/lib/open_api_sdk/models/operations/prices.rb +36 -0
- data/lib/open_api_sdk/models/operations/prices.rbi +15 -0
- data/lib/open_api_sdk/models/operations/queryparam_groupby.rb +1 -0
- data/lib/open_api_sdk/models/operations/queryparam_sortby.rb +3 -2
- data/lib/open_api_sdk/models/operations/queryparam_sortorder.rb +1 -1
- data/lib/open_api_sdk/models/operations/reapplicationtimeframe.rb +20 -0
- data/lib/open_api_sdk/models/operations/reapplicationtimeframe.rbi +11 -0
- data/lib/open_api_sdk/models/operations/rejectpartnerapplication_requestbody.rb +52 -0
- data/lib/open_api_sdk/models/operations/rejectpartnerapplication_requestbody.rbi +23 -0
- data/lib/open_api_sdk/models/operations/{rejectpartner_responsebody.rb → rejectpartnerapplication_responsebody.rb} +1 -1
- data/lib/open_api_sdk/models/operations/{rejectpartner_responsebody.rbi → rejectpartnerapplication_responsebody.rbi} +2 -2
- data/lib/open_api_sdk/models/operations/requestbody_1.rb +48 -0
- data/lib/open_api_sdk/models/operations/requestbody_1.rbi +21 -0
- data/lib/open_api_sdk/models/operations/requestbody_2.rb +56 -0
- data/lib/open_api_sdk/models/operations/requestbody_2.rbi +25 -0
- data/lib/open_api_sdk/models/operations/requestbody_3.rb +68 -0
- data/lib/open_api_sdk/models/operations/requestbody_3.rbi +31 -0
- data/lib/open_api_sdk/models/operations/requestbody_customer.rb +52 -0
- data/lib/open_api_sdk/models/operations/requestbody_customer.rbi +23 -0
- data/lib/open_api_sdk/models/operations/requestbody_type.rb +18 -0
- data/lib/open_api_sdk/models/operations/requestbody_type.rbi +11 -0
- data/lib/open_api_sdk/models/operations/responsebody_click.rb +6 -2
- data/lib/open_api_sdk/models/operations/responsebody_click.rbi +2 -0
- data/lib/open_api_sdk/models/operations/responsebody_customer.rb +6 -6
- data/lib/open_api_sdk/models/operations/responsebody_customer.rbi +2 -2
- data/lib/open_api_sdk/models/operations/responsebody_paymentprocessor.rb +2 -0
- data/lib/open_api_sdk/models/operations/retrieveanalytics_request.rb +6 -2
- data/lib/open_api_sdk/models/operations/retrieveanalytics_request.rbi +2 -0
- data/lib/open_api_sdk/models/operations/{retrievelinks_request.rb → retrievepartnerlinks_request.rb} +1 -1
- data/lib/open_api_sdk/models/operations/{retrievelinks_request.rbi → retrievepartnerlinks_request.rbi} +2 -2
- data/lib/open_api_sdk/models/operations/{retrievelinks_responsebody.rb → retrievepartnerlinks_responsebody.rb} +1 -1
- data/lib/open_api_sdk/models/operations/{retrievelinks_responsebody.rbi → retrievepartnerlinks_responsebody.rbi} +2 -2
- data/lib/open_api_sdk/models/operations/sortby.rb +2 -5
- data/lib/open_api_sdk/models/operations/tags.rb +36 -0
- data/lib/open_api_sdk/models/operations/tags.rbi +15 -0
- data/lib/open_api_sdk/models/operations/tracklead_customer.rb +44 -0
- data/lib/open_api_sdk/models/operations/tracklead_customer.rbi +19 -0
- data/lib/open_api_sdk/models/operations/tracklead_responsebody.rb +2 -2
- data/lib/open_api_sdk/models/operations/type.rb +2 -1
- data/lib/open_api_sdk/models/operations/updatecommission_customer.rb +6 -6
- data/lib/open_api_sdk/models/operations/updatecommission_customer.rbi +2 -2
- data/lib/open_api_sdk/models/operations/updatecommission_type.rb +1 -0
- data/lib/open_api_sdk/models/operations/updatecustomer_responsebody.rb +6 -6
- data/lib/open_api_sdk/models/operations/updatecustomer_responsebody.rbi +2 -2
- data/lib/open_api_sdk/models/operations.rb +22 -9
- data/lib/open_api_sdk/models/shared/accesslevel.rb +1 -1
- data/lib/open_api_sdk/models/shared/click.rb +6 -2
- data/lib/open_api_sdk/models/shared/click.rbi +2 -0
- data/lib/open_api_sdk/models/shared/commissioncreatedevent_customer.rb +6 -6
- data/lib/open_api_sdk/models/shared/commissioncreatedevent_customer.rbi +2 -2
- data/lib/open_api_sdk/models/shared/commissioncreatedevent_type.rb +1 -0
- data/lib/open_api_sdk/models/shared/customer.rb +6 -6
- data/lib/open_api_sdk/models/shared/customer.rbi +2 -2
- data/lib/open_api_sdk/models/shared/defaultpayoutmethod.rb +1 -0
- data/lib/open_api_sdk/models/shared/folderschema.rb +2 -2
- data/lib/open_api_sdk/models/shared/leadcreatedevent_click.rb +6 -2
- data/lib/open_api_sdk/models/shared/leadcreatedevent_click.rbi +2 -0
- data/lib/open_api_sdk/models/shared/networkstatus.rb +22 -0
- data/lib/open_api_sdk/models/{operations/sort.rbi → shared/networkstatus.rbi} +2 -2
- data/lib/open_api_sdk/models/shared/partnerenrolledevent_data.rb +28 -10
- data/lib/open_api_sdk/models/shared/partnerenrolledevent_data.rbi +12 -4
- data/lib/open_api_sdk/models/shared/salecreatedevent_click.rb +6 -2
- data/lib/open_api_sdk/models/shared/salecreatedevent_click.rbi +2 -0
- data/lib/open_api_sdk/models/shared/salecreatedevent_customer.rb +6 -6
- data/lib/open_api_sdk/models/shared/salecreatedevent_customer.rbi +2 -2
- data/lib/open_api_sdk/models/shared/tags.rb +36 -0
- data/lib/open_api_sdk/models/shared/tags.rbi +15 -0
- data/lib/open_api_sdk/models/shared.rb +2 -0
- data/lib/open_api_sdk/partner_applications.rb +18 -18
- data/lib/open_api_sdk/partners.rb +36 -36
- data/lib/open_api_sdk/payouts.rb +4 -4
- data/lib/open_api_sdk/qr_codes.rb +4 -4
- data/lib/open_api_sdk/sdkconfiguration.rb +3 -3
- data/lib/open_api_sdk/tags.rb +16 -16
- data/lib/open_api_sdk/track.rb +8 -8
- data/lib/open_api_sdk/utils/retries.rb +4 -1
- metadata +52 -22
- data/lib/open_api_sdk/models/operations/gettags_queryparam_sortby.rbi +0 -11
- data/lib/open_api_sdk/models/operations/gettags_queryparam_sortorder.rbi +0 -11
- data/lib/open_api_sdk/models/operations/rejectpartner_requestbody.rb +0 -44
- data/lib/open_api_sdk/models/operations/rejectpartner_requestbody.rbi +0 -19
- data/lib/open_api_sdk/models/operations/sort.rb +0 -23
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
2
|
+
|
|
3
|
+
# typed: true
|
|
4
|
+
# frozen_string_literal: true
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
module OpenApiSDK
|
|
8
|
+
module Models
|
|
9
|
+
module Operations
|
|
10
|
+
# Price details for the domain. Will be null if the domain is not available.
|
|
11
|
+
class Prices
|
|
12
|
+
extend T::Sig
|
|
13
|
+
include Crystalline::MetadataFields
|
|
14
|
+
|
|
15
|
+
# The domain's registration price in USD cents.
|
|
16
|
+
field :registration, Crystalline::Nilable.new(::Float), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('registration'), required: true } }
|
|
17
|
+
# The domain's renewal price in USD cents.
|
|
18
|
+
field :renewal, Crystalline::Nilable.new(::Float), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('renewal'), required: true } }
|
|
19
|
+
|
|
20
|
+
sig { params(registration: T.nilable(::Float), renewal: T.nilable(::Float)).void }
|
|
21
|
+
def initialize(registration: nil, renewal: nil)
|
|
22
|
+
@registration = registration
|
|
23
|
+
@renewal = renewal
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
27
|
+
def ==(other)
|
|
28
|
+
return false unless other.is_a? self.class
|
|
29
|
+
return false unless @registration == other.registration
|
|
30
|
+
return false unless @renewal == other.renewal
|
|
31
|
+
true
|
|
32
|
+
end
|
|
33
|
+
end
|
|
34
|
+
end
|
|
35
|
+
end
|
|
36
|
+
end
|
|
@@ -0,0 +1,15 @@
|
|
|
1
|
+
# typed: true
|
|
2
|
+
# frozen_string_literal: true
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class OpenApiSDK::Models::Operations::Prices
|
|
6
|
+
extend ::Crystalline::MetadataFields::ClassMethods
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class OpenApiSDK::Models::Operations::Prices
|
|
11
|
+
def registration(); end
|
|
12
|
+
def registration=(str_); end
|
|
13
|
+
def renewal(); end
|
|
14
|
+
def renewal=(str_); end
|
|
15
|
+
end
|
|
@@ -31,6 +31,7 @@ module OpenApiSDK
|
|
|
31
31
|
TOP_BASE_URLS = new('top_base_urls')
|
|
32
32
|
TOP_PARTNERS = new('top_partners')
|
|
33
33
|
TOP_GROUPS = new('top_groups')
|
|
34
|
+
TOP_PARTNER_TAGS = new('top_partner_tags')
|
|
34
35
|
UTM_SOURCES = new('utm_sources')
|
|
35
36
|
UTM_MEDIUMS = new('utm_mediums')
|
|
36
37
|
UTM_CAMPAIGNS = new('utm_campaigns')
|
|
@@ -7,10 +7,11 @@
|
|
|
7
7
|
module OpenApiSDK
|
|
8
8
|
module Models
|
|
9
9
|
module Operations
|
|
10
|
-
# QueryParamSortBy - The field to sort the
|
|
10
|
+
# QueryParamSortBy - The field to sort the tags by.
|
|
11
11
|
class QueryParamSortBy < T::Enum
|
|
12
12
|
enums do
|
|
13
|
-
|
|
13
|
+
NAME = new('name')
|
|
14
|
+
CREATED_AT = new('createdAt')
|
|
14
15
|
end
|
|
15
16
|
end
|
|
16
17
|
end
|
|
@@ -0,0 +1,20 @@
|
|
|
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 Models
|
|
9
|
+
module Operations
|
|
10
|
+
# ReapplicationTimeframe - The mode for reapplying for the program. `instant`: The partner can reapply immediately. `standard`: The partner can reapply after 30 days. `never`: The partner can never reapply for the program. Defaults to `standard` if undefined.
|
|
11
|
+
class ReapplicationTimeframe < T::Enum
|
|
12
|
+
enums do
|
|
13
|
+
INSTANT = new('instant')
|
|
14
|
+
STANDARD = new('standard')
|
|
15
|
+
NEVER = new('never')
|
|
16
|
+
end
|
|
17
|
+
end
|
|
18
|
+
end
|
|
19
|
+
end
|
|
20
|
+
end
|
|
@@ -0,0 +1,52 @@
|
|
|
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 Models
|
|
9
|
+
module Operations
|
|
10
|
+
|
|
11
|
+
class RejectPartnerApplicationRequestBody
|
|
12
|
+
extend T::Sig
|
|
13
|
+
include Crystalline::MetadataFields
|
|
14
|
+
|
|
15
|
+
# The ID of the partner to reject.
|
|
16
|
+
field :partner_id, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('partnerId'), required: true } }
|
|
17
|
+
# The reason for rejecting the partner application. This will be shared with the partner via email.
|
|
18
|
+
field :rejection_reason, Crystalline::Nilable.new(Models::Operations::RejectionReason), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('rejectionReason'), 'decoder': ::OpenApiSDK::Utils.enum_from_string(Models::Operations::RejectionReason, true) } }
|
|
19
|
+
# Additional details about the rejection. This will be shared with the partner via email.
|
|
20
|
+
field :rejection_note, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('rejectionNote') } }
|
|
21
|
+
# Whether to flag the partner for fraud review by the Dub team. Cannot be combined with `reapplicationTimeframe: instant`.
|
|
22
|
+
field :flag_for_fraud, Crystalline::Nilable.new(Crystalline::Boolean.new), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('flagForFraud') } }
|
|
23
|
+
# The reason for flagging the partner for fraud. Required when flagForFraud is true.
|
|
24
|
+
field :flag_for_fraud_reason, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('flagForFraudReason') } }
|
|
25
|
+
# The mode for reapplying for the program. `instant`: The partner can reapply immediately. `standard`: The partner can reapply after 30 days. `never`: The partner can never reapply for the program. Defaults to `standard` if undefined.
|
|
26
|
+
field :reapplication_timeframe, Crystalline::Nilable.new(Models::Operations::ReapplicationTimeframe), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('reapplicationTimeframe'), 'decoder': ::OpenApiSDK::Utils.enum_from_string(Models::Operations::ReapplicationTimeframe, true) } }
|
|
27
|
+
|
|
28
|
+
sig { params(partner_id: ::String, rejection_reason: T.nilable(Models::Operations::RejectionReason), rejection_note: T.nilable(::String), flag_for_fraud: T.nilable(T::Boolean), flag_for_fraud_reason: T.nilable(::String), reapplication_timeframe: T.nilable(Models::Operations::ReapplicationTimeframe)).void }
|
|
29
|
+
def initialize(partner_id:, rejection_reason: nil, rejection_note: nil, flag_for_fraud: nil, flag_for_fraud_reason: nil, reapplication_timeframe: Models::Operations::ReapplicationTimeframe::STANDARD)
|
|
30
|
+
@partner_id = partner_id
|
|
31
|
+
@rejection_reason = rejection_reason
|
|
32
|
+
@rejection_note = rejection_note
|
|
33
|
+
@flag_for_fraud = flag_for_fraud
|
|
34
|
+
@flag_for_fraud_reason = flag_for_fraud_reason
|
|
35
|
+
@reapplication_timeframe = reapplication_timeframe
|
|
36
|
+
end
|
|
37
|
+
|
|
38
|
+
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
39
|
+
def ==(other)
|
|
40
|
+
return false unless other.is_a? self.class
|
|
41
|
+
return false unless @partner_id == other.partner_id
|
|
42
|
+
return false unless @rejection_reason == other.rejection_reason
|
|
43
|
+
return false unless @rejection_note == other.rejection_note
|
|
44
|
+
return false unless @flag_for_fraud == other.flag_for_fraud
|
|
45
|
+
return false unless @flag_for_fraud_reason == other.flag_for_fraud_reason
|
|
46
|
+
return false unless @reapplication_timeframe == other.reapplication_timeframe
|
|
47
|
+
true
|
|
48
|
+
end
|
|
49
|
+
end
|
|
50
|
+
end
|
|
51
|
+
end
|
|
52
|
+
end
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
# typed: true
|
|
2
|
+
# frozen_string_literal: true
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class OpenApiSDK::Models::Operations::RejectPartnerApplicationRequestBody
|
|
6
|
+
extend ::Crystalline::MetadataFields::ClassMethods
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class OpenApiSDK::Models::Operations::RejectPartnerApplicationRequestBody
|
|
11
|
+
def partner_id(); end
|
|
12
|
+
def partner_id=(str_); end
|
|
13
|
+
def rejection_reason(); end
|
|
14
|
+
def rejection_reason=(str_); end
|
|
15
|
+
def rejection_note(); end
|
|
16
|
+
def rejection_note=(str_); end
|
|
17
|
+
def flag_for_fraud(); end
|
|
18
|
+
def flag_for_fraud=(str_); end
|
|
19
|
+
def flag_for_fraud_reason(); end
|
|
20
|
+
def flag_for_fraud_reason=(str_); end
|
|
21
|
+
def reapplication_timeframe(); end
|
|
22
|
+
def reapplication_timeframe=(str_); end
|
|
23
|
+
end
|
|
@@ -2,12 +2,12 @@
|
|
|
2
2
|
# frozen_string_literal: true
|
|
3
3
|
|
|
4
4
|
|
|
5
|
-
class OpenApiSDK::Models::Operations::
|
|
5
|
+
class OpenApiSDK::Models::Operations::RejectPartnerApplicationResponseBody
|
|
6
6
|
extend ::Crystalline::MetadataFields::ClassMethods
|
|
7
7
|
end
|
|
8
8
|
|
|
9
9
|
|
|
10
|
-
class OpenApiSDK::Models::Operations::
|
|
10
|
+
class OpenApiSDK::Models::Operations::RejectPartnerApplicationResponseBody
|
|
11
11
|
def partner_id(); end
|
|
12
12
|
def partner_id=(str_); end
|
|
13
13
|
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 Models
|
|
9
|
+
module Operations
|
|
10
|
+
|
|
11
|
+
class RequestBody1
|
|
12
|
+
extend T::Sig
|
|
13
|
+
include Crystalline::MetadataFields
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
field :type, Models::Operations::RequestBodyType, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('type'), required: true, 'decoder': ::OpenApiSDK::Utils.enum_from_string(Models::Operations::RequestBodyType, false) } }
|
|
17
|
+
# The ID of the partner to create the commission for.
|
|
18
|
+
field :partner_id, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('partnerId'), required: true } }
|
|
19
|
+
# The commission amount in cents.
|
|
20
|
+
field :amount, ::Float, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('amount'), required: true } }
|
|
21
|
+
# If not provided, the current date will be used.
|
|
22
|
+
field :date, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('date') } }
|
|
23
|
+
# The description of the commission.
|
|
24
|
+
field :description, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('description') } }
|
|
25
|
+
|
|
26
|
+
sig { params(type: Models::Operations::RequestBodyType, partner_id: ::String, amount: ::Float, date: T.nilable(::String), description: T.nilable(::String)).void }
|
|
27
|
+
def initialize(type:, partner_id:, amount:, date: nil, description: nil)
|
|
28
|
+
@type = type
|
|
29
|
+
@partner_id = partner_id
|
|
30
|
+
@amount = amount
|
|
31
|
+
@date = date
|
|
32
|
+
@description = description
|
|
33
|
+
end
|
|
34
|
+
|
|
35
|
+
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
36
|
+
def ==(other)
|
|
37
|
+
return false unless other.is_a? self.class
|
|
38
|
+
return false unless @type == other.type
|
|
39
|
+
return false unless @partner_id == other.partner_id
|
|
40
|
+
return false unless @amount == other.amount
|
|
41
|
+
return false unless @date == other.date
|
|
42
|
+
return false unless @description == other.description
|
|
43
|
+
true
|
|
44
|
+
end
|
|
45
|
+
end
|
|
46
|
+
end
|
|
47
|
+
end
|
|
48
|
+
end
|
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
# typed: true
|
|
2
|
+
# frozen_string_literal: true
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class OpenApiSDK::Models::Operations::RequestBody1
|
|
6
|
+
extend ::Crystalline::MetadataFields::ClassMethods
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class OpenApiSDK::Models::Operations::RequestBody1
|
|
11
|
+
def type(); end
|
|
12
|
+
def type=(str_); end
|
|
13
|
+
def partner_id(); end
|
|
14
|
+
def partner_id=(str_); end
|
|
15
|
+
def amount(); end
|
|
16
|
+
def amount=(str_); end
|
|
17
|
+
def date(); end
|
|
18
|
+
def date=(str_); end
|
|
19
|
+
def description(); end
|
|
20
|
+
def description=(str_); end
|
|
21
|
+
end
|
|
@@ -0,0 +1,56 @@
|
|
|
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 Models
|
|
9
|
+
module Operations
|
|
10
|
+
|
|
11
|
+
class RequestBody2
|
|
12
|
+
extend T::Sig
|
|
13
|
+
include Crystalline::MetadataFields
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
field :type, Models::Operations::CreateCommissionRequestBodyType, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('type'), required: true, 'decoder': ::OpenApiSDK::Utils.enum_from_string(Models::Operations::CreateCommissionRequestBodyType, false) } }
|
|
17
|
+
# The ID of the partner to create the commission for.
|
|
18
|
+
field :partner_id, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('partnerId'), required: true } }
|
|
19
|
+
# The customer ID to associate the commission with. Useful if the customer was already created in a prior operation and you want to associate the commission with it.
|
|
20
|
+
field :customer_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('customerId') } }
|
|
21
|
+
# The full customer object to associate the commission with. Useful for creating the customer on demand.
|
|
22
|
+
field :customer, Crystalline::Nilable.new(Models::Operations::Customer), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('customer') } }
|
|
23
|
+
# The partner link ID to associate the commission with. If not provided, default to the link with the most revenue.
|
|
24
|
+
field :link_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('linkId') } }
|
|
25
|
+
# The date and time of the lead event. If not provided, defaults to the current date and time.
|
|
26
|
+
field :lead_event_date, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('leadEventDate') } }
|
|
27
|
+
# The name of the lead event. If not provided, defaults to 'Sign up'.
|
|
28
|
+
field :lead_event_name, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('leadEventName') } }
|
|
29
|
+
|
|
30
|
+
sig { params(type: Models::Operations::CreateCommissionRequestBodyType, partner_id: ::String, customer_id: T.nilable(::String), customer: T.nilable(Models::Operations::Customer), link_id: T.nilable(::String), lead_event_date: T.nilable(::String), lead_event_name: T.nilable(::String)).void }
|
|
31
|
+
def initialize(type:, partner_id:, customer_id: nil, customer: nil, link_id: nil, lead_event_date: nil, lead_event_name: 'Sign up')
|
|
32
|
+
@type = type
|
|
33
|
+
@partner_id = partner_id
|
|
34
|
+
@customer_id = customer_id
|
|
35
|
+
@customer = customer
|
|
36
|
+
@link_id = link_id
|
|
37
|
+
@lead_event_date = lead_event_date
|
|
38
|
+
@lead_event_name = lead_event_name
|
|
39
|
+
end
|
|
40
|
+
|
|
41
|
+
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
42
|
+
def ==(other)
|
|
43
|
+
return false unless other.is_a? self.class
|
|
44
|
+
return false unless @type == other.type
|
|
45
|
+
return false unless @partner_id == other.partner_id
|
|
46
|
+
return false unless @customer_id == other.customer_id
|
|
47
|
+
return false unless @customer == other.customer
|
|
48
|
+
return false unless @link_id == other.link_id
|
|
49
|
+
return false unless @lead_event_date == other.lead_event_date
|
|
50
|
+
return false unless @lead_event_name == other.lead_event_name
|
|
51
|
+
true
|
|
52
|
+
end
|
|
53
|
+
end
|
|
54
|
+
end
|
|
55
|
+
end
|
|
56
|
+
end
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
# typed: true
|
|
2
|
+
# frozen_string_literal: true
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class OpenApiSDK::Models::Operations::RequestBody2
|
|
6
|
+
extend ::Crystalline::MetadataFields::ClassMethods
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class OpenApiSDK::Models::Operations::RequestBody2
|
|
11
|
+
def type(); end
|
|
12
|
+
def type=(str_); end
|
|
13
|
+
def partner_id(); end
|
|
14
|
+
def partner_id=(str_); end
|
|
15
|
+
def customer_id(); end
|
|
16
|
+
def customer_id=(str_); end
|
|
17
|
+
def customer(); end
|
|
18
|
+
def customer=(str_); end
|
|
19
|
+
def link_id(); end
|
|
20
|
+
def link_id=(str_); end
|
|
21
|
+
def lead_event_date(); end
|
|
22
|
+
def lead_event_date=(str_); end
|
|
23
|
+
def lead_event_name(); end
|
|
24
|
+
def lead_event_name=(str_); end
|
|
25
|
+
end
|
|
@@ -0,0 +1,68 @@
|
|
|
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 Models
|
|
9
|
+
module Operations
|
|
10
|
+
|
|
11
|
+
class RequestBody3
|
|
12
|
+
extend T::Sig
|
|
13
|
+
include Crystalline::MetadataFields
|
|
14
|
+
|
|
15
|
+
|
|
16
|
+
field :type, Models::Operations::CreateCommissionRequestBodyCommissionsType, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('type'), required: true, 'decoder': ::OpenApiSDK::Utils.enum_from_string(Models::Operations::CreateCommissionRequestBodyCommissionsType, false) } }
|
|
17
|
+
# The ID of the partner to create the commission for.
|
|
18
|
+
field :partner_id, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('partnerId'), required: true } }
|
|
19
|
+
# The customer ID to associate the commission with. Useful if the customer was already created in a prior operation and you want to associate the commission with it.
|
|
20
|
+
field :customer_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('customerId') } }
|
|
21
|
+
# The full customer object to associate the commission with. Useful for creating the customer on demand.
|
|
22
|
+
field :customer, Crystalline::Nilable.new(Models::Operations::RequestBodyCustomer), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('customer') } }
|
|
23
|
+
# The partner link ID to associate the commission with. If not provided, default to the link with the most revenue.
|
|
24
|
+
field :link_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('linkId') } }
|
|
25
|
+
# Required when `importStripeInvoices` is `false`. The sale amount in cents for the manual sale event. Ignored when importing from Stripe.
|
|
26
|
+
field :sale_amount, Crystalline::Nilable.new(::Float), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('saleAmount') } }
|
|
27
|
+
# Only used when `importStripeInvoices` is `false`. The date of the manual sale event. Defaults to the current date and time if not provided.
|
|
28
|
+
field :sale_event_date, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('saleEventDate') } }
|
|
29
|
+
# Only used when `importStripeInvoices` is `false`. An optional invoice ID to attach to the generated sale event and commission entry for deduplication.
|
|
30
|
+
field :invoice_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('invoiceId') } }
|
|
31
|
+
# Only used when `importStripeInvoices` is `false`. An optional product ID stored on the sale event metadata – will also impact commission earnings calculation (if a `Sale` `Product ID` modifier is set).
|
|
32
|
+
field :product_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('productId') } }
|
|
33
|
+
# When `true`, import all unimported paid Stripe invoices for the customer and create a commission for each. When `false`, create a single manual sale event using `saleAmount`.
|
|
34
|
+
field :import_stripe_invoices, Crystalline::Nilable.new(Crystalline::Boolean.new), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('importStripeInvoices') } }
|
|
35
|
+
|
|
36
|
+
sig { params(type: Models::Operations::CreateCommissionRequestBodyCommissionsType, partner_id: ::String, customer_id: T.nilable(::String), customer: T.nilable(Models::Operations::RequestBodyCustomer), link_id: T.nilable(::String), sale_amount: T.nilable(::Float), sale_event_date: T.nilable(::String), invoice_id: T.nilable(::String), product_id: T.nilable(::String), import_stripe_invoices: T.nilable(T::Boolean)).void }
|
|
37
|
+
def initialize(type:, partner_id:, customer_id: nil, customer: nil, link_id: nil, sale_amount: nil, sale_event_date: nil, invoice_id: nil, product_id: nil, import_stripe_invoices: false)
|
|
38
|
+
@type = type
|
|
39
|
+
@partner_id = partner_id
|
|
40
|
+
@customer_id = customer_id
|
|
41
|
+
@customer = customer
|
|
42
|
+
@link_id = link_id
|
|
43
|
+
@sale_amount = sale_amount
|
|
44
|
+
@sale_event_date = sale_event_date
|
|
45
|
+
@invoice_id = invoice_id
|
|
46
|
+
@product_id = product_id
|
|
47
|
+
@import_stripe_invoices = import_stripe_invoices
|
|
48
|
+
end
|
|
49
|
+
|
|
50
|
+
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
51
|
+
def ==(other)
|
|
52
|
+
return false unless other.is_a? self.class
|
|
53
|
+
return false unless @type == other.type
|
|
54
|
+
return false unless @partner_id == other.partner_id
|
|
55
|
+
return false unless @customer_id == other.customer_id
|
|
56
|
+
return false unless @customer == other.customer
|
|
57
|
+
return false unless @link_id == other.link_id
|
|
58
|
+
return false unless @sale_amount == other.sale_amount
|
|
59
|
+
return false unless @sale_event_date == other.sale_event_date
|
|
60
|
+
return false unless @invoice_id == other.invoice_id
|
|
61
|
+
return false unless @product_id == other.product_id
|
|
62
|
+
return false unless @import_stripe_invoices == other.import_stripe_invoices
|
|
63
|
+
true
|
|
64
|
+
end
|
|
65
|
+
end
|
|
66
|
+
end
|
|
67
|
+
end
|
|
68
|
+
end
|
|
@@ -0,0 +1,31 @@
|
|
|
1
|
+
# typed: true
|
|
2
|
+
# frozen_string_literal: true
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class OpenApiSDK::Models::Operations::RequestBody3
|
|
6
|
+
extend ::Crystalline::MetadataFields::ClassMethods
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class OpenApiSDK::Models::Operations::RequestBody3
|
|
11
|
+
def type(); end
|
|
12
|
+
def type=(str_); end
|
|
13
|
+
def partner_id(); end
|
|
14
|
+
def partner_id=(str_); end
|
|
15
|
+
def customer_id(); end
|
|
16
|
+
def customer_id=(str_); end
|
|
17
|
+
def customer(); end
|
|
18
|
+
def customer=(str_); end
|
|
19
|
+
def link_id(); end
|
|
20
|
+
def link_id=(str_); end
|
|
21
|
+
def sale_amount(); end
|
|
22
|
+
def sale_amount=(str_); end
|
|
23
|
+
def sale_event_date(); end
|
|
24
|
+
def sale_event_date=(str_); end
|
|
25
|
+
def invoice_id(); end
|
|
26
|
+
def invoice_id=(str_); end
|
|
27
|
+
def product_id(); end
|
|
28
|
+
def product_id=(str_); end
|
|
29
|
+
def import_stripe_invoices(); end
|
|
30
|
+
def import_stripe_invoices=(str_); end
|
|
31
|
+
end
|
|
@@ -0,0 +1,52 @@
|
|
|
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 Models
|
|
9
|
+
module Operations
|
|
10
|
+
# The full customer object to associate the commission with. Useful for creating the customer on demand.
|
|
11
|
+
class RequestBodyCustomer
|
|
12
|
+
extend T::Sig
|
|
13
|
+
include Crystalline::MetadataFields
|
|
14
|
+
|
|
15
|
+
# The customer's unique identifier your database. This is useful for associating subsequent conversion events from Dub's API to your internal systems.
|
|
16
|
+
field :external_id, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('externalId'), required: true } }
|
|
17
|
+
# The customer's country in ISO 3166-1 alpha-2 format. Updating this field will only affect the customer's country in Dub's system (and has no effect on existing conversion events).
|
|
18
|
+
field :country, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('country'), required: true } }
|
|
19
|
+
# The customer's email address.
|
|
20
|
+
field :email, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('email') } }
|
|
21
|
+
# The customer's name. If not provided, the email address will be used, and if email is not provided, a random name will be generated.
|
|
22
|
+
field :name, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('name') } }
|
|
23
|
+
# The customer's avatar URL. If not provided, a random avatar will be generated.
|
|
24
|
+
field :avatar, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('avatar') } }
|
|
25
|
+
# The customer's Stripe customer ID. This is useful for attributing recurring sale events to the partner who referred the customer.
|
|
26
|
+
field :stripe_customer_id, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('stripeCustomerId') } }
|
|
27
|
+
|
|
28
|
+
sig { params(external_id: ::String, country: ::String, email: T.nilable(::String), name: T.nilable(::String), avatar: T.nilable(::String), stripe_customer_id: T.nilable(::String)).void }
|
|
29
|
+
def initialize(external_id:, country:, email: nil, name: nil, avatar: nil, stripe_customer_id: nil)
|
|
30
|
+
@external_id = external_id
|
|
31
|
+
@country = country
|
|
32
|
+
@email = email
|
|
33
|
+
@name = name
|
|
34
|
+
@avatar = avatar
|
|
35
|
+
@stripe_customer_id = stripe_customer_id
|
|
36
|
+
end
|
|
37
|
+
|
|
38
|
+
sig { params(other: T.untyped).returns(T::Boolean) }
|
|
39
|
+
def ==(other)
|
|
40
|
+
return false unless other.is_a? self.class
|
|
41
|
+
return false unless @external_id == other.external_id
|
|
42
|
+
return false unless @country == other.country
|
|
43
|
+
return false unless @email == other.email
|
|
44
|
+
return false unless @name == other.name
|
|
45
|
+
return false unless @avatar == other.avatar
|
|
46
|
+
return false unless @stripe_customer_id == other.stripe_customer_id
|
|
47
|
+
true
|
|
48
|
+
end
|
|
49
|
+
end
|
|
50
|
+
end
|
|
51
|
+
end
|
|
52
|
+
end
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
# typed: true
|
|
2
|
+
# frozen_string_literal: true
|
|
3
|
+
|
|
4
|
+
|
|
5
|
+
class OpenApiSDK::Models::Operations::RequestBodyCustomer
|
|
6
|
+
extend ::Crystalline::MetadataFields::ClassMethods
|
|
7
|
+
end
|
|
8
|
+
|
|
9
|
+
|
|
10
|
+
class OpenApiSDK::Models::Operations::RequestBodyCustomer
|
|
11
|
+
def external_id(); end
|
|
12
|
+
def external_id=(str_); end
|
|
13
|
+
def country(); end
|
|
14
|
+
def country=(str_); end
|
|
15
|
+
def email(); end
|
|
16
|
+
def email=(str_); end
|
|
17
|
+
def name(); end
|
|
18
|
+
def name=(str_); end
|
|
19
|
+
def avatar(); end
|
|
20
|
+
def avatar=(str_); end
|
|
21
|
+
def stripe_customer_id(); end
|
|
22
|
+
def stripe_customer_id=(str_); end
|
|
23
|
+
end
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
# Code generated by Speakeasy (https://speakeasy.com). DO NOT EDIT.
|
|
2
|
+
|
|
3
|
+
# typed: true
|
|
4
|
+
# frozen_string_literal: true
|
|
5
|
+
|
|
6
|
+
|
|
7
|
+
module OpenApiSDK
|
|
8
|
+
module Models
|
|
9
|
+
module Operations
|
|
10
|
+
|
|
11
|
+
class RequestBodyType < T::Enum
|
|
12
|
+
enums do
|
|
13
|
+
CUSTOM = new('custom')
|
|
14
|
+
end
|
|
15
|
+
end
|
|
16
|
+
end
|
|
17
|
+
end
|
|
18
|
+
end
|
|
@@ -41,10 +41,12 @@ module OpenApiSDK
|
|
|
41
41
|
|
|
42
42
|
field :ip, ::String, { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('ip'), required: true } }
|
|
43
43
|
|
|
44
|
+
field :ua, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('ua') } }
|
|
45
|
+
|
|
44
46
|
field :trigger, Crystalline::Nilable.new(::String), { 'format_json': { 'letter_case': ::OpenApiSDK::Utils.field_name('trigger') } }
|
|
45
47
|
|
|
46
|
-
sig { params(id: ::String, timestamp: ::String, url: ::String, country: ::String, city: ::String, region: ::String, continent: ::String, device: ::String, browser: ::String, os: ::String, referer: ::String, referer_url: ::String, qr: T::Boolean, ip: ::String, trigger: T.nilable(::String)).void }
|
|
47
|
-
def initialize(id:, timestamp:, url:, country:, city:, region:, continent:, device:, browser:, os:, referer:, referer_url:, qr:, ip:, trigger: nil)
|
|
48
|
+
sig { params(id: ::String, timestamp: ::String, url: ::String, country: ::String, city: ::String, region: ::String, continent: ::String, device: ::String, browser: ::String, os: ::String, referer: ::String, referer_url: ::String, qr: T::Boolean, ip: ::String, ua: T.nilable(::String), trigger: T.nilable(::String)).void }
|
|
49
|
+
def initialize(id:, timestamp:, url:, country:, city:, region:, continent:, device:, browser:, os:, referer:, referer_url:, qr:, ip:, ua: nil, trigger: nil)
|
|
48
50
|
@id = id
|
|
49
51
|
@timestamp = timestamp
|
|
50
52
|
@url = url
|
|
@@ -59,6 +61,7 @@ module OpenApiSDK
|
|
|
59
61
|
@referer_url = referer_url
|
|
60
62
|
@qr = qr
|
|
61
63
|
@ip = ip
|
|
64
|
+
@ua = ua
|
|
62
65
|
@trigger = trigger
|
|
63
66
|
end
|
|
64
67
|
|
|
@@ -79,6 +82,7 @@ module OpenApiSDK
|
|
|
79
82
|
return false unless @referer_url == other.referer_url
|
|
80
83
|
return false unless @qr == other.qr
|
|
81
84
|
return false unless @ip == other.ip
|
|
85
|
+
return false unless @ua == other.ua
|
|
82
86
|
return false unless @trigger == other.trigger
|
|
83
87
|
true
|
|
84
88
|
end
|