growsurf-ruby 0.8.0 → 1.1.0

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 (151) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +18 -0
  3. data/README.md +1 -1
  4. data/lib/growsurf_ruby/client.rb +4 -0
  5. data/lib/growsurf_ruby/models/account.rb +90 -0
  6. data/lib/growsurf_ruby/models/account_create_params.rb +46 -0
  7. data/lib/growsurf_ruby/models/account_create_response.rb +64 -0
  8. data/lib/growsurf_ruby/models/account_resend_verification_email_response.rb +33 -0
  9. data/lib/growsurf_ruby/models/account_rotate_api_key_response.rb +17 -0
  10. data/lib/growsurf_ruby/models/account_update_params.rb +35 -0
  11. data/lib/growsurf_ruby/models/campaign/campaign_reward_list_response.rb +2 -2
  12. data/lib/growsurf_ruby/models/campaign/create.rb +5 -1
  13. data/lib/growsurf_ruby/models/campaign/participant_activity_logs_response.rb +65 -0
  14. data/lib/growsurf_ruby/models/campaign/participant_analytics_response.rb +421 -0
  15. data/lib/growsurf_ruby/models/campaign/participant_bulk_delete_params.rb +35 -0
  16. data/lib/growsurf_ruby/models/campaign/participant_bulk_delete_response.rb +151 -0
  17. data/lib/growsurf_ruby/models/campaign/participant_email_params.rb +76 -0
  18. data/lib/growsurf_ruby/models/campaign/participant_email_response.rb +38 -0
  19. data/lib/growsurf_ruby/models/campaign/participant_list_activity_logs_params.rb +46 -0
  20. data/lib/growsurf_ruby/models/campaign/participant_retrieve_analytics_params.rb +98 -0
  21. data/lib/growsurf_ruby/models/campaign/participant_update_params.rb +21 -1
  22. data/lib/growsurf_ruby/models/campaign/reward.rb +43 -5
  23. data/lib/growsurf_ruby/models/campaign/reward_create_params.rb +48 -15
  24. data/lib/growsurf_ruby/models/campaign/reward_delete_params.rb +4 -4
  25. data/lib/growsurf_ruby/models/campaign/reward_update_params.rb +51 -18
  26. data/lib/growsurf_ruby/models/campaign/webhook.rb +72 -0
  27. data/lib/growsurf_ruby/models/campaign/webhook_create_params.rb +52 -0
  28. data/lib/growsurf_ruby/models/campaign/webhook_delete_params.rb +28 -0
  29. data/lib/growsurf_ruby/models/campaign/webhook_delete_response.rb +24 -0
  30. data/lib/growsurf_ruby/models/campaign/webhook_event.rb +23 -0
  31. data/lib/growsurf_ruby/models/campaign/webhook_list_response.rb +18 -0
  32. data/lib/growsurf_ruby/models/campaign/webhook_test_params.rb +42 -0
  33. data/lib/growsurf_ruby/models/campaign/webhook_test_response.rb +50 -0
  34. data/lib/growsurf_ruby/models/campaign/webhook_update_params.rb +59 -0
  35. data/lib/growsurf_ruby/models/campaign.rb +43 -5
  36. data/lib/growsurf_ruby/models/campaign_create_params.rb +1 -15
  37. data/lib/growsurf_ruby/models/campaign_retrieve_analytics_params.rb +36 -1
  38. data/lib/growsurf_ruby/models/campaign_retrieve_analytics_response.rb +538 -1
  39. data/lib/growsurf_ruby/models/campaign_update_params.rb +1 -53
  40. data/lib/growsurf_ruby/models/commission_structure.rb +8 -2
  41. data/lib/growsurf_ruby/models/referral_flow_screenshots_response.rb +72 -0
  42. data/lib/growsurf_ruby/models/reward_tax_valuation.rb +35 -0
  43. data/lib/growsurf_ruby/models.rb +10 -0
  44. data/lib/growsurf_ruby/resources/account.rb +159 -0
  45. data/lib/growsurf_ruby/resources/campaign/design.rb +68 -0
  46. data/lib/growsurf_ruby/resources/campaign/emails.rb +66 -0
  47. data/lib/growsurf_ruby/resources/campaign/installation.rb +67 -0
  48. data/lib/growsurf_ruby/resources/campaign/options.rb +66 -0
  49. data/lib/growsurf_ruby/resources/campaign/participant.rb +170 -2
  50. data/lib/growsurf_ruby/resources/campaign/rewards.rb +36 -32
  51. data/lib/growsurf_ruby/resources/campaign/webhooks.rb +157 -0
  52. data/lib/growsurf_ruby/resources/campaign.rb +62 -27
  53. data/lib/growsurf_ruby/version.rb +1 -1
  54. data/lib/growsurf_ruby.rb +31 -0
  55. data/rbi/growsurf_ruby/client.rbi +3 -0
  56. data/rbi/growsurf_ruby/models/account.rbi +125 -0
  57. data/rbi/growsurf_ruby/models/account_create_params.rbi +73 -0
  58. data/rbi/growsurf_ruby/models/account_create_response.rbi +115 -0
  59. data/rbi/growsurf_ruby/models/account_resend_verification_email_response.rbi +76 -0
  60. data/rbi/growsurf_ruby/models/account_rotate_api_key_response.rbi +30 -0
  61. data/rbi/growsurf_ruby/models/account_update_params.rbi +65 -0
  62. data/rbi/growsurf_ruby/models/campaign/campaign_reward_list_response.rbi +2 -2
  63. data/rbi/growsurf_ruby/models/campaign/create.rbi +8 -0
  64. data/rbi/growsurf_ruby/models/campaign/participant_activity_logs_response.rbi +111 -0
  65. data/rbi/growsurf_ruby/models/campaign/participant_analytics_response.rbi +630 -0
  66. data/rbi/growsurf_ruby/models/campaign/participant_bulk_delete_params.rbi +56 -0
  67. data/rbi/growsurf_ruby/models/campaign/participant_bulk_delete_response.rbi +285 -0
  68. data/rbi/growsurf_ruby/models/campaign/participant_email_params.rbi +118 -0
  69. data/rbi/growsurf_ruby/models/campaign/participant_email_response.rbi +84 -0
  70. data/rbi/growsurf_ruby/models/campaign/participant_list_activity_logs_params.rbi +74 -0
  71. data/rbi/growsurf_ruby/models/campaign/participant_retrieve_analytics_params.rbi +207 -0
  72. data/rbi/growsurf_ruby/models/campaign/participant_update_params.rbi +24 -0
  73. data/rbi/growsurf_ruby/models/campaign/reward.rbi +63 -3
  74. data/rbi/growsurf_ruby/models/campaign/reward_create_params.rbi +62 -9
  75. data/rbi/growsurf_ruby/models/campaign/reward_delete_params.rbi +4 -4
  76. data/rbi/growsurf_ruby/models/campaign/reward_update_params.rbi +66 -13
  77. data/rbi/growsurf_ruby/models/campaign/webhook.rbi +93 -0
  78. data/rbi/growsurf_ruby/models/campaign/webhook_create_params.rbi +91 -0
  79. data/rbi/growsurf_ruby/models/campaign/webhook_delete_params.rbi +48 -0
  80. data/rbi/growsurf_ruby/models/campaign/webhook_delete_response.rbi +33 -0
  81. data/rbi/growsurf_ruby/models/campaign/webhook_event.rbi +60 -0
  82. data/rbi/growsurf_ruby/models/campaign/webhook_list_response.rbi +36 -0
  83. data/rbi/growsurf_ruby/models/campaign/webhook_test_params.rbi +69 -0
  84. data/rbi/growsurf_ruby/models/campaign/webhook_test_response.rbi +102 -0
  85. data/rbi/growsurf_ruby/models/campaign/webhook_update_params.rbi +98 -0
  86. data/rbi/growsurf_ruby/models/campaign.rbi +63 -3
  87. data/rbi/growsurf_ruby/models/campaign_create_params.rbi +0 -18
  88. data/rbi/growsurf_ruby/models/campaign_retrieve_analytics_params.rbi +91 -0
  89. data/rbi/growsurf_ruby/models/campaign_retrieve_analytics_response.rbi +1011 -3
  90. data/rbi/growsurf_ruby/models/campaign_update_params.rbi +0 -78
  91. data/rbi/growsurf_ruby/models/commission_structure.rbi +8 -2
  92. data/rbi/growsurf_ruby/models/referral_flow_screenshots_response.rbi +94 -0
  93. data/rbi/growsurf_ruby/models/reward_tax_valuation.rbi +56 -0
  94. data/rbi/growsurf_ruby/models.rbi +11 -0
  95. data/rbi/growsurf_ruby/resources/account.rbi +112 -0
  96. data/rbi/growsurf_ruby/resources/campaign/design.rbi +52 -0
  97. data/rbi/growsurf_ruby/resources/campaign/emails.rbi +51 -0
  98. data/rbi/growsurf_ruby/resources/campaign/installation.rbi +53 -0
  99. data/rbi/growsurf_ruby/resources/campaign/options.rbi +51 -0
  100. data/rbi/growsurf_ruby/resources/campaign/participant.rbi +160 -0
  101. data/rbi/growsurf_ruby/resources/campaign/rewards.rbi +61 -29
  102. data/rbi/growsurf_ruby/resources/campaign/webhooks.rbi +123 -0
  103. data/rbi/growsurf_ruby/resources/campaign.rbi +58 -32
  104. data/sig/growsurf_ruby/client.rbs +2 -0
  105. data/sig/growsurf_ruby/models/account.rbs +67 -0
  106. data/sig/growsurf_ruby/models/account_create_params.rbs +42 -0
  107. data/sig/growsurf_ruby/models/account_create_response.rbs +47 -0
  108. data/sig/growsurf_ruby/models/account_resend_verification_email_response.rbs +35 -0
  109. data/sig/growsurf_ruby/models/account_rotate_api_key_response.rbs +13 -0
  110. data/sig/growsurf_ruby/models/account_update_params.rbs +42 -0
  111. data/sig/growsurf_ruby/models/campaign/participant_activity_logs_response.rbs +59 -0
  112. data/sig/growsurf_ruby/models/campaign/participant_analytics_response.rbs +407 -0
  113. data/sig/growsurf_ruby/models/campaign/participant_bulk_delete_params.rbs +30 -0
  114. data/sig/growsurf_ruby/models/campaign/participant_bulk_delete_response.rbs +125 -0
  115. data/sig/growsurf_ruby/models/campaign/participant_email_params.rbs +61 -0
  116. data/sig/growsurf_ruby/models/campaign/participant_email_response.rbs +37 -0
  117. data/sig/growsurf_ruby/models/campaign/participant_list_activity_logs_params.rbs +47 -0
  118. data/sig/growsurf_ruby/models/campaign/participant_retrieve_analytics_params.rbs +90 -0
  119. data/sig/growsurf_ruby/models/campaign/participant_update_params.rbs +14 -0
  120. data/sig/growsurf_ruby/models/campaign/reward.rbs +18 -3
  121. data/sig/growsurf_ruby/models/campaign/reward_create_params.rbs +19 -8
  122. data/sig/growsurf_ruby/models/campaign/reward_delete_params.rbs +4 -4
  123. data/sig/growsurf_ruby/models/campaign/reward_update_params.rbs +23 -12
  124. data/sig/growsurf_ruby/models/campaign/webhook.rbs +52 -0
  125. data/sig/growsurf_ruby/models/campaign/webhook_create_params.rbs +51 -0
  126. data/sig/growsurf_ruby/models/campaign/webhook_delete_params.rbs +30 -0
  127. data/sig/growsurf_ruby/models/campaign/webhook_delete_response.rbs +17 -0
  128. data/sig/growsurf_ruby/models/campaign/webhook_event.rbs +28 -0
  129. data/sig/growsurf_ruby/models/campaign/webhook_list_response.rbs +18 -0
  130. data/sig/growsurf_ruby/models/campaign/webhook_test_params.rbs +42 -0
  131. data/sig/growsurf_ruby/models/campaign/webhook_test_response.rbs +54 -0
  132. data/sig/growsurf_ruby/models/campaign/webhook_update_params.rbs +63 -0
  133. data/sig/growsurf_ruby/models/campaign.rbs +18 -3
  134. data/sig/growsurf_ruby/models/campaign_create_params.rbs +0 -14
  135. data/sig/growsurf_ruby/models/campaign_retrieve_analytics_params.rbs +35 -1
  136. data/sig/growsurf_ruby/models/campaign_retrieve_analytics_response.rbs +533 -3
  137. data/sig/growsurf_ruby/models/campaign_update_params.rbs +1 -53
  138. data/sig/growsurf_ruby/models/commission_structure.rbs +7 -2
  139. data/sig/growsurf_ruby/models/referral_flow_screenshots_response.rbs +54 -0
  140. data/sig/growsurf_ruby/models/reward_tax_valuation.rbs +22 -0
  141. data/sig/growsurf_ruby/models.rbs +10 -0
  142. data/sig/growsurf_ruby/resources/account.rbs +38 -0
  143. data/sig/growsurf_ruby/resources/campaign/design.rbs +20 -0
  144. data/sig/growsurf_ruby/resources/campaign/emails.rbs +20 -0
  145. data/sig/growsurf_ruby/resources/campaign/installation.rbs +20 -0
  146. data/sig/growsurf_ruby/resources/campaign/options.rbs +20 -0
  147. data/sig/growsurf_ruby/resources/campaign/participant.rbs +37 -0
  148. data/sig/growsurf_ruby/resources/campaign/rewards.rbs +6 -4
  149. data/sig/growsurf_ruby/resources/campaign/webhooks.rbs +46 -0
  150. data/sig/growsurf_ruby/resources/campaign.rbs +17 -9
  151. metadata +95 -2
@@ -19,10 +19,54 @@ module GrowsurfRuby
19
19
  # @return [Integer]
20
20
  required :start_date, Integer, api_name: :startDate
21
21
 
22
- # @!method initialize(analytics:, end_date:, start_date:)
22
+ # @!attribute previous_period
23
+ # Present only when `include` contains `previousPeriod`.
24
+ #
25
+ # @return [GrowsurfRuby::Models::CampaignRetrieveAnalyticsResponse::PreviousPeriod, nil]
26
+ optional :previous_period,
27
+ -> { GrowsurfRuby::Models::CampaignRetrieveAnalyticsResponse::PreviousPeriod },
28
+ api_name: :previousPeriod
29
+
30
+ # @!attribute rates
31
+ # Present only when `include` contains `rates`.
32
+ #
33
+ # @return [GrowsurfRuby::Models::CampaignRetrieveAnalyticsResponse::Rates, nil]
34
+ optional :rates, -> { GrowsurfRuby::Models::CampaignRetrieveAnalyticsResponse::Rates }
35
+
36
+ # @!attribute series
37
+ # Present only when `interval` is `day`, `week`, or `month`. Per-period totals,
38
+ # ascending.
39
+ #
40
+ # @return [Array<GrowsurfRuby::Models::CampaignRetrieveAnalyticsResponse::Series>, nil]
41
+ optional :series,
42
+ -> {
43
+ GrowsurfRuby::Internal::Type::ArrayOf[
44
+ GrowsurfRuby::Models::CampaignRetrieveAnalyticsResponse::Series
45
+ ]
46
+ }
47
+
48
+ # @!attribute status_counts
49
+ # Present only when `include` contains `statusCounts`.
50
+ #
51
+ # @return [GrowsurfRuby::Models::CampaignRetrieveAnalyticsResponse::StatusCounts, nil]
52
+ optional :status_counts,
53
+ -> { GrowsurfRuby::Models::CampaignRetrieveAnalyticsResponse::StatusCounts },
54
+ api_name: :statusCounts
55
+
56
+ # @!method initialize(analytics:, end_date:, start_date:, previous_period: nil, rates: nil, series: nil, status_counts: nil)
23
57
  # @param analytics [GrowsurfRuby::Models::CampaignRetrieveAnalyticsResponse::Analytics]
58
+ #
24
59
  # @param end_date [Integer]
60
+ #
25
61
  # @param start_date [Integer]
62
+ #
63
+ # @param previous_period [GrowsurfRuby::Models::CampaignRetrieveAnalyticsResponse::PreviousPeriod] Present only when `include` contains `previousPeriod`.
64
+ #
65
+ # @param rates [GrowsurfRuby::Models::CampaignRetrieveAnalyticsResponse::Rates] Present only when `include` contains `rates`.
66
+ #
67
+ # @param series [Array<GrowsurfRuby::Models::CampaignRetrieveAnalyticsResponse::Series>] Present only when `interval` is `day`, `week`, or `month`. Per-period totals, asce
68
+ #
69
+ # @param status_counts [GrowsurfRuby::Models::CampaignRetrieveAnalyticsResponse::StatusCounts] Present only when `include` contains `statusCounts`.
26
70
 
27
71
  # @see GrowsurfRuby::Models::CampaignRetrieveAnalyticsResponse#analytics
28
72
  class Analytics < GrowsurfRuby::Internal::Type::BaseModel
@@ -231,6 +275,499 @@ module GrowsurfRuby
231
275
  #
232
276
  # @param whats_app_shares [Integer]
233
277
  end
278
+
279
+ # @see GrowsurfRuby::Models::CampaignRetrieveAnalyticsResponse#previous_period
280
+ class PreviousPeriod < GrowsurfRuby::Internal::Type::BaseModel
281
+ # @!attribute analytics
282
+ #
283
+ # @return [GrowsurfRuby::Models::CampaignRetrieveAnalyticsResponse::Analytics]
284
+ required :analytics, -> { GrowsurfRuby::Models::CampaignRetrieveAnalyticsResponse::Analytics }
285
+
286
+ # @!attribute end_date
287
+ #
288
+ # @return [Integer]
289
+ required :end_date, Integer, api_name: :endDate
290
+
291
+ # @!attribute start_date
292
+ #
293
+ # @return [Integer]
294
+ required :start_date, Integer, api_name: :startDate
295
+
296
+ # @!method initialize(analytics:, end_date:, start_date:)
297
+ # Totals for the equal-length window immediately preceding the requested one.
298
+ #
299
+ # @param analytics [GrowsurfRuby::Models::CampaignRetrieveAnalyticsResponse::Analytics]
300
+ #
301
+ # @param end_date [Integer]
302
+ #
303
+ # @param start_date [Integer]
304
+ end
305
+
306
+ # @see GrowsurfRuby::Models::CampaignRetrieveAnalyticsResponse#rates
307
+ class Rates < GrowsurfRuby::Internal::Type::BaseModel
308
+ # @!attribute participation_rate
309
+ # `participants` divided by `uniqueImpressions`.
310
+ #
311
+ # @return [Float, nil]
312
+ optional :participation_rate, Float, api_name: :participationRate
313
+
314
+ # @!attribute referral_conversion_rate
315
+ # `referrals` divided by `uniqueImpressions`.
316
+ #
317
+ # @return [Float, nil]
318
+ optional :referral_conversion_rate, Float, api_name: :referralConversionRate
319
+
320
+ # @!attribute shares_per_participant
321
+ # Total shares across all channels divided by `participants`.
322
+ #
323
+ # @return [Float, nil]
324
+ optional :shares_per_participant, Float, api_name: :sharesPerParticipant
325
+
326
+ # @!method initialize(participation_rate: nil, referral_conversion_rate: nil, shares_per_participant: nil)
327
+ # Derived referral rates, each a ratio in the range 0–1 (0 when its denominator is
328
+ # 0).
329
+ #
330
+ # @param participation_rate [Float] `participants` divided by `uniqueImpressions`.
331
+ #
332
+ # @param referral_conversion_rate [Float] `referrals` divided by `uniqueImpressions`.
333
+ #
334
+ # @param shares_per_participant [Float] Total shares across all channels divided by `participants`.
335
+ end
336
+
337
+ class Series < GrowsurfRuby::Internal::Type::BaseModel
338
+ # @!attribute android_native_shares
339
+ #
340
+ # @return [Integer, nil]
341
+ optional :android_native_shares, Integer, api_name: :androidNativeShares
342
+
343
+ # @!attribute bluesky_shares
344
+ #
345
+ # @return [Integer, nil]
346
+ optional :bluesky_shares, Integer, api_name: :blueskyShares
347
+
348
+ # @!attribute copy_ref_link_shares
349
+ #
350
+ # @return [Integer, nil]
351
+ optional :copy_ref_link_shares, Integer, api_name: :copyRefLinkShares
352
+
353
+ # @!attribute email_shares
354
+ #
355
+ # @return [Integer, nil]
356
+ optional :email_shares, Integer, api_name: :emailShares
357
+
358
+ # @!attribute facebook_shares
359
+ #
360
+ # @return [Integer, nil]
361
+ optional :facebook_shares, Integer, api_name: :facebookShares
362
+
363
+ # @!attribute impressions
364
+ #
365
+ # @return [Integer, nil]
366
+ optional :impressions, Integer
367
+
368
+ # @!attribute invites
369
+ #
370
+ # @return [Integer, nil]
371
+ optional :invites, Integer
372
+
373
+ # @!attribute ios_native_shares
374
+ #
375
+ # @return [Integer, nil]
376
+ optional :ios_native_shares, Integer, api_name: :iosNativeShares
377
+
378
+ # @!attribute linked_in_shares
379
+ #
380
+ # @return [Integer, nil]
381
+ optional :linked_in_shares, Integer, api_name: :linkedInShares
382
+
383
+ # @!attribute messenger_shares
384
+ #
385
+ # @return [Integer, nil]
386
+ optional :messenger_shares, Integer, api_name: :messengerShares
387
+
388
+ # @!attribute participants
389
+ #
390
+ # @return [Integer, nil]
391
+ optional :participants, Integer
392
+
393
+ # @!attribute period_start
394
+ # Start of the period, as a Unix timestamp in milliseconds (UTC).
395
+ #
396
+ # @return [Integer, nil]
397
+ optional :period_start, Integer, api_name: :periodStart
398
+
399
+ # @!attribute pinterest_shares
400
+ #
401
+ # @return [Integer, nil]
402
+ optional :pinterest_shares, Integer, api_name: :pinterestShares
403
+
404
+ # @!attribute qrcode_shares
405
+ #
406
+ # @return [Integer, nil]
407
+ optional :qrcode_shares, Integer, api_name: :qrcodeShares
408
+
409
+ # @!attribute reddit_shares
410
+ #
411
+ # @return [Integer, nil]
412
+ optional :reddit_shares, Integer, api_name: :redditShares
413
+
414
+ # @!attribute referral_credit_expireds
415
+ #
416
+ # @return [Integer, nil]
417
+ optional :referral_credit_expireds, Integer, api_name: :referralCreditExpireds
418
+
419
+ # @!attribute referral_credit_pendings
420
+ #
421
+ # @return [Integer, nil]
422
+ optional :referral_credit_pendings, Integer, api_name: :referralCreditPendings
423
+
424
+ # @!attribute referrals
425
+ #
426
+ # @return [Integer, nil]
427
+ optional :referrals, Integer
428
+
429
+ # @!attribute sms_shares
430
+ #
431
+ # @return [Integer, nil]
432
+ optional :sms_shares, Integer, api_name: :smsShares
433
+
434
+ # @!attribute telegram_shares
435
+ #
436
+ # @return [Integer, nil]
437
+ optional :telegram_shares, Integer, api_name: :telegramShares
438
+
439
+ # @!attribute threads_shares
440
+ #
441
+ # @return [Integer, nil]
442
+ optional :threads_shares, Integer, api_name: :threadsShares
443
+
444
+ # @!attribute total_commission_count
445
+ # Affiliate programs only. Number of commission records.
446
+ #
447
+ # @return [Integer, nil]
448
+ optional :total_commission_count, Integer, api_name: :totalCommissionCount
449
+
450
+ # @!attribute total_commissions
451
+ # Affiliate programs only. Commissions in the smallest unit of the program
452
+ # currency.
453
+ #
454
+ # @return [Integer, nil]
455
+ optional :total_commissions, Integer, api_name: :totalCommissions
456
+
457
+ # @!attribute total_revenue
458
+ # Affiliate programs only. Revenue in the smallest unit of the program currency.
459
+ #
460
+ # @return [Integer, nil]
461
+ optional :total_revenue, Integer, api_name: :totalRevenue
462
+
463
+ # @!attribute tumblr_shares
464
+ #
465
+ # @return [Integer, nil]
466
+ optional :tumblr_shares, Integer, api_name: :tumblrShares
467
+
468
+ # @!attribute twitter_shares
469
+ #
470
+ # @return [Integer, nil]
471
+ optional :twitter_shares, Integer, api_name: :twitterShares
472
+
473
+ # @!attribute unique_impressions
474
+ #
475
+ # @return [Integer, nil]
476
+ optional :unique_impressions, Integer, api_name: :uniqueImpressions
477
+
478
+ # @!attribute wechat_shares
479
+ #
480
+ # @return [Integer, nil]
481
+ optional :wechat_shares, Integer, api_name: :wechatShares
482
+
483
+ # @!attribute whats_app_shares
484
+ #
485
+ # @return [Integer, nil]
486
+ optional :whats_app_shares, Integer, api_name: :whatsAppShares
487
+
488
+ # @!method initialize(android_native_shares: nil, bluesky_shares: nil, copy_ref_link_shares: nil, email_shares: nil, facebook_shares: nil, impressions: nil, invites: nil, ios_native_shares: nil, linked_in_shares: nil, messenger_shares: nil, participants: nil, period_start: 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)
489
+ # Some parameter documentations has been truncated, see
490
+ # {GrowsurfRuby::Models::CampaignRetrieveAnalyticsResponse::Series} for more
491
+ # details.
492
+ #
493
+ # @param android_native_shares [Integer]
494
+ #
495
+ # @param bluesky_shares [Integer]
496
+ #
497
+ # @param copy_ref_link_shares [Integer]
498
+ #
499
+ # @param email_shares [Integer]
500
+ #
501
+ # @param facebook_shares [Integer]
502
+ #
503
+ # @param impressions [Integer]
504
+ #
505
+ # @param invites [Integer]
506
+ #
507
+ # @param ios_native_shares [Integer]
508
+ #
509
+ # @param linked_in_shares [Integer]
510
+ #
511
+ # @param messenger_shares [Integer]
512
+ #
513
+ # @param participants [Integer]
514
+ #
515
+ # @param period_start [Integer] Start of the period, as a Unix timestamp in milliseconds (UTC).
516
+ #
517
+ # @param pinterest_shares [Integer]
518
+ #
519
+ # @param qrcode_shares [Integer]
520
+ #
521
+ # @param reddit_shares [Integer]
522
+ #
523
+ # @param referral_credit_expireds [Integer]
524
+ #
525
+ # @param referral_credit_pendings [Integer]
526
+ #
527
+ # @param referrals [Integer]
528
+ #
529
+ # @param sms_shares [Integer]
530
+ #
531
+ # @param telegram_shares [Integer]
532
+ #
533
+ # @param threads_shares [Integer]
534
+ #
535
+ # @param total_commission_count [Integer] Affiliate programs only. Number of commission records.
536
+ #
537
+ # @param total_commissions [Integer] Affiliate programs only. Commissions in the smallest unit of the program currenc
538
+ #
539
+ # @param total_revenue [Integer] Affiliate programs only. Revenue in the smallest unit of the program currency.
540
+ #
541
+ # @param tumblr_shares [Integer]
542
+ #
543
+ # @param twitter_shares [Integer]
544
+ #
545
+ # @param unique_impressions [Integer]
546
+ #
547
+ # @param wechat_shares [Integer]
548
+ #
549
+ # @param whats_app_shares [Integer]
550
+ end
551
+
552
+ # @see GrowsurfRuby::Models::CampaignRetrieveAnalyticsResponse#status_counts
553
+ class StatusCounts < GrowsurfRuby::Internal::Type::BaseModel
554
+ # @!attribute affiliate_status
555
+ # Affiliate only. Participant counts keyed by affiliate status.
556
+ #
557
+ # @return [Hash{Symbol=>Integer}, nil]
558
+ optional :affiliate_status,
559
+ GrowsurfRuby::Internal::Type::HashOf[Integer],
560
+ api_name: :affiliateStatus
561
+
562
+ # @!attribute commission_status
563
+ # Affiliate only. Commission counts and amounts by status.
564
+ #
565
+ # @return [GrowsurfRuby::Models::CampaignRetrieveAnalyticsResponse::StatusCounts::CommissionStatus, nil]
566
+ optional :commission_status,
567
+ -> {
568
+ GrowsurfRuby::Models::CampaignRetrieveAnalyticsResponse::StatusCounts::CommissionStatus
569
+ },
570
+ api_name: :commissionStatus
571
+
572
+ # @!attribute currency_iso
573
+ #
574
+ # @return [String, nil]
575
+ optional :currency_iso, String, api_name: :currencyISO
576
+
577
+ # @!attribute payout_status
578
+ # Affiliate only. Payout counts and amounts by status.
579
+ #
580
+ # @return [GrowsurfRuby::Models::CampaignRetrieveAnalyticsResponse::StatusCounts::PayoutStatus, nil]
581
+ optional :payout_status,
582
+ -> {
583
+ GrowsurfRuby::Models::CampaignRetrieveAnalyticsResponse::StatusCounts::PayoutStatus
584
+ },
585
+ api_name: :payoutStatus
586
+
587
+ # @!attribute reward_status
588
+ # Present for every program.
589
+ #
590
+ # @return [GrowsurfRuby::Models::CampaignRetrieveAnalyticsResponse::StatusCounts::RewardStatus, nil]
591
+ optional :reward_status,
592
+ -> {
593
+ GrowsurfRuby::Models::CampaignRetrieveAnalyticsResponse::StatusCounts::RewardStatus
594
+ },
595
+ api_name: :rewardStatus
596
+
597
+ # @!method initialize(affiliate_status: nil, commission_status: nil, currency_iso: nil, payout_status: nil, reward_status: nil)
598
+ # Some parameter documentations has been truncated, see
599
+ # {GrowsurfRuby::Models::CampaignRetrieveAnalyticsResponse::StatusCounts} for more
600
+ # details.
601
+ #
602
+ # Status-count breakdowns. `rewardStatus` is present for every program;
603
+ # `affiliateStatus`, `commissionStatus`, and `payoutStatus` are present only for
604
+ # affiliate programs. Money amounts are in minor units of `currencyISO`.
605
+ #
606
+ # @param affiliate_status [Hash{Symbol=>Integer}] Affiliate only. Participant counts keyed by affiliate status.
607
+ #
608
+ # @param commission_status [GrowsurfRuby::Models::CampaignRetrieveAnalyticsResponse::StatusCounts::CommissionStatus] Affiliate only. Commission counts and amounts by status.
609
+ #
610
+ # @param currency_iso [String]
611
+ #
612
+ # @param payout_status [GrowsurfRuby::Models::CampaignRetrieveAnalyticsResponse::StatusCounts::PayoutStatus] Affiliate only. Payout counts and amounts by status.
613
+ #
614
+ # @param reward_status [GrowsurfRuby::Models::CampaignRetrieveAnalyticsResponse::StatusCounts::RewardStatus] Present for every program.
615
+
616
+ # @see GrowsurfRuby::Models::CampaignRetrieveAnalyticsResponse::StatusCounts#commission_status
617
+ class CommissionStatus < GrowsurfRuby::Internal::Type::BaseModel
618
+ # @!attribute approved
619
+ #
620
+ # @return [GrowsurfRuby::Models::CampaignRetrieveAnalyticsResponse::StatusCounts::CommissionStatus::CommissionStatusMetric, nil]
621
+ optional :approved,
622
+ -> {
623
+ GrowsurfRuby::Models::CampaignRetrieveAnalyticsResponse::StatusCounts::CommissionStatus::CommissionStatusMetric
624
+ }
625
+
626
+ # @!attribute paid
627
+ #
628
+ # @return [GrowsurfRuby::Models::CampaignRetrieveAnalyticsResponse::StatusCounts::CommissionStatus::CommissionStatusMetric, nil]
629
+ optional :paid,
630
+ -> {
631
+ GrowsurfRuby::Models::CampaignRetrieveAnalyticsResponse::StatusCounts::CommissionStatus::CommissionStatusMetric
632
+ }
633
+
634
+ # @!attribute pending
635
+ #
636
+ # @return [GrowsurfRuby::Models::CampaignRetrieveAnalyticsResponse::StatusCounts::CommissionStatus::CommissionStatusMetric, nil]
637
+ optional :pending,
638
+ -> {
639
+ GrowsurfRuby::Models::CampaignRetrieveAnalyticsResponse::StatusCounts::CommissionStatus::CommissionStatusMetric
640
+ }
641
+
642
+ # @!attribute reversed
643
+ #
644
+ # @return [GrowsurfRuby::Models::CampaignRetrieveAnalyticsResponse::StatusCounts::CommissionStatus::CommissionStatusMetric, nil]
645
+ optional :reversed,
646
+ -> {
647
+ GrowsurfRuby::Models::CampaignRetrieveAnalyticsResponse::StatusCounts::CommissionStatus::CommissionStatusMetric
648
+ }
649
+
650
+ # @!method initialize(approved: nil, paid: nil, pending: nil, reversed: nil)
651
+ # Affiliate only. Commission counts and amounts by status.
652
+ #
653
+ # @param approved [GrowsurfRuby::Models::CampaignRetrieveAnalyticsResponse::StatusCounts::CommissionStatus::CommissionStatusMetric]
654
+ #
655
+ # @param paid [GrowsurfRuby::Models::CampaignRetrieveAnalyticsResponse::StatusCounts::CommissionStatus::CommissionStatusMetric]
656
+ #
657
+ # @param pending [GrowsurfRuby::Models::CampaignRetrieveAnalyticsResponse::StatusCounts::CommissionStatus::CommissionStatusMetric]
658
+ #
659
+ # @param reversed [GrowsurfRuby::Models::CampaignRetrieveAnalyticsResponse::StatusCounts::CommissionStatus::CommissionStatusMetric]
660
+
661
+ class CommissionStatusMetric < GrowsurfRuby::Internal::Type::BaseModel
662
+ # @!attribute count
663
+ #
664
+ # @return [Integer, nil]
665
+ optional :count, Integer
666
+
667
+ # @!attribute total_amount
668
+ # Total commission amount in minor currency units.
669
+ #
670
+ # @return [Integer, nil]
671
+ optional :total_amount, Integer, api_name: :totalAmount
672
+
673
+ # @!attribute total_revenue
674
+ # Total attributed revenue in minor currency units.
675
+ #
676
+ # @return [Integer, nil]
677
+ optional :total_revenue, Integer, api_name: :totalRevenue
678
+
679
+ # @!method initialize(count: nil, total_amount: nil, total_revenue: nil)
680
+ # @param count [Integer]
681
+ #
682
+ # @param total_amount [Integer] Total commission amount in minor currency units.
683
+ #
684
+ # @param total_revenue [Integer] Total attributed revenue in minor currency units.
685
+ end
686
+ end
687
+
688
+ # @see GrowsurfRuby::Models::CampaignRetrieveAnalyticsResponse::StatusCounts#payout_status
689
+ class PayoutStatus < GrowsurfRuby::Internal::Type::BaseModel
690
+ # @!attribute failed
691
+ #
692
+ # @return [GrowsurfRuby::Models::CampaignRetrieveAnalyticsResponse::StatusCounts::PayoutStatus::PayoutStatusMetric, nil]
693
+ optional :failed,
694
+ -> {
695
+ GrowsurfRuby::Models::CampaignRetrieveAnalyticsResponse::StatusCounts::PayoutStatus::PayoutStatusMetric
696
+ }
697
+
698
+ # @!attribute issued
699
+ #
700
+ # @return [GrowsurfRuby::Models::CampaignRetrieveAnalyticsResponse::StatusCounts::PayoutStatus::PayoutStatusMetric, nil]
701
+ optional :issued,
702
+ -> {
703
+ GrowsurfRuby::Models::CampaignRetrieveAnalyticsResponse::StatusCounts::PayoutStatus::PayoutStatusMetric
704
+ }
705
+
706
+ # @!attribute queued
707
+ #
708
+ # @return [GrowsurfRuby::Models::CampaignRetrieveAnalyticsResponse::StatusCounts::PayoutStatus::PayoutStatusMetric, nil]
709
+ optional :queued,
710
+ -> {
711
+ GrowsurfRuby::Models::CampaignRetrieveAnalyticsResponse::StatusCounts::PayoutStatus::PayoutStatusMetric
712
+ }
713
+
714
+ # @!attribute upcoming
715
+ #
716
+ # @return [GrowsurfRuby::Models::CampaignRetrieveAnalyticsResponse::StatusCounts::PayoutStatus::PayoutStatusMetric, nil]
717
+ optional :upcoming,
718
+ -> {
719
+ GrowsurfRuby::Models::CampaignRetrieveAnalyticsResponse::StatusCounts::PayoutStatus::PayoutStatusMetric
720
+ }
721
+
722
+ # @!method initialize(failed: nil, issued: nil, queued: nil, upcoming: nil)
723
+ # Affiliate only. Payout counts and amounts by status.
724
+ #
725
+ # @param failed [GrowsurfRuby::Models::CampaignRetrieveAnalyticsResponse::StatusCounts::PayoutStatus::PayoutStatusMetric]
726
+ #
727
+ # @param issued [GrowsurfRuby::Models::CampaignRetrieveAnalyticsResponse::StatusCounts::PayoutStatus::PayoutStatusMetric]
728
+ #
729
+ # @param queued [GrowsurfRuby::Models::CampaignRetrieveAnalyticsResponse::StatusCounts::PayoutStatus::PayoutStatusMetric]
730
+ #
731
+ # @param upcoming [GrowsurfRuby::Models::CampaignRetrieveAnalyticsResponse::StatusCounts::PayoutStatus::PayoutStatusMetric]
732
+
733
+ class PayoutStatusMetric < GrowsurfRuby::Internal::Type::BaseModel
734
+ # @!attribute count
735
+ #
736
+ # @return [Integer, nil]
737
+ optional :count, Integer
738
+
739
+ # @!attribute total_amount
740
+ # Total payout amount in minor currency units.
741
+ #
742
+ # @return [Integer, nil]
743
+ optional :total_amount, Integer, api_name: :totalAmount
744
+
745
+ # @!method initialize(count: nil, total_amount: nil)
746
+ # @param count [Integer]
747
+ #
748
+ # @param total_amount [Integer] Total payout amount in minor currency units.
749
+ end
750
+ end
751
+
752
+ # @see GrowsurfRuby::Models::CampaignRetrieveAnalyticsResponse::StatusCounts#reward_status
753
+ class RewardStatus < GrowsurfRuby::Internal::Type::BaseModel
754
+ # @!attribute approved
755
+ #
756
+ # @return [Integer, nil]
757
+ optional :approved, Integer
758
+
759
+ # @!attribute pending
760
+ # Unapproved rewards awaiting fulfillment.
761
+ #
762
+ # @return [Integer, nil]
763
+ optional :pending, Integer
764
+
765
+ # @!method initialize(approved: nil, pending: nil)
766
+ # @param approved [Integer]
767
+ #
768
+ # @param pending [Integer] Unapproved rewards awaiting fulfillment.
769
+ end
770
+ end
234
771
  end
235
772
  end
236
773
  end
@@ -22,74 +22,25 @@ module GrowsurfRuby
22
22
  # @return [String, nil]
23
23
  optional :company_name, String, api_name: :companyName
24
24
 
25
- # @!attribute currency_iso
26
- #
27
- # @return [String, nil]
28
- optional :currency_iso, String, api_name: :currencyISO
29
-
30
- # @!attribute design
31
- #
32
- # @return [Hash{Symbol=>Object}, nil]
33
- optional :design, GrowsurfRuby::Internal::Type::HashOf[GrowsurfRuby::Internal::Type::Unknown]
34
-
35
- # @!attribute emails
36
- #
37
- # @return [Hash{Symbol=>Object}, nil]
38
- optional :emails, GrowsurfRuby::Internal::Type::HashOf[GrowsurfRuby::Internal::Type::Unknown]
39
-
40
- # @!attribute goal
41
- #
42
- # @return [String, nil]
43
- optional :goal, String
44
-
45
- # @!attribute installation
46
- #
47
- # @return [Hash{Symbol=>Object}, nil]
48
- optional :installation, GrowsurfRuby::Internal::Type::HashOf[GrowsurfRuby::Internal::Type::Unknown]
49
-
50
25
  # @!attribute name
51
26
  #
52
27
  # @return [String, nil]
53
28
  optional :name, String
54
29
 
55
- # @!attribute notifications
56
- #
57
- # @return [Hash{Symbol=>Object}, nil]
58
- optional :notifications, GrowsurfRuby::Internal::Type::HashOf[GrowsurfRuby::Internal::Type::Unknown]
59
-
60
- # @!attribute options
61
- #
62
- # @return [Hash{Symbol=>Object}, nil]
63
- optional :options, GrowsurfRuby::Internal::Type::HashOf[GrowsurfRuby::Internal::Type::Unknown]
64
-
65
30
  # @!attribute status
66
31
  #
67
32
  # @return [Symbol, GrowsurfRuby::Models::CampaignUpdateParams::Status, nil]
68
33
  optional :status, enum: -> { GrowsurfRuby::CampaignUpdateParams::Status }
69
34
 
70
- # @!method initialize(id:, company_logo_image_url: nil, company_name: nil, currency_iso: nil, design: nil, emails: nil, goal: nil, installation: nil, name: nil, notifications: nil, options: nil, status: nil, request_options: {})
35
+ # @!method initialize(id:, company_logo_image_url: nil, company_name: nil, name: nil, status: nil, request_options: {})
71
36
  # @param id [String]
72
37
  #
73
38
  # @param company_logo_image_url [String]
74
39
  #
75
40
  # @param company_name [String]
76
41
  #
77
- # @param currency_iso [String]
78
- #
79
- # @param design [Hash{Symbol=>Object}]
80
- #
81
- # @param emails [Hash{Symbol=>Object}]
82
- #
83
- # @param goal [String]
84
- #
85
- # @param installation [Hash{Symbol=>Object}]
86
- #
87
42
  # @param name [String]
88
43
  #
89
- # @param notifications [Hash{Symbol=>Object}]
90
- #
91
- # @param options [Hash{Symbol=>Object}]
92
- #
93
44
  # @param status [Symbol, GrowsurfRuby::Models::CampaignUpdateParams::Status]
94
45
  #
95
46
  # @param request_options [GrowsurfRuby::RequestOptions, Hash{Symbol=>Object}]
@@ -98,11 +49,8 @@ module GrowsurfRuby
98
49
  module Status
99
50
  extend GrowsurfRuby::Internal::Type::Enum
100
51
 
101
- DRAFT = :DRAFT
102
- PENDING = :PENDING
103
52
  IN_PROGRESS = :IN_PROGRESS
104
53
  COMPLETE = :COMPLETE
105
- CANCELLED = :CANCELLED
106
54
 
107
55
  # @!method self.values
108
56
  # @return [Array<Symbol>]
@@ -8,6 +8,11 @@ module GrowsurfRuby
8
8
  # @return [Integer, nil]
9
9
  optional :amount, Integer, nil?: true
10
10
 
11
+ # @!attribute amount_iso
12
+ #
13
+ # @return [String, nil]
14
+ optional :amount_iso, String, api_name: :amountISO, nil?: true
15
+
11
16
  # @!attribute approval_required
12
17
  #
13
18
  # @return [Boolean, nil]
@@ -101,8 +106,9 @@ module GrowsurfRuby
101
106
  # @return [Symbol, GrowsurfRuby::Models::CommissionStructure::Type, nil]
102
107
  optional :type, enum: -> { GrowsurfRuby::CommissionStructure::Type }, nil?: true
103
108
 
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)
109
+ # @!method initialize(amount: nil, amount_iso: 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
110
  # @param amount [Integer, nil]
111
+ # @param amount_iso [String, nil]
106
112
  # @param approval_required [Boolean, nil]
107
113
  # @param duration [String, nil]
108
114
  # @param duration_in_months [Integer, nil]
@@ -127,7 +133,7 @@ module GrowsurfRuby
127
133
  extend GrowsurfRuby::Internal::Type::Enum
128
134
 
129
135
  PERCENT = :PERCENT
130
- AMOUNT = :AMOUNT
136
+ FIXED = :FIXED
131
137
 
132
138
  # @!method self.values
133
139
  # @return [Array<Symbol>]