growsurf-ruby 1.0.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 +7 -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 +17 -6
- data/lib/growsurf_ruby/models/campaign/reward_create_params.rb +25 -15
- data/lib/growsurf_ruby/models/campaign/reward_update_params.rb +25 -15
- 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 +17 -6
- 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 +0 -3
- 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.rb +8 -0
- data/lib/growsurf_ruby/resources/account.rb +159 -0
- data/lib/growsurf_ruby/resources/campaign/design.rb +9 -7
- data/lib/growsurf_ruby/resources/campaign/emails.rb +8 -5
- data/lib/growsurf_ruby/resources/campaign/installation.rb +8 -6
- data/lib/growsurf_ruby/resources/campaign/options.rb +8 -5
- data/lib/growsurf_ruby/resources/campaign/participant.rb +170 -2
- data/lib/growsurf_ruby/resources/campaign/rewards.rb +17 -21
- data/lib/growsurf_ruby/resources/campaign/webhooks.rb +157 -0
- data/lib/growsurf_ruby/resources/campaign.rb +30 -2
- data/lib/growsurf_ruby/version.rb +1 -1
- data/lib/growsurf_ruby.rb +26 -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 +25 -4
- data/rbi/growsurf_ruby/models/campaign/reward_create_params.rbi +34 -9
- data/rbi/growsurf_ruby/models/campaign/reward_update_params.rbi +34 -9
- 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 +25 -4
- 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 -15
- 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.rbi +9 -0
- data/rbi/growsurf_ruby/resources/account.rbi +112 -0
- data/rbi/growsurf_ruby/resources/campaign/design.rbi +7 -5
- data/rbi/growsurf_ruby/resources/campaign/emails.rbi +7 -5
- data/rbi/growsurf_ruby/resources/campaign/installation.rbi +7 -4
- data/rbi/growsurf_ruby/resources/campaign/options.rbi +7 -5
- data/rbi/growsurf_ruby/resources/campaign/participant.rbi +160 -0
- data/rbi/growsurf_ruby/resources/campaign/rewards.rbi +37 -21
- data/rbi/growsurf_ruby/resources/campaign/webhooks.rbi +123 -0
- data/rbi/growsurf_ruby/resources/campaign.rbi +33 -2
- 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_create_params.rbs +0 -7
- data/sig/growsurf_ruby/models/campaign/reward_update_params.rbs +0 -7
- 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_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 -4
- 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 +4 -1
- data/sig/growsurf_ruby/models.rbs +8 -0
- data/sig/growsurf_ruby/resources/account.rbs +38 -0
- data/sig/growsurf_ruby/resources/campaign/participant.rbs +37 -0
- data/sig/growsurf_ruby/resources/campaign/rewards.rbs +0 -2
- data/sig/growsurf_ruby/resources/campaign/webhooks.rbs +46 -0
- data/sig/growsurf_ruby/resources/campaign.rbs +9 -0
- metadata +80 -2
|
@@ -0,0 +1,91 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module GrowsurfRuby
|
|
4
|
+
module Models
|
|
5
|
+
module Campaign
|
|
6
|
+
class WebhookCreateParams < 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::WebhookCreateParams,
|
|
14
|
+
GrowsurfRuby::Internal::AnyHash
|
|
15
|
+
)
|
|
16
|
+
end
|
|
17
|
+
|
|
18
|
+
# The URL that receives webhook deliveries.
|
|
19
|
+
sig { returns(String) }
|
|
20
|
+
attr_accessor :payload_url
|
|
21
|
+
|
|
22
|
+
# The events this webhook is subscribed to. When omitted, it is subscribed to no
|
|
23
|
+
# events.
|
|
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
|
+
# Write-only. Used to sign deliveries (the `GrowSurf-Signature` HMAC header). Never
|
|
45
|
+
# returned.
|
|
46
|
+
sig { returns(T.nilable(String)) }
|
|
47
|
+
attr_reader :secret
|
|
48
|
+
|
|
49
|
+
sig { params(secret: String).void }
|
|
50
|
+
attr_writer :secret
|
|
51
|
+
|
|
52
|
+
sig do
|
|
53
|
+
params(
|
|
54
|
+
payload_url: String,
|
|
55
|
+
events: T::Array[GrowsurfRuby::Campaign::WebhookEvent::OrSymbol],
|
|
56
|
+
is_enabled: T::Boolean,
|
|
57
|
+
secret: String,
|
|
58
|
+
request_options: GrowsurfRuby::RequestOptions::OrHash
|
|
59
|
+
).returns(T.attached_class)
|
|
60
|
+
end
|
|
61
|
+
def self.new(
|
|
62
|
+
# The URL that receives webhook deliveries.
|
|
63
|
+
payload_url:,
|
|
64
|
+
# The events this webhook is subscribed to. When omitted, it is subscribed to no
|
|
65
|
+
# events.
|
|
66
|
+
events: nil,
|
|
67
|
+
is_enabled: nil,
|
|
68
|
+
# Write-only. Used to sign deliveries (the `GrowSurf-Signature` HMAC header). Never
|
|
69
|
+
# returned.
|
|
70
|
+
secret: nil,
|
|
71
|
+
request_options: {}
|
|
72
|
+
)
|
|
73
|
+
end
|
|
74
|
+
|
|
75
|
+
sig do
|
|
76
|
+
override.returns(
|
|
77
|
+
{
|
|
78
|
+
payload_url: String,
|
|
79
|
+
events: T::Array[GrowsurfRuby::Campaign::WebhookEvent::OrSymbol],
|
|
80
|
+
is_enabled: T::Boolean,
|
|
81
|
+
secret: String,
|
|
82
|
+
request_options: GrowsurfRuby::RequestOptions
|
|
83
|
+
}
|
|
84
|
+
)
|
|
85
|
+
end
|
|
86
|
+
def to_hash
|
|
87
|
+
end
|
|
88
|
+
end
|
|
89
|
+
end
|
|
90
|
+
end
|
|
91
|
+
end
|
|
@@ -0,0 +1,48 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module GrowsurfRuby
|
|
4
|
+
module Models
|
|
5
|
+
module Campaign
|
|
6
|
+
class WebhookDeleteParams < 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::WebhookDeleteParams,
|
|
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
|
+
params(
|
|
26
|
+
id: String,
|
|
27
|
+
webhook_id: String,
|
|
28
|
+
request_options: GrowsurfRuby::RequestOptions::OrHash
|
|
29
|
+
).returns(T.attached_class)
|
|
30
|
+
end
|
|
31
|
+
def self.new(id:, webhook_id:, request_options: {})
|
|
32
|
+
end
|
|
33
|
+
|
|
34
|
+
sig do
|
|
35
|
+
override.returns(
|
|
36
|
+
{
|
|
37
|
+
id: String,
|
|
38
|
+
webhook_id: String,
|
|
39
|
+
request_options: GrowsurfRuby::RequestOptions
|
|
40
|
+
}
|
|
41
|
+
)
|
|
42
|
+
end
|
|
43
|
+
def to_hash
|
|
44
|
+
end
|
|
45
|
+
end
|
|
46
|
+
end
|
|
47
|
+
end
|
|
48
|
+
end
|
|
@@ -0,0 +1,33 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module GrowsurfRuby
|
|
4
|
+
module Models
|
|
5
|
+
module Campaign
|
|
6
|
+
class WebhookDeleteResponse < GrowsurfRuby::Internal::Type::BaseModel
|
|
7
|
+
OrHash =
|
|
8
|
+
T.type_alias do
|
|
9
|
+
T.any(
|
|
10
|
+
GrowsurfRuby::Models::Campaign::WebhookDeleteResponse,
|
|
11
|
+
GrowsurfRuby::Internal::AnyHash
|
|
12
|
+
)
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
sig { returns(String) }
|
|
16
|
+
attr_accessor :id
|
|
17
|
+
|
|
18
|
+
sig { returns(T::Boolean) }
|
|
19
|
+
attr_accessor :success
|
|
20
|
+
|
|
21
|
+
sig do
|
|
22
|
+
params(id: String, success: T::Boolean).returns(T.attached_class)
|
|
23
|
+
end
|
|
24
|
+
def self.new(id:, success:)
|
|
25
|
+
end
|
|
26
|
+
|
|
27
|
+
sig { override.returns({ id: String, success: T::Boolean }) }
|
|
28
|
+
def to_hash
|
|
29
|
+
end
|
|
30
|
+
end
|
|
31
|
+
end
|
|
32
|
+
end
|
|
33
|
+
end
|
|
@@ -0,0 +1,60 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module GrowsurfRuby
|
|
4
|
+
module Models
|
|
5
|
+
module Campaign
|
|
6
|
+
# A webhook event name.
|
|
7
|
+
module WebhookEvent
|
|
8
|
+
extend GrowsurfRuby::Internal::Type::Enum
|
|
9
|
+
|
|
10
|
+
TaggedSymbol =
|
|
11
|
+
T.type_alias { T.all(Symbol, GrowsurfRuby::Campaign::WebhookEvent) }
|
|
12
|
+
OrSymbol = T.type_alias { T.any(Symbol, String) }
|
|
13
|
+
|
|
14
|
+
PARTICIPANT_REACHED_A_GOAL =
|
|
15
|
+
T.let(
|
|
16
|
+
:PARTICIPANT_REACHED_A_GOAL,
|
|
17
|
+
GrowsurfRuby::Campaign::WebhookEvent::TaggedSymbol
|
|
18
|
+
)
|
|
19
|
+
NEW_PARTICIPANT_ADDED =
|
|
20
|
+
T.let(
|
|
21
|
+
:NEW_PARTICIPANT_ADDED,
|
|
22
|
+
GrowsurfRuby::Campaign::WebhookEvent::TaggedSymbol
|
|
23
|
+
)
|
|
24
|
+
CAMPAIGN_ENDED =
|
|
25
|
+
T.let(
|
|
26
|
+
:CAMPAIGN_ENDED,
|
|
27
|
+
GrowsurfRuby::Campaign::WebhookEvent::TaggedSymbol
|
|
28
|
+
)
|
|
29
|
+
PARTICIPANT_FRAUD_STATUS_UPDATED =
|
|
30
|
+
T.let(
|
|
31
|
+
:PARTICIPANT_FRAUD_STATUS_UPDATED,
|
|
32
|
+
GrowsurfRuby::Campaign::WebhookEvent::TaggedSymbol
|
|
33
|
+
)
|
|
34
|
+
NEW_COMMISSION_ADDED =
|
|
35
|
+
T.let(
|
|
36
|
+
:NEW_COMMISSION_ADDED,
|
|
37
|
+
GrowsurfRuby::Campaign::WebhookEvent::TaggedSymbol
|
|
38
|
+
)
|
|
39
|
+
COMMISSION_ADJUSTED =
|
|
40
|
+
T.let(
|
|
41
|
+
:COMMISSION_ADJUSTED,
|
|
42
|
+
GrowsurfRuby::Campaign::WebhookEvent::TaggedSymbol
|
|
43
|
+
)
|
|
44
|
+
NEW_PAYOUT_ISSUED =
|
|
45
|
+
T.let(
|
|
46
|
+
:NEW_PAYOUT_ISSUED,
|
|
47
|
+
GrowsurfRuby::Campaign::WebhookEvent::TaggedSymbol
|
|
48
|
+
)
|
|
49
|
+
|
|
50
|
+
sig do
|
|
51
|
+
override.returns(
|
|
52
|
+
T::Array[GrowsurfRuby::Campaign::WebhookEvent::TaggedSymbol]
|
|
53
|
+
)
|
|
54
|
+
end
|
|
55
|
+
def self.values
|
|
56
|
+
end
|
|
57
|
+
end
|
|
58
|
+
end
|
|
59
|
+
end
|
|
60
|
+
end
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module GrowsurfRuby
|
|
4
|
+
module Models
|
|
5
|
+
module Campaign
|
|
6
|
+
class WebhookListResponse < GrowsurfRuby::Internal::Type::BaseModel
|
|
7
|
+
OrHash =
|
|
8
|
+
T.type_alias do
|
|
9
|
+
T.any(
|
|
10
|
+
GrowsurfRuby::Models::Campaign::WebhookListResponse,
|
|
11
|
+
GrowsurfRuby::Internal::AnyHash
|
|
12
|
+
)
|
|
13
|
+
end
|
|
14
|
+
|
|
15
|
+
sig { returns(T::Array[GrowsurfRuby::Models::Campaign::Webhook]) }
|
|
16
|
+
attr_accessor :webhooks
|
|
17
|
+
|
|
18
|
+
sig do
|
|
19
|
+
params(
|
|
20
|
+
webhooks: T::Array[GrowsurfRuby::Models::Campaign::Webhook::OrHash]
|
|
21
|
+
).returns(T.attached_class)
|
|
22
|
+
end
|
|
23
|
+
def self.new(webhooks:)
|
|
24
|
+
end
|
|
25
|
+
|
|
26
|
+
sig do
|
|
27
|
+
override.returns(
|
|
28
|
+
{ webhooks: T::Array[GrowsurfRuby::Models::Campaign::Webhook] }
|
|
29
|
+
)
|
|
30
|
+
end
|
|
31
|
+
def to_hash
|
|
32
|
+
end
|
|
33
|
+
end
|
|
34
|
+
end
|
|
35
|
+
end
|
|
36
|
+
end
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
# typed: strong
|
|
2
|
+
|
|
3
|
+
module GrowsurfRuby
|
|
4
|
+
module Models
|
|
5
|
+
module Campaign
|
|
6
|
+
class WebhookTestParams < 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::WebhookTestParams,
|
|
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
|
+
# The event to simulate. When omitted, the webhook's first enabled event is used
|
|
25
|
+
# (returns `400` if it has no enabled events).
|
|
26
|
+
sig do
|
|
27
|
+
returns(T.nilable(GrowsurfRuby::Campaign::WebhookEvent::OrSymbol))
|
|
28
|
+
end
|
|
29
|
+
attr_reader :event
|
|
30
|
+
|
|
31
|
+
sig do
|
|
32
|
+
params(event: GrowsurfRuby::Campaign::WebhookEvent::OrSymbol).void
|
|
33
|
+
end
|
|
34
|
+
attr_writer :event
|
|
35
|
+
|
|
36
|
+
sig do
|
|
37
|
+
params(
|
|
38
|
+
id: String,
|
|
39
|
+
webhook_id: String,
|
|
40
|
+
event: GrowsurfRuby::Campaign::WebhookEvent::OrSymbol,
|
|
41
|
+
request_options: GrowsurfRuby::RequestOptions::OrHash
|
|
42
|
+
).returns(T.attached_class)
|
|
43
|
+
end
|
|
44
|
+
def self.new(
|
|
45
|
+
id:,
|
|
46
|
+
webhook_id:,
|
|
47
|
+
# The event to simulate. When omitted, the webhook's first enabled event is used
|
|
48
|
+
# (returns `400` if it has no enabled events).
|
|
49
|
+
event: nil,
|
|
50
|
+
request_options: {}
|
|
51
|
+
)
|
|
52
|
+
end
|
|
53
|
+
|
|
54
|
+
sig do
|
|
55
|
+
override.returns(
|
|
56
|
+
{
|
|
57
|
+
id: String,
|
|
58
|
+
webhook_id: String,
|
|
59
|
+
event: GrowsurfRuby::Campaign::WebhookEvent::OrSymbol,
|
|
60
|
+
request_options: GrowsurfRuby::RequestOptions
|
|
61
|
+
}
|
|
62
|
+
)
|
|
63
|
+
end
|
|
64
|
+
def to_hash
|
|
65
|
+
end
|
|
66
|
+
end
|
|
67
|
+
end
|
|
68
|
+
end
|
|
69
|
+
end
|
|
@@ -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,19 +155,27 @@ 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
|
|
|
167
|
-
#
|
|
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.
|
|
168
179
|
sig { returns(T.nilable(String)) }
|
|
169
180
|
attr_accessor :referral_coupon_code
|
|
170
181
|
|
|
@@ -223,8 +234,7 @@ module GrowsurfRuby
|
|
|
223
234
|
referral_coupon_code: T.nilable(String),
|
|
224
235
|
referral_description: T.nilable(String),
|
|
225
236
|
referred_reward_upfront: T::Boolean,
|
|
226
|
-
referred_value:
|
|
227
|
-
T.nilable(GrowsurfRuby::RewardTaxValuation::OrHash),
|
|
237
|
+
referred_value: T.nilable(GrowsurfRuby::RewardTaxValuation::OrHash),
|
|
228
238
|
value: T.nilable(GrowsurfRuby::RewardTaxValuation::OrHash)
|
|
229
239
|
).returns(T.attached_class)
|
|
230
240
|
end
|
|
@@ -236,17 +246,28 @@ module GrowsurfRuby
|
|
|
236
246
|
type:,
|
|
237
247
|
commission_structure: nil,
|
|
238
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.
|
|
239
252
|
coupon_code: nil,
|
|
240
253
|
description: nil,
|
|
241
254
|
image_url: nil,
|
|
242
255
|
# `-1` represents an unlimited reward in REST responses.
|
|
243
256
|
limit: nil,
|
|
244
257
|
limit_duration: nil,
|
|
258
|
+
# Text shown before a participant's referral count in milestone-progress copy.
|
|
259
|
+
# Applies to `MILESTONE` rewards.
|
|
245
260
|
next_milestone_prefix: nil,
|
|
261
|
+
# Text shown after a participant's referral count in milestone-progress copy.
|
|
262
|
+
# Applies to `MILESTONE` rewards.
|
|
246
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.
|
|
247
266
|
number_of_winners: nil,
|
|
248
267
|
order: nil,
|
|
249
|
-
#
|
|
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.
|
|
250
271
|
referral_coupon_code: nil,
|
|
251
272
|
referral_description: nil,
|
|
252
273
|
referred_reward_upfront: nil,
|