growsurf-ruby 1.0.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 (137) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +7 -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 +17 -6
  23. data/lib/growsurf_ruby/models/campaign/reward_create_params.rb +25 -15
  24. data/lib/growsurf_ruby/models/campaign/reward_update_params.rb +25 -15
  25. data/lib/growsurf_ruby/models/campaign/webhook.rb +72 -0
  26. data/lib/growsurf_ruby/models/campaign/webhook_create_params.rb +52 -0
  27. data/lib/growsurf_ruby/models/campaign/webhook_delete_params.rb +28 -0
  28. data/lib/growsurf_ruby/models/campaign/webhook_delete_response.rb +24 -0
  29. data/lib/growsurf_ruby/models/campaign/webhook_event.rb +23 -0
  30. data/lib/growsurf_ruby/models/campaign/webhook_list_response.rb +18 -0
  31. data/lib/growsurf_ruby/models/campaign/webhook_test_params.rb +42 -0
  32. data/lib/growsurf_ruby/models/campaign/webhook_test_response.rb +50 -0
  33. data/lib/growsurf_ruby/models/campaign/webhook_update_params.rb +59 -0
  34. data/lib/growsurf_ruby/models/campaign.rb +17 -6
  35. data/lib/growsurf_ruby/models/campaign_retrieve_analytics_params.rb +36 -1
  36. data/lib/growsurf_ruby/models/campaign_retrieve_analytics_response.rb +538 -1
  37. data/lib/growsurf_ruby/models/campaign_update_params.rb +0 -3
  38. data/lib/growsurf_ruby/models/commission_structure.rb +8 -2
  39. data/lib/growsurf_ruby/models/referral_flow_screenshots_response.rb +72 -0
  40. data/lib/growsurf_ruby/models.rb +8 -0
  41. data/lib/growsurf_ruby/resources/account.rb +159 -0
  42. data/lib/growsurf_ruby/resources/campaign/design.rb +9 -7
  43. data/lib/growsurf_ruby/resources/campaign/emails.rb +8 -5
  44. data/lib/growsurf_ruby/resources/campaign/installation.rb +8 -6
  45. data/lib/growsurf_ruby/resources/campaign/options.rb +8 -5
  46. data/lib/growsurf_ruby/resources/campaign/participant.rb +170 -2
  47. data/lib/growsurf_ruby/resources/campaign/rewards.rb +17 -21
  48. data/lib/growsurf_ruby/resources/campaign/webhooks.rb +157 -0
  49. data/lib/growsurf_ruby/resources/campaign.rb +30 -2
  50. data/lib/growsurf_ruby/version.rb +1 -1
  51. data/lib/growsurf_ruby.rb +26 -0
  52. data/rbi/growsurf_ruby/client.rbi +3 -0
  53. data/rbi/growsurf_ruby/models/account.rbi +125 -0
  54. data/rbi/growsurf_ruby/models/account_create_params.rbi +73 -0
  55. data/rbi/growsurf_ruby/models/account_create_response.rbi +115 -0
  56. data/rbi/growsurf_ruby/models/account_resend_verification_email_response.rbi +76 -0
  57. data/rbi/growsurf_ruby/models/account_rotate_api_key_response.rbi +30 -0
  58. data/rbi/growsurf_ruby/models/account_update_params.rbi +65 -0
  59. data/rbi/growsurf_ruby/models/campaign/campaign_reward_list_response.rbi +2 -2
  60. data/rbi/growsurf_ruby/models/campaign/create.rbi +8 -0
  61. data/rbi/growsurf_ruby/models/campaign/participant_activity_logs_response.rbi +111 -0
  62. data/rbi/growsurf_ruby/models/campaign/participant_analytics_response.rbi +630 -0
  63. data/rbi/growsurf_ruby/models/campaign/participant_bulk_delete_params.rbi +56 -0
  64. data/rbi/growsurf_ruby/models/campaign/participant_bulk_delete_response.rbi +285 -0
  65. data/rbi/growsurf_ruby/models/campaign/participant_email_params.rbi +118 -0
  66. data/rbi/growsurf_ruby/models/campaign/participant_email_response.rbi +84 -0
  67. data/rbi/growsurf_ruby/models/campaign/participant_list_activity_logs_params.rbi +74 -0
  68. data/rbi/growsurf_ruby/models/campaign/participant_retrieve_analytics_params.rbi +207 -0
  69. data/rbi/growsurf_ruby/models/campaign/participant_update_params.rbi +24 -0
  70. data/rbi/growsurf_ruby/models/campaign/reward.rbi +25 -4
  71. data/rbi/growsurf_ruby/models/campaign/reward_create_params.rbi +34 -9
  72. data/rbi/growsurf_ruby/models/campaign/reward_update_params.rbi +34 -9
  73. data/rbi/growsurf_ruby/models/campaign/webhook.rbi +93 -0
  74. data/rbi/growsurf_ruby/models/campaign/webhook_create_params.rbi +91 -0
  75. data/rbi/growsurf_ruby/models/campaign/webhook_delete_params.rbi +48 -0
  76. data/rbi/growsurf_ruby/models/campaign/webhook_delete_response.rbi +33 -0
  77. data/rbi/growsurf_ruby/models/campaign/webhook_event.rbi +60 -0
  78. data/rbi/growsurf_ruby/models/campaign/webhook_list_response.rbi +36 -0
  79. data/rbi/growsurf_ruby/models/campaign/webhook_test_params.rbi +69 -0
  80. data/rbi/growsurf_ruby/models/campaign/webhook_test_response.rbi +102 -0
  81. data/rbi/growsurf_ruby/models/campaign/webhook_update_params.rbi +98 -0
  82. data/rbi/growsurf_ruby/models/campaign.rbi +25 -4
  83. data/rbi/growsurf_ruby/models/campaign_retrieve_analytics_params.rbi +91 -0
  84. data/rbi/growsurf_ruby/models/campaign_retrieve_analytics_response.rbi +1011 -3
  85. data/rbi/growsurf_ruby/models/campaign_update_params.rbi +0 -15
  86. data/rbi/growsurf_ruby/models/commission_structure.rbi +8 -2
  87. data/rbi/growsurf_ruby/models/referral_flow_screenshots_response.rbi +94 -0
  88. data/rbi/growsurf_ruby/models.rbi +9 -0
  89. data/rbi/growsurf_ruby/resources/account.rbi +112 -0
  90. data/rbi/growsurf_ruby/resources/campaign/design.rbi +7 -5
  91. data/rbi/growsurf_ruby/resources/campaign/emails.rbi +7 -5
  92. data/rbi/growsurf_ruby/resources/campaign/installation.rbi +7 -4
  93. data/rbi/growsurf_ruby/resources/campaign/options.rbi +7 -5
  94. data/rbi/growsurf_ruby/resources/campaign/participant.rbi +160 -0
  95. data/rbi/growsurf_ruby/resources/campaign/rewards.rbi +37 -21
  96. data/rbi/growsurf_ruby/resources/campaign/webhooks.rbi +123 -0
  97. data/rbi/growsurf_ruby/resources/campaign.rbi +33 -2
  98. data/sig/growsurf_ruby/client.rbs +2 -0
  99. data/sig/growsurf_ruby/models/account.rbs +67 -0
  100. data/sig/growsurf_ruby/models/account_create_params.rbs +42 -0
  101. data/sig/growsurf_ruby/models/account_create_response.rbs +47 -0
  102. data/sig/growsurf_ruby/models/account_resend_verification_email_response.rbs +35 -0
  103. data/sig/growsurf_ruby/models/account_rotate_api_key_response.rbs +13 -0
  104. data/sig/growsurf_ruby/models/account_update_params.rbs +42 -0
  105. data/sig/growsurf_ruby/models/campaign/participant_activity_logs_response.rbs +59 -0
  106. data/sig/growsurf_ruby/models/campaign/participant_analytics_response.rbs +407 -0
  107. data/sig/growsurf_ruby/models/campaign/participant_bulk_delete_params.rbs +30 -0
  108. data/sig/growsurf_ruby/models/campaign/participant_bulk_delete_response.rbs +125 -0
  109. data/sig/growsurf_ruby/models/campaign/participant_email_params.rbs +61 -0
  110. data/sig/growsurf_ruby/models/campaign/participant_email_response.rbs +37 -0
  111. data/sig/growsurf_ruby/models/campaign/participant_list_activity_logs_params.rbs +47 -0
  112. data/sig/growsurf_ruby/models/campaign/participant_retrieve_analytics_params.rbs +90 -0
  113. data/sig/growsurf_ruby/models/campaign/participant_update_params.rbs +14 -0
  114. data/sig/growsurf_ruby/models/campaign/reward_create_params.rbs +0 -7
  115. data/sig/growsurf_ruby/models/campaign/reward_update_params.rbs +0 -7
  116. data/sig/growsurf_ruby/models/campaign/webhook.rbs +52 -0
  117. data/sig/growsurf_ruby/models/campaign/webhook_create_params.rbs +51 -0
  118. data/sig/growsurf_ruby/models/campaign/webhook_delete_params.rbs +30 -0
  119. data/sig/growsurf_ruby/models/campaign/webhook_delete_response.rbs +17 -0
  120. data/sig/growsurf_ruby/models/campaign/webhook_event.rbs +28 -0
  121. data/sig/growsurf_ruby/models/campaign/webhook_list_response.rbs +18 -0
  122. data/sig/growsurf_ruby/models/campaign/webhook_test_params.rbs +42 -0
  123. data/sig/growsurf_ruby/models/campaign/webhook_test_response.rbs +54 -0
  124. data/sig/growsurf_ruby/models/campaign/webhook_update_params.rbs +63 -0
  125. data/sig/growsurf_ruby/models/campaign_retrieve_analytics_params.rbs +35 -1
  126. data/sig/growsurf_ruby/models/campaign_retrieve_analytics_response.rbs +533 -3
  127. data/sig/growsurf_ruby/models/campaign_update_params.rbs +1 -4
  128. data/sig/growsurf_ruby/models/commission_structure.rbs +7 -2
  129. data/sig/growsurf_ruby/models/referral_flow_screenshots_response.rbs +54 -0
  130. data/sig/growsurf_ruby/models/reward_tax_valuation.rbs +4 -1
  131. data/sig/growsurf_ruby/models.rbs +8 -0
  132. data/sig/growsurf_ruby/resources/account.rbs +38 -0
  133. data/sig/growsurf_ruby/resources/campaign/participant.rbs +37 -0
  134. data/sig/growsurf_ruby/resources/campaign/rewards.rbs +0 -2
  135. data/sig/growsurf_ruby/resources/campaign/webhooks.rbs +46 -0
  136. data/sig/growsurf_ruby/resources/campaign.rbs +9 -0
  137. metadata +80 -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
@@ -49,11 +49,8 @@ module GrowsurfRuby
49
49
  module Status
50
50
  extend GrowsurfRuby::Internal::Type::Enum
51
51
 
52
- DRAFT = :DRAFT
53
- PENDING = :PENDING
54
52
  IN_PROGRESS = :IN_PROGRESS
55
53
  COMPLETE = :COMPLETE
56
- CANCELLED = :CANCELLED
57
54
 
58
55
  # @!method self.values
59
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>]
@@ -0,0 +1,72 @@
1
+ # frozen_string_literal: true
2
+
3
+ module GrowsurfRuby
4
+ module Models
5
+ # @see GrowsurfRuby::Resources::Campaign#get_referral_flow_screenshots
6
+ class ReferralFlowScreenshotsResponse < GrowsurfRuby::Internal::Type::BaseModel
7
+ # @!attribute referrer
8
+ # Screenshot of the referral flow as a signed-in referrer sees it.
9
+ #
10
+ # @return [GrowsurfRuby::Models::ReferralFlowScreenshotsResponse::ReferralFlowScreenshot]
11
+ required :referrer, -> { GrowsurfRuby::Models::ReferralFlowScreenshotsResponse::ReferralFlowScreenshot }
12
+
13
+ # @!attribute referred_friend
14
+ # Screenshot of the referral flow as the referred friend sees it.
15
+ #
16
+ # @return [GrowsurfRuby::Models::ReferralFlowScreenshotsResponse::ReferralFlowScreenshot]
17
+ required :referred_friend,
18
+ -> { GrowsurfRuby::Models::ReferralFlowScreenshotsResponse::ReferralFlowScreenshot },
19
+ api_name: :referredFriend
20
+
21
+ # @!attribute generated_at
22
+ # When the screenshots were generated, as a Unix timestamp in milliseconds.
23
+ #
24
+ # @return [Integer]
25
+ required :generated_at, Integer, api_name: :generatedAt
26
+
27
+ # @!method initialize(referrer:, referred_friend:, generated_at:)
28
+ #
29
+ # @param referrer [GrowsurfRuby::Models::ReferralFlowScreenshotsResponse::ReferralFlowScreenshot] Screenshot of the referral flow as a signed-in referrer sees it.
30
+ #
31
+ # @param referred_friend [GrowsurfRuby::Models::ReferralFlowScreenshotsResponse::ReferralFlowScreenshot] Screenshot of the referral flow as the referred friend sees it.
32
+ #
33
+ # @param generated_at [Integer] When the screenshots were generated, as a Unix timestamp in milliseconds.
34
+
35
+ class ReferralFlowScreenshot < GrowsurfRuby::Internal::Type::BaseModel
36
+ # @!attribute view
37
+ # The referral-flow view captured in this screenshot.
38
+ #
39
+ # @return [String]
40
+ required :view, String
41
+
42
+ # @!attribute url
43
+ # Image URL for the generated screenshot.
44
+ #
45
+ # @return [String]
46
+ required :url, String
47
+
48
+ # @!attribute width
49
+ # Screenshot viewport width in CSS pixels.
50
+ #
51
+ # @return [Integer]
52
+ required :width, Integer
53
+
54
+ # @!attribute height
55
+ # Screenshot viewport height in CSS pixels.
56
+ #
57
+ # @return [Integer]
58
+ required :height, Integer
59
+
60
+ # @!method initialize(view:, url:, width:, height:)
61
+ #
62
+ # @param view [String] The referral-flow view captured in this screenshot.
63
+ #
64
+ # @param url [String] Image URL for the generated screenshot.
65
+ #
66
+ # @param width [Integer] Screenshot viewport width in CSS pixels.
67
+ #
68
+ # @param height [Integer] Screenshot viewport height in CSS pixels.
69
+ end
70
+ end
71
+ end
72
+ end
@@ -39,6 +39,12 @@ module GrowsurfRuby
39
39
  mod.define_sorbet_constant!(const) { T.type_alias { mod.to_sorbet_type } }
40
40
  end
41
41
 
42
+ Account = GrowsurfRuby::Models::Account
43
+
44
+ AccountCreateParams = GrowsurfRuby::Models::AccountCreateParams
45
+
46
+ AccountUpdateParams = GrowsurfRuby::Models::AccountUpdateParams
47
+
42
48
  Campaign = GrowsurfRuby::Models::Campaign
43
49
 
44
50
  CampaignAPI = GrowsurfRuby::Models::CampaignAPI
@@ -76,5 +82,7 @@ module GrowsurfRuby
76
82
 
77
83
  ReferralList = GrowsurfRuby::Models::ReferralList
78
84
 
85
+ ReferralFlowScreenshotsResponse = GrowsurfRuby::Models::ReferralFlowScreenshotsResponse
86
+
79
87
  RewardTaxValuation = GrowsurfRuby::Models::RewardTaxValuation
80
88
  end