growsurf-ruby 0.8.0 → 1.1.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- checksums.yaml +4 -4
- data/CHANGELOG.md +18 -0
- data/README.md +1 -1
- data/lib/growsurf_ruby/client.rb +4 -0
- data/lib/growsurf_ruby/models/account.rb +90 -0
- data/lib/growsurf_ruby/models/account_create_params.rb +46 -0
- data/lib/growsurf_ruby/models/account_create_response.rb +64 -0
- data/lib/growsurf_ruby/models/account_resend_verification_email_response.rb +33 -0
- data/lib/growsurf_ruby/models/account_rotate_api_key_response.rb +17 -0
- data/lib/growsurf_ruby/models/account_update_params.rb +35 -0
- data/lib/growsurf_ruby/models/campaign/campaign_reward_list_response.rb +2 -2
- data/lib/growsurf_ruby/models/campaign/create.rb +5 -1
- data/lib/growsurf_ruby/models/campaign/participant_activity_logs_response.rb +65 -0
- data/lib/growsurf_ruby/models/campaign/participant_analytics_response.rb +421 -0
- data/lib/growsurf_ruby/models/campaign/participant_bulk_delete_params.rb +35 -0
- data/lib/growsurf_ruby/models/campaign/participant_bulk_delete_response.rb +151 -0
- data/lib/growsurf_ruby/models/campaign/participant_email_params.rb +76 -0
- data/lib/growsurf_ruby/models/campaign/participant_email_response.rb +38 -0
- data/lib/growsurf_ruby/models/campaign/participant_list_activity_logs_params.rb +46 -0
- data/lib/growsurf_ruby/models/campaign/participant_retrieve_analytics_params.rb +98 -0
- data/lib/growsurf_ruby/models/campaign/participant_update_params.rb +21 -1
- data/lib/growsurf_ruby/models/campaign/reward.rb +43 -5
- data/lib/growsurf_ruby/models/campaign/reward_create_params.rb +48 -15
- data/lib/growsurf_ruby/models/campaign/reward_delete_params.rb +4 -4
- data/lib/growsurf_ruby/models/campaign/reward_update_params.rb +51 -18
- data/lib/growsurf_ruby/models/campaign/webhook.rb +72 -0
- data/lib/growsurf_ruby/models/campaign/webhook_create_params.rb +52 -0
- data/lib/growsurf_ruby/models/campaign/webhook_delete_params.rb +28 -0
- data/lib/growsurf_ruby/models/campaign/webhook_delete_response.rb +24 -0
- data/lib/growsurf_ruby/models/campaign/webhook_event.rb +23 -0
- data/lib/growsurf_ruby/models/campaign/webhook_list_response.rb +18 -0
- data/lib/growsurf_ruby/models/campaign/webhook_test_params.rb +42 -0
- data/lib/growsurf_ruby/models/campaign/webhook_test_response.rb +50 -0
- data/lib/growsurf_ruby/models/campaign/webhook_update_params.rb +59 -0
- data/lib/growsurf_ruby/models/campaign.rb +43 -5
- data/lib/growsurf_ruby/models/campaign_create_params.rb +1 -15
- data/lib/growsurf_ruby/models/campaign_retrieve_analytics_params.rb +36 -1
- data/lib/growsurf_ruby/models/campaign_retrieve_analytics_response.rb +538 -1
- data/lib/growsurf_ruby/models/campaign_update_params.rb +1 -53
- data/lib/growsurf_ruby/models/commission_structure.rb +8 -2
- data/lib/growsurf_ruby/models/referral_flow_screenshots_response.rb +72 -0
- data/lib/growsurf_ruby/models/reward_tax_valuation.rb +35 -0
- data/lib/growsurf_ruby/models.rb +10 -0
- data/lib/growsurf_ruby/resources/account.rb +159 -0
- data/lib/growsurf_ruby/resources/campaign/design.rb +68 -0
- data/lib/growsurf_ruby/resources/campaign/emails.rb +66 -0
- data/lib/growsurf_ruby/resources/campaign/installation.rb +67 -0
- data/lib/growsurf_ruby/resources/campaign/options.rb +66 -0
- data/lib/growsurf_ruby/resources/campaign/participant.rb +170 -2
- data/lib/growsurf_ruby/resources/campaign/rewards.rb +36 -32
- data/lib/growsurf_ruby/resources/campaign/webhooks.rb +157 -0
- data/lib/growsurf_ruby/resources/campaign.rb +62 -27
- data/lib/growsurf_ruby/version.rb +1 -1
- data/lib/growsurf_ruby.rb +31 -0
- data/rbi/growsurf_ruby/client.rbi +3 -0
- data/rbi/growsurf_ruby/models/account.rbi +125 -0
- data/rbi/growsurf_ruby/models/account_create_params.rbi +73 -0
- data/rbi/growsurf_ruby/models/account_create_response.rbi +115 -0
- data/rbi/growsurf_ruby/models/account_resend_verification_email_response.rbi +76 -0
- data/rbi/growsurf_ruby/models/account_rotate_api_key_response.rbi +30 -0
- data/rbi/growsurf_ruby/models/account_update_params.rbi +65 -0
- data/rbi/growsurf_ruby/models/campaign/campaign_reward_list_response.rbi +2 -2
- data/rbi/growsurf_ruby/models/campaign/create.rbi +8 -0
- data/rbi/growsurf_ruby/models/campaign/participant_activity_logs_response.rbi +111 -0
- data/rbi/growsurf_ruby/models/campaign/participant_analytics_response.rbi +630 -0
- data/rbi/growsurf_ruby/models/campaign/participant_bulk_delete_params.rbi +56 -0
- data/rbi/growsurf_ruby/models/campaign/participant_bulk_delete_response.rbi +285 -0
- data/rbi/growsurf_ruby/models/campaign/participant_email_params.rbi +118 -0
- data/rbi/growsurf_ruby/models/campaign/participant_email_response.rbi +84 -0
- data/rbi/growsurf_ruby/models/campaign/participant_list_activity_logs_params.rbi +74 -0
- data/rbi/growsurf_ruby/models/campaign/participant_retrieve_analytics_params.rbi +207 -0
- data/rbi/growsurf_ruby/models/campaign/participant_update_params.rbi +24 -0
- data/rbi/growsurf_ruby/models/campaign/reward.rbi +63 -3
- data/rbi/growsurf_ruby/models/campaign/reward_create_params.rbi +62 -9
- data/rbi/growsurf_ruby/models/campaign/reward_delete_params.rbi +4 -4
- data/rbi/growsurf_ruby/models/campaign/reward_update_params.rbi +66 -13
- data/rbi/growsurf_ruby/models/campaign/webhook.rbi +93 -0
- data/rbi/growsurf_ruby/models/campaign/webhook_create_params.rbi +91 -0
- data/rbi/growsurf_ruby/models/campaign/webhook_delete_params.rbi +48 -0
- data/rbi/growsurf_ruby/models/campaign/webhook_delete_response.rbi +33 -0
- data/rbi/growsurf_ruby/models/campaign/webhook_event.rbi +60 -0
- data/rbi/growsurf_ruby/models/campaign/webhook_list_response.rbi +36 -0
- data/rbi/growsurf_ruby/models/campaign/webhook_test_params.rbi +69 -0
- data/rbi/growsurf_ruby/models/campaign/webhook_test_response.rbi +102 -0
- data/rbi/growsurf_ruby/models/campaign/webhook_update_params.rbi +98 -0
- data/rbi/growsurf_ruby/models/campaign.rbi +63 -3
- data/rbi/growsurf_ruby/models/campaign_create_params.rbi +0 -18
- data/rbi/growsurf_ruby/models/campaign_retrieve_analytics_params.rbi +91 -0
- data/rbi/growsurf_ruby/models/campaign_retrieve_analytics_response.rbi +1011 -3
- data/rbi/growsurf_ruby/models/campaign_update_params.rbi +0 -78
- data/rbi/growsurf_ruby/models/commission_structure.rbi +8 -2
- data/rbi/growsurf_ruby/models/referral_flow_screenshots_response.rbi +94 -0
- data/rbi/growsurf_ruby/models/reward_tax_valuation.rbi +56 -0
- data/rbi/growsurf_ruby/models.rbi +11 -0
- data/rbi/growsurf_ruby/resources/account.rbi +112 -0
- data/rbi/growsurf_ruby/resources/campaign/design.rbi +52 -0
- data/rbi/growsurf_ruby/resources/campaign/emails.rbi +51 -0
- data/rbi/growsurf_ruby/resources/campaign/installation.rbi +53 -0
- data/rbi/growsurf_ruby/resources/campaign/options.rbi +51 -0
- data/rbi/growsurf_ruby/resources/campaign/participant.rbi +160 -0
- data/rbi/growsurf_ruby/resources/campaign/rewards.rbi +61 -29
- data/rbi/growsurf_ruby/resources/campaign/webhooks.rbi +123 -0
- data/rbi/growsurf_ruby/resources/campaign.rbi +58 -32
- data/sig/growsurf_ruby/client.rbs +2 -0
- data/sig/growsurf_ruby/models/account.rbs +67 -0
- data/sig/growsurf_ruby/models/account_create_params.rbs +42 -0
- data/sig/growsurf_ruby/models/account_create_response.rbs +47 -0
- data/sig/growsurf_ruby/models/account_resend_verification_email_response.rbs +35 -0
- data/sig/growsurf_ruby/models/account_rotate_api_key_response.rbs +13 -0
- data/sig/growsurf_ruby/models/account_update_params.rbs +42 -0
- data/sig/growsurf_ruby/models/campaign/participant_activity_logs_response.rbs +59 -0
- data/sig/growsurf_ruby/models/campaign/participant_analytics_response.rbs +407 -0
- data/sig/growsurf_ruby/models/campaign/participant_bulk_delete_params.rbs +30 -0
- data/sig/growsurf_ruby/models/campaign/participant_bulk_delete_response.rbs +125 -0
- data/sig/growsurf_ruby/models/campaign/participant_email_params.rbs +61 -0
- data/sig/growsurf_ruby/models/campaign/participant_email_response.rbs +37 -0
- data/sig/growsurf_ruby/models/campaign/participant_list_activity_logs_params.rbs +47 -0
- data/sig/growsurf_ruby/models/campaign/participant_retrieve_analytics_params.rbs +90 -0
- data/sig/growsurf_ruby/models/campaign/participant_update_params.rbs +14 -0
- data/sig/growsurf_ruby/models/campaign/reward.rbs +18 -3
- data/sig/growsurf_ruby/models/campaign/reward_create_params.rbs +19 -8
- data/sig/growsurf_ruby/models/campaign/reward_delete_params.rbs +4 -4
- data/sig/growsurf_ruby/models/campaign/reward_update_params.rbs +23 -12
- data/sig/growsurf_ruby/models/campaign/webhook.rbs +52 -0
- data/sig/growsurf_ruby/models/campaign/webhook_create_params.rbs +51 -0
- data/sig/growsurf_ruby/models/campaign/webhook_delete_params.rbs +30 -0
- data/sig/growsurf_ruby/models/campaign/webhook_delete_response.rbs +17 -0
- data/sig/growsurf_ruby/models/campaign/webhook_event.rbs +28 -0
- data/sig/growsurf_ruby/models/campaign/webhook_list_response.rbs +18 -0
- data/sig/growsurf_ruby/models/campaign/webhook_test_params.rbs +42 -0
- data/sig/growsurf_ruby/models/campaign/webhook_test_response.rbs +54 -0
- data/sig/growsurf_ruby/models/campaign/webhook_update_params.rbs +63 -0
- data/sig/growsurf_ruby/models/campaign.rbs +18 -3
- data/sig/growsurf_ruby/models/campaign_create_params.rbs +0 -14
- data/sig/growsurf_ruby/models/campaign_retrieve_analytics_params.rbs +35 -1
- data/sig/growsurf_ruby/models/campaign_retrieve_analytics_response.rbs +533 -3
- data/sig/growsurf_ruby/models/campaign_update_params.rbs +1 -53
- data/sig/growsurf_ruby/models/commission_structure.rbs +7 -2
- data/sig/growsurf_ruby/models/referral_flow_screenshots_response.rbs +54 -0
- data/sig/growsurf_ruby/models/reward_tax_valuation.rbs +22 -0
- data/sig/growsurf_ruby/models.rbs +10 -0
- data/sig/growsurf_ruby/resources/account.rbs +38 -0
- data/sig/growsurf_ruby/resources/campaign/design.rbs +20 -0
- data/sig/growsurf_ruby/resources/campaign/emails.rbs +20 -0
- data/sig/growsurf_ruby/resources/campaign/installation.rbs +20 -0
- data/sig/growsurf_ruby/resources/campaign/options.rbs +20 -0
- data/sig/growsurf_ruby/resources/campaign/participant.rbs +37 -0
- data/sig/growsurf_ruby/resources/campaign/rewards.rbs +6 -4
- data/sig/growsurf_ruby/resources/campaign/webhooks.rbs +46 -0
- data/sig/growsurf_ruby/resources/campaign.rbs +17 -9
- metadata +95 -2
|
@@ -0,0 +1,102 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module GrowsurfRuby
|
|
4
|
+
module Models
|
|
5
|
+
module Campaign
|
|
6
|
+
class WebhookTestResponse < GrowsurfRuby::Internal::Type::BaseModel
|
|
7
|
+
OrHash =
|
|
8
|
+
T.type_alias do
|
|
9
|
+
T.any(
|
|
10
|
+
GrowsurfRuby::Models::Campaign::WebhookTestResponse,
|
|
11
|
+
GrowsurfRuby::Internal::AnyHash
|
|
12
|
+
)
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
sig { returns(T::Boolean) }
|
|
16
|
+
attr_accessor :success
|
|
17
|
+
|
|
18
|
+
# The mock event payload that was sent.
|
|
19
|
+
sig { returns(T.nilable(T::Hash[Symbol, T.anything])) }
|
|
20
|
+
attr_reader :payload
|
|
21
|
+
|
|
22
|
+
sig { params(payload: T::Hash[Symbol, T.anything]).void }
|
|
23
|
+
attr_writer :payload
|
|
24
|
+
|
|
25
|
+
sig do
|
|
26
|
+
returns(
|
|
27
|
+
T.nilable(GrowsurfRuby::Campaign::WebhookTestResponse::Response)
|
|
28
|
+
)
|
|
29
|
+
end
|
|
30
|
+
attr_reader :response
|
|
31
|
+
|
|
32
|
+
sig do
|
|
33
|
+
params(
|
|
34
|
+
response:
|
|
35
|
+
GrowsurfRuby::Campaign::WebhookTestResponse::Response::OrHash
|
|
36
|
+
).void
|
|
37
|
+
end
|
|
38
|
+
attr_writer :response
|
|
39
|
+
|
|
40
|
+
sig do
|
|
41
|
+
params(
|
|
42
|
+
success: T::Boolean,
|
|
43
|
+
payload: T::Hash[Symbol, T.anything],
|
|
44
|
+
response:
|
|
45
|
+
GrowsurfRuby::Campaign::WebhookTestResponse::Response::OrHash
|
|
46
|
+
).returns(T.attached_class)
|
|
47
|
+
end
|
|
48
|
+
def self.new(
|
|
49
|
+
success:,
|
|
50
|
+
# The mock event payload that was sent.
|
|
51
|
+
payload: nil,
|
|
52
|
+
response: nil
|
|
53
|
+
)
|
|
54
|
+
end
|
|
55
|
+
|
|
56
|
+
sig do
|
|
57
|
+
override.returns(
|
|
58
|
+
{
|
|
59
|
+
success: T::Boolean,
|
|
60
|
+
payload: T::Hash[Symbol, T.anything],
|
|
61
|
+
response: GrowsurfRuby::Campaign::WebhookTestResponse::Response
|
|
62
|
+
}
|
|
63
|
+
)
|
|
64
|
+
end
|
|
65
|
+
def to_hash
|
|
66
|
+
end
|
|
67
|
+
|
|
68
|
+
class Response < GrowsurfRuby::Internal::Type::BaseModel
|
|
69
|
+
OrHash =
|
|
70
|
+
T.type_alias do
|
|
71
|
+
T.any(
|
|
72
|
+
GrowsurfRuby::Campaign::WebhookTestResponse::Response,
|
|
73
|
+
GrowsurfRuby::Internal::AnyHash
|
|
74
|
+
)
|
|
75
|
+
end
|
|
76
|
+
|
|
77
|
+
sig { returns(T.nilable(String)) }
|
|
78
|
+
attr_reader :msg
|
|
79
|
+
|
|
80
|
+
sig { params(msg: String).void }
|
|
81
|
+
attr_writer :msg
|
|
82
|
+
|
|
83
|
+
sig { returns(T.nilable(Integer)) }
|
|
84
|
+
attr_reader :status_code
|
|
85
|
+
|
|
86
|
+
sig { params(status_code: Integer).void }
|
|
87
|
+
attr_writer :status_code
|
|
88
|
+
|
|
89
|
+
sig do
|
|
90
|
+
params(msg: String, status_code: Integer).returns(T.attached_class)
|
|
91
|
+
end
|
|
92
|
+
def self.new(msg: nil, status_code: nil)
|
|
93
|
+
end
|
|
94
|
+
|
|
95
|
+
sig { override.returns({ msg: String, status_code: Integer }) }
|
|
96
|
+
def to_hash
|
|
97
|
+
end
|
|
98
|
+
end
|
|
99
|
+
end
|
|
100
|
+
end
|
|
101
|
+
end
|
|
102
|
+
end
|
|
@@ -0,0 +1,98 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module GrowsurfRuby
|
|
4
|
+
module Models
|
|
5
|
+
module Campaign
|
|
6
|
+
class WebhookUpdateParams < GrowsurfRuby::Internal::Type::BaseModel
|
|
7
|
+
extend GrowsurfRuby::Internal::Type::RequestParameters::Converter
|
|
8
|
+
include GrowsurfRuby::Internal::Type::RequestParameters
|
|
9
|
+
|
|
10
|
+
OrHash =
|
|
11
|
+
T.type_alias do
|
|
12
|
+
T.any(
|
|
13
|
+
GrowsurfRuby::Campaign::WebhookUpdateParams,
|
|
14
|
+
GrowsurfRuby::Internal::AnyHash
|
|
15
|
+
)
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
sig { returns(String) }
|
|
19
|
+
attr_accessor :id
|
|
20
|
+
|
|
21
|
+
sig { returns(String) }
|
|
22
|
+
attr_accessor :webhook_id
|
|
23
|
+
|
|
24
|
+
sig do
|
|
25
|
+
returns(
|
|
26
|
+
T.nilable(T::Array[GrowsurfRuby::Campaign::WebhookEvent::OrSymbol])
|
|
27
|
+
)
|
|
28
|
+
end
|
|
29
|
+
attr_reader :events
|
|
30
|
+
|
|
31
|
+
sig do
|
|
32
|
+
params(
|
|
33
|
+
events: T::Array[GrowsurfRuby::Campaign::WebhookEvent::OrSymbol]
|
|
34
|
+
).void
|
|
35
|
+
end
|
|
36
|
+
attr_writer :events
|
|
37
|
+
|
|
38
|
+
sig { returns(T.nilable(T::Boolean)) }
|
|
39
|
+
attr_reader :is_enabled
|
|
40
|
+
|
|
41
|
+
sig { params(is_enabled: T::Boolean).void }
|
|
42
|
+
attr_writer :is_enabled
|
|
43
|
+
|
|
44
|
+
sig { returns(T.nilable(String)) }
|
|
45
|
+
attr_reader :payload_url
|
|
46
|
+
|
|
47
|
+
sig { params(payload_url: String).void }
|
|
48
|
+
attr_writer :payload_url
|
|
49
|
+
|
|
50
|
+
# Write-only.
|
|
51
|
+
sig { returns(T.nilable(String)) }
|
|
52
|
+
attr_reader :secret
|
|
53
|
+
|
|
54
|
+
sig { params(secret: String).void }
|
|
55
|
+
attr_writer :secret
|
|
56
|
+
|
|
57
|
+
sig do
|
|
58
|
+
params(
|
|
59
|
+
id: String,
|
|
60
|
+
webhook_id: String,
|
|
61
|
+
events: T::Array[GrowsurfRuby::Campaign::WebhookEvent::OrSymbol],
|
|
62
|
+
is_enabled: T::Boolean,
|
|
63
|
+
payload_url: String,
|
|
64
|
+
secret: String,
|
|
65
|
+
request_options: GrowsurfRuby::RequestOptions::OrHash
|
|
66
|
+
).returns(T.attached_class)
|
|
67
|
+
end
|
|
68
|
+
def self.new(
|
|
69
|
+
id:,
|
|
70
|
+
webhook_id:,
|
|
71
|
+
events: nil,
|
|
72
|
+
is_enabled: nil,
|
|
73
|
+
payload_url: nil,
|
|
74
|
+
# Write-only.
|
|
75
|
+
secret: nil,
|
|
76
|
+
request_options: {}
|
|
77
|
+
)
|
|
78
|
+
end
|
|
79
|
+
|
|
80
|
+
sig do
|
|
81
|
+
override.returns(
|
|
82
|
+
{
|
|
83
|
+
id: String,
|
|
84
|
+
webhook_id: String,
|
|
85
|
+
events: T::Array[GrowsurfRuby::Campaign::WebhookEvent::OrSymbol],
|
|
86
|
+
is_enabled: T::Boolean,
|
|
87
|
+
payload_url: String,
|
|
88
|
+
secret: String,
|
|
89
|
+
request_options: GrowsurfRuby::RequestOptions
|
|
90
|
+
}
|
|
91
|
+
)
|
|
92
|
+
end
|
|
93
|
+
def to_hash
|
|
94
|
+
end
|
|
95
|
+
end
|
|
96
|
+
end
|
|
97
|
+
end
|
|
98
|
+
end
|
|
@@ -130,6 +130,9 @@ module GrowsurfRuby
|
|
|
130
130
|
sig { returns(T.nilable(Integer)) }
|
|
131
131
|
attr_accessor :conversions_required
|
|
132
132
|
|
|
133
|
+
# Legacy static coupon code shown to the referrer in the reward-won email and
|
|
134
|
+
# webhook. Display text only; superseded by a connected billing integration's
|
|
135
|
+
# issued coupon when one exists.
|
|
133
136
|
sig { returns(T.nilable(String)) }
|
|
134
137
|
attr_accessor :coupon_code
|
|
135
138
|
|
|
@@ -152,18 +155,30 @@ module GrowsurfRuby
|
|
|
152
155
|
end
|
|
153
156
|
attr_accessor :limit_duration
|
|
154
157
|
|
|
158
|
+
# Text shown before a participant's referral count in milestone-progress copy.
|
|
159
|
+
# Applies to `MILESTONE` rewards.
|
|
155
160
|
sig { returns(T.nilable(String)) }
|
|
156
161
|
attr_accessor :next_milestone_prefix
|
|
157
162
|
|
|
163
|
+
# Text shown after a participant's referral count in milestone-progress copy.
|
|
164
|
+
# Applies to `MILESTONE` rewards.
|
|
158
165
|
sig { returns(T.nilable(String)) }
|
|
159
166
|
attr_accessor :next_milestone_suffix
|
|
160
167
|
|
|
168
|
+
# The number of winners (`LEADERBOARD` rewards only). With `limitDuration`
|
|
169
|
+
# `PER_MONTH` this many win each month, otherwise this many win in total.
|
|
161
170
|
sig { returns(T.nilable(Integer)) }
|
|
162
171
|
attr_accessor :number_of_winners
|
|
163
172
|
|
|
164
173
|
sig { returns(T.nilable(Integer)) }
|
|
165
174
|
attr_accessor :order
|
|
166
175
|
|
|
176
|
+
# Legacy static coupon code shown to the referred friend (double-sided rewards)
|
|
177
|
+
# in the reward-won email and webhook. Display text only; superseded by a
|
|
178
|
+
# connected billing integration's issued coupon when one exists.
|
|
179
|
+
sig { returns(T.nilable(String)) }
|
|
180
|
+
attr_accessor :referral_coupon_code
|
|
181
|
+
|
|
167
182
|
sig { returns(T.nilable(String)) }
|
|
168
183
|
attr_accessor :referral_description
|
|
169
184
|
|
|
@@ -173,6 +188,28 @@ module GrowsurfRuby
|
|
|
173
188
|
sig { params(referred_reward_upfront: T::Boolean).void }
|
|
174
189
|
attr_writer :referred_reward_upfront
|
|
175
190
|
|
|
191
|
+
# Tax valuation for the referred friend's side of a double-sided reward.
|
|
192
|
+
sig { returns(T.nilable(GrowsurfRuby::RewardTaxValuation)) }
|
|
193
|
+
attr_reader :referred_value
|
|
194
|
+
|
|
195
|
+
sig do
|
|
196
|
+
params(
|
|
197
|
+
referred_value: T.nilable(GrowsurfRuby::RewardTaxValuation::OrHash)
|
|
198
|
+
).void
|
|
199
|
+
end
|
|
200
|
+
attr_writer :referred_value
|
|
201
|
+
|
|
202
|
+
# Tax valuation for the reward (the referrer's side of a double-sided reward).
|
|
203
|
+
sig { returns(T.nilable(GrowsurfRuby::RewardTaxValuation)) }
|
|
204
|
+
attr_reader :value
|
|
205
|
+
|
|
206
|
+
sig do
|
|
207
|
+
params(
|
|
208
|
+
value: T.nilable(GrowsurfRuby::RewardTaxValuation::OrHash)
|
|
209
|
+
).void
|
|
210
|
+
end
|
|
211
|
+
attr_writer :value
|
|
212
|
+
|
|
176
213
|
sig do
|
|
177
214
|
params(
|
|
178
215
|
id: String,
|
|
@@ -194,8 +231,11 @@ module GrowsurfRuby
|
|
|
194
231
|
next_milestone_suffix: T.nilable(String),
|
|
195
232
|
number_of_winners: T.nilable(Integer),
|
|
196
233
|
order: T.nilable(Integer),
|
|
234
|
+
referral_coupon_code: T.nilable(String),
|
|
197
235
|
referral_description: T.nilable(String),
|
|
198
|
-
referred_reward_upfront: T::Boolean
|
|
236
|
+
referred_reward_upfront: T::Boolean,
|
|
237
|
+
referred_value: T.nilable(GrowsurfRuby::RewardTaxValuation::OrHash),
|
|
238
|
+
value: T.nilable(GrowsurfRuby::RewardTaxValuation::OrHash)
|
|
199
239
|
).returns(T.attached_class)
|
|
200
240
|
end
|
|
201
241
|
def self.new(
|
|
@@ -206,18 +246,35 @@ module GrowsurfRuby
|
|
|
206
246
|
type:,
|
|
207
247
|
commission_structure: nil,
|
|
208
248
|
conversions_required: nil,
|
|
249
|
+
# Legacy static coupon code shown to the referrer in the reward-won email and
|
|
250
|
+
# webhook. Display text only; superseded by a connected billing integration's
|
|
251
|
+
# issued coupon when one exists.
|
|
209
252
|
coupon_code: nil,
|
|
210
253
|
description: nil,
|
|
211
254
|
image_url: nil,
|
|
212
255
|
# `-1` represents an unlimited reward in REST responses.
|
|
213
256
|
limit: nil,
|
|
214
257
|
limit_duration: nil,
|
|
258
|
+
# Text shown before a participant's referral count in milestone-progress copy.
|
|
259
|
+
# Applies to `MILESTONE` rewards.
|
|
215
260
|
next_milestone_prefix: nil,
|
|
261
|
+
# Text shown after a participant's referral count in milestone-progress copy.
|
|
262
|
+
# Applies to `MILESTONE` rewards.
|
|
216
263
|
next_milestone_suffix: nil,
|
|
264
|
+
# The number of winners (`LEADERBOARD` rewards only). With `limitDuration`
|
|
265
|
+
# `PER_MONTH` this many win each month, otherwise this many win in total.
|
|
217
266
|
number_of_winners: nil,
|
|
218
267
|
order: nil,
|
|
268
|
+
# Legacy static coupon code shown to the referred friend (double-sided rewards)
|
|
269
|
+
# in the reward-won email and webhook. Display text only; superseded by a
|
|
270
|
+
# connected billing integration's issued coupon when one exists.
|
|
271
|
+
referral_coupon_code: nil,
|
|
219
272
|
referral_description: nil,
|
|
220
|
-
referred_reward_upfront: nil
|
|
273
|
+
referred_reward_upfront: nil,
|
|
274
|
+
# Tax valuation for the referred friend's side of a double-sided reward.
|
|
275
|
+
referred_value: nil,
|
|
276
|
+
# Tax valuation for the reward (the referrer's side of a double-sided reward).
|
|
277
|
+
value: nil
|
|
221
278
|
)
|
|
222
279
|
end
|
|
223
280
|
|
|
@@ -243,8 +300,11 @@ module GrowsurfRuby
|
|
|
243
300
|
next_milestone_suffix: T.nilable(String),
|
|
244
301
|
number_of_winners: T.nilable(Integer),
|
|
245
302
|
order: T.nilable(Integer),
|
|
303
|
+
referral_coupon_code: T.nilable(String),
|
|
246
304
|
referral_description: T.nilable(String),
|
|
247
|
-
referred_reward_upfront: T::Boolean
|
|
305
|
+
referred_reward_upfront: T::Boolean,
|
|
306
|
+
referred_value: T.nilable(GrowsurfRuby::RewardTaxValuation),
|
|
307
|
+
value: T.nilable(GrowsurfRuby::RewardTaxValuation)
|
|
248
308
|
}
|
|
249
309
|
)
|
|
250
310
|
end
|
|
@@ -35,24 +35,12 @@ module GrowsurfRuby
|
|
|
35
35
|
sig { params(currency_iso: String).void }
|
|
36
36
|
attr_writer :currency_iso
|
|
37
37
|
|
|
38
|
-
sig { returns(T.nilable(String)) }
|
|
39
|
-
attr_reader :goal
|
|
40
|
-
|
|
41
|
-
sig { params(goal: String).void }
|
|
42
|
-
attr_writer :goal
|
|
43
|
-
|
|
44
38
|
sig { returns(T.nilable(String)) }
|
|
45
39
|
attr_reader :name
|
|
46
40
|
|
|
47
41
|
sig { params(name: String).void }
|
|
48
42
|
attr_writer :name
|
|
49
43
|
|
|
50
|
-
sig { returns(T.nilable(T::Hash[Symbol, T.anything])) }
|
|
51
|
-
attr_reader :options
|
|
52
|
-
|
|
53
|
-
sig { params(options: T::Hash[Symbol, T.anything]).void }
|
|
54
|
-
attr_writer :options
|
|
55
|
-
|
|
56
44
|
sig do
|
|
57
45
|
returns(T.nilable(T::Array[GrowsurfRuby::Campaign::RewardCreateParams]))
|
|
58
46
|
end
|
|
@@ -71,9 +59,7 @@ module GrowsurfRuby
|
|
|
71
59
|
company_logo_image_url: String,
|
|
72
60
|
company_name: String,
|
|
73
61
|
currency_iso: String,
|
|
74
|
-
goal: String,
|
|
75
62
|
name: String,
|
|
76
|
-
options: T::Hash[Symbol, T.anything],
|
|
77
63
|
rewards: T::Array[GrowsurfRuby::Campaign::RewardCreateParams::OrHash],
|
|
78
64
|
request_options: GrowsurfRuby::RequestOptions::OrHash
|
|
79
65
|
).returns(T.attached_class)
|
|
@@ -83,9 +69,7 @@ module GrowsurfRuby
|
|
|
83
69
|
company_logo_image_url: nil,
|
|
84
70
|
company_name: nil,
|
|
85
71
|
currency_iso: nil,
|
|
86
|
-
goal: nil,
|
|
87
72
|
name: nil,
|
|
88
|
-
options: nil,
|
|
89
73
|
rewards: nil,
|
|
90
74
|
request_options: {}
|
|
91
75
|
)
|
|
@@ -98,9 +82,7 @@ module GrowsurfRuby
|
|
|
98
82
|
company_logo_image_url: String,
|
|
99
83
|
company_name: String,
|
|
100
84
|
currency_iso: String,
|
|
101
|
-
goal: String,
|
|
102
85
|
name: String,
|
|
103
|
-
options: T::Hash[Symbol, T.anything],
|
|
104
86
|
rewards:
|
|
105
87
|
T::Array[GrowsurfRuby::Campaign::RewardCreateParams::OrHash],
|
|
106
88
|
request_options: GrowsurfRuby::RequestOptions
|
|
@@ -32,6 +32,36 @@ module GrowsurfRuby
|
|
|
32
32
|
sig { params(end_date: Integer).void }
|
|
33
33
|
attr_writer :end_date
|
|
34
34
|
|
|
35
|
+
# Comma-separated list of optional enrichments (opt-in to keep the default response
|
|
36
|
+
# lean): `previousPeriod` adds totals for the equal-length window immediately before
|
|
37
|
+
# the requested one; `statusCounts` adds reward (and, for affiliate programs,
|
|
38
|
+
# affiliate/commission/payout) status breakdowns; `rates` adds derived referral
|
|
39
|
+
# rates.
|
|
40
|
+
sig { returns(T.nilable(String)) }
|
|
41
|
+
attr_reader :include
|
|
42
|
+
|
|
43
|
+
sig { params(include: String).void }
|
|
44
|
+
attr_writer :include
|
|
45
|
+
|
|
46
|
+
# When set to `day`, `week`, or `month`, the response also includes a `series` array
|
|
47
|
+
# with per-period totals. Defaults to `total` (no series).
|
|
48
|
+
sig do
|
|
49
|
+
returns(
|
|
50
|
+
T.nilable(
|
|
51
|
+
GrowsurfRuby::CampaignRetrieveAnalyticsParams::Interval::OrSymbol
|
|
52
|
+
)
|
|
53
|
+
)
|
|
54
|
+
end
|
|
55
|
+
attr_reader :interval
|
|
56
|
+
|
|
57
|
+
sig do
|
|
58
|
+
params(
|
|
59
|
+
interval:
|
|
60
|
+
GrowsurfRuby::CampaignRetrieveAnalyticsParams::Interval::OrSymbol
|
|
61
|
+
).void
|
|
62
|
+
end
|
|
63
|
+
attr_writer :interval
|
|
64
|
+
|
|
35
65
|
# Start date of the analytics timeframe as a Unix timestamp in milliseconds.
|
|
36
66
|
# Required if `days` is not set.
|
|
37
67
|
sig { returns(T.nilable(Integer)) }
|
|
@@ -45,6 +75,9 @@ module GrowsurfRuby
|
|
|
45
75
|
id: String,
|
|
46
76
|
days: Integer,
|
|
47
77
|
end_date: Integer,
|
|
78
|
+
include: String,
|
|
79
|
+
interval:
|
|
80
|
+
GrowsurfRuby::CampaignRetrieveAnalyticsParams::Interval::OrSymbol,
|
|
48
81
|
start_date: Integer,
|
|
49
82
|
request_options: GrowsurfRuby::RequestOptions::OrHash
|
|
50
83
|
).returns(T.attached_class)
|
|
@@ -56,6 +89,15 @@ module GrowsurfRuby
|
|
|
56
89
|
# End date of the analytics timeframe as a Unix timestamp in milliseconds.
|
|
57
90
|
# Required if `days` is not set.
|
|
58
91
|
end_date: nil,
|
|
92
|
+
# Comma-separated list of optional enrichments (opt-in to keep the default response
|
|
93
|
+
# lean): `previousPeriod` adds totals for the equal-length window immediately before
|
|
94
|
+
# the requested one; `statusCounts` adds reward (and, for affiliate programs,
|
|
95
|
+
# affiliate/commission/payout) status breakdowns; `rates` adds derived referral
|
|
96
|
+
# rates.
|
|
97
|
+
include: nil,
|
|
98
|
+
# When set to `day`, `week`, or `month`, the response also includes a `series` array
|
|
99
|
+
# with per-period totals. Defaults to `total` (no series).
|
|
100
|
+
interval: nil,
|
|
59
101
|
# Start date of the analytics timeframe as a Unix timestamp in milliseconds.
|
|
60
102
|
# Required if `days` is not set.
|
|
61
103
|
start_date: nil,
|
|
@@ -69,6 +111,9 @@ module GrowsurfRuby
|
|
|
69
111
|
id: String,
|
|
70
112
|
days: Integer,
|
|
71
113
|
end_date: Integer,
|
|
114
|
+
include: String,
|
|
115
|
+
interval:
|
|
116
|
+
GrowsurfRuby::CampaignRetrieveAnalyticsParams::Interval::OrSymbol,
|
|
72
117
|
start_date: Integer,
|
|
73
118
|
request_options: GrowsurfRuby::RequestOptions
|
|
74
119
|
}
|
|
@@ -76,6 +121,52 @@ module GrowsurfRuby
|
|
|
76
121
|
end
|
|
77
122
|
def to_hash
|
|
78
123
|
end
|
|
124
|
+
|
|
125
|
+
# When set to `day`, `week`, or `month`, the response also includes a `series` array
|
|
126
|
+
# with per-period totals. Defaults to `total` (no series).
|
|
127
|
+
module Interval
|
|
128
|
+
extend GrowsurfRuby::Internal::Type::Enum
|
|
129
|
+
|
|
130
|
+
TaggedSymbol =
|
|
131
|
+
T.type_alias do
|
|
132
|
+
T.all(
|
|
133
|
+
Symbol,
|
|
134
|
+
GrowsurfRuby::CampaignRetrieveAnalyticsParams::Interval
|
|
135
|
+
)
|
|
136
|
+
end
|
|
137
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
138
|
+
|
|
139
|
+
DAY =
|
|
140
|
+
T.let(
|
|
141
|
+
:day,
|
|
142
|
+
GrowsurfRuby::CampaignRetrieveAnalyticsParams::Interval::TaggedSymbol
|
|
143
|
+
)
|
|
144
|
+
WEEK =
|
|
145
|
+
T.let(
|
|
146
|
+
:week,
|
|
147
|
+
GrowsurfRuby::CampaignRetrieveAnalyticsParams::Interval::TaggedSymbol
|
|
148
|
+
)
|
|
149
|
+
MONTH =
|
|
150
|
+
T.let(
|
|
151
|
+
:month,
|
|
152
|
+
GrowsurfRuby::CampaignRetrieveAnalyticsParams::Interval::TaggedSymbol
|
|
153
|
+
)
|
|
154
|
+
TOTAL =
|
|
155
|
+
T.let(
|
|
156
|
+
:total,
|
|
157
|
+
GrowsurfRuby::CampaignRetrieveAnalyticsParams::Interval::TaggedSymbol
|
|
158
|
+
)
|
|
159
|
+
|
|
160
|
+
sig do
|
|
161
|
+
override.returns(
|
|
162
|
+
T::Array[
|
|
163
|
+
GrowsurfRuby::CampaignRetrieveAnalyticsParams::Interval::TaggedSymbol
|
|
164
|
+
]
|
|
165
|
+
)
|
|
166
|
+
end
|
|
167
|
+
def self.values
|
|
168
|
+
end
|
|
169
|
+
end
|
|
79
170
|
end
|
|
80
171
|
end
|
|
81
172
|
end
|