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,215 @@
1
+ # frozen_string_literal: true
2
+
3
+ module GrowsurfRuby
4
+ module Models
5
+ # @see GrowsurfRuby::Resources::Campaign#retrieve_analytics
6
+ class CampaignRetrieveAnalyticsResponse < GrowsurfRuby::Internal::Type::BaseModel
7
+ # @!attribute analytics
8
+ #
9
+ # @return [GrowsurfRuby::Models::CampaignRetrieveAnalyticsResponse::Analytics]
10
+ required :analytics, -> { GrowsurfRuby::Models::CampaignRetrieveAnalyticsResponse::Analytics }
11
+
12
+ # @!attribute end_date
13
+ #
14
+ # @return [Integer]
15
+ required :end_date, Integer, api_name: :endDate
16
+
17
+ # @!attribute start_date
18
+ #
19
+ # @return [Integer]
20
+ required :start_date, Integer, api_name: :startDate
21
+
22
+ # @!method initialize(analytics:, end_date:, start_date:)
23
+ # @param analytics [GrowsurfRuby::Models::CampaignRetrieveAnalyticsResponse::Analytics]
24
+ # @param end_date [Integer]
25
+ # @param start_date [Integer]
26
+
27
+ # @see GrowsurfRuby::Models::CampaignRetrieveAnalyticsResponse#analytics
28
+ class Analytics < GrowsurfRuby::Internal::Type::BaseModel
29
+ # @!attribute bluesky_shares
30
+ #
31
+ # @return [Integer, nil]
32
+ optional :bluesky_shares, Integer, api_name: :blueskyShares
33
+
34
+ # @!attribute email_shares
35
+ #
36
+ # @return [Integer, nil]
37
+ optional :email_shares, Integer, api_name: :emailShares
38
+
39
+ # @!attribute facebook_shares
40
+ #
41
+ # @return [Integer, nil]
42
+ optional :facebook_shares, Integer, api_name: :facebookShares
43
+
44
+ # @!attribute impressions
45
+ #
46
+ # @return [Integer, nil]
47
+ optional :impressions, Integer
48
+
49
+ # @!attribute invites
50
+ #
51
+ # @return [Integer, nil]
52
+ optional :invites, Integer
53
+
54
+ # @!attribute linked_in_shares
55
+ #
56
+ # @return [Integer, nil]
57
+ optional :linked_in_shares, Integer, api_name: :linkedInShares
58
+
59
+ # @!attribute messenger_shares
60
+ #
61
+ # @return [Integer, nil]
62
+ optional :messenger_shares, Integer, api_name: :messengerShares
63
+
64
+ # @!attribute participants
65
+ #
66
+ # @return [Integer, nil]
67
+ optional :participants, Integer
68
+
69
+ # @!attribute pinterest_shares
70
+ #
71
+ # @return [Integer, nil]
72
+ optional :pinterest_shares, Integer, api_name: :pinterestShares
73
+
74
+ # @!attribute qrcode_shares
75
+ #
76
+ # @return [Integer, nil]
77
+ optional :qrcode_shares, Integer, api_name: :qrcodeShares
78
+
79
+ # @!attribute reddit_shares
80
+ #
81
+ # @return [Integer, nil]
82
+ optional :reddit_shares, Integer, api_name: :redditShares
83
+
84
+ # @!attribute referral_credit_expireds
85
+ #
86
+ # @return [Integer, nil]
87
+ optional :referral_credit_expireds, Integer, api_name: :referralCreditExpireds
88
+
89
+ # @!attribute referral_credit_pendings
90
+ #
91
+ # @return [Integer, nil]
92
+ optional :referral_credit_pendings, Integer, api_name: :referralCreditPendings
93
+
94
+ # @!attribute referrals
95
+ #
96
+ # @return [Integer, nil]
97
+ optional :referrals, Integer
98
+
99
+ # @!attribute sms_shares
100
+ #
101
+ # @return [Integer, nil]
102
+ optional :sms_shares, Integer, api_name: :smsShares
103
+
104
+ # @!attribute telegram_shares
105
+ #
106
+ # @return [Integer, nil]
107
+ optional :telegram_shares, Integer, api_name: :telegramShares
108
+
109
+ # @!attribute threads_shares
110
+ #
111
+ # @return [Integer, nil]
112
+ optional :threads_shares, Integer, api_name: :threadsShares
113
+
114
+ # @!attribute total_commission_count
115
+ # Affiliate programs only. Number of commission records.
116
+ #
117
+ # @return [Integer, nil]
118
+ optional :total_commission_count, Integer, api_name: :totalCommissionCount
119
+
120
+ # @!attribute total_commissions
121
+ # Affiliate programs only. Commissions in the smallest unit of the program
122
+ # currency.
123
+ #
124
+ # @return [Integer, nil]
125
+ optional :total_commissions, Integer, api_name: :totalCommissions
126
+
127
+ # @!attribute total_revenue
128
+ # Affiliate programs only. Revenue in the smallest unit of the program currency.
129
+ #
130
+ # @return [Integer, nil]
131
+ optional :total_revenue, Integer, api_name: :totalRevenue
132
+
133
+ # @!attribute tumblr_shares
134
+ #
135
+ # @return [Integer, nil]
136
+ optional :tumblr_shares, Integer, api_name: :tumblrShares
137
+
138
+ # @!attribute twitter_shares
139
+ #
140
+ # @return [Integer, nil]
141
+ optional :twitter_shares, Integer, api_name: :twitterShares
142
+
143
+ # @!attribute unique_impressions
144
+ #
145
+ # @return [Integer, nil]
146
+ optional :unique_impressions, Integer, api_name: :uniqueImpressions
147
+
148
+ # @!attribute wechat_shares
149
+ #
150
+ # @return [Integer, nil]
151
+ optional :wechat_shares, Integer, api_name: :wechatShares
152
+
153
+ # @!attribute whats_app_shares
154
+ #
155
+ # @return [Integer, nil]
156
+ optional :whats_app_shares, Integer, api_name: :whatsAppShares
157
+
158
+ # @!method initialize(bluesky_shares: nil, email_shares: nil, facebook_shares: nil, impressions: nil, invites: nil, linked_in_shares: nil, messenger_shares: nil, participants: nil, pinterest_shares: nil, qrcode_shares: nil, reddit_shares: nil, referral_credit_expireds: nil, referral_credit_pendings: nil, referrals: nil, sms_shares: nil, telegram_shares: nil, threads_shares: nil, total_commission_count: nil, total_commissions: nil, total_revenue: nil, tumblr_shares: nil, twitter_shares: nil, unique_impressions: nil, wechat_shares: nil, whats_app_shares: nil)
159
+ # Some parameter documentations has been truncated, see
160
+ # {GrowsurfRuby::Models::CampaignRetrieveAnalyticsResponse::Analytics} for more
161
+ # details.
162
+ #
163
+ # @param bluesky_shares [Integer]
164
+ #
165
+ # @param email_shares [Integer]
166
+ #
167
+ # @param facebook_shares [Integer]
168
+ #
169
+ # @param impressions [Integer]
170
+ #
171
+ # @param invites [Integer]
172
+ #
173
+ # @param linked_in_shares [Integer]
174
+ #
175
+ # @param messenger_shares [Integer]
176
+ #
177
+ # @param participants [Integer]
178
+ #
179
+ # @param pinterest_shares [Integer]
180
+ #
181
+ # @param qrcode_shares [Integer]
182
+ #
183
+ # @param reddit_shares [Integer]
184
+ #
185
+ # @param referral_credit_expireds [Integer]
186
+ #
187
+ # @param referral_credit_pendings [Integer]
188
+ #
189
+ # @param referrals [Integer]
190
+ #
191
+ # @param sms_shares [Integer]
192
+ #
193
+ # @param telegram_shares [Integer]
194
+ #
195
+ # @param threads_shares [Integer]
196
+ #
197
+ # @param total_commission_count [Integer] Affiliate programs only. Number of commission records.
198
+ #
199
+ # @param total_commissions [Integer] Affiliate programs only. Commissions in the smallest unit of the program currenc
200
+ #
201
+ # @param total_revenue [Integer] Affiliate programs only. Revenue in the smallest unit of the program currency.
202
+ #
203
+ # @param tumblr_shares [Integer]
204
+ #
205
+ # @param twitter_shares [Integer]
206
+ #
207
+ # @param unique_impressions [Integer]
208
+ #
209
+ # @param wechat_shares [Integer]
210
+ #
211
+ # @param whats_app_shares [Integer]
212
+ end
213
+ end
214
+ end
215
+ end
@@ -0,0 +1,20 @@
1
+ # frozen_string_literal: true
2
+
3
+ module GrowsurfRuby
4
+ module Models
5
+ # @see GrowsurfRuby::Resources::Campaign#retrieve
6
+ class CampaignRetrieveParams < GrowsurfRuby::Internal::Type::BaseModel
7
+ extend GrowsurfRuby::Internal::Type::RequestParameters::Converter
8
+ include GrowsurfRuby::Internal::Type::RequestParameters
9
+
10
+ # @!attribute id
11
+ #
12
+ # @return [String]
13
+ required :id, String
14
+
15
+ # @!method initialize(id:, request_options: {})
16
+ # @param id [String]
17
+ # @param request_options [GrowsurfRuby::RequestOptions, Hash{Symbol=>Object}]
18
+ end
19
+ end
20
+ end
@@ -0,0 +1,137 @@
1
+ # frozen_string_literal: true
2
+
3
+ module GrowsurfRuby
4
+ module Models
5
+ class CommissionStructure < GrowsurfRuby::Internal::Type::BaseModel
6
+ # @!attribute amount
7
+ #
8
+ # @return [Integer, nil]
9
+ optional :amount, Integer, nil?: true
10
+
11
+ # @!attribute approval_required
12
+ #
13
+ # @return [Boolean, nil]
14
+ optional :approval_required,
15
+ GrowsurfRuby::Internal::Type::Boolean,
16
+ api_name: :approvalRequired,
17
+ nil?: true
18
+
19
+ # @!attribute duration
20
+ #
21
+ # @return [String, nil]
22
+ optional :duration, String, nil?: true
23
+
24
+ # @!attribute duration_in_months
25
+ #
26
+ # @return [Integer, nil]
27
+ optional :duration_in_months, Integer, api_name: :durationInMonths, nil?: true
28
+
29
+ # @!attribute event
30
+ #
31
+ # @return [String, nil]
32
+ optional :event, String, nil?: true
33
+
34
+ # @!attribute has_intro
35
+ #
36
+ # @return [Boolean, nil]
37
+ optional :has_intro, GrowsurfRuby::Internal::Type::Boolean, api_name: :hasIntro, nil?: true
38
+
39
+ # @!attribute has_max_amount
40
+ #
41
+ # @return [Boolean, nil]
42
+ optional :has_max_amount, GrowsurfRuby::Internal::Type::Boolean, api_name: :hasMaxAmount, nil?: true
43
+
44
+ # @!attribute hold_duration
45
+ #
46
+ # @return [Integer, nil]
47
+ optional :hold_duration, Integer, api_name: :holdDuration, nil?: true
48
+
49
+ # @!attribute intro_amount
50
+ #
51
+ # @return [Integer, nil]
52
+ optional :intro_amount, Integer, api_name: :introAmount, nil?: true
53
+
54
+ # @!attribute intro_amount_iso
55
+ #
56
+ # @return [String, nil]
57
+ optional :intro_amount_iso, String, api_name: :introAmountISO, nil?: true
58
+
59
+ # @!attribute intro_duration
60
+ #
61
+ # @return [String, nil]
62
+ optional :intro_duration, String, api_name: :introDuration, nil?: true
63
+
64
+ # @!attribute intro_duration_in_months
65
+ #
66
+ # @return [Integer, nil]
67
+ optional :intro_duration_in_months, Integer, api_name: :introDurationInMonths, nil?: true
68
+
69
+ # @!attribute intro_percent
70
+ #
71
+ # @return [Float, nil]
72
+ optional :intro_percent, Float, api_name: :introPercent, nil?: true
73
+
74
+ # @!attribute intro_type
75
+ #
76
+ # @return [String, nil]
77
+ optional :intro_type, String, api_name: :introType, nil?: true
78
+
79
+ # @!attribute max_amount
80
+ #
81
+ # @return [Integer, nil]
82
+ optional :max_amount, Integer, api_name: :maxAmount, nil?: true
83
+
84
+ # @!attribute max_amount_iso
85
+ #
86
+ # @return [String, nil]
87
+ optional :max_amount_iso, String, api_name: :maxAmountISO, nil?: true
88
+
89
+ # @!attribute min_paid_referrals
90
+ #
91
+ # @return [Integer, nil]
92
+ optional :min_paid_referrals, Integer, api_name: :minPaidReferrals, nil?: true
93
+
94
+ # @!attribute percent
95
+ #
96
+ # @return [Float, nil]
97
+ optional :percent, Float, nil?: true
98
+
99
+ # @!attribute type
100
+ #
101
+ # @return [Symbol, GrowsurfRuby::Models::CommissionStructure::Type, nil]
102
+ optional :type, enum: -> { GrowsurfRuby::CommissionStructure::Type }, nil?: true
103
+
104
+ # @!method initialize(amount: nil, approval_required: nil, duration: nil, duration_in_months: nil, event: nil, has_intro: nil, has_max_amount: nil, hold_duration: nil, intro_amount: nil, intro_amount_iso: nil, intro_duration: nil, intro_duration_in_months: nil, intro_percent: nil, intro_type: nil, max_amount: nil, max_amount_iso: nil, min_paid_referrals: nil, percent: nil, type: nil)
105
+ # @param amount [Integer, nil]
106
+ # @param approval_required [Boolean, nil]
107
+ # @param duration [String, nil]
108
+ # @param duration_in_months [Integer, nil]
109
+ # @param event [String, nil]
110
+ # @param has_intro [Boolean, nil]
111
+ # @param has_max_amount [Boolean, nil]
112
+ # @param hold_duration [Integer, nil]
113
+ # @param intro_amount [Integer, nil]
114
+ # @param intro_amount_iso [String, nil]
115
+ # @param intro_duration [String, nil]
116
+ # @param intro_duration_in_months [Integer, nil]
117
+ # @param intro_percent [Float, nil]
118
+ # @param intro_type [String, nil]
119
+ # @param max_amount [Integer, nil]
120
+ # @param max_amount_iso [String, nil]
121
+ # @param min_paid_referrals [Integer, nil]
122
+ # @param percent [Float, nil]
123
+ # @param type [Symbol, GrowsurfRuby::Models::CommissionStructure::Type, nil]
124
+
125
+ # @see GrowsurfRuby::Models::CommissionStructure#type
126
+ module Type
127
+ extend GrowsurfRuby::Internal::Type::Enum
128
+
129
+ PERCENT = :PERCENT
130
+ AMOUNT = :AMOUNT
131
+
132
+ # @!method self.values
133
+ # @return [Array<Symbol>]
134
+ end
135
+ end
136
+ end
137
+ end
@@ -0,0 +1,170 @@
1
+ # frozen_string_literal: true
2
+
3
+ module GrowsurfRuby
4
+ module Models
5
+ # @see GrowsurfRuby::Resources::Campaign#list_commissions
6
+ class ParticipantCommissionList < GrowsurfRuby::Internal::Type::BaseModel
7
+ # @!attribute commissions
8
+ #
9
+ # @return [Array<GrowsurfRuby::Models::ParticipantCommissionList::Commission>]
10
+ required :commissions,
11
+ -> { GrowsurfRuby::Internal::Type::ArrayOf[GrowsurfRuby::ParticipantCommissionList::Commission] }
12
+
13
+ # @!attribute limit
14
+ #
15
+ # @return [Integer]
16
+ required :limit, Integer
17
+
18
+ # @!attribute next_id
19
+ #
20
+ # @return [String, nil]
21
+ required :next_id, String, api_name: :nextId, nil?: true
22
+
23
+ # @!method initialize(commissions:, limit:, next_id:)
24
+ # @param commissions [Array<GrowsurfRuby::Models::ParticipantCommissionList::Commission>]
25
+ # @param limit [Integer]
26
+ # @param next_id [String, nil]
27
+
28
+ class Commission < GrowsurfRuby::Internal::Type::BaseModel
29
+ # @!attribute id
30
+ #
31
+ # @return [String]
32
+ required :id, String
33
+
34
+ # @!attribute amount
35
+ #
36
+ # @return [Integer]
37
+ required :amount, Integer
38
+
39
+ # @!attribute created_at
40
+ #
41
+ # @return [Integer]
42
+ required :created_at, Integer, api_name: :createdAt
43
+
44
+ # @!attribute currency_iso
45
+ #
46
+ # @return [String]
47
+ required :currency_iso, String, api_name: :currencyISO
48
+
49
+ # @!attribute referred_id
50
+ #
51
+ # @return [String]
52
+ required :referred_id, String, api_name: :referredId
53
+
54
+ # @!attribute referrer_id
55
+ #
56
+ # @return [String]
57
+ required :referrer_id, String, api_name: :referrerId
58
+
59
+ # @!attribute sale_amount
60
+ #
61
+ # @return [Integer]
62
+ required :sale_amount, Integer, api_name: :saleAmount
63
+
64
+ # @!attribute status
65
+ #
66
+ # @return [Symbol, GrowsurfRuby::Models::ParticipantCommissionList::Commission::Status]
67
+ required :status, enum: -> { GrowsurfRuby::ParticipantCommissionList::Commission::Status }
68
+
69
+ # @!attribute amount_in_campaign_currency
70
+ #
71
+ # @return [Integer, nil]
72
+ optional :amount_in_campaign_currency, Integer, api_name: :amountInCampaignCurrency, nil?: true
73
+
74
+ # @!attribute approved_at
75
+ #
76
+ # @return [Integer, nil]
77
+ optional :approved_at, Integer, api_name: :approvedAt
78
+
79
+ # @!attribute campaign_currency_iso
80
+ #
81
+ # @return [String, nil]
82
+ optional :campaign_currency_iso, String, api_name: :campaignCurrencyISO, nil?: true
83
+
84
+ # @!attribute exchange_rate
85
+ #
86
+ # @return [Float, nil]
87
+ optional :exchange_rate, Float, api_name: :exchangeRate, nil?: true
88
+
89
+ # @!attribute exchange_rate_at
90
+ #
91
+ # @return [Integer, nil]
92
+ optional :exchange_rate_at, Integer, api_name: :exchangeRateAt
93
+
94
+ # @!attribute fx_error
95
+ #
96
+ # @return [String, nil]
97
+ optional :fx_error, String, api_name: :fxError, nil?: true
98
+
99
+ # @!attribute hold_duration
100
+ #
101
+ # @return [Integer, nil]
102
+ optional :hold_duration, Integer, api_name: :holdDuration, nil?: true
103
+
104
+ # @!attribute paid_at
105
+ #
106
+ # @return [Integer, nil]
107
+ optional :paid_at, Integer, api_name: :paidAt
108
+
109
+ # @!attribute payout_queued_at
110
+ #
111
+ # @return [Integer, nil]
112
+ optional :payout_queued_at, Integer, api_name: :payoutQueuedAt
113
+
114
+ # @!attribute provider
115
+ #
116
+ # @return [String, nil]
117
+ optional :provider, String, nil?: true
118
+
119
+ # @!attribute reversed_at
120
+ #
121
+ # @return [Integer, nil]
122
+ optional :reversed_at, Integer, api_name: :reversedAt
123
+
124
+ # @!attribute sale_amount_amount_in_campaign_currency
125
+ #
126
+ # @return [Integer, nil]
127
+ optional :sale_amount_amount_in_campaign_currency,
128
+ Integer,
129
+ api_name: :saleAmountAmountInCampaignCurrency,
130
+ nil?: true
131
+
132
+ # @!method initialize(id:, amount:, created_at:, currency_iso:, referred_id:, referrer_id:, sale_amount:, status:, amount_in_campaign_currency: nil, approved_at: nil, campaign_currency_iso: nil, exchange_rate: nil, exchange_rate_at: nil, fx_error: nil, hold_duration: nil, paid_at: nil, payout_queued_at: nil, provider: nil, reversed_at: nil, sale_amount_amount_in_campaign_currency: nil)
133
+ # @param id [String]
134
+ # @param amount [Integer]
135
+ # @param created_at [Integer]
136
+ # @param currency_iso [String]
137
+ # @param referred_id [String]
138
+ # @param referrer_id [String]
139
+ # @param sale_amount [Integer]
140
+ # @param status [Symbol, GrowsurfRuby::Models::ParticipantCommissionList::Commission::Status]
141
+ # @param amount_in_campaign_currency [Integer, nil]
142
+ # @param approved_at [Integer]
143
+ # @param campaign_currency_iso [String, nil]
144
+ # @param exchange_rate [Float, nil]
145
+ # @param exchange_rate_at [Integer]
146
+ # @param fx_error [String, nil]
147
+ # @param hold_duration [Integer, nil]
148
+ # @param paid_at [Integer]
149
+ # @param payout_queued_at [Integer]
150
+ # @param provider [String, nil]
151
+ # @param reversed_at [Integer]
152
+ # @param sale_amount_amount_in_campaign_currency [Integer, nil]
153
+
154
+ # @see GrowsurfRuby::Models::ParticipantCommissionList::Commission#status
155
+ module Status
156
+ extend GrowsurfRuby::Internal::Type::Enum
157
+
158
+ PENDING = :PENDING
159
+ APPROVED = :APPROVED
160
+ PAID = :PAID
161
+ REVERSED = :REVERSED
162
+ DELETED = :DELETED
163
+
164
+ # @!method self.values
165
+ # @return [Array<Symbol>]
166
+ end
167
+ end
168
+ end
169
+ end
170
+ end
@@ -0,0 +1,29 @@
1
+ # frozen_string_literal: true
2
+
3
+ module GrowsurfRuby
4
+ module Models
5
+ # @see GrowsurfRuby::Resources::Campaign#list_leaderboard
6
+ class ParticipantList < GrowsurfRuby::Internal::Type::BaseModel
7
+ # @!attribute limit
8
+ #
9
+ # @return [Integer]
10
+ required :limit, Integer
11
+
12
+ # @!attribute next_id
13
+ #
14
+ # @return [String, nil]
15
+ required :next_id, String, api_name: :nextId, nil?: true
16
+
17
+ # @!attribute participants
18
+ #
19
+ # @return [Array<GrowsurfRuby::Models::Campaign::CampaignParticipant>]
20
+ required :participants,
21
+ -> { GrowsurfRuby::Internal::Type::ArrayOf[GrowsurfRuby::Campaign::CampaignParticipant] }
22
+
23
+ # @!method initialize(limit:, next_id:, participants:)
24
+ # @param limit [Integer]
25
+ # @param next_id [String, nil]
26
+ # @param participants [Array<GrowsurfRuby::Models::Campaign::CampaignParticipant>]
27
+ end
28
+ end
29
+ end