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,20 @@
1
+ # frozen_string_literal: true
2
+
3
+ module GrowsurfRuby
4
+ module Internal
5
+ extend GrowsurfRuby::Internal::Util::SorbetRuntimeSupport
6
+
7
+ OMIT =
8
+ Object.new.tap do
9
+ _1.define_singleton_method(:inspect) { "#<#{GrowsurfRuby::Internal}::OMIT>" }
10
+ end
11
+ .freeze
12
+
13
+ define_sorbet_constant!(:AnyHash) do
14
+ T.type_alias { T::Hash[Symbol, T.anything] }
15
+ end
16
+ define_sorbet_constant!(:FileInput) do
17
+ T.type_alias { T.any(Pathname, StringIO, IO, String, GrowsurfRuby::FilePart) }
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,28 @@
1
+ # frozen_string_literal: true
2
+
3
+ module GrowsurfRuby
4
+ module Models
5
+ module Campaign
6
+ # @see GrowsurfRuby::Resources::Campaign::Commission#approve
7
+ class CommissionApproveParams < GrowsurfRuby::Internal::Type::BaseModel
8
+ extend GrowsurfRuby::Internal::Type::RequestParameters::Converter
9
+ include GrowsurfRuby::Internal::Type::RequestParameters
10
+
11
+ # @!attribute id
12
+ #
13
+ # @return [String]
14
+ required :id, String
15
+
16
+ # @!attribute commission_id
17
+ #
18
+ # @return [String]
19
+ required :commission_id, String
20
+
21
+ # @!method initialize(id:, commission_id:, request_options: {})
22
+ # @param id [String]
23
+ # @param commission_id [String]
24
+ # @param request_options [GrowsurfRuby::RequestOptions, Hash{Symbol=>Object}]
25
+ end
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,18 @@
1
+ # frozen_string_literal: true
2
+
3
+ module GrowsurfRuby
4
+ module Models
5
+ module Campaign
6
+ # @see GrowsurfRuby::Resources::Campaign::Commission#approve
7
+ class CommissionApproveResponse < GrowsurfRuby::Internal::Type::BaseModel
8
+ # @!attribute success
9
+ #
10
+ # @return [Boolean]
11
+ required :success, GrowsurfRuby::Internal::Type::Boolean
12
+
13
+ # @!method initialize(success:)
14
+ # @param success [Boolean]
15
+ end
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,28 @@
1
+ # frozen_string_literal: true
2
+
3
+ module GrowsurfRuby
4
+ module Models
5
+ module Campaign
6
+ # @see GrowsurfRuby::Resources::Campaign::Commission#delete
7
+ class CommissionDeleteParams < GrowsurfRuby::Internal::Type::BaseModel
8
+ extend GrowsurfRuby::Internal::Type::RequestParameters::Converter
9
+ include GrowsurfRuby::Internal::Type::RequestParameters
10
+
11
+ # @!attribute id
12
+ #
13
+ # @return [String]
14
+ required :id, String
15
+
16
+ # @!attribute commission_id
17
+ #
18
+ # @return [String]
19
+ required :commission_id, String
20
+
21
+ # @!method initialize(id:, commission_id:, request_options: {})
22
+ # @param id [String]
23
+ # @param commission_id [String]
24
+ # @param request_options [GrowsurfRuby::RequestOptions, Hash{Symbol=>Object}]
25
+ end
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,18 @@
1
+ # frozen_string_literal: true
2
+
3
+ module GrowsurfRuby
4
+ module Models
5
+ module Campaign
6
+ # @see GrowsurfRuby::Resources::Campaign::Commission#delete
7
+ class CommissionDeleteResponse < GrowsurfRuby::Internal::Type::BaseModel
8
+ # @!attribute success
9
+ #
10
+ # @return [Boolean]
11
+ required :success, GrowsurfRuby::Internal::Type::Boolean
12
+
13
+ # @!method initialize(success:)
14
+ # @param success [Boolean]
15
+ end
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,18 @@
1
+ # frozen_string_literal: true
2
+
3
+ module GrowsurfRuby
4
+ module Models
5
+ module Campaign
6
+ module FraudRiskLevel
7
+ extend GrowsurfRuby::Internal::Type::Enum
8
+
9
+ LOW = :LOW
10
+ MEDIUM = :MEDIUM
11
+ HIGH = :HIGH
12
+
13
+ # @!method self.values
14
+ # @return [Array<Symbol>]
15
+ end
16
+ end
17
+ end
18
+ end
@@ -0,0 +1,495 @@
1
+ # frozen_string_literal: true
2
+
3
+ module GrowsurfRuby
4
+ module Models
5
+ module Campaign
6
+ # @see GrowsurfRuby::Resources::Campaign::Participant#retrieve
7
+ class CampaignParticipant < GrowsurfRuby::Internal::Type::BaseModel
8
+ # @!attribute id
9
+ #
10
+ # @return [String]
11
+ required :id, String
12
+
13
+ # @!attribute email
14
+ #
15
+ # @return [String]
16
+ required :email, String
17
+
18
+ # @!attribute monthly_rank
19
+ #
20
+ # @return [Integer]
21
+ required :monthly_rank, Integer, api_name: :monthlyRank
22
+
23
+ # @!attribute monthly_referral_count
24
+ #
25
+ # @return [Integer]
26
+ required :monthly_referral_count, Integer, api_name: :monthlyReferralCount
27
+
28
+ # @!attribute rank
29
+ #
30
+ # @return [Integer]
31
+ required :rank, Integer
32
+
33
+ # @!attribute referral_count
34
+ #
35
+ # @return [Integer]
36
+ required :referral_count, Integer, api_name: :referralCount
37
+
38
+ # @!attribute rewards
39
+ #
40
+ # @return [Array<GrowsurfRuby::Models::Campaign::ParticipantReward>]
41
+ required :rewards, -> { GrowsurfRuby::Internal::Type::ArrayOf[GrowsurfRuby::Campaign::ParticipantReward] }
42
+
43
+ # @!attribute share_url
44
+ #
45
+ # @return [String]
46
+ required :share_url, String, api_name: :shareUrl
47
+
48
+ # @!attribute all_matching_fraudsters
49
+ #
50
+ # @return [Array<Hash{Symbol=>Object}>, nil]
51
+ optional :all_matching_fraudsters,
52
+ GrowsurfRuby::Internal::Type::ArrayOf[GrowsurfRuby::Internal::Type::HashOf[GrowsurfRuby::Internal::Type::Unknown]],
53
+ api_name: :allMatchingFraudsters
54
+
55
+ # @!attribute created_at
56
+ #
57
+ # @return [Integer, nil]
58
+ optional :created_at, Integer, api_name: :createdAt
59
+
60
+ # @!attribute fingerprint
61
+ #
62
+ # @return [String, nil]
63
+ optional :fingerprint, String, nil?: true
64
+
65
+ # @!attribute first_name
66
+ #
67
+ # @return [String, nil]
68
+ optional :first_name, String, api_name: :firstName, nil?: true
69
+
70
+ # @!attribute fraud_reason_code
71
+ #
72
+ # @return [String, nil]
73
+ optional :fraud_reason_code, String, api_name: :fraudReasonCode
74
+
75
+ # @!attribute fraud_risk_level
76
+ #
77
+ # @return [Symbol, GrowsurfRuby::Models::Campaign::FraudRiskLevel, nil]
78
+ optional :fraud_risk_level,
79
+ enum: -> {
80
+ GrowsurfRuby::Campaign::FraudRiskLevel
81
+ },
82
+ api_name: :fraudRiskLevel
83
+
84
+ # @!attribute impression_count
85
+ #
86
+ # @return [Integer, nil]
87
+ optional :impression_count, Integer, api_name: :impressionCount
88
+
89
+ # @!attribute invite_count
90
+ #
91
+ # @return [Integer, nil]
92
+ optional :invite_count, Integer, api_name: :inviteCount
93
+
94
+ # @!attribute ip_address
95
+ #
96
+ # @return [String, nil]
97
+ optional :ip_address, String, api_name: :ipAddress, nil?: true
98
+
99
+ # @!attribute is_new
100
+ #
101
+ # @return [Boolean, nil]
102
+ optional :is_new, GrowsurfRuby::Internal::Type::Boolean, api_name: :isNew
103
+
104
+ # @!attribute is_winner
105
+ #
106
+ # @return [Boolean, nil]
107
+ optional :is_winner, GrowsurfRuby::Internal::Type::Boolean, api_name: :isWinner
108
+
109
+ # @!attribute last_name
110
+ #
111
+ # @return [String, nil]
112
+ optional :last_name, String, api_name: :lastName, nil?: true
113
+
114
+ # @!attribute metadata
115
+ # Shallow custom metadata object.
116
+ #
117
+ # @return [Hash{Symbol=>Object}, nil]
118
+ optional :metadata, GrowsurfRuby::Internal::Type::HashOf[GrowsurfRuby::Internal::Type::Unknown]
119
+
120
+ # @!attribute monthly_referrals
121
+ #
122
+ # @return [Array<String>, nil]
123
+ optional :monthly_referrals,
124
+ GrowsurfRuby::Internal::Type::ArrayOf[String],
125
+ api_name: :monthlyReferrals
126
+
127
+ # @!attribute notes
128
+ #
129
+ # @return [String, nil]
130
+ optional :notes, String, nil?: true
131
+
132
+ # @!attribute paypal_email_address
133
+ #
134
+ # @return [String, nil]
135
+ optional :paypal_email_address, String, api_name: :paypalEmailAddress
136
+
137
+ # @!attribute prev_monthly_rank
138
+ #
139
+ # @return [Integer, nil]
140
+ optional :prev_monthly_rank, Integer, api_name: :prevMonthlyRank
141
+
142
+ # @!attribute prev_monthly_referral_count
143
+ #
144
+ # @return [Integer, nil]
145
+ optional :prev_monthly_referral_count, Integer, api_name: :prevMonthlyReferralCount
146
+
147
+ # @!attribute referrals
148
+ #
149
+ # @return [Array<String>, nil]
150
+ optional :referrals, GrowsurfRuby::Internal::Type::ArrayOf[String]
151
+
152
+ # @!attribute referral_source
153
+ #
154
+ # @return [Symbol, GrowsurfRuby::Models::Campaign::ReferralSource, nil]
155
+ optional :referral_source,
156
+ enum: -> {
157
+ GrowsurfRuby::Campaign::ReferralSource
158
+ },
159
+ api_name: :referralSource
160
+
161
+ # @!attribute referral_status
162
+ #
163
+ # @return [Symbol, GrowsurfRuby::Models::Campaign::ReferralStatus, nil]
164
+ optional :referral_status,
165
+ enum: -> {
166
+ GrowsurfRuby::Campaign::ReferralStatus
167
+ },
168
+ api_name: :referralStatus
169
+
170
+ # @!attribute referred_by
171
+ #
172
+ # @return [String, nil]
173
+ optional :referred_by, String, api_name: :referredBy
174
+
175
+ # @!attribute referrer
176
+ #
177
+ # @return [GrowsurfRuby::Models::Campaign::CampaignParticipant::Referrer, nil]
178
+ optional :referrer, -> { GrowsurfRuby::Campaign::CampaignParticipant::Referrer }, nil?: true
179
+
180
+ # @!attribute share_count
181
+ #
182
+ # @return [Hash{Symbol=>Integer}, nil]
183
+ optional :share_count, GrowsurfRuby::Internal::Type::HashOf[Integer], api_name: :shareCount
184
+
185
+ # @!attribute unique_impression_count
186
+ #
187
+ # @return [Integer, nil]
188
+ optional :unique_impression_count, Integer, api_name: :uniqueImpressionCount
189
+
190
+ # @!attribute unread_commissions_count
191
+ #
192
+ # @return [Integer, nil]
193
+ optional :unread_commissions_count, Integer, api_name: :unreadCommissionsCount
194
+
195
+ # @!attribute unread_payouts_count
196
+ #
197
+ # @return [Integer, nil]
198
+ optional :unread_payouts_count, Integer, api_name: :unreadPayoutsCount
199
+
200
+ # @!attribute unsubscribed
201
+ #
202
+ # @return [Boolean, nil]
203
+ optional :unsubscribed, GrowsurfRuby::Internal::Type::Boolean
204
+
205
+ # @!attribute vanity_keys
206
+ #
207
+ # @return [Array<String>, nil]
208
+ optional :vanity_keys, GrowsurfRuby::Internal::Type::ArrayOf[String], api_name: :vanityKeys
209
+
210
+ # @!method initialize(id:, email:, monthly_rank:, monthly_referral_count:, rank:, referral_count:, rewards:, share_url:, all_matching_fraudsters: nil, created_at: nil, fingerprint: nil, first_name: nil, fraud_reason_code: nil, fraud_risk_level: nil, impression_count: nil, invite_count: nil, ip_address: nil, is_new: nil, is_winner: nil, last_name: nil, metadata: nil, monthly_referrals: nil, notes: nil, paypal_email_address: nil, prev_monthly_rank: nil, prev_monthly_referral_count: nil, referrals: nil, referral_source: nil, referral_status: nil, referred_by: nil, referrer: nil, share_count: nil, unique_impression_count: nil, unread_commissions_count: nil, unread_payouts_count: nil, unsubscribed: nil, vanity_keys: nil)
211
+ # @param id [String]
212
+ #
213
+ # @param email [String]
214
+ #
215
+ # @param monthly_rank [Integer]
216
+ #
217
+ # @param monthly_referral_count [Integer]
218
+ #
219
+ # @param rank [Integer]
220
+ #
221
+ # @param referral_count [Integer]
222
+ #
223
+ # @param rewards [Array<GrowsurfRuby::Models::Campaign::ParticipantReward>]
224
+ #
225
+ # @param share_url [String]
226
+ #
227
+ # @param all_matching_fraudsters [Array<Hash{Symbol=>Object}>]
228
+ #
229
+ # @param created_at [Integer]
230
+ #
231
+ # @param fingerprint [String, nil]
232
+ #
233
+ # @param first_name [String, nil]
234
+ #
235
+ # @param fraud_reason_code [String]
236
+ #
237
+ # @param fraud_risk_level [Symbol, GrowsurfRuby::Models::Campaign::FraudRiskLevel]
238
+ #
239
+ # @param impression_count [Integer]
240
+ #
241
+ # @param invite_count [Integer]
242
+ #
243
+ # @param ip_address [String, nil]
244
+ #
245
+ # @param is_new [Boolean]
246
+ #
247
+ # @param is_winner [Boolean]
248
+ #
249
+ # @param last_name [String, nil]
250
+ #
251
+ # @param metadata [Hash{Symbol=>Object}] Shallow custom metadata object.
252
+ #
253
+ # @param monthly_referrals [Array<String>]
254
+ #
255
+ # @param notes [String, nil]
256
+ #
257
+ # @param paypal_email_address [String]
258
+ #
259
+ # @param prev_monthly_rank [Integer]
260
+ #
261
+ # @param prev_monthly_referral_count [Integer]
262
+ #
263
+ # @param referrals [Array<String>]
264
+ #
265
+ # @param referral_source [Symbol, GrowsurfRuby::Models::Campaign::ReferralSource]
266
+ #
267
+ # @param referral_status [Symbol, GrowsurfRuby::Models::Campaign::ReferralStatus]
268
+ #
269
+ # @param referred_by [String]
270
+ #
271
+ # @param referrer [GrowsurfRuby::Models::Campaign::CampaignParticipant::Referrer, nil]
272
+ #
273
+ # @param share_count [Hash{Symbol=>Integer}]
274
+ #
275
+ # @param unique_impression_count [Integer]
276
+ #
277
+ # @param unread_commissions_count [Integer]
278
+ #
279
+ # @param unread_payouts_count [Integer]
280
+ #
281
+ # @param unsubscribed [Boolean]
282
+ #
283
+ # @param vanity_keys [Array<String>]
284
+
285
+ # @see GrowsurfRuby::Models::Campaign::CampaignParticipant#referrer
286
+ class Referrer < GrowsurfRuby::Internal::Type::BaseModel
287
+ # @!attribute id
288
+ #
289
+ # @return [String, nil]
290
+ optional :id, String
291
+
292
+ # @!attribute created_at
293
+ #
294
+ # @return [Integer, nil]
295
+ optional :created_at, Integer, api_name: :createdAt
296
+
297
+ # @!attribute email
298
+ #
299
+ # @return [String, nil]
300
+ optional :email, String
301
+
302
+ # @!attribute fingerprint
303
+ #
304
+ # @return [String, nil]
305
+ optional :fingerprint, String, nil?: true
306
+
307
+ # @!attribute first_name
308
+ #
309
+ # @return [String, nil]
310
+ optional :first_name, String, api_name: :firstName, nil?: true
311
+
312
+ # @!attribute fraud_reason_code
313
+ #
314
+ # @return [String, nil]
315
+ optional :fraud_reason_code, String, api_name: :fraudReasonCode
316
+
317
+ # @!attribute fraud_risk_level
318
+ #
319
+ # @return [Symbol, GrowsurfRuby::Models::Campaign::FraudRiskLevel, nil]
320
+ optional :fraud_risk_level,
321
+ enum: -> {
322
+ GrowsurfRuby::Campaign::FraudRiskLevel
323
+ },
324
+ api_name: :fraudRiskLevel
325
+
326
+ # @!attribute impression_count
327
+ #
328
+ # @return [Integer, nil]
329
+ optional :impression_count, Integer, api_name: :impressionCount
330
+
331
+ # @!attribute invite_count
332
+ #
333
+ # @return [Integer, nil]
334
+ optional :invite_count, Integer, api_name: :inviteCount
335
+
336
+ # @!attribute ip_address
337
+ #
338
+ # @return [String, nil]
339
+ optional :ip_address, String, api_name: :ipAddress, nil?: true
340
+
341
+ # @!attribute is_winner
342
+ #
343
+ # @return [Boolean, nil]
344
+ optional :is_winner, GrowsurfRuby::Internal::Type::Boolean, api_name: :isWinner
345
+
346
+ # @!attribute last_name
347
+ #
348
+ # @return [String, nil]
349
+ optional :last_name, String, api_name: :lastName, nil?: true
350
+
351
+ # @!attribute metadata
352
+ # Shallow custom metadata object.
353
+ #
354
+ # @return [Hash{Symbol=>Object}, nil]
355
+ optional :metadata, GrowsurfRuby::Internal::Type::HashOf[GrowsurfRuby::Internal::Type::Unknown]
356
+
357
+ # @!attribute monthly_rank
358
+ #
359
+ # @return [Integer, nil]
360
+ optional :monthly_rank, Integer, api_name: :monthlyRank
361
+
362
+ # @!attribute monthly_referral_count
363
+ #
364
+ # @return [Integer, nil]
365
+ optional :monthly_referral_count, Integer, api_name: :monthlyReferralCount
366
+
367
+ # @!attribute monthly_referrals
368
+ #
369
+ # @return [Array<String>, nil]
370
+ optional :monthly_referrals,
371
+ GrowsurfRuby::Internal::Type::ArrayOf[String],
372
+ api_name: :monthlyReferrals
373
+
374
+ # @!attribute prev_monthly_rank
375
+ #
376
+ # @return [Integer, nil]
377
+ optional :prev_monthly_rank, Integer, api_name: :prevMonthlyRank
378
+
379
+ # @!attribute prev_monthly_referral_count
380
+ #
381
+ # @return [Integer, nil]
382
+ optional :prev_monthly_referral_count, Integer, api_name: :prevMonthlyReferralCount
383
+
384
+ # @!attribute rank
385
+ #
386
+ # @return [Integer, nil]
387
+ optional :rank, Integer
388
+
389
+ # @!attribute referral_count
390
+ #
391
+ # @return [Integer, nil]
392
+ optional :referral_count, Integer, api_name: :referralCount
393
+
394
+ # @!attribute referrals
395
+ #
396
+ # @return [Array<String>, nil]
397
+ optional :referrals, GrowsurfRuby::Internal::Type::ArrayOf[String]
398
+
399
+ # @!attribute referral_source
400
+ #
401
+ # @return [Symbol, GrowsurfRuby::Models::Campaign::ReferralSource, nil]
402
+ optional :referral_source,
403
+ enum: -> {
404
+ GrowsurfRuby::Campaign::ReferralSource
405
+ },
406
+ api_name: :referralSource
407
+
408
+ # @!attribute referral_status
409
+ #
410
+ # @return [Symbol, GrowsurfRuby::Models::Campaign::ReferralStatus, nil]
411
+ optional :referral_status,
412
+ enum: -> {
413
+ GrowsurfRuby::Campaign::ReferralStatus
414
+ },
415
+ api_name: :referralStatus
416
+
417
+ # @!attribute share_count
418
+ #
419
+ # @return [Hash{Symbol=>Integer}, nil]
420
+ optional :share_count, GrowsurfRuby::Internal::Type::HashOf[Integer], api_name: :shareCount
421
+
422
+ # @!attribute share_url
423
+ #
424
+ # @return [String, nil]
425
+ optional :share_url, String, api_name: :shareUrl
426
+
427
+ # @!attribute unique_impression_count
428
+ #
429
+ # @return [Integer, nil]
430
+ optional :unique_impression_count, Integer, api_name: :uniqueImpressionCount
431
+
432
+ # @!attribute unsubscribed
433
+ #
434
+ # @return [Boolean, nil]
435
+ optional :unsubscribed, GrowsurfRuby::Internal::Type::Boolean
436
+
437
+ # @!method initialize(id: nil, created_at: nil, email: nil, fingerprint: nil, first_name: nil, fraud_reason_code: nil, fraud_risk_level: nil, impression_count: nil, invite_count: nil, ip_address: nil, is_winner: nil, last_name: nil, metadata: nil, monthly_rank: nil, monthly_referral_count: nil, monthly_referrals: nil, prev_monthly_rank: nil, prev_monthly_referral_count: nil, rank: nil, referral_count: nil, referrals: nil, referral_source: nil, referral_status: nil, share_count: nil, share_url: nil, unique_impression_count: nil, unsubscribed: nil)
438
+ # @param id [String]
439
+ #
440
+ # @param created_at [Integer]
441
+ #
442
+ # @param email [String]
443
+ #
444
+ # @param fingerprint [String, nil]
445
+ #
446
+ # @param first_name [String, nil]
447
+ #
448
+ # @param fraud_reason_code [String]
449
+ #
450
+ # @param fraud_risk_level [Symbol, GrowsurfRuby::Models::Campaign::FraudRiskLevel]
451
+ #
452
+ # @param impression_count [Integer]
453
+ #
454
+ # @param invite_count [Integer]
455
+ #
456
+ # @param ip_address [String, nil]
457
+ #
458
+ # @param is_winner [Boolean]
459
+ #
460
+ # @param last_name [String, nil]
461
+ #
462
+ # @param metadata [Hash{Symbol=>Object}] Shallow custom metadata object.
463
+ #
464
+ # @param monthly_rank [Integer]
465
+ #
466
+ # @param monthly_referral_count [Integer]
467
+ #
468
+ # @param monthly_referrals [Array<String>]
469
+ #
470
+ # @param prev_monthly_rank [Integer]
471
+ #
472
+ # @param prev_monthly_referral_count [Integer]
473
+ #
474
+ # @param rank [Integer]
475
+ #
476
+ # @param referral_count [Integer]
477
+ #
478
+ # @param referrals [Array<String>]
479
+ #
480
+ # @param referral_source [Symbol, GrowsurfRuby::Models::Campaign::ReferralSource]
481
+ #
482
+ # @param referral_status [Symbol, GrowsurfRuby::Models::Campaign::ReferralStatus]
483
+ #
484
+ # @param share_count [Hash{Symbol=>Integer}]
485
+ #
486
+ # @param share_url [String]
487
+ #
488
+ # @param unique_impression_count [Integer]
489
+ #
490
+ # @param unsubscribed [Boolean]
491
+ end
492
+ end
493
+ end
494
+ end
495
+ end