growsurf-ruby 0.0.2

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (224) hide show
  1. checksums.yaml +7 -0
  2. data/.ignore +2 -0
  3. data/CHANGELOG.md +11 -0
  4. data/README.md +234 -0
  5. data/SECURITY.md +23 -0
  6. data/lib/growsurf_ruby/client.rb +90 -0
  7. data/lib/growsurf_ruby/errors.rb +228 -0
  8. data/lib/growsurf_ruby/file_part.rb +58 -0
  9. data/lib/growsurf_ruby/internal/transport/base_client.rb +573 -0
  10. data/lib/growsurf_ruby/internal/transport/pooled_net_requester.rb +210 -0
  11. data/lib/growsurf_ruby/internal/type/array_of.rb +168 -0
  12. data/lib/growsurf_ruby/internal/type/base_model.rb +531 -0
  13. data/lib/growsurf_ruby/internal/type/base_page.rb +55 -0
  14. data/lib/growsurf_ruby/internal/type/boolean.rb +77 -0
  15. data/lib/growsurf_ruby/internal/type/converter.rb +327 -0
  16. data/lib/growsurf_ruby/internal/type/enum.rb +156 -0
  17. data/lib/growsurf_ruby/internal/type/file_input.rb +111 -0
  18. data/lib/growsurf_ruby/internal/type/hash_of.rb +188 -0
  19. data/lib/growsurf_ruby/internal/type/request_parameters.rb +42 -0
  20. data/lib/growsurf_ruby/internal/type/union.rb +254 -0
  21. data/lib/growsurf_ruby/internal/type/unknown.rb +81 -0
  22. data/lib/growsurf_ruby/internal/util.rb +966 -0
  23. data/lib/growsurf_ruby/internal.rb +20 -0
  24. data/lib/growsurf_ruby/models/campaign/commission_approve_params.rb +28 -0
  25. data/lib/growsurf_ruby/models/campaign/commission_approve_response.rb +18 -0
  26. data/lib/growsurf_ruby/models/campaign/commission_delete_params.rb +28 -0
  27. data/lib/growsurf_ruby/models/campaign/commission_delete_response.rb +18 -0
  28. data/lib/growsurf_ruby/models/campaign/fraud_risk_level.rb +18 -0
  29. data/lib/growsurf_ruby/models/campaign/participant.rb +495 -0
  30. data/lib/growsurf_ruby/models/campaign/participant_add_params.rb +93 -0
  31. data/lib/growsurf_ruby/models/campaign/participant_delete_params.rb +28 -0
  32. data/lib/growsurf_ruby/models/campaign/participant_delete_response.rb +18 -0
  33. data/lib/growsurf_ruby/models/campaign/participant_list_commissions_params.rb +68 -0
  34. data/lib/growsurf_ruby/models/campaign/participant_list_payouts_params.rb +67 -0
  35. data/lib/growsurf_ruby/models/campaign/participant_list_referrals_params.rb +117 -0
  36. data/lib/growsurf_ruby/models/campaign/participant_list_rewards_params.rb +46 -0
  37. data/lib/growsurf_ruby/models/campaign/participant_list_rewards_response.rb +30 -0
  38. data/lib/growsurf_ruby/models/campaign/participant_record_transaction_params.rb +170 -0
  39. data/lib/growsurf_ruby/models/campaign/participant_record_transaction_response.rb +91 -0
  40. data/lib/growsurf_ruby/models/campaign/participant_retrieve_params.rb +28 -0
  41. data/lib/growsurf_ruby/models/campaign/participant_reward.rb +103 -0
  42. data/lib/growsurf_ruby/models/campaign/participant_send_invites_params.rb +46 -0
  43. data/lib/growsurf_ruby/models/campaign/participant_send_invites_response.rb +30 -0
  44. data/lib/growsurf_ruby/models/campaign/participant_trigger_referral_params.rb +28 -0
  45. data/lib/growsurf_ruby/models/campaign/participant_trigger_referral_response.rb +24 -0
  46. data/lib/growsurf_ruby/models/campaign/participant_update_params.rb +100 -0
  47. data/lib/growsurf_ruby/models/campaign/referral_source.rb +17 -0
  48. data/lib/growsurf_ruby/models/campaign/referral_status.rb +19 -0
  49. data/lib/growsurf_ruby/models/campaign/reward_approve_params.rb +38 -0
  50. data/lib/growsurf_ruby/models/campaign/reward_approve_response.rb +18 -0
  51. data/lib/growsurf_ruby/models/campaign/reward_delete_params.rb +28 -0
  52. data/lib/growsurf_ruby/models/campaign/reward_delete_response.rb +18 -0
  53. data/lib/growsurf_ruby/models/campaign/reward_fulfill_params.rb +28 -0
  54. data/lib/growsurf_ruby/models/campaign/reward_fulfill_response.rb +18 -0
  55. data/lib/growsurf_ruby/models/campaign.rb +257 -0
  56. data/lib/growsurf_ruby/models/campaign_list_commissions_params.rb +59 -0
  57. data/lib/growsurf_ruby/models/campaign_list_leaderboard_params.rb +71 -0
  58. data/lib/growsurf_ruby/models/campaign_list_params.rb +14 -0
  59. data/lib/growsurf_ruby/models/campaign_list_participants_params.rb +37 -0
  60. data/lib/growsurf_ruby/models/campaign_list_payouts_params.rb +58 -0
  61. data/lib/growsurf_ruby/models/campaign_list_referrals_params.rb +108 -0
  62. data/lib/growsurf_ruby/models/campaign_list_response.rb +16 -0
  63. data/lib/growsurf_ruby/models/campaign_retrieve_analytics_params.rb +50 -0
  64. data/lib/growsurf_ruby/models/campaign_retrieve_analytics_response.rb +215 -0
  65. data/lib/growsurf_ruby/models/campaign_retrieve_params.rb +20 -0
  66. data/lib/growsurf_ruby/models/commission_structure.rb +137 -0
  67. data/lib/growsurf_ruby/models/participant_commission_list.rb +170 -0
  68. data/lib/growsurf_ruby/models/participant_list.rb +29 -0
  69. data/lib/growsurf_ruby/models/participant_payout_list.rb +136 -0
  70. data/lib/growsurf_ruby/models/referral_list.rb +96 -0
  71. data/lib/growsurf_ruby/models.rb +71 -0
  72. data/lib/growsurf_ruby/request_options.rb +77 -0
  73. data/lib/growsurf_ruby/resources/campaign/commission.rb +71 -0
  74. data/lib/growsurf_ruby/resources/campaign/participant.rb +446 -0
  75. data/lib/growsurf_ruby/resources/campaign/reward.rb +102 -0
  76. data/lib/growsurf_ruby/resources/campaign.rb +266 -0
  77. data/lib/growsurf_ruby/version.rb +5 -0
  78. data/lib/growsurf_ruby.rb +106 -0
  79. data/manifest.yaml +17 -0
  80. data/rbi/growsurf_ruby/client.rbi +51 -0
  81. data/rbi/growsurf_ruby/errors.rbi +205 -0
  82. data/rbi/growsurf_ruby/file_part.rbi +37 -0
  83. data/rbi/growsurf_ruby/internal/transport/base_client.rbi +305 -0
  84. data/rbi/growsurf_ruby/internal/transport/pooled_net_requester.rbi +84 -0
  85. data/rbi/growsurf_ruby/internal/type/array_of.rbi +104 -0
  86. data/rbi/growsurf_ruby/internal/type/base_model.rbi +314 -0
  87. data/rbi/growsurf_ruby/internal/type/base_page.rbi +43 -0
  88. data/rbi/growsurf_ruby/internal/type/boolean.rbi +58 -0
  89. data/rbi/growsurf_ruby/internal/type/converter.rbi +222 -0
  90. data/rbi/growsurf_ruby/internal/type/enum.rbi +82 -0
  91. data/rbi/growsurf_ruby/internal/type/file_input.rbi +59 -0
  92. data/rbi/growsurf_ruby/internal/type/hash_of.rbi +104 -0
  93. data/rbi/growsurf_ruby/internal/type/request_parameters.rbi +31 -0
  94. data/rbi/growsurf_ruby/internal/type/union.rbi +128 -0
  95. data/rbi/growsurf_ruby/internal/type/unknown.rbi +58 -0
  96. data/rbi/growsurf_ruby/internal/util.rbi +515 -0
  97. data/rbi/growsurf_ruby/internal.rbi +18 -0
  98. data/rbi/growsurf_ruby/models/campaign/commission_approve_params.rbi +48 -0
  99. data/rbi/growsurf_ruby/models/campaign/commission_approve_response.rbi +28 -0
  100. data/rbi/growsurf_ruby/models/campaign/commission_delete_params.rbi +48 -0
  101. data/rbi/growsurf_ruby/models/campaign/commission_delete_response.rbi +28 -0
  102. data/rbi/growsurf_ruby/models/campaign/fraud_risk_level.rbi +29 -0
  103. data/rbi/growsurf_ruby/models/campaign/participant.rbi +667 -0
  104. data/rbi/growsurf_ruby/models/campaign/participant_add_params.rbi +166 -0
  105. data/rbi/growsurf_ruby/models/campaign/participant_delete_params.rbi +48 -0
  106. data/rbi/growsurf_ruby/models/campaign/participant_delete_response.rbi +28 -0
  107. data/rbi/growsurf_ruby/models/campaign/participant_list_commissions_params.rbi +148 -0
  108. data/rbi/growsurf_ruby/models/campaign/participant_list_payouts_params.rbi +143 -0
  109. data/rbi/growsurf_ruby/models/campaign/participant_list_referrals_params.rbi +228 -0
  110. data/rbi/growsurf_ruby/models/campaign/participant_list_rewards_params.rbi +74 -0
  111. data/rbi/growsurf_ruby/models/campaign/participant_list_rewards_response.rbi +48 -0
  112. data/rbi/growsurf_ruby/models/campaign/participant_record_transaction_params.rbi +255 -0
  113. data/rbi/growsurf_ruby/models/campaign/participant_record_transaction_response.rbi +138 -0
  114. data/rbi/growsurf_ruby/models/campaign/participant_retrieve_params.rbi +48 -0
  115. data/rbi/growsurf_ruby/models/campaign/participant_reward.rbi +185 -0
  116. data/rbi/growsurf_ruby/models/campaign/participant_send_invites_params.rbi +70 -0
  117. data/rbi/growsurf_ruby/models/campaign/participant_send_invites_response.rbi +44 -0
  118. data/rbi/growsurf_ruby/models/campaign/participant_trigger_referral_params.rbi +48 -0
  119. data/rbi/growsurf_ruby/models/campaign/participant_trigger_referral_response.rbi +36 -0
  120. data/rbi/growsurf_ruby/models/campaign/participant_update_params.rbi +178 -0
  121. data/rbi/growsurf_ruby/models/campaign/referral_source.rbi +31 -0
  122. data/rbi/growsurf_ruby/models/campaign/referral_status.rbi +44 -0
  123. data/rbi/growsurf_ruby/models/campaign/reward_approve_params.rbi +63 -0
  124. data/rbi/growsurf_ruby/models/campaign/reward_approve_response.rbi +28 -0
  125. data/rbi/growsurf_ruby/models/campaign/reward_delete_params.rbi +48 -0
  126. data/rbi/growsurf_ruby/models/campaign/reward_delete_response.rbi +28 -0
  127. data/rbi/growsurf_ruby/models/campaign/reward_fulfill_params.rbi +48 -0
  128. data/rbi/growsurf_ruby/models/campaign/reward_fulfill_response.rbi +28 -0
  129. data/rbi/growsurf_ruby/models/campaign.rbi +376 -0
  130. data/rbi/growsurf_ruby/models/campaign_list_commissions_params.rbi +135 -0
  131. data/rbi/growsurf_ruby/models/campaign_list_leaderboard_params.rbi +171 -0
  132. data/rbi/growsurf_ruby/models/campaign_list_params.rbi +32 -0
  133. data/rbi/growsurf_ruby/models/campaign_list_participants_params.rbi +66 -0
  134. data/rbi/growsurf_ruby/models/campaign_list_payouts_params.rbi +127 -0
  135. data/rbi/growsurf_ruby/models/campaign_list_referrals_params.rbi +213 -0
  136. data/rbi/growsurf_ruby/models/campaign_list_response.rbi +32 -0
  137. data/rbi/growsurf_ruby/models/campaign_retrieve_analytics_params.rbi +81 -0
  138. data/rbi/growsurf_ruby/models/campaign_retrieve_analytics_response.rbi +320 -0
  139. data/rbi/growsurf_ruby/models/campaign_retrieve_params.rbi +38 -0
  140. data/rbi/growsurf_ruby/models/commission_structure.rbi +174 -0
  141. data/rbi/growsurf_ruby/models/participant_commission_list.rbi +269 -0
  142. data/rbi/growsurf_ruby/models/participant_list.rbi +44 -0
  143. data/rbi/growsurf_ruby/models/participant_payout_list.rbi +219 -0
  144. data/rbi/growsurf_ruby/models/referral_list.rbi +129 -0
  145. data/rbi/growsurf_ruby/models.rbi +38 -0
  146. data/rbi/growsurf_ruby/request_options.rbi +59 -0
  147. data/rbi/growsurf_ruby/resources/campaign/commission.rbi +49 -0
  148. data/rbi/growsurf_ruby/resources/campaign/participant.rbi +385 -0
  149. data/rbi/growsurf_ruby/resources/campaign/reward.rbi +70 -0
  150. data/rbi/growsurf_ruby/resources/campaign.rbi +205 -0
  151. data/rbi/growsurf_ruby/version.rbi +5 -0
  152. data/sig/growsurf_ruby/client.rbs +26 -0
  153. data/sig/growsurf_ruby/errors.rbs +117 -0
  154. data/sig/growsurf_ruby/file_part.rbs +21 -0
  155. data/sig/growsurf_ruby/internal/transport/base_client.rbs +133 -0
  156. data/sig/growsurf_ruby/internal/transport/pooled_net_requester.rbs +48 -0
  157. data/sig/growsurf_ruby/internal/type/array_of.rbs +48 -0
  158. data/sig/growsurf_ruby/internal/type/base_model.rbs +104 -0
  159. data/sig/growsurf_ruby/internal/type/base_page.rbs +24 -0
  160. data/sig/growsurf_ruby/internal/type/boolean.rbs +26 -0
  161. data/sig/growsurf_ruby/internal/type/converter.rbs +79 -0
  162. data/sig/growsurf_ruby/internal/type/enum.rbs +32 -0
  163. data/sig/growsurf_ruby/internal/type/file_input.rbs +25 -0
  164. data/sig/growsurf_ruby/internal/type/hash_of.rbs +48 -0
  165. data/sig/growsurf_ruby/internal/type/request_parameters.rbs +19 -0
  166. data/sig/growsurf_ruby/internal/type/union.rbs +52 -0
  167. data/sig/growsurf_ruby/internal/type/unknown.rbs +26 -0
  168. data/sig/growsurf_ruby/internal/util.rbs +199 -0
  169. data/sig/growsurf_ruby/internal.rbs +9 -0
  170. data/sig/growsurf_ruby/models/campaign/commission_approve_params.rbs +30 -0
  171. data/sig/growsurf_ruby/models/campaign/commission_approve_response.rbs +15 -0
  172. data/sig/growsurf_ruby/models/campaign/commission_delete_params.rbs +30 -0
  173. data/sig/growsurf_ruby/models/campaign/commission_delete_response.rbs +15 -0
  174. data/sig/growsurf_ruby/models/campaign/fraud_risk_level.rbs +17 -0
  175. data/sig/growsurf_ruby/models/campaign/participant.rbs +455 -0
  176. data/sig/growsurf_ruby/models/campaign/participant_add_params.rbs +95 -0
  177. data/sig/growsurf_ruby/models/campaign/participant_delete_params.rbs +30 -0
  178. data/sig/growsurf_ruby/models/campaign/participant_delete_response.rbs +15 -0
  179. data/sig/growsurf_ruby/models/campaign/participant_list_commissions_params.rbs +70 -0
  180. data/sig/growsurf_ruby/models/campaign/participant_list_payouts_params.rbs +69 -0
  181. data/sig/growsurf_ruby/models/campaign/participant_list_referrals_params.rbs +123 -0
  182. data/sig/growsurf_ruby/models/campaign/participant_list_rewards_params.rbs +47 -0
  183. data/sig/growsurf_ruby/models/campaign/participant_list_rewards_response.rbs +32 -0
  184. data/sig/growsurf_ruby/models/campaign/participant_record_transaction_params.rbs +194 -0
  185. data/sig/growsurf_ruby/models/campaign/participant_record_transaction_response.rbs +84 -0
  186. data/sig/growsurf_ruby/models/campaign/participant_retrieve_params.rbs +30 -0
  187. data/sig/growsurf_ruby/models/campaign/participant_reward.rbs +111 -0
  188. data/sig/growsurf_ruby/models/campaign/participant_send_invites_params.rbs +48 -0
  189. data/sig/growsurf_ruby/models/campaign/participant_send_invites_response.rbs +28 -0
  190. data/sig/growsurf_ruby/models/campaign/participant_trigger_referral_params.rbs +30 -0
  191. data/sig/growsurf_ruby/models/campaign/participant_trigger_referral_response.rbs +20 -0
  192. data/sig/growsurf_ruby/models/campaign/participant_update_params.rbs +104 -0
  193. data/sig/growsurf_ruby/models/campaign/referral_source.rbs +16 -0
  194. data/sig/growsurf_ruby/models/campaign/referral_status.rbs +19 -0
  195. data/sig/growsurf_ruby/models/campaign/reward_approve_params.rbs +36 -0
  196. data/sig/growsurf_ruby/models/campaign/reward_approve_response.rbs +15 -0
  197. data/sig/growsurf_ruby/models/campaign/reward_delete_params.rbs +30 -0
  198. data/sig/growsurf_ruby/models/campaign/reward_delete_response.rbs +15 -0
  199. data/sig/growsurf_ruby/models/campaign/reward_fulfill_params.rbs +30 -0
  200. data/sig/growsurf_ruby/models/campaign/reward_fulfill_response.rbs +15 -0
  201. data/sig/growsurf_ruby/models/campaign.rbs +221 -0
  202. data/sig/growsurf_ruby/models/campaign_list_commissions_params.rbs +63 -0
  203. data/sig/growsurf_ruby/models/campaign_list_leaderboard_params.rbs +83 -0
  204. data/sig/growsurf_ruby/models/campaign_list_params.rbs +15 -0
  205. data/sig/growsurf_ruby/models/campaign_list_participants_params.rbs +36 -0
  206. data/sig/growsurf_ruby/models/campaign_list_payouts_params.rbs +62 -0
  207. data/sig/growsurf_ruby/models/campaign_list_referrals_params.rbs +116 -0
  208. data/sig/growsurf_ruby/models/campaign_list_response.rbs +14 -0
  209. data/sig/growsurf_ruby/models/campaign_retrieve_analytics_params.rbs +42 -0
  210. data/sig/growsurf_ruby/models/campaign_retrieve_analytics_response.rbs +217 -0
  211. data/sig/growsurf_ruby/models/campaign_retrieve_params.rbs +23 -0
  212. data/sig/growsurf_ruby/models/commission_structure.rbs +121 -0
  213. data/sig/growsurf_ruby/models/participant_commission_list.rbs +166 -0
  214. data/sig/growsurf_ruby/models/participant_list.rbs +30 -0
  215. data/sig/growsurf_ruby/models/participant_payout_list.rbs +136 -0
  216. data/sig/growsurf_ruby/models/referral_list.rbs +92 -0
  217. data/sig/growsurf_ruby/models.rbs +31 -0
  218. data/sig/growsurf_ruby/request_options.rbs +36 -0
  219. data/sig/growsurf_ruby/resources/campaign/commission.rbs +21 -0
  220. data/sig/growsurf_ruby/resources/campaign/participant.rbs +133 -0
  221. data/sig/growsurf_ruby/resources/campaign/reward.rbs +28 -0
  222. data/sig/growsurf_ruby/resources/campaign.rbs +76 -0
  223. data/sig/growsurf_ruby/version.rbs +3 -0
  224. metadata +295 -0
@@ -0,0 +1,48 @@
1
+ module GrowsurfRuby
2
+ module Models
3
+ module Campaign
4
+ type participant_send_invites_params =
5
+ {
6
+ id: String,
7
+ participant_id_or_email: String,
8
+ email_addresses: ::Array[String],
9
+ message_text: String,
10
+ subject_text: String
11
+ }
12
+ & GrowsurfRuby::Internal::Type::request_parameters
13
+
14
+ class ParticipantSendInvitesParams < GrowsurfRuby::Internal::Type::BaseModel
15
+ extend GrowsurfRuby::Internal::Type::RequestParameters::Converter
16
+ include GrowsurfRuby::Internal::Type::RequestParameters
17
+
18
+ attr_accessor id: String
19
+
20
+ attr_accessor participant_id_or_email: String
21
+
22
+ attr_accessor email_addresses: ::Array[String]
23
+
24
+ attr_accessor message_text: String
25
+
26
+ attr_accessor subject_text: String
27
+
28
+ def initialize: (
29
+ id: String,
30
+ participant_id_or_email: String,
31
+ email_addresses: ::Array[String],
32
+ message_text: String,
33
+ subject_text: String,
34
+ ?request_options: GrowsurfRuby::request_opts
35
+ ) -> void
36
+
37
+ def to_hash: -> {
38
+ id: String,
39
+ participant_id_or_email: String,
40
+ email_addresses: ::Array[String],
41
+ message_text: String,
42
+ subject_text: String,
43
+ request_options: GrowsurfRuby::RequestOptions
44
+ }
45
+ end
46
+ end
47
+ end
48
+ end
@@ -0,0 +1,28 @@
1
+ module GrowsurfRuby
2
+ module Models
3
+ module Campaign
4
+ type participant_send_invites_response =
5
+ { invites_sent: Integer, message_type: String, success: bool }
6
+
7
+ class ParticipantSendInvitesResponse < GrowsurfRuby::Internal::Type::BaseModel
8
+ attr_accessor invites_sent: Integer
9
+
10
+ attr_accessor message_type: String
11
+
12
+ attr_accessor success: bool
13
+
14
+ def initialize: (
15
+ invites_sent: Integer,
16
+ message_type: String,
17
+ success: bool
18
+ ) -> void
19
+
20
+ def to_hash: -> {
21
+ invites_sent: Integer,
22
+ message_type: String,
23
+ success: bool
24
+ }
25
+ end
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,30 @@
1
+ module GrowsurfRuby
2
+ module Models
3
+ module Campaign
4
+ type participant_trigger_referral_params =
5
+ { id: String, participant_id_or_email: String }
6
+ & GrowsurfRuby::Internal::Type::request_parameters
7
+
8
+ class ParticipantTriggerReferralParams < GrowsurfRuby::Internal::Type::BaseModel
9
+ extend GrowsurfRuby::Internal::Type::RequestParameters::Converter
10
+ include GrowsurfRuby::Internal::Type::RequestParameters
11
+
12
+ attr_accessor id: String
13
+
14
+ attr_accessor participant_id_or_email: String
15
+
16
+ def initialize: (
17
+ id: String,
18
+ participant_id_or_email: String,
19
+ ?request_options: GrowsurfRuby::request_opts
20
+ ) -> void
21
+
22
+ def to_hash: -> {
23
+ id: String,
24
+ participant_id_or_email: String,
25
+ request_options: GrowsurfRuby::RequestOptions
26
+ }
27
+ end
28
+ end
29
+ end
30
+ end
@@ -0,0 +1,20 @@
1
+ module GrowsurfRuby
2
+ module Models
3
+ module Campaign
4
+ type participant_trigger_referral_response =
5
+ { success: bool, message: String }
6
+
7
+ class ParticipantTriggerReferralResponse < GrowsurfRuby::Internal::Type::BaseModel
8
+ attr_accessor success: bool
9
+
10
+ attr_reader message: String?
11
+
12
+ def message=: (String) -> String
13
+
14
+ def initialize: (success: bool, ?message: String) -> void
15
+
16
+ def to_hash: -> { success: bool, message: String }
17
+ end
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,104 @@
1
+ module GrowsurfRuby
2
+ module Models
3
+ module Campaign
4
+ type participant_update_params =
5
+ {
6
+ id: String,
7
+ participant_id_or_email: String,
8
+ email: String,
9
+ first_name: String,
10
+ last_name: String,
11
+ metadata: ::Hash[Symbol, top],
12
+ referral_status: GrowsurfRuby::Models::Campaign::ParticipantUpdateParams::referral_status,
13
+ referred_by: String,
14
+ unsubscribed: bool,
15
+ vanity_keys: ::Array[String]
16
+ }
17
+ & GrowsurfRuby::Internal::Type::request_parameters
18
+
19
+ class ParticipantUpdateParams < GrowsurfRuby::Internal::Type::BaseModel
20
+ extend GrowsurfRuby::Internal::Type::RequestParameters::Converter
21
+ include GrowsurfRuby::Internal::Type::RequestParameters
22
+
23
+ attr_accessor id: String
24
+
25
+ attr_accessor participant_id_or_email: String
26
+
27
+ attr_reader email: String?
28
+
29
+ def email=: (String) -> String
30
+
31
+ attr_reader first_name: String?
32
+
33
+ def first_name=: (String) -> String
34
+
35
+ attr_reader last_name: String?
36
+
37
+ def last_name=: (String) -> String
38
+
39
+ attr_reader metadata: ::Hash[Symbol, top]?
40
+
41
+ def metadata=: (::Hash[Symbol, top]) -> ::Hash[Symbol, top]
42
+
43
+ attr_reader referral_status: GrowsurfRuby::Models::Campaign::ParticipantUpdateParams::referral_status?
44
+
45
+ def referral_status=: (
46
+ GrowsurfRuby::Models::Campaign::ParticipantUpdateParams::referral_status
47
+ ) -> GrowsurfRuby::Models::Campaign::ParticipantUpdateParams::referral_status
48
+
49
+ attr_reader referred_by: String?
50
+
51
+ def referred_by=: (String) -> String
52
+
53
+ attr_reader unsubscribed: bool?
54
+
55
+ def unsubscribed=: (bool) -> bool
56
+
57
+ attr_reader vanity_keys: ::Array[String]?
58
+
59
+ def vanity_keys=: (::Array[String]) -> ::Array[String]
60
+
61
+ def initialize: (
62
+ id: String,
63
+ participant_id_or_email: String,
64
+ ?email: String,
65
+ ?first_name: String,
66
+ ?last_name: String,
67
+ ?metadata: ::Hash[Symbol, top],
68
+ ?referral_status: GrowsurfRuby::Models::Campaign::ParticipantUpdateParams::referral_status,
69
+ ?referred_by: String,
70
+ ?unsubscribed: bool,
71
+ ?vanity_keys: ::Array[String],
72
+ ?request_options: GrowsurfRuby::request_opts
73
+ ) -> void
74
+
75
+ def to_hash: -> {
76
+ id: String,
77
+ participant_id_or_email: String,
78
+ email: String,
79
+ first_name: String,
80
+ last_name: String,
81
+ metadata: ::Hash[Symbol, top],
82
+ referral_status: GrowsurfRuby::Models::Campaign::ParticipantUpdateParams::referral_status,
83
+ referred_by: String,
84
+ unsubscribed: bool,
85
+ vanity_keys: ::Array[String],
86
+ request_options: GrowsurfRuby::RequestOptions
87
+ }
88
+
89
+ type referral_status =
90
+ :CREDIT_PENDING | :CREDIT_AWARDED | :CREDIT_EXPIRED
91
+
92
+ module ReferralStatus
93
+ extend GrowsurfRuby::Internal::Type::Enum
94
+
95
+ CREDIT_PENDING: :CREDIT_PENDING
96
+ CREDIT_AWARDED: :CREDIT_AWARDED
97
+ CREDIT_EXPIRED: :CREDIT_EXPIRED
98
+
99
+ def self?.values: -> ::Array[GrowsurfRuby::Models::Campaign::ParticipantUpdateParams::referral_status]
100
+ end
101
+ end
102
+ end
103
+ end
104
+ end
@@ -0,0 +1,16 @@
1
+ module GrowsurfRuby
2
+ module Models
3
+ module Campaign
4
+ type referral_source = :DIRECT | :PARTICIPANT
5
+
6
+ module ReferralSource
7
+ extend GrowsurfRuby::Internal::Type::Enum
8
+
9
+ DIRECT: :DIRECT
10
+ PARTICIPANT: :PARTICIPANT
11
+
12
+ def self?.values: -> ::Array[GrowsurfRuby::Models::Campaign::referral_source]
13
+ end
14
+ end
15
+ end
16
+ end
@@ -0,0 +1,19 @@
1
+ module GrowsurfRuby
2
+ module Models
3
+ module Campaign
4
+ type referral_status =
5
+ :CREDIT_PENDING | :CREDIT_AWARDED | :CREDIT_EXPIRED | :INVITE_SENT
6
+
7
+ module ReferralStatus
8
+ extend GrowsurfRuby::Internal::Type::Enum
9
+
10
+ CREDIT_PENDING: :CREDIT_PENDING
11
+ CREDIT_AWARDED: :CREDIT_AWARDED
12
+ CREDIT_EXPIRED: :CREDIT_EXPIRED
13
+ INVITE_SENT: :INVITE_SENT
14
+
15
+ def self?.values: -> ::Array[GrowsurfRuby::Models::Campaign::referral_status]
16
+ end
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,36 @@
1
+ module GrowsurfRuby
2
+ module Models
3
+ module Campaign
4
+ type reward_approve_params =
5
+ { id: String, reward_id: String, fulfill: bool }
6
+ & GrowsurfRuby::Internal::Type::request_parameters
7
+
8
+ class RewardApproveParams < GrowsurfRuby::Internal::Type::BaseModel
9
+ extend GrowsurfRuby::Internal::Type::RequestParameters::Converter
10
+ include GrowsurfRuby::Internal::Type::RequestParameters
11
+
12
+ attr_accessor id: String
13
+
14
+ attr_accessor reward_id: String
15
+
16
+ attr_reader fulfill: bool?
17
+
18
+ def fulfill=: (bool) -> bool
19
+
20
+ def initialize: (
21
+ id: String,
22
+ reward_id: String,
23
+ ?fulfill: bool,
24
+ ?request_options: GrowsurfRuby::request_opts
25
+ ) -> void
26
+
27
+ def to_hash: -> {
28
+ id: String,
29
+ reward_id: String,
30
+ fulfill: bool,
31
+ request_options: GrowsurfRuby::RequestOptions
32
+ }
33
+ end
34
+ end
35
+ end
36
+ end
@@ -0,0 +1,15 @@
1
+ module GrowsurfRuby
2
+ module Models
3
+ module Campaign
4
+ type reward_approve_response = { success: bool }
5
+
6
+ class RewardApproveResponse < GrowsurfRuby::Internal::Type::BaseModel
7
+ attr_accessor success: bool
8
+
9
+ def initialize: (success: bool) -> void
10
+
11
+ def to_hash: -> { success: bool }
12
+ end
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,30 @@
1
+ module GrowsurfRuby
2
+ module Models
3
+ module Campaign
4
+ type reward_delete_params =
5
+ { id: String, reward_id: String }
6
+ & GrowsurfRuby::Internal::Type::request_parameters
7
+
8
+ class RewardDeleteParams < GrowsurfRuby::Internal::Type::BaseModel
9
+ extend GrowsurfRuby::Internal::Type::RequestParameters::Converter
10
+ include GrowsurfRuby::Internal::Type::RequestParameters
11
+
12
+ attr_accessor id: String
13
+
14
+ attr_accessor reward_id: String
15
+
16
+ def initialize: (
17
+ id: String,
18
+ reward_id: String,
19
+ ?request_options: GrowsurfRuby::request_opts
20
+ ) -> void
21
+
22
+ def to_hash: -> {
23
+ id: String,
24
+ reward_id: String,
25
+ request_options: GrowsurfRuby::RequestOptions
26
+ }
27
+ end
28
+ end
29
+ end
30
+ end
@@ -0,0 +1,15 @@
1
+ module GrowsurfRuby
2
+ module Models
3
+ module Campaign
4
+ type reward_delete_response = { success: bool }
5
+
6
+ class RewardDeleteResponse < GrowsurfRuby::Internal::Type::BaseModel
7
+ attr_accessor success: bool
8
+
9
+ def initialize: (success: bool) -> void
10
+
11
+ def to_hash: -> { success: bool }
12
+ end
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,30 @@
1
+ module GrowsurfRuby
2
+ module Models
3
+ module Campaign
4
+ type reward_fulfill_params =
5
+ { id: String, reward_id: String }
6
+ & GrowsurfRuby::Internal::Type::request_parameters
7
+
8
+ class RewardFulfillParams < GrowsurfRuby::Internal::Type::BaseModel
9
+ extend GrowsurfRuby::Internal::Type::RequestParameters::Converter
10
+ include GrowsurfRuby::Internal::Type::RequestParameters
11
+
12
+ attr_accessor id: String
13
+
14
+ attr_accessor reward_id: String
15
+
16
+ def initialize: (
17
+ id: String,
18
+ reward_id: String,
19
+ ?request_options: GrowsurfRuby::request_opts
20
+ ) -> void
21
+
22
+ def to_hash: -> {
23
+ id: String,
24
+ reward_id: String,
25
+ request_options: GrowsurfRuby::RequestOptions
26
+ }
27
+ end
28
+ end
29
+ end
30
+ end
@@ -0,0 +1,15 @@
1
+ module GrowsurfRuby
2
+ module Models
3
+ module Campaign
4
+ type reward_fulfill_response = { success: bool }
5
+
6
+ class RewardFulfillResponse < GrowsurfRuby::Internal::Type::BaseModel
7
+ attr_accessor success: bool
8
+
9
+ def initialize: (success: bool) -> void
10
+
11
+ def to_hash: -> { success: bool }
12
+ end
13
+ end
14
+ end
15
+ end
@@ -0,0 +1,221 @@
1
+ module GrowsurfRuby
2
+ module Models
3
+ type campaign_api =
4
+ {
5
+ id: String,
6
+ impression_count: Integer,
7
+ invite_count: Integer,
8
+ name: String,
9
+ participant_count: Integer,
10
+ referral_count: Integer,
11
+ rewards: ::Array[GrowsurfRuby::CampaignAPI::Reward],
12
+ status: GrowsurfRuby::Models::CampaignAPI::status,
13
+ type: GrowsurfRuby::Models::CampaignAPI::type_,
14
+ winner_count: Integer,
15
+ currency_iso: String
16
+ }
17
+
18
+ class CampaignAPI < GrowsurfRuby::Internal::Type::BaseModel
19
+ attr_accessor id: String
20
+
21
+ attr_accessor impression_count: Integer
22
+
23
+ attr_accessor invite_count: Integer
24
+
25
+ attr_accessor name: String
26
+
27
+ attr_accessor participant_count: Integer
28
+
29
+ attr_accessor referral_count: Integer
30
+
31
+ attr_accessor rewards: ::Array[GrowsurfRuby::CampaignAPI::Reward]
32
+
33
+ attr_accessor status: GrowsurfRuby::Models::CampaignAPI::status
34
+
35
+ attr_accessor type: GrowsurfRuby::Models::CampaignAPI::type_
36
+
37
+ attr_accessor winner_count: Integer
38
+
39
+ attr_reader currency_iso: String?
40
+
41
+ def currency_iso=: (String) -> String
42
+
43
+ def initialize: (
44
+ id: String,
45
+ impression_count: Integer,
46
+ invite_count: Integer,
47
+ name: String,
48
+ participant_count: Integer,
49
+ referral_count: Integer,
50
+ rewards: ::Array[GrowsurfRuby::CampaignAPI::Reward],
51
+ status: GrowsurfRuby::Models::CampaignAPI::status,
52
+ type: GrowsurfRuby::Models::CampaignAPI::type_,
53
+ winner_count: Integer,
54
+ ?currency_iso: String
55
+ ) -> void
56
+
57
+ def to_hash: -> {
58
+ id: String,
59
+ impression_count: Integer,
60
+ invite_count: Integer,
61
+ name: String,
62
+ participant_count: Integer,
63
+ referral_count: Integer,
64
+ rewards: ::Array[GrowsurfRuby::CampaignAPI::Reward],
65
+ status: GrowsurfRuby::Models::CampaignAPI::status,
66
+ type: GrowsurfRuby::Models::CampaignAPI::type_,
67
+ winner_count: Integer,
68
+ currency_iso: String
69
+ }
70
+
71
+ type reward =
72
+ {
73
+ id: String,
74
+ is_unlimited: bool,
75
+ metadata: ::Hash[Symbol, top],
76
+ type: GrowsurfRuby::Models::CampaignAPI::Reward::type_,
77
+ commission_structure: GrowsurfRuby::CommissionStructure?,
78
+ conversions_required: Integer?,
79
+ coupon_code: String?,
80
+ description: String?,
81
+ image_url: String?,
82
+ limit: Integer?,
83
+ limit_duration: GrowsurfRuby::Models::CampaignAPI::Reward::limit_duration?,
84
+ next_milestone_prefix: String?,
85
+ next_milestone_suffix: String?,
86
+ number_of_winners: Integer?,
87
+ order: Integer?,
88
+ referral_description: String?,
89
+ referred_reward_upfront: bool
90
+ }
91
+
92
+ class Reward < GrowsurfRuby::Internal::Type::BaseModel
93
+ attr_accessor id: String
94
+
95
+ attr_accessor is_unlimited: bool
96
+
97
+ attr_accessor metadata: ::Hash[Symbol, top]
98
+
99
+ attr_accessor type: GrowsurfRuby::Models::CampaignAPI::Reward::type_
100
+
101
+ attr_accessor commission_structure: GrowsurfRuby::CommissionStructure?
102
+
103
+ attr_accessor conversions_required: Integer?
104
+
105
+ attr_accessor coupon_code: String?
106
+
107
+ attr_accessor description: String?
108
+
109
+ attr_accessor image_url: String?
110
+
111
+ attr_accessor limit: Integer?
112
+
113
+ attr_accessor limit_duration: GrowsurfRuby::Models::CampaignAPI::Reward::limit_duration?
114
+
115
+ attr_accessor next_milestone_prefix: String?
116
+
117
+ attr_accessor next_milestone_suffix: String?
118
+
119
+ attr_accessor number_of_winners: Integer?
120
+
121
+ attr_accessor order: Integer?
122
+
123
+ attr_accessor referral_description: String?
124
+
125
+ attr_reader referred_reward_upfront: bool?
126
+
127
+ def referred_reward_upfront=: (bool) -> bool
128
+
129
+ def initialize: (
130
+ id: String,
131
+ is_unlimited: bool,
132
+ metadata: ::Hash[Symbol, top],
133
+ type: GrowsurfRuby::Models::CampaignAPI::Reward::type_,
134
+ ?commission_structure: GrowsurfRuby::CommissionStructure?,
135
+ ?conversions_required: Integer?,
136
+ ?coupon_code: String?,
137
+ ?description: String?,
138
+ ?image_url: String?,
139
+ ?limit: Integer?,
140
+ ?limit_duration: GrowsurfRuby::Models::CampaignAPI::Reward::limit_duration?,
141
+ ?next_milestone_prefix: String?,
142
+ ?next_milestone_suffix: String?,
143
+ ?number_of_winners: Integer?,
144
+ ?order: Integer?,
145
+ ?referral_description: String?,
146
+ ?referred_reward_upfront: bool
147
+ ) -> void
148
+
149
+ def to_hash: -> {
150
+ id: String,
151
+ is_unlimited: bool,
152
+ metadata: ::Hash[Symbol, top],
153
+ type: GrowsurfRuby::Models::CampaignAPI::Reward::type_,
154
+ commission_structure: GrowsurfRuby::CommissionStructure?,
155
+ conversions_required: Integer?,
156
+ coupon_code: String?,
157
+ description: String?,
158
+ image_url: String?,
159
+ limit: Integer?,
160
+ limit_duration: GrowsurfRuby::Models::CampaignAPI::Reward::limit_duration?,
161
+ next_milestone_prefix: String?,
162
+ next_milestone_suffix: String?,
163
+ number_of_winners: Integer?,
164
+ order: Integer?,
165
+ referral_description: String?,
166
+ referred_reward_upfront: bool
167
+ }
168
+
169
+ type type_ =
170
+ :SINGLE_SIDED | :DOUBLE_SIDED | :MILESTONE | :LEADERBOARD | :AFFILIATE
171
+
172
+ module Type
173
+ extend GrowsurfRuby::Internal::Type::Enum
174
+
175
+ SINGLE_SIDED: :SINGLE_SIDED
176
+ DOUBLE_SIDED: :DOUBLE_SIDED
177
+ MILESTONE: :MILESTONE
178
+ LEADERBOARD: :LEADERBOARD
179
+ AFFILIATE: :AFFILIATE
180
+
181
+ def self?.values: -> ::Array[GrowsurfRuby::Models::CampaignAPI::Reward::type_]
182
+ end
183
+
184
+ type limit_duration = :IN_TOTAL | :PER_MONTH
185
+
186
+ module LimitDuration
187
+ extend GrowsurfRuby::Internal::Type::Enum
188
+
189
+ IN_TOTAL: :IN_TOTAL
190
+ PER_MONTH: :PER_MONTH
191
+
192
+ def self?.values: -> ::Array[GrowsurfRuby::Models::CampaignAPI::Reward::limit_duration]
193
+ end
194
+ end
195
+
196
+ type status = :DRAFT | :IN_PROGRESS | :COMPLETE | :DELETED
197
+
198
+ module Status
199
+ extend GrowsurfRuby::Internal::Type::Enum
200
+
201
+ DRAFT: :DRAFT
202
+ IN_PROGRESS: :IN_PROGRESS
203
+ COMPLETE: :COMPLETE
204
+ DELETED: :DELETED
205
+
206
+ def self?.values: -> ::Array[GrowsurfRuby::Models::CampaignAPI::status]
207
+ end
208
+
209
+ type type_ = :REFERRAL | :AFFILIATE
210
+
211
+ module Type
212
+ extend GrowsurfRuby::Internal::Type::Enum
213
+
214
+ REFERRAL: :REFERRAL
215
+ AFFILIATE: :AFFILIATE
216
+
217
+ def self?.values: -> ::Array[GrowsurfRuby::Models::CampaignAPI::type_]
218
+ end
219
+ end
220
+ end
221
+ end