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,91 @@
1
+ # frozen_string_literal: true
2
+
3
+ module GrowsurfRuby
4
+ module Models
5
+ module Campaign
6
+ # @see GrowsurfRuby::Resources::Campaign::Participant#record_transaction
7
+ module ParticipantRecordTransactionResponse
8
+ extend GrowsurfRuby::Internal::Type::Union
9
+
10
+ variant -> { GrowsurfRuby::Models::Campaign::ParticipantRecordTransactionResponse::UnionMember0 }
11
+
12
+ variant -> { GrowsurfRuby::Models::Campaign::ParticipantRecordTransactionResponse::UnionMember1 }
13
+
14
+ class UnionMember0 < GrowsurfRuby::Internal::Type::BaseModel
15
+ # @!attribute duplicate
16
+ #
17
+ # @return [Boolean, false]
18
+ required :duplicate, const: false
19
+
20
+ # @!attribute first_sale
21
+ #
22
+ # @return [Boolean]
23
+ required :first_sale, GrowsurfRuby::Internal::Type::Boolean, api_name: :firstSale
24
+
25
+ # @!attribute message
26
+ #
27
+ # @return [String]
28
+ required :message, String
29
+
30
+ # @!attribute success
31
+ #
32
+ # @return [Boolean, true]
33
+ required :success, const: true
34
+
35
+ # @!method initialize(first_sale:, message:, duplicate: false, success: true)
36
+ # @param first_sale [Boolean]
37
+ # @param message [String]
38
+ # @param duplicate [Boolean, false]
39
+ # @param success [Boolean, true]
40
+ end
41
+
42
+ class UnionMember1 < GrowsurfRuby::Internal::Type::BaseModel
43
+ # @!attribute commissions_created
44
+ #
45
+ # @return [Integer]
46
+ required :commissions_created, Integer, api_name: :commissionsCreated
47
+
48
+ # @!attribute duplicate
49
+ #
50
+ # @return [Boolean, true]
51
+ required :duplicate, const: true
52
+
53
+ # @!attribute duplicate_fields
54
+ #
55
+ # @return [Array<String>]
56
+ required :duplicate_fields,
57
+ GrowsurfRuby::Internal::Type::ArrayOf[String],
58
+ api_name: :duplicateFields
59
+
60
+ # @!attribute matching_commission_ids
61
+ #
62
+ # @return [Array<String>]
63
+ required :matching_commission_ids,
64
+ GrowsurfRuby::Internal::Type::ArrayOf[String],
65
+ api_name: :matchingCommissionIds
66
+
67
+ # @!attribute message
68
+ #
69
+ # @return [String]
70
+ required :message, String
71
+
72
+ # @!attribute success
73
+ #
74
+ # @return [Boolean, false]
75
+ required :success, const: false
76
+
77
+ # @!method initialize(commissions_created:, duplicate_fields:, matching_commission_ids:, message:, duplicate: true, success: false)
78
+ # @param commissions_created [Integer]
79
+ # @param duplicate_fields [Array<String>]
80
+ # @param matching_commission_ids [Array<String>]
81
+ # @param message [String]
82
+ # @param duplicate [Boolean, true]
83
+ # @param success [Boolean, false]
84
+ end
85
+
86
+ # @!method self.variants
87
+ # @return [Array(GrowsurfRuby::Models::Campaign::ParticipantRecordTransactionResponse::UnionMember0, GrowsurfRuby::Models::Campaign::ParticipantRecordTransactionResponse::UnionMember1)]
88
+ end
89
+ end
90
+ end
91
+ 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::Participant#retrieve
7
+ class ParticipantRetrieveParams < 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 participant_id_or_email
17
+ #
18
+ # @return [String]
19
+ required :participant_id_or_email, String
20
+
21
+ # @!method initialize(id:, participant_id_or_email:, request_options: {})
22
+ # @param id [String]
23
+ # @param participant_id_or_email [String]
24
+ # @param request_options [GrowsurfRuby::RequestOptions, Hash{Symbol=>Object}]
25
+ end
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,103 @@
1
+ # frozen_string_literal: true
2
+
3
+ module GrowsurfRuby
4
+ module Models
5
+ module Campaign
6
+ class ParticipantReward < GrowsurfRuby::Internal::Type::BaseModel
7
+ # @!attribute id
8
+ #
9
+ # @return [String]
10
+ required :id, String
11
+
12
+ # @!attribute reward_id
13
+ #
14
+ # @return [String]
15
+ required :reward_id, String, api_name: :rewardId
16
+
17
+ # @!attribute status
18
+ #
19
+ # @return [Symbol, GrowsurfRuby::Models::Campaign::ParticipantReward::Status]
20
+ required :status, enum: -> { GrowsurfRuby::Campaign::ParticipantReward::Status }
21
+
22
+ # @!attribute approved
23
+ #
24
+ # @return [Boolean, nil]
25
+ optional :approved, GrowsurfRuby::Internal::Type::Boolean
26
+
27
+ # @!attribute approved_at
28
+ #
29
+ # @return [Integer, nil]
30
+ optional :approved_at, Integer, api_name: :approvedAt
31
+
32
+ # @!attribute commission_structure
33
+ #
34
+ # @return [GrowsurfRuby::Models::CommissionStructure, nil]
35
+ optional :commission_structure,
36
+ -> { GrowsurfRuby::CommissionStructure },
37
+ api_name: :commissionStructure,
38
+ nil?: true
39
+
40
+ # @!attribute fulfilled_at
41
+ #
42
+ # @return [Integer, nil]
43
+ optional :fulfilled_at, Integer, api_name: :fulfilledAt
44
+
45
+ # @!attribute is_available
46
+ #
47
+ # @return [Boolean, nil]
48
+ optional :is_available, GrowsurfRuby::Internal::Type::Boolean, api_name: :isAvailable
49
+
50
+ # @!attribute is_fulfilled
51
+ #
52
+ # @return [Boolean, nil]
53
+ optional :is_fulfilled, GrowsurfRuby::Internal::Type::Boolean, api_name: :isFulfilled
54
+
55
+ # @!attribute is_referrer
56
+ #
57
+ # @return [Boolean, nil]
58
+ optional :is_referrer, GrowsurfRuby::Internal::Type::Boolean, api_name: :isReferrer
59
+
60
+ # @!attribute referred_id
61
+ #
62
+ # @return [String, nil]
63
+ optional :referred_id, String, api_name: :referredId
64
+
65
+ # @!attribute referrer_id
66
+ #
67
+ # @return [String, nil]
68
+ optional :referrer_id, String, api_name: :referrerId
69
+
70
+ # @!attribute unread
71
+ #
72
+ # @return [Boolean, nil]
73
+ optional :unread, GrowsurfRuby::Internal::Type::Boolean
74
+
75
+ # @!method initialize(id:, reward_id:, status:, approved: nil, approved_at: nil, commission_structure: nil, fulfilled_at: nil, is_available: nil, is_fulfilled: nil, is_referrer: nil, referred_id: nil, referrer_id: nil, unread: nil)
76
+ # @param id [String]
77
+ # @param reward_id [String]
78
+ # @param status [Symbol, GrowsurfRuby::Models::Campaign::ParticipantReward::Status]
79
+ # @param approved [Boolean]
80
+ # @param approved_at [Integer]
81
+ # @param commission_structure [GrowsurfRuby::Models::CommissionStructure, nil]
82
+ # @param fulfilled_at [Integer]
83
+ # @param is_available [Boolean]
84
+ # @param is_fulfilled [Boolean]
85
+ # @param is_referrer [Boolean]
86
+ # @param referred_id [String]
87
+ # @param referrer_id [String]
88
+ # @param unread [Boolean]
89
+
90
+ # @see GrowsurfRuby::Models::Campaign::ParticipantReward#status
91
+ module Status
92
+ extend GrowsurfRuby::Internal::Type::Enum
93
+
94
+ PENDING = :PENDING
95
+ FULFILLED = :FULFILLED
96
+
97
+ # @!method self.values
98
+ # @return [Array<Symbol>]
99
+ end
100
+ end
101
+ end
102
+ end
103
+ end
@@ -0,0 +1,46 @@
1
+ # frozen_string_literal: true
2
+
3
+ module GrowsurfRuby
4
+ module Models
5
+ module Campaign
6
+ # @see GrowsurfRuby::Resources::Campaign::Participant#send_invites
7
+ class ParticipantSendInvitesParams < 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 participant_id_or_email
17
+ #
18
+ # @return [String]
19
+ required :participant_id_or_email, String
20
+
21
+ # @!attribute email_addresses
22
+ #
23
+ # @return [Array<String>]
24
+ required :email_addresses, GrowsurfRuby::Internal::Type::ArrayOf[String], api_name: :emailAddresses
25
+
26
+ # @!attribute message_text
27
+ #
28
+ # @return [String]
29
+ required :message_text, String, api_name: :messageText
30
+
31
+ # @!attribute subject_text
32
+ #
33
+ # @return [String]
34
+ required :subject_text, String, api_name: :subjectText
35
+
36
+ # @!method initialize(id:, participant_id_or_email:, email_addresses:, message_text:, subject_text:, request_options: {})
37
+ # @param id [String]
38
+ # @param participant_id_or_email [String]
39
+ # @param email_addresses [Array<String>]
40
+ # @param message_text [String]
41
+ # @param subject_text [String]
42
+ # @param request_options [GrowsurfRuby::RequestOptions, Hash{Symbol=>Object}]
43
+ end
44
+ end
45
+ end
46
+ end
@@ -0,0 +1,30 @@
1
+ # frozen_string_literal: true
2
+
3
+ module GrowsurfRuby
4
+ module Models
5
+ module Campaign
6
+ # @see GrowsurfRuby::Resources::Campaign::Participant#send_invites
7
+ class ParticipantSendInvitesResponse < GrowsurfRuby::Internal::Type::BaseModel
8
+ # @!attribute invites_sent
9
+ #
10
+ # @return [Integer]
11
+ required :invites_sent, Integer, api_name: :invitesSent
12
+
13
+ # @!attribute message_type
14
+ #
15
+ # @return [String]
16
+ required :message_type, String, api_name: :messageType
17
+
18
+ # @!attribute success
19
+ #
20
+ # @return [Boolean]
21
+ required :success, GrowsurfRuby::Internal::Type::Boolean
22
+
23
+ # @!method initialize(invites_sent:, message_type:, success:)
24
+ # @param invites_sent [Integer]
25
+ # @param message_type [String]
26
+ # @param success [Boolean]
27
+ end
28
+ end
29
+ end
30
+ 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::Participant#trigger_referral
7
+ class ParticipantTriggerReferralParams < 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 participant_id_or_email
17
+ #
18
+ # @return [String]
19
+ required :participant_id_or_email, String
20
+
21
+ # @!method initialize(id:, participant_id_or_email:, request_options: {})
22
+ # @param id [String]
23
+ # @param participant_id_or_email [String]
24
+ # @param request_options [GrowsurfRuby::RequestOptions, Hash{Symbol=>Object}]
25
+ end
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,24 @@
1
+ # frozen_string_literal: true
2
+
3
+ module GrowsurfRuby
4
+ module Models
5
+ module Campaign
6
+ # @see GrowsurfRuby::Resources::Campaign::Participant#trigger_referral
7
+ class ParticipantTriggerReferralResponse < GrowsurfRuby::Internal::Type::BaseModel
8
+ # @!attribute success
9
+ #
10
+ # @return [Boolean]
11
+ required :success, GrowsurfRuby::Internal::Type::Boolean
12
+
13
+ # @!attribute message
14
+ #
15
+ # @return [String, nil]
16
+ optional :message, String
17
+
18
+ # @!method initialize(success:, message: nil)
19
+ # @param success [Boolean]
20
+ # @param message [String]
21
+ end
22
+ end
23
+ end
24
+ end
@@ -0,0 +1,100 @@
1
+ # frozen_string_literal: true
2
+
3
+ module GrowsurfRuby
4
+ module Models
5
+ module Campaign
6
+ # @see GrowsurfRuby::Resources::Campaign::Participant#update
7
+ class ParticipantUpdateParams < 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 participant_id_or_email
17
+ #
18
+ # @return [String]
19
+ required :participant_id_or_email, String
20
+
21
+ # @!attribute email
22
+ #
23
+ # @return [String, nil]
24
+ optional :email, String
25
+
26
+ # @!attribute first_name
27
+ #
28
+ # @return [String, nil]
29
+ optional :first_name, String, api_name: :firstName
30
+
31
+ # @!attribute last_name
32
+ #
33
+ # @return [String, nil]
34
+ optional :last_name, String, api_name: :lastName
35
+
36
+ # @!attribute metadata
37
+ # Shallow custom metadata object.
38
+ #
39
+ # @return [Hash{Symbol=>Object}, nil]
40
+ optional :metadata, GrowsurfRuby::Internal::Type::HashOf[GrowsurfRuby::Internal::Type::Unknown]
41
+
42
+ # @!attribute referral_status
43
+ #
44
+ # @return [Symbol, GrowsurfRuby::Models::Campaign::ParticipantUpdateParams::ReferralStatus, nil]
45
+ optional :referral_status,
46
+ enum: -> { GrowsurfRuby::Campaign::ParticipantUpdateParams::ReferralStatus },
47
+ api_name: :referralStatus
48
+
49
+ # @!attribute referred_by
50
+ #
51
+ # @return [String, nil]
52
+ optional :referred_by, String, api_name: :referredBy
53
+
54
+ # @!attribute unsubscribed
55
+ #
56
+ # @return [Boolean, nil]
57
+ optional :unsubscribed, GrowsurfRuby::Internal::Type::Boolean
58
+
59
+ # @!attribute vanity_keys
60
+ #
61
+ # @return [Array<String>, nil]
62
+ optional :vanity_keys, GrowsurfRuby::Internal::Type::ArrayOf[String], api_name: :vanityKeys
63
+
64
+ # @!method initialize(id:, participant_id_or_email:, email: nil, first_name: nil, last_name: nil, metadata: nil, referral_status: nil, referred_by: nil, unsubscribed: nil, vanity_keys: nil, request_options: {})
65
+ # @param id [String]
66
+ #
67
+ # @param participant_id_or_email [String]
68
+ #
69
+ # @param email [String]
70
+ #
71
+ # @param first_name [String]
72
+ #
73
+ # @param last_name [String]
74
+ #
75
+ # @param metadata [Hash{Symbol=>Object}] Shallow custom metadata object.
76
+ #
77
+ # @param referral_status [Symbol, GrowsurfRuby::Models::Campaign::ParticipantUpdateParams::ReferralStatus]
78
+ #
79
+ # @param referred_by [String]
80
+ #
81
+ # @param unsubscribed [Boolean]
82
+ #
83
+ # @param vanity_keys [Array<String>]
84
+ #
85
+ # @param request_options [GrowsurfRuby::RequestOptions, Hash{Symbol=>Object}]
86
+
87
+ module ReferralStatus
88
+ extend GrowsurfRuby::Internal::Type::Enum
89
+
90
+ CREDIT_PENDING = :CREDIT_PENDING
91
+ CREDIT_AWARDED = :CREDIT_AWARDED
92
+ CREDIT_EXPIRED = :CREDIT_EXPIRED
93
+
94
+ # @!method self.values
95
+ # @return [Array<Symbol>]
96
+ end
97
+ end
98
+ end
99
+ end
100
+ end
@@ -0,0 +1,17 @@
1
+ # frozen_string_literal: true
2
+
3
+ module GrowsurfRuby
4
+ module Models
5
+ module Campaign
6
+ module ReferralSource
7
+ extend GrowsurfRuby::Internal::Type::Enum
8
+
9
+ DIRECT = :DIRECT
10
+ PARTICIPANT = :PARTICIPANT
11
+
12
+ # @!method self.values
13
+ # @return [Array<Symbol>]
14
+ end
15
+ end
16
+ end
17
+ end
@@ -0,0 +1,19 @@
1
+ # frozen_string_literal: true
2
+
3
+ module GrowsurfRuby
4
+ module Models
5
+ module Campaign
6
+ module ReferralStatus
7
+ extend GrowsurfRuby::Internal::Type::Enum
8
+
9
+ CREDIT_PENDING = :CREDIT_PENDING
10
+ CREDIT_AWARDED = :CREDIT_AWARDED
11
+ CREDIT_EXPIRED = :CREDIT_EXPIRED
12
+ INVITE_SENT = :INVITE_SENT
13
+
14
+ # @!method self.values
15
+ # @return [Array<Symbol>]
16
+ end
17
+ end
18
+ end
19
+ end
@@ -0,0 +1,38 @@
1
+ # frozen_string_literal: true
2
+
3
+ module GrowsurfRuby
4
+ module Models
5
+ module Campaign
6
+ # @see GrowsurfRuby::Resources::Campaign::Reward#approve
7
+ class RewardApproveParams < 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 reward_id
17
+ #
18
+ # @return [String]
19
+ required :reward_id, String
20
+
21
+ # @!attribute fulfill
22
+ # Set true to mark the reward as fulfilled after approval.
23
+ #
24
+ # @return [Boolean, nil]
25
+ optional :fulfill, GrowsurfRuby::Internal::Type::Boolean
26
+
27
+ # @!method initialize(id:, reward_id:, fulfill: nil, request_options: {})
28
+ # @param id [String]
29
+ #
30
+ # @param reward_id [String]
31
+ #
32
+ # @param fulfill [Boolean] Set true to mark the reward as fulfilled after approval.
33
+ #
34
+ # @param request_options [GrowsurfRuby::RequestOptions, Hash{Symbol=>Object}]
35
+ end
36
+ end
37
+ end
38
+ 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::Reward#approve
7
+ class RewardApproveResponse < 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::Reward#delete
7
+ class RewardDeleteParams < 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 reward_id
17
+ #
18
+ # @return [String]
19
+ required :reward_id, String
20
+
21
+ # @!method initialize(id:, reward_id:, request_options: {})
22
+ # @param id [String]
23
+ # @param reward_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::Reward#delete
7
+ class RewardDeleteResponse < 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::Reward#fulfill
7
+ class RewardFulfillParams < 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 reward_id
17
+ #
18
+ # @return [String]
19
+ required :reward_id, String
20
+
21
+ # @!method initialize(id:, reward_id:, request_options: {})
22
+ # @param id [String]
23
+ # @param reward_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::Reward#fulfill
7
+ class RewardFulfillResponse < 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