growsurf-ruby 1.0.0 → 1.1.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (134) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +14 -0
  3. data/README.md +1 -1
  4. data/lib/growsurf_ruby/client.rb +4 -0
  5. data/lib/growsurf_ruby/models/account.rb +90 -0
  6. data/lib/growsurf_ruby/models/account_create_params.rb +46 -0
  7. data/lib/growsurf_ruby/models/account_create_response.rb +64 -0
  8. data/lib/growsurf_ruby/models/account_resend_verification_email_response.rb +33 -0
  9. data/lib/growsurf_ruby/models/account_rotate_api_key_response.rb +17 -0
  10. data/lib/growsurf_ruby/models/account_update_params.rb +35 -0
  11. data/lib/growsurf_ruby/models/campaign/campaign_reward_list_response.rb +2 -2
  12. data/lib/growsurf_ruby/models/campaign/create.rb +5 -1
  13. data/lib/growsurf_ruby/models/campaign/participant_activity_logs_response.rb +65 -0
  14. data/lib/growsurf_ruby/models/campaign/participant_analytics_response.rb +421 -0
  15. data/lib/growsurf_ruby/models/campaign/participant_bulk_delete_params.rb +35 -0
  16. data/lib/growsurf_ruby/models/campaign/participant_bulk_delete_response.rb +151 -0
  17. data/lib/growsurf_ruby/models/campaign/participant_email_params.rb +76 -0
  18. data/lib/growsurf_ruby/models/campaign/participant_email_response.rb +38 -0
  19. data/lib/growsurf_ruby/models/campaign/participant_list_activity_logs_params.rb +46 -0
  20. data/lib/growsurf_ruby/models/campaign/participant_retrieve_analytics_params.rb +98 -0
  21. data/lib/growsurf_ruby/models/campaign/participant_update_params.rb +21 -1
  22. data/lib/growsurf_ruby/models/campaign/reward.rb +17 -6
  23. data/lib/growsurf_ruby/models/campaign/reward_create_params.rb +25 -15
  24. data/lib/growsurf_ruby/models/campaign/reward_update_params.rb +25 -15
  25. data/lib/growsurf_ruby/models/campaign/webhook.rb +72 -0
  26. data/lib/growsurf_ruby/models/campaign/webhook_create_params.rb +52 -0
  27. data/lib/growsurf_ruby/models/campaign/webhook_delete_params.rb +28 -0
  28. data/lib/growsurf_ruby/models/campaign/webhook_delete_response.rb +24 -0
  29. data/lib/growsurf_ruby/models/campaign/webhook_event.rb +23 -0
  30. data/lib/growsurf_ruby/models/campaign/webhook_list_response.rb +18 -0
  31. data/lib/growsurf_ruby/models/campaign/webhook_test_params.rb +42 -0
  32. data/lib/growsurf_ruby/models/campaign/webhook_test_response.rb +50 -0
  33. data/lib/growsurf_ruby/models/campaign/webhook_update_params.rb +59 -0
  34. data/lib/growsurf_ruby/models/campaign.rb +17 -6
  35. data/lib/growsurf_ruby/models/campaign_retrieve_analytics_params.rb +36 -1
  36. data/lib/growsurf_ruby/models/campaign_retrieve_analytics_response.rb +538 -1
  37. data/lib/growsurf_ruby/models/campaign_update_params.rb +0 -3
  38. data/lib/growsurf_ruby/models/commission_structure.rb +8 -2
  39. data/lib/growsurf_ruby/models.rb +6 -0
  40. data/lib/growsurf_ruby/resources/account.rb +159 -0
  41. data/lib/growsurf_ruby/resources/campaign/design.rb +9 -7
  42. data/lib/growsurf_ruby/resources/campaign/emails.rb +8 -5
  43. data/lib/growsurf_ruby/resources/campaign/installation.rb +8 -6
  44. data/lib/growsurf_ruby/resources/campaign/options.rb +8 -5
  45. data/lib/growsurf_ruby/resources/campaign/participant.rb +170 -2
  46. data/lib/growsurf_ruby/resources/campaign/rewards.rb +17 -21
  47. data/lib/growsurf_ruby/resources/campaign/webhooks.rb +157 -0
  48. data/lib/growsurf_ruby/resources/campaign.rb +11 -2
  49. data/lib/growsurf_ruby/version.rb +1 -1
  50. data/lib/growsurf_ruby.rb +25 -0
  51. data/rbi/growsurf_ruby/client.rbi +3 -0
  52. data/rbi/growsurf_ruby/models/account.rbi +125 -0
  53. data/rbi/growsurf_ruby/models/account_create_params.rbi +73 -0
  54. data/rbi/growsurf_ruby/models/account_create_response.rbi +115 -0
  55. data/rbi/growsurf_ruby/models/account_resend_verification_email_response.rbi +76 -0
  56. data/rbi/growsurf_ruby/models/account_rotate_api_key_response.rbi +30 -0
  57. data/rbi/growsurf_ruby/models/account_update_params.rbi +65 -0
  58. data/rbi/growsurf_ruby/models/campaign/campaign_reward_list_response.rbi +2 -2
  59. data/rbi/growsurf_ruby/models/campaign/create.rbi +8 -0
  60. data/rbi/growsurf_ruby/models/campaign/participant_activity_logs_response.rbi +111 -0
  61. data/rbi/growsurf_ruby/models/campaign/participant_analytics_response.rbi +630 -0
  62. data/rbi/growsurf_ruby/models/campaign/participant_bulk_delete_params.rbi +56 -0
  63. data/rbi/growsurf_ruby/models/campaign/participant_bulk_delete_response.rbi +285 -0
  64. data/rbi/growsurf_ruby/models/campaign/participant_email_params.rbi +118 -0
  65. data/rbi/growsurf_ruby/models/campaign/participant_email_response.rbi +84 -0
  66. data/rbi/growsurf_ruby/models/campaign/participant_list_activity_logs_params.rbi +74 -0
  67. data/rbi/growsurf_ruby/models/campaign/participant_retrieve_analytics_params.rbi +207 -0
  68. data/rbi/growsurf_ruby/models/campaign/participant_update_params.rbi +24 -0
  69. data/rbi/growsurf_ruby/models/campaign/reward.rbi +25 -4
  70. data/rbi/growsurf_ruby/models/campaign/reward_create_params.rbi +34 -9
  71. data/rbi/growsurf_ruby/models/campaign/reward_update_params.rbi +34 -9
  72. data/rbi/growsurf_ruby/models/campaign/webhook.rbi +93 -0
  73. data/rbi/growsurf_ruby/models/campaign/webhook_create_params.rbi +91 -0
  74. data/rbi/growsurf_ruby/models/campaign/webhook_delete_params.rbi +48 -0
  75. data/rbi/growsurf_ruby/models/campaign/webhook_delete_response.rbi +33 -0
  76. data/rbi/growsurf_ruby/models/campaign/webhook_event.rbi +60 -0
  77. data/rbi/growsurf_ruby/models/campaign/webhook_list_response.rbi +36 -0
  78. data/rbi/growsurf_ruby/models/campaign/webhook_test_params.rbi +69 -0
  79. data/rbi/growsurf_ruby/models/campaign/webhook_test_response.rbi +102 -0
  80. data/rbi/growsurf_ruby/models/campaign/webhook_update_params.rbi +98 -0
  81. data/rbi/growsurf_ruby/models/campaign.rbi +25 -4
  82. data/rbi/growsurf_ruby/models/campaign_retrieve_analytics_params.rbi +91 -0
  83. data/rbi/growsurf_ruby/models/campaign_retrieve_analytics_response.rbi +1011 -3
  84. data/rbi/growsurf_ruby/models/campaign_update_params.rbi +0 -15
  85. data/rbi/growsurf_ruby/models/commission_structure.rbi +8 -2
  86. data/rbi/growsurf_ruby/models.rbi +6 -0
  87. data/rbi/growsurf_ruby/resources/account.rbi +112 -0
  88. data/rbi/growsurf_ruby/resources/campaign/design.rbi +7 -5
  89. data/rbi/growsurf_ruby/resources/campaign/emails.rbi +7 -5
  90. data/rbi/growsurf_ruby/resources/campaign/installation.rbi +7 -4
  91. data/rbi/growsurf_ruby/resources/campaign/options.rbi +7 -5
  92. data/rbi/growsurf_ruby/resources/campaign/participant.rbi +160 -0
  93. data/rbi/growsurf_ruby/resources/campaign/rewards.rbi +37 -21
  94. data/rbi/growsurf_ruby/resources/campaign/webhooks.rbi +123 -0
  95. data/rbi/growsurf_ruby/resources/campaign.rbi +18 -2
  96. data/sig/growsurf_ruby/client.rbs +2 -0
  97. data/sig/growsurf_ruby/models/account.rbs +67 -0
  98. data/sig/growsurf_ruby/models/account_create_params.rbs +42 -0
  99. data/sig/growsurf_ruby/models/account_create_response.rbs +47 -0
  100. data/sig/growsurf_ruby/models/account_resend_verification_email_response.rbs +35 -0
  101. data/sig/growsurf_ruby/models/account_rotate_api_key_response.rbs +13 -0
  102. data/sig/growsurf_ruby/models/account_update_params.rbs +42 -0
  103. data/sig/growsurf_ruby/models/campaign/participant_activity_logs_response.rbs +59 -0
  104. data/sig/growsurf_ruby/models/campaign/participant_analytics_response.rbs +407 -0
  105. data/sig/growsurf_ruby/models/campaign/participant_bulk_delete_params.rbs +30 -0
  106. data/sig/growsurf_ruby/models/campaign/participant_bulk_delete_response.rbs +125 -0
  107. data/sig/growsurf_ruby/models/campaign/participant_email_params.rbs +61 -0
  108. data/sig/growsurf_ruby/models/campaign/participant_email_response.rbs +37 -0
  109. data/sig/growsurf_ruby/models/campaign/participant_list_activity_logs_params.rbs +47 -0
  110. data/sig/growsurf_ruby/models/campaign/participant_retrieve_analytics_params.rbs +90 -0
  111. data/sig/growsurf_ruby/models/campaign/participant_update_params.rbs +14 -0
  112. data/sig/growsurf_ruby/models/campaign/reward_create_params.rbs +0 -7
  113. data/sig/growsurf_ruby/models/campaign/reward_update_params.rbs +0 -7
  114. data/sig/growsurf_ruby/models/campaign/webhook.rbs +52 -0
  115. data/sig/growsurf_ruby/models/campaign/webhook_create_params.rbs +51 -0
  116. data/sig/growsurf_ruby/models/campaign/webhook_delete_params.rbs +30 -0
  117. data/sig/growsurf_ruby/models/campaign/webhook_delete_response.rbs +17 -0
  118. data/sig/growsurf_ruby/models/campaign/webhook_event.rbs +28 -0
  119. data/sig/growsurf_ruby/models/campaign/webhook_list_response.rbs +18 -0
  120. data/sig/growsurf_ruby/models/campaign/webhook_test_params.rbs +42 -0
  121. data/sig/growsurf_ruby/models/campaign/webhook_test_response.rbs +54 -0
  122. data/sig/growsurf_ruby/models/campaign/webhook_update_params.rbs +63 -0
  123. data/sig/growsurf_ruby/models/campaign_retrieve_analytics_params.rbs +35 -1
  124. data/sig/growsurf_ruby/models/campaign_retrieve_analytics_response.rbs +533 -3
  125. data/sig/growsurf_ruby/models/campaign_update_params.rbs +1 -4
  126. data/sig/growsurf_ruby/models/commission_structure.rbs +7 -2
  127. data/sig/growsurf_ruby/models/reward_tax_valuation.rbs +4 -1
  128. data/sig/growsurf_ruby/models.rbs +6 -0
  129. data/sig/growsurf_ruby/resources/account.rbs +38 -0
  130. data/sig/growsurf_ruby/resources/campaign/participant.rbs +37 -0
  131. data/sig/growsurf_ruby/resources/campaign/rewards.rbs +0 -2
  132. data/sig/growsurf_ruby/resources/campaign/webhooks.rbs +46 -0
  133. data/sig/growsurf_ruby/resources/campaign.rbs +4 -0
  134. metadata +77 -2
@@ -0,0 +1,123 @@
1
+ # typed: strong
2
+
3
+ module GrowsurfRuby
4
+ module Resources
5
+ class Campaign
6
+ class Webhooks
7
+ # Lists a program's webhooks (secrets are never returned).
8
+ sig do
9
+ params(
10
+ id: String,
11
+ request_options: GrowsurfRuby::RequestOptions::OrHash
12
+ ).returns(GrowsurfRuby::Models::Campaign::WebhookListResponse)
13
+ end
14
+ def list(
15
+ # GrowSurf program ID.
16
+ id,
17
+ request_options: {}
18
+ )
19
+ end
20
+
21
+ # Adds a webhook to the program.
22
+ sig do
23
+ params(
24
+ id: String,
25
+ payload_url: String,
26
+ events: T::Array[GrowsurfRuby::Campaign::WebhookEvent::OrSymbol],
27
+ is_enabled: T::Boolean,
28
+ secret: String,
29
+ request_options: GrowsurfRuby::RequestOptions::OrHash
30
+ ).returns(GrowsurfRuby::Models::Campaign::Webhook)
31
+ end
32
+ def create(
33
+ # Path param: GrowSurf program ID.
34
+ id,
35
+ # Body param: The URL that receives webhook deliveries.
36
+ payload_url:,
37
+ # Body param: The events this webhook is subscribed to. When omitted, it is
38
+ # subscribed to no events.
39
+ events: nil,
40
+ # Body param
41
+ is_enabled: nil,
42
+ # Body param: Write-only. Used to sign deliveries (the `GrowSurf-Signature` HMAC
43
+ # header). Never returned.
44
+ secret: nil,
45
+ request_options: {}
46
+ )
47
+ end
48
+
49
+ # Updates a webhook by id.
50
+ sig do
51
+ params(
52
+ webhook_id: String,
53
+ id: String,
54
+ events: T::Array[GrowsurfRuby::Campaign::WebhookEvent::OrSymbol],
55
+ is_enabled: T::Boolean,
56
+ payload_url: String,
57
+ secret: String,
58
+ request_options: GrowsurfRuby::RequestOptions::OrHash
59
+ ).returns(GrowsurfRuby::Models::Campaign::Webhook)
60
+ end
61
+ def update(
62
+ # Path param: The webhook id (`primary` for the program's primary webhook).
63
+ webhook_id,
64
+ # Path param: GrowSurf program ID.
65
+ id:,
66
+ # Body param
67
+ events: nil,
68
+ # Body param
69
+ is_enabled: nil,
70
+ # Body param
71
+ payload_url: nil,
72
+ # Body param: Write-only.
73
+ secret: nil,
74
+ request_options: {}
75
+ )
76
+ end
77
+
78
+ # Removes a webhook by id.
79
+ sig do
80
+ params(
81
+ webhook_id: String,
82
+ id: String,
83
+ request_options: GrowsurfRuby::RequestOptions::OrHash
84
+ ).returns(GrowsurfRuby::Models::Campaign::WebhookDeleteResponse)
85
+ end
86
+ def delete(
87
+ # The webhook id (`primary` for the program's primary webhook).
88
+ webhook_id,
89
+ # GrowSurf program ID.
90
+ id:,
91
+ request_options: {}
92
+ )
93
+ end
94
+
95
+ # Sends a live test event to a webhook using its stored URL and secret.
96
+ sig do
97
+ params(
98
+ webhook_id: String,
99
+ id: String,
100
+ event: GrowsurfRuby::Campaign::WebhookEvent::OrSymbol,
101
+ request_options: GrowsurfRuby::RequestOptions::OrHash
102
+ ).returns(GrowsurfRuby::Models::Campaign::WebhookTestResponse)
103
+ end
104
+ def test(
105
+ # Path param: The webhook id (`primary` for the program's primary webhook).
106
+ webhook_id,
107
+ # Path param: GrowSurf program ID.
108
+ id:,
109
+ # Body param: The event to simulate. When omitted, the webhook's first enabled
110
+ # event is used (returns `400` if it has no enabled events).
111
+ event: nil,
112
+ request_options: {}
113
+ )
114
+ end
115
+
116
+ # @api private
117
+ sig { params(client: GrowsurfRuby::Client).returns(T.attached_class) }
118
+ def self.new(client:)
119
+ end
120
+ end
121
+ end
122
+ end
123
+ end
@@ -34,6 +34,10 @@ module GrowsurfRuby
34
34
  sig { returns(GrowsurfRuby::Resources::Campaign::Installation) }
35
35
  attr_reader :installation
36
36
 
37
+ # Program webhook configuration operations.
38
+ sig { returns(GrowsurfRuby::Resources::Campaign::Webhooks) }
39
+ attr_reader :webhooks
40
+
37
41
  # Retrieves a program for the given program ID.
38
42
  sig do
39
43
  params(
@@ -110,8 +114,8 @@ module GrowsurfRuby
110
114
  company_name: nil,
111
115
  # Body param
112
116
  name: nil,
113
- # Body param: The program status. Transitions are validated; DELETED is not
114
- # allowed.
117
+ # Body param: The requested program status. `IN_PROGRESS` publishes or resumes
118
+ # the program; `COMPLETE` ends it. Any other value returns a `400`.
115
119
  status: nil,
116
120
  request_options: {}
117
121
  )
@@ -314,6 +318,9 @@ module GrowsurfRuby
314
318
  id: String,
315
319
  days: Integer,
316
320
  end_date: Integer,
321
+ include: String,
322
+ interval:
323
+ GrowsurfRuby::CampaignRetrieveAnalyticsParams::Interval::OrSymbol,
317
324
  start_date: Integer,
318
325
  request_options: GrowsurfRuby::RequestOptions::OrHash
319
326
  ).returns(GrowsurfRuby::Models::CampaignRetrieveAnalyticsResponse)
@@ -326,6 +333,15 @@ module GrowsurfRuby
326
333
  # End date of the analytics timeframe as a Unix timestamp in milliseconds.
327
334
  # Required if `days` is not set.
328
335
  end_date: nil,
336
+ # Comma-separated list of optional enrichments (opt-in to keep the default response
337
+ # lean): `previousPeriod` adds totals for the equal-length window immediately before
338
+ # the requested one; `statusCounts` adds reward (and, for affiliate programs,
339
+ # affiliate/commission/payout) status breakdowns; `rates` adds derived referral
340
+ # rates.
341
+ include: nil,
342
+ # When set to `day`, `week`, or `month`, the response also includes a `series` array
343
+ # with per-period totals. Defaults to `total` (no series).
344
+ interval: nil,
329
345
  # Start date of the analytics timeframe as a Unix timestamp in milliseconds.
330
346
  # Required if `days` is not set.
331
347
  start_date: nil,
@@ -10,6 +10,8 @@ module GrowsurfRuby
10
10
 
11
11
  attr_reader api_key: String
12
12
 
13
+ attr_reader account: GrowsurfRuby::Resources::Account
14
+
13
15
  attr_reader campaign: GrowsurfRuby::Resources::Campaign
14
16
 
15
17
  private def auth_headers: -> ::Hash[String, String]
@@ -0,0 +1,67 @@
1
+ module GrowsurfRuby
2
+ module Models
3
+ type account =
4
+ {
5
+ email: String,
6
+ id: String,
7
+ verification_status: GrowsurfRuby::Models::Account::verification_status,
8
+ company: String?,
9
+ created_at: Integer?,
10
+ first_name: String?,
11
+ last_name: String?,
12
+ verification_requested_at: Integer?
13
+ }
14
+
15
+ class Account < GrowsurfRuby::Internal::Type::BaseModel
16
+ attr_accessor email: String
17
+
18
+ attr_accessor id: String
19
+
20
+ attr_accessor verification_status: GrowsurfRuby::Models::Account::verification_status
21
+
22
+ attr_accessor company: String?
23
+
24
+ attr_accessor created_at: Integer?
25
+
26
+ attr_accessor first_name: String?
27
+
28
+ attr_accessor last_name: String?
29
+
30
+ attr_accessor verification_requested_at: Integer?
31
+
32
+ def initialize: (
33
+ email: String,
34
+ id: String,
35
+ verification_status: GrowsurfRuby::Models::Account::verification_status,
36
+ ?company: String?,
37
+ ?created_at: Integer?,
38
+ ?first_name: String?,
39
+ ?last_name: String?,
40
+ ?verification_requested_at: Integer?
41
+ ) -> void
42
+
43
+ def to_hash: -> {
44
+ email: String,
45
+ id: String,
46
+ verification_status: GrowsurfRuby::Models::Account::verification_status,
47
+ company: String?,
48
+ created_at: Integer?,
49
+ first_name: String?,
50
+ last_name: String?,
51
+ verification_requested_at: Integer?
52
+ }
53
+
54
+ type verification_status = :NOT_REQUESTED | :REQUESTED | :VERIFIED
55
+
56
+ module VerificationStatus
57
+ extend GrowsurfRuby::Internal::Type::Enum
58
+
59
+ NOT_REQUESTED: :NOT_REQUESTED
60
+ REQUESTED: :REQUESTED
61
+ VERIFIED: :VERIFIED
62
+
63
+ def self?.values: -> ::Array[GrowsurfRuby::Models::Account::verification_status]
64
+ end
65
+ end
66
+ end
67
+ end
@@ -0,0 +1,42 @@
1
+ module GrowsurfRuby
2
+ module Models
3
+ type account_create_params =
4
+ { email: String, company: String, first_name: String, last_name: String }
5
+ & GrowsurfRuby::Internal::Type::request_parameters
6
+
7
+ class AccountCreateParams < GrowsurfRuby::Internal::Type::BaseModel
8
+ extend GrowsurfRuby::Internal::Type::RequestParameters::Converter
9
+ include GrowsurfRuby::Internal::Type::RequestParameters
10
+
11
+ attr_accessor email: String
12
+
13
+ attr_reader company: String?
14
+
15
+ def company=: (String) -> String
16
+
17
+ attr_reader first_name: String?
18
+
19
+ def first_name=: (String) -> String
20
+
21
+ attr_reader last_name: String?
22
+
23
+ def last_name=: (String) -> String
24
+
25
+ def initialize: (
26
+ email: String,
27
+ ?company: String,
28
+ ?first_name: String,
29
+ ?last_name: String,
30
+ ?request_options: GrowsurfRuby::request_opts
31
+ ) -> void
32
+
33
+ def to_hash: -> {
34
+ email: String,
35
+ company: String,
36
+ first_name: String,
37
+ last_name: String,
38
+ request_options: GrowsurfRuby::RequestOptions
39
+ }
40
+ end
41
+ end
42
+ end
@@ -0,0 +1,47 @@
1
+ module GrowsurfRuby
2
+ module Models
3
+ type account_create_response =
4
+ {
5
+ api_key: String,
6
+ email: String,
7
+ id: String,
8
+ verification_status: GrowsurfRuby::Models::AccountCreateResponse::verification_status
9
+ }
10
+
11
+ class AccountCreateResponse < GrowsurfRuby::Internal::Type::BaseModel
12
+ attr_accessor api_key: String
13
+
14
+ attr_accessor email: String
15
+
16
+ attr_accessor id: String
17
+
18
+ attr_accessor verification_status: GrowsurfRuby::Models::AccountCreateResponse::verification_status
19
+
20
+ def initialize: (
21
+ api_key: String,
22
+ email: String,
23
+ id: String,
24
+ verification_status: GrowsurfRuby::Models::AccountCreateResponse::verification_status
25
+ ) -> void
26
+
27
+ def to_hash: -> {
28
+ api_key: String,
29
+ email: String,
30
+ id: String,
31
+ verification_status: GrowsurfRuby::Models::AccountCreateResponse::verification_status
32
+ }
33
+
34
+ type verification_status = :NOT_REQUESTED | :REQUESTED | :VERIFIED
35
+
36
+ module VerificationStatus
37
+ extend GrowsurfRuby::Internal::Type::Enum
38
+
39
+ NOT_REQUESTED: :NOT_REQUESTED
40
+ REQUESTED: :REQUESTED
41
+ VERIFIED: :VERIFIED
42
+
43
+ def self?.values: -> ::Array[GrowsurfRuby::Models::AccountCreateResponse::verification_status]
44
+ end
45
+ end
46
+ end
47
+ end
@@ -0,0 +1,35 @@
1
+ module GrowsurfRuby
2
+ module Models
3
+ type account_resend_verification_email_response =
4
+ {
5
+ status: GrowsurfRuby::Models::AccountResendVerificationEmailResponse::status,
6
+ success: bool
7
+ }
8
+
9
+ class AccountResendVerificationEmailResponse < GrowsurfRuby::Internal::Type::BaseModel
10
+ attr_accessor status: GrowsurfRuby::Models::AccountResendVerificationEmailResponse::status
11
+
12
+ attr_accessor success: bool
13
+
14
+ def initialize: (
15
+ status: GrowsurfRuby::Models::AccountResendVerificationEmailResponse::status,
16
+ success: bool
17
+ ) -> void
18
+
19
+ def to_hash: -> {
20
+ status: GrowsurfRuby::Models::AccountResendVerificationEmailResponse::status,
21
+ success: bool
22
+ }
23
+
24
+ type status = :SENT
25
+
26
+ module Status
27
+ extend GrowsurfRuby::Internal::Type::Enum
28
+
29
+ SENT: :SENT
30
+
31
+ def self?.values: -> ::Array[GrowsurfRuby::Models::AccountResendVerificationEmailResponse::status]
32
+ end
33
+ end
34
+ end
35
+ end
@@ -0,0 +1,13 @@
1
+ module GrowsurfRuby
2
+ module Models
3
+ type account_rotate_api_key_response = { api_key: String }
4
+
5
+ class AccountRotateAPIKeyResponse < GrowsurfRuby::Internal::Type::BaseModel
6
+ attr_accessor api_key: String
7
+
8
+ def initialize: (api_key: String) -> void
9
+
10
+ def to_hash: -> { api_key: String }
11
+ end
12
+ end
13
+ end
@@ -0,0 +1,42 @@
1
+ module GrowsurfRuby
2
+ module Models
3
+ type account_update_params =
4
+ {
5
+ company: String,
6
+ first_name: String,
7
+ last_name: String
8
+ }
9
+ & GrowsurfRuby::Internal::Type::request_parameters
10
+
11
+ class AccountUpdateParams < GrowsurfRuby::Internal::Type::BaseModel
12
+ extend GrowsurfRuby::Internal::Type::RequestParameters::Converter
13
+ include GrowsurfRuby::Internal::Type::RequestParameters
14
+
15
+ attr_reader company: String?
16
+
17
+ def company=: (String) -> String
18
+
19
+ attr_reader first_name: String?
20
+
21
+ def first_name=: (String) -> String
22
+
23
+ attr_reader last_name: String?
24
+
25
+ def last_name=: (String) -> String
26
+
27
+ def initialize: (
28
+ ?company: String,
29
+ ?first_name: String,
30
+ ?last_name: String,
31
+ ?request_options: GrowsurfRuby::request_opts
32
+ ) -> void
33
+
34
+ def to_hash: -> {
35
+ company: String,
36
+ first_name: String,
37
+ last_name: String,
38
+ request_options: GrowsurfRuby::RequestOptions
39
+ }
40
+ end
41
+ end
42
+ end
@@ -0,0 +1,59 @@
1
+ module GrowsurfRuby
2
+ module Models
3
+ module Campaign
4
+ type participant_activity_logs_response =
5
+ {
6
+ activity_logs: ::Array[GrowsurfRuby::Models::Campaign::ParticipantActivityLogsResponse::ActivityLog],
7
+ limit: Integer,
8
+ offset: Integer?
9
+ }
10
+
11
+ class ParticipantActivityLogsResponse < GrowsurfRuby::Internal::Type::BaseModel
12
+ attr_accessor activity_logs: ::Array[GrowsurfRuby::Models::Campaign::ParticipantActivityLogsResponse::ActivityLog]
13
+
14
+ attr_accessor limit: Integer
15
+
16
+ attr_accessor offset: Integer?
17
+
18
+ def initialize: (
19
+ activity_logs: ::Array[GrowsurfRuby::Models::Campaign::ParticipantActivityLogsResponse::ActivityLog],
20
+ limit: Integer,
21
+ ?offset: Integer?
22
+ ) -> void
23
+
24
+ def to_hash: -> {
25
+ activity_logs: ::Array[GrowsurfRuby::Models::Campaign::ParticipantActivityLogsResponse::ActivityLog],
26
+ limit: Integer,
27
+ offset: Integer?
28
+ }
29
+
30
+ type activity_log =
31
+ {
32
+ created_at: Integer,
33
+ text: String,
34
+ type: String
35
+ }
36
+
37
+ class ActivityLog < GrowsurfRuby::Internal::Type::BaseModel
38
+ attr_accessor created_at: Integer
39
+
40
+ attr_accessor text: String
41
+
42
+ attr_accessor type: String
43
+
44
+ def initialize: (
45
+ created_at: Integer,
46
+ text: String,
47
+ type: String
48
+ ) -> void
49
+
50
+ def to_hash: -> {
51
+ created_at: Integer,
52
+ text: String,
53
+ type: String
54
+ }
55
+ end
56
+ end
57
+ end
58
+ end
59
+ end