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.
- checksums.yaml +7 -0
- data/.ignore +2 -0
- data/CHANGELOG.md +11 -0
- data/README.md +234 -0
- data/SECURITY.md +23 -0
- data/lib/growsurf_ruby/client.rb +90 -0
- data/lib/growsurf_ruby/errors.rb +228 -0
- data/lib/growsurf_ruby/file_part.rb +58 -0
- data/lib/growsurf_ruby/internal/transport/base_client.rb +573 -0
- data/lib/growsurf_ruby/internal/transport/pooled_net_requester.rb +210 -0
- data/lib/growsurf_ruby/internal/type/array_of.rb +168 -0
- data/lib/growsurf_ruby/internal/type/base_model.rb +531 -0
- data/lib/growsurf_ruby/internal/type/base_page.rb +55 -0
- data/lib/growsurf_ruby/internal/type/boolean.rb +77 -0
- data/lib/growsurf_ruby/internal/type/converter.rb +327 -0
- data/lib/growsurf_ruby/internal/type/enum.rb +156 -0
- data/lib/growsurf_ruby/internal/type/file_input.rb +111 -0
- data/lib/growsurf_ruby/internal/type/hash_of.rb +188 -0
- data/lib/growsurf_ruby/internal/type/request_parameters.rb +42 -0
- data/lib/growsurf_ruby/internal/type/union.rb +254 -0
- data/lib/growsurf_ruby/internal/type/unknown.rb +81 -0
- data/lib/growsurf_ruby/internal/util.rb +966 -0
- data/lib/growsurf_ruby/internal.rb +20 -0
- data/lib/growsurf_ruby/models/campaign/commission_approve_params.rb +28 -0
- data/lib/growsurf_ruby/models/campaign/commission_approve_response.rb +18 -0
- data/lib/growsurf_ruby/models/campaign/commission_delete_params.rb +28 -0
- data/lib/growsurf_ruby/models/campaign/commission_delete_response.rb +18 -0
- data/lib/growsurf_ruby/models/campaign/fraud_risk_level.rb +18 -0
- data/lib/growsurf_ruby/models/campaign/participant.rb +495 -0
- data/lib/growsurf_ruby/models/campaign/participant_add_params.rb +93 -0
- data/lib/growsurf_ruby/models/campaign/participant_delete_params.rb +28 -0
- data/lib/growsurf_ruby/models/campaign/participant_delete_response.rb +18 -0
- data/lib/growsurf_ruby/models/campaign/participant_list_commissions_params.rb +68 -0
- data/lib/growsurf_ruby/models/campaign/participant_list_payouts_params.rb +67 -0
- data/lib/growsurf_ruby/models/campaign/participant_list_referrals_params.rb +117 -0
- data/lib/growsurf_ruby/models/campaign/participant_list_rewards_params.rb +46 -0
- data/lib/growsurf_ruby/models/campaign/participant_list_rewards_response.rb +30 -0
- data/lib/growsurf_ruby/models/campaign/participant_record_transaction_params.rb +170 -0
- data/lib/growsurf_ruby/models/campaign/participant_record_transaction_response.rb +91 -0
- data/lib/growsurf_ruby/models/campaign/participant_retrieve_params.rb +28 -0
- data/lib/growsurf_ruby/models/campaign/participant_reward.rb +103 -0
- data/lib/growsurf_ruby/models/campaign/participant_send_invites_params.rb +46 -0
- data/lib/growsurf_ruby/models/campaign/participant_send_invites_response.rb +30 -0
- data/lib/growsurf_ruby/models/campaign/participant_trigger_referral_params.rb +28 -0
- data/lib/growsurf_ruby/models/campaign/participant_trigger_referral_response.rb +24 -0
- data/lib/growsurf_ruby/models/campaign/participant_update_params.rb +100 -0
- data/lib/growsurf_ruby/models/campaign/referral_source.rb +17 -0
- data/lib/growsurf_ruby/models/campaign/referral_status.rb +19 -0
- data/lib/growsurf_ruby/models/campaign/reward_approve_params.rb +38 -0
- data/lib/growsurf_ruby/models/campaign/reward_approve_response.rb +18 -0
- data/lib/growsurf_ruby/models/campaign/reward_delete_params.rb +28 -0
- data/lib/growsurf_ruby/models/campaign/reward_delete_response.rb +18 -0
- data/lib/growsurf_ruby/models/campaign/reward_fulfill_params.rb +28 -0
- data/lib/growsurf_ruby/models/campaign/reward_fulfill_response.rb +18 -0
- data/lib/growsurf_ruby/models/campaign.rb +257 -0
- data/lib/growsurf_ruby/models/campaign_list_commissions_params.rb +59 -0
- data/lib/growsurf_ruby/models/campaign_list_leaderboard_params.rb +71 -0
- data/lib/growsurf_ruby/models/campaign_list_params.rb +14 -0
- data/lib/growsurf_ruby/models/campaign_list_participants_params.rb +37 -0
- data/lib/growsurf_ruby/models/campaign_list_payouts_params.rb +58 -0
- data/lib/growsurf_ruby/models/campaign_list_referrals_params.rb +108 -0
- data/lib/growsurf_ruby/models/campaign_list_response.rb +16 -0
- data/lib/growsurf_ruby/models/campaign_retrieve_analytics_params.rb +50 -0
- data/lib/growsurf_ruby/models/campaign_retrieve_analytics_response.rb +215 -0
- data/lib/growsurf_ruby/models/campaign_retrieve_params.rb +20 -0
- data/lib/growsurf_ruby/models/commission_structure.rb +137 -0
- data/lib/growsurf_ruby/models/participant_commission_list.rb +170 -0
- data/lib/growsurf_ruby/models/participant_list.rb +29 -0
- data/lib/growsurf_ruby/models/participant_payout_list.rb +136 -0
- data/lib/growsurf_ruby/models/referral_list.rb +96 -0
- data/lib/growsurf_ruby/models.rb +71 -0
- data/lib/growsurf_ruby/request_options.rb +77 -0
- data/lib/growsurf_ruby/resources/campaign/commission.rb +71 -0
- data/lib/growsurf_ruby/resources/campaign/participant.rb +446 -0
- data/lib/growsurf_ruby/resources/campaign/reward.rb +102 -0
- data/lib/growsurf_ruby/resources/campaign.rb +266 -0
- data/lib/growsurf_ruby/version.rb +5 -0
- data/lib/growsurf_ruby.rb +106 -0
- data/manifest.yaml +17 -0
- data/rbi/growsurf_ruby/client.rbi +51 -0
- data/rbi/growsurf_ruby/errors.rbi +205 -0
- data/rbi/growsurf_ruby/file_part.rbi +37 -0
- data/rbi/growsurf_ruby/internal/transport/base_client.rbi +305 -0
- data/rbi/growsurf_ruby/internal/transport/pooled_net_requester.rbi +84 -0
- data/rbi/growsurf_ruby/internal/type/array_of.rbi +104 -0
- data/rbi/growsurf_ruby/internal/type/base_model.rbi +314 -0
- data/rbi/growsurf_ruby/internal/type/base_page.rbi +43 -0
- data/rbi/growsurf_ruby/internal/type/boolean.rbi +58 -0
- data/rbi/growsurf_ruby/internal/type/converter.rbi +222 -0
- data/rbi/growsurf_ruby/internal/type/enum.rbi +82 -0
- data/rbi/growsurf_ruby/internal/type/file_input.rbi +59 -0
- data/rbi/growsurf_ruby/internal/type/hash_of.rbi +104 -0
- data/rbi/growsurf_ruby/internal/type/request_parameters.rbi +31 -0
- data/rbi/growsurf_ruby/internal/type/union.rbi +128 -0
- data/rbi/growsurf_ruby/internal/type/unknown.rbi +58 -0
- data/rbi/growsurf_ruby/internal/util.rbi +515 -0
- data/rbi/growsurf_ruby/internal.rbi +18 -0
- data/rbi/growsurf_ruby/models/campaign/commission_approve_params.rbi +48 -0
- data/rbi/growsurf_ruby/models/campaign/commission_approve_response.rbi +28 -0
- data/rbi/growsurf_ruby/models/campaign/commission_delete_params.rbi +48 -0
- data/rbi/growsurf_ruby/models/campaign/commission_delete_response.rbi +28 -0
- data/rbi/growsurf_ruby/models/campaign/fraud_risk_level.rbi +29 -0
- data/rbi/growsurf_ruby/models/campaign/participant.rbi +667 -0
- data/rbi/growsurf_ruby/models/campaign/participant_add_params.rbi +166 -0
- data/rbi/growsurf_ruby/models/campaign/participant_delete_params.rbi +48 -0
- data/rbi/growsurf_ruby/models/campaign/participant_delete_response.rbi +28 -0
- data/rbi/growsurf_ruby/models/campaign/participant_list_commissions_params.rbi +148 -0
- data/rbi/growsurf_ruby/models/campaign/participant_list_payouts_params.rbi +143 -0
- data/rbi/growsurf_ruby/models/campaign/participant_list_referrals_params.rbi +228 -0
- data/rbi/growsurf_ruby/models/campaign/participant_list_rewards_params.rbi +74 -0
- data/rbi/growsurf_ruby/models/campaign/participant_list_rewards_response.rbi +48 -0
- data/rbi/growsurf_ruby/models/campaign/participant_record_transaction_params.rbi +255 -0
- data/rbi/growsurf_ruby/models/campaign/participant_record_transaction_response.rbi +138 -0
- data/rbi/growsurf_ruby/models/campaign/participant_retrieve_params.rbi +48 -0
- data/rbi/growsurf_ruby/models/campaign/participant_reward.rbi +185 -0
- data/rbi/growsurf_ruby/models/campaign/participant_send_invites_params.rbi +70 -0
- data/rbi/growsurf_ruby/models/campaign/participant_send_invites_response.rbi +44 -0
- data/rbi/growsurf_ruby/models/campaign/participant_trigger_referral_params.rbi +48 -0
- data/rbi/growsurf_ruby/models/campaign/participant_trigger_referral_response.rbi +36 -0
- data/rbi/growsurf_ruby/models/campaign/participant_update_params.rbi +178 -0
- data/rbi/growsurf_ruby/models/campaign/referral_source.rbi +31 -0
- data/rbi/growsurf_ruby/models/campaign/referral_status.rbi +44 -0
- data/rbi/growsurf_ruby/models/campaign/reward_approve_params.rbi +63 -0
- data/rbi/growsurf_ruby/models/campaign/reward_approve_response.rbi +28 -0
- data/rbi/growsurf_ruby/models/campaign/reward_delete_params.rbi +48 -0
- data/rbi/growsurf_ruby/models/campaign/reward_delete_response.rbi +28 -0
- data/rbi/growsurf_ruby/models/campaign/reward_fulfill_params.rbi +48 -0
- data/rbi/growsurf_ruby/models/campaign/reward_fulfill_response.rbi +28 -0
- data/rbi/growsurf_ruby/models/campaign.rbi +376 -0
- data/rbi/growsurf_ruby/models/campaign_list_commissions_params.rbi +135 -0
- data/rbi/growsurf_ruby/models/campaign_list_leaderboard_params.rbi +171 -0
- data/rbi/growsurf_ruby/models/campaign_list_params.rbi +32 -0
- data/rbi/growsurf_ruby/models/campaign_list_participants_params.rbi +66 -0
- data/rbi/growsurf_ruby/models/campaign_list_payouts_params.rbi +127 -0
- data/rbi/growsurf_ruby/models/campaign_list_referrals_params.rbi +213 -0
- data/rbi/growsurf_ruby/models/campaign_list_response.rbi +32 -0
- data/rbi/growsurf_ruby/models/campaign_retrieve_analytics_params.rbi +81 -0
- data/rbi/growsurf_ruby/models/campaign_retrieve_analytics_response.rbi +320 -0
- data/rbi/growsurf_ruby/models/campaign_retrieve_params.rbi +38 -0
- data/rbi/growsurf_ruby/models/commission_structure.rbi +174 -0
- data/rbi/growsurf_ruby/models/participant_commission_list.rbi +269 -0
- data/rbi/growsurf_ruby/models/participant_list.rbi +44 -0
- data/rbi/growsurf_ruby/models/participant_payout_list.rbi +219 -0
- data/rbi/growsurf_ruby/models/referral_list.rbi +129 -0
- data/rbi/growsurf_ruby/models.rbi +38 -0
- data/rbi/growsurf_ruby/request_options.rbi +59 -0
- data/rbi/growsurf_ruby/resources/campaign/commission.rbi +49 -0
- data/rbi/growsurf_ruby/resources/campaign/participant.rbi +385 -0
- data/rbi/growsurf_ruby/resources/campaign/reward.rbi +70 -0
- data/rbi/growsurf_ruby/resources/campaign.rbi +205 -0
- data/rbi/growsurf_ruby/version.rbi +5 -0
- data/sig/growsurf_ruby/client.rbs +26 -0
- data/sig/growsurf_ruby/errors.rbs +117 -0
- data/sig/growsurf_ruby/file_part.rbs +21 -0
- data/sig/growsurf_ruby/internal/transport/base_client.rbs +133 -0
- data/sig/growsurf_ruby/internal/transport/pooled_net_requester.rbs +48 -0
- data/sig/growsurf_ruby/internal/type/array_of.rbs +48 -0
- data/sig/growsurf_ruby/internal/type/base_model.rbs +104 -0
- data/sig/growsurf_ruby/internal/type/base_page.rbs +24 -0
- data/sig/growsurf_ruby/internal/type/boolean.rbs +26 -0
- data/sig/growsurf_ruby/internal/type/converter.rbs +79 -0
- data/sig/growsurf_ruby/internal/type/enum.rbs +32 -0
- data/sig/growsurf_ruby/internal/type/file_input.rbs +25 -0
- data/sig/growsurf_ruby/internal/type/hash_of.rbs +48 -0
- data/sig/growsurf_ruby/internal/type/request_parameters.rbs +19 -0
- data/sig/growsurf_ruby/internal/type/union.rbs +52 -0
- data/sig/growsurf_ruby/internal/type/unknown.rbs +26 -0
- data/sig/growsurf_ruby/internal/util.rbs +199 -0
- data/sig/growsurf_ruby/internal.rbs +9 -0
- data/sig/growsurf_ruby/models/campaign/commission_approve_params.rbs +30 -0
- data/sig/growsurf_ruby/models/campaign/commission_approve_response.rbs +15 -0
- data/sig/growsurf_ruby/models/campaign/commission_delete_params.rbs +30 -0
- data/sig/growsurf_ruby/models/campaign/commission_delete_response.rbs +15 -0
- data/sig/growsurf_ruby/models/campaign/fraud_risk_level.rbs +17 -0
- data/sig/growsurf_ruby/models/campaign/participant.rbs +455 -0
- data/sig/growsurf_ruby/models/campaign/participant_add_params.rbs +95 -0
- data/sig/growsurf_ruby/models/campaign/participant_delete_params.rbs +30 -0
- data/sig/growsurf_ruby/models/campaign/participant_delete_response.rbs +15 -0
- data/sig/growsurf_ruby/models/campaign/participant_list_commissions_params.rbs +70 -0
- data/sig/growsurf_ruby/models/campaign/participant_list_payouts_params.rbs +69 -0
- data/sig/growsurf_ruby/models/campaign/participant_list_referrals_params.rbs +123 -0
- data/sig/growsurf_ruby/models/campaign/participant_list_rewards_params.rbs +47 -0
- data/sig/growsurf_ruby/models/campaign/participant_list_rewards_response.rbs +32 -0
- data/sig/growsurf_ruby/models/campaign/participant_record_transaction_params.rbs +194 -0
- data/sig/growsurf_ruby/models/campaign/participant_record_transaction_response.rbs +84 -0
- data/sig/growsurf_ruby/models/campaign/participant_retrieve_params.rbs +30 -0
- data/sig/growsurf_ruby/models/campaign/participant_reward.rbs +111 -0
- data/sig/growsurf_ruby/models/campaign/participant_send_invites_params.rbs +48 -0
- data/sig/growsurf_ruby/models/campaign/participant_send_invites_response.rbs +28 -0
- data/sig/growsurf_ruby/models/campaign/participant_trigger_referral_params.rbs +30 -0
- data/sig/growsurf_ruby/models/campaign/participant_trigger_referral_response.rbs +20 -0
- data/sig/growsurf_ruby/models/campaign/participant_update_params.rbs +104 -0
- data/sig/growsurf_ruby/models/campaign/referral_source.rbs +16 -0
- data/sig/growsurf_ruby/models/campaign/referral_status.rbs +19 -0
- data/sig/growsurf_ruby/models/campaign/reward_approve_params.rbs +36 -0
- data/sig/growsurf_ruby/models/campaign/reward_approve_response.rbs +15 -0
- data/sig/growsurf_ruby/models/campaign/reward_delete_params.rbs +30 -0
- data/sig/growsurf_ruby/models/campaign/reward_delete_response.rbs +15 -0
- data/sig/growsurf_ruby/models/campaign/reward_fulfill_params.rbs +30 -0
- data/sig/growsurf_ruby/models/campaign/reward_fulfill_response.rbs +15 -0
- data/sig/growsurf_ruby/models/campaign.rbs +221 -0
- data/sig/growsurf_ruby/models/campaign_list_commissions_params.rbs +63 -0
- data/sig/growsurf_ruby/models/campaign_list_leaderboard_params.rbs +83 -0
- data/sig/growsurf_ruby/models/campaign_list_params.rbs +15 -0
- data/sig/growsurf_ruby/models/campaign_list_participants_params.rbs +36 -0
- data/sig/growsurf_ruby/models/campaign_list_payouts_params.rbs +62 -0
- data/sig/growsurf_ruby/models/campaign_list_referrals_params.rbs +116 -0
- data/sig/growsurf_ruby/models/campaign_list_response.rbs +14 -0
- data/sig/growsurf_ruby/models/campaign_retrieve_analytics_params.rbs +42 -0
- data/sig/growsurf_ruby/models/campaign_retrieve_analytics_response.rbs +217 -0
- data/sig/growsurf_ruby/models/campaign_retrieve_params.rbs +23 -0
- data/sig/growsurf_ruby/models/commission_structure.rbs +121 -0
- data/sig/growsurf_ruby/models/participant_commission_list.rbs +166 -0
- data/sig/growsurf_ruby/models/participant_list.rbs +30 -0
- data/sig/growsurf_ruby/models/participant_payout_list.rbs +136 -0
- data/sig/growsurf_ruby/models/referral_list.rbs +92 -0
- data/sig/growsurf_ruby/models.rbs +31 -0
- data/sig/growsurf_ruby/request_options.rbs +36 -0
- data/sig/growsurf_ruby/resources/campaign/commission.rbs +21 -0
- data/sig/growsurf_ruby/resources/campaign/participant.rbs +133 -0
- data/sig/growsurf_ruby/resources/campaign/reward.rbs +28 -0
- data/sig/growsurf_ruby/resources/campaign.rbs +76 -0
- data/sig/growsurf_ruby/version.rbs +3 -0
- metadata +295 -0
|
@@ -0,0 +1,136 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module GrowsurfRuby
|
|
4
|
+
module Models
|
|
5
|
+
# @see GrowsurfRuby::Resources::Campaign#list_payouts
|
|
6
|
+
class ParticipantPayoutList < 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 payouts
|
|
18
|
+
#
|
|
19
|
+
# @return [Array<GrowsurfRuby::Models::ParticipantPayoutList::Payout>]
|
|
20
|
+
required :payouts,
|
|
21
|
+
-> { GrowsurfRuby::Internal::Type::ArrayOf[GrowsurfRuby::ParticipantPayoutList::Payout] }
|
|
22
|
+
|
|
23
|
+
# @!method initialize(limit:, next_id:, payouts:)
|
|
24
|
+
# @param limit [Integer]
|
|
25
|
+
# @param next_id [String, nil]
|
|
26
|
+
# @param payouts [Array<GrowsurfRuby::Models::ParticipantPayoutList::Payout>]
|
|
27
|
+
|
|
28
|
+
class Payout < 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 commission_ids
|
|
40
|
+
#
|
|
41
|
+
# @return [Array<String>]
|
|
42
|
+
required :commission_ids, GrowsurfRuby::Internal::Type::ArrayOf[String], api_name: :commissionIds
|
|
43
|
+
|
|
44
|
+
# @!attribute created_at
|
|
45
|
+
#
|
|
46
|
+
# @return [Integer]
|
|
47
|
+
required :created_at, Integer, api_name: :createdAt
|
|
48
|
+
|
|
49
|
+
# @!attribute currency_iso
|
|
50
|
+
#
|
|
51
|
+
# @return [String]
|
|
52
|
+
required :currency_iso, String, api_name: :currencyISO
|
|
53
|
+
|
|
54
|
+
# @!attribute participant_id
|
|
55
|
+
#
|
|
56
|
+
# @return [String]
|
|
57
|
+
required :participant_id, String, api_name: :participantId
|
|
58
|
+
|
|
59
|
+
# @!attribute status
|
|
60
|
+
#
|
|
61
|
+
# @return [Symbol, GrowsurfRuby::Models::ParticipantPayoutList::Payout::Status]
|
|
62
|
+
required :status, enum: -> { GrowsurfRuby::ParticipantPayoutList::Payout::Status }
|
|
63
|
+
|
|
64
|
+
# @!attribute amount_in_campaign_currency
|
|
65
|
+
#
|
|
66
|
+
# @return [Integer, nil]
|
|
67
|
+
optional :amount_in_campaign_currency, Integer, api_name: :amountInCampaignCurrency, nil?: true
|
|
68
|
+
|
|
69
|
+
# @!attribute campaign_currency_iso
|
|
70
|
+
#
|
|
71
|
+
# @return [String, nil]
|
|
72
|
+
optional :campaign_currency_iso, String, api_name: :campaignCurrencyISO, nil?: true
|
|
73
|
+
|
|
74
|
+
# @!attribute exchange_rate
|
|
75
|
+
#
|
|
76
|
+
# @return [Float, nil]
|
|
77
|
+
optional :exchange_rate, Float, api_name: :exchangeRate, nil?: true
|
|
78
|
+
|
|
79
|
+
# @!attribute exchange_rate_at
|
|
80
|
+
#
|
|
81
|
+
# @return [Integer, nil]
|
|
82
|
+
optional :exchange_rate_at, Integer, api_name: :exchangeRateAt
|
|
83
|
+
|
|
84
|
+
# @!attribute failed_at
|
|
85
|
+
#
|
|
86
|
+
# @return [Integer, nil]
|
|
87
|
+
optional :failed_at, Integer, api_name: :failedAt
|
|
88
|
+
|
|
89
|
+
# @!attribute fx_error
|
|
90
|
+
#
|
|
91
|
+
# @return [String, nil]
|
|
92
|
+
optional :fx_error, String, api_name: :fxError, nil?: true
|
|
93
|
+
|
|
94
|
+
# @!attribute issued_at
|
|
95
|
+
#
|
|
96
|
+
# @return [Integer, nil]
|
|
97
|
+
optional :issued_at, Integer, api_name: :issuedAt
|
|
98
|
+
|
|
99
|
+
# @!attribute provider
|
|
100
|
+
#
|
|
101
|
+
# @return [String, nil]
|
|
102
|
+
optional :provider, String, nil?: true
|
|
103
|
+
|
|
104
|
+
# @!method initialize(id:, amount:, commission_ids:, created_at:, currency_iso:, participant_id:, status:, amount_in_campaign_currency: nil, campaign_currency_iso: nil, exchange_rate: nil, exchange_rate_at: nil, failed_at: nil, fx_error: nil, issued_at: nil, provider: nil)
|
|
105
|
+
# @param id [String]
|
|
106
|
+
# @param amount [Integer]
|
|
107
|
+
# @param commission_ids [Array<String>]
|
|
108
|
+
# @param created_at [Integer]
|
|
109
|
+
# @param currency_iso [String]
|
|
110
|
+
# @param participant_id [String]
|
|
111
|
+
# @param status [Symbol, GrowsurfRuby::Models::ParticipantPayoutList::Payout::Status]
|
|
112
|
+
# @param amount_in_campaign_currency [Integer, nil]
|
|
113
|
+
# @param campaign_currency_iso [String, nil]
|
|
114
|
+
# @param exchange_rate [Float, nil]
|
|
115
|
+
# @param exchange_rate_at [Integer]
|
|
116
|
+
# @param failed_at [Integer]
|
|
117
|
+
# @param fx_error [String, nil]
|
|
118
|
+
# @param issued_at [Integer]
|
|
119
|
+
# @param provider [String, nil]
|
|
120
|
+
|
|
121
|
+
# @see GrowsurfRuby::Models::ParticipantPayoutList::Payout#status
|
|
122
|
+
module Status
|
|
123
|
+
extend GrowsurfRuby::Internal::Type::Enum
|
|
124
|
+
|
|
125
|
+
UPCOMING = :UPCOMING
|
|
126
|
+
QUEUED = :QUEUED
|
|
127
|
+
ISSUED = :ISSUED
|
|
128
|
+
FAILED = :FAILED
|
|
129
|
+
|
|
130
|
+
# @!method self.values
|
|
131
|
+
# @return [Array<Symbol>]
|
|
132
|
+
end
|
|
133
|
+
end
|
|
134
|
+
end
|
|
135
|
+
end
|
|
136
|
+
end
|
|
@@ -0,0 +1,96 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module GrowsurfRuby
|
|
4
|
+
module Models
|
|
5
|
+
# @see GrowsurfRuby::Resources::Campaign#list_referrals
|
|
6
|
+
class ReferralList < GrowsurfRuby::Internal::Type::BaseModel
|
|
7
|
+
# @!attribute limit
|
|
8
|
+
#
|
|
9
|
+
# @return [Integer]
|
|
10
|
+
required :limit, Integer
|
|
11
|
+
|
|
12
|
+
# @!attribute more
|
|
13
|
+
#
|
|
14
|
+
# @return [Boolean]
|
|
15
|
+
required :more, GrowsurfRuby::Internal::Type::Boolean
|
|
16
|
+
|
|
17
|
+
# @!attribute referrals
|
|
18
|
+
#
|
|
19
|
+
# @return [Array<GrowsurfRuby::Models::ReferralList::Referral>]
|
|
20
|
+
required :referrals, -> { GrowsurfRuby::Internal::Type::ArrayOf[GrowsurfRuby::ReferralList::Referral] }
|
|
21
|
+
|
|
22
|
+
# @!attribute next_id
|
|
23
|
+
#
|
|
24
|
+
# @return [String, nil]
|
|
25
|
+
optional :next_id, String, api_name: :nextId, nil?: true
|
|
26
|
+
|
|
27
|
+
# @!attribute next_offset
|
|
28
|
+
#
|
|
29
|
+
# @return [Integer, nil]
|
|
30
|
+
optional :next_offset, Integer, api_name: :nextOffset, nil?: true
|
|
31
|
+
|
|
32
|
+
# @!method initialize(limit:, more:, referrals:, next_id: nil, next_offset: nil)
|
|
33
|
+
# @param limit [Integer]
|
|
34
|
+
# @param more [Boolean]
|
|
35
|
+
# @param referrals [Array<GrowsurfRuby::Models::ReferralList::Referral>]
|
|
36
|
+
# @param next_id [String, nil]
|
|
37
|
+
# @param next_offset [Integer, nil]
|
|
38
|
+
|
|
39
|
+
class Referral < GrowsurfRuby::Internal::Type::BaseModel
|
|
40
|
+
# @!attribute id
|
|
41
|
+
#
|
|
42
|
+
# @return [String]
|
|
43
|
+
required :id, String
|
|
44
|
+
|
|
45
|
+
# @!attribute created_at
|
|
46
|
+
#
|
|
47
|
+
# @return [Integer]
|
|
48
|
+
required :created_at, Integer, api_name: :createdAt
|
|
49
|
+
|
|
50
|
+
# @!attribute email
|
|
51
|
+
#
|
|
52
|
+
# @return [String]
|
|
53
|
+
required :email, String
|
|
54
|
+
|
|
55
|
+
# @!attribute referral_status
|
|
56
|
+
#
|
|
57
|
+
# @return [Symbol, GrowsurfRuby::Models::Campaign::ReferralStatus]
|
|
58
|
+
required :referral_status,
|
|
59
|
+
enum: -> {
|
|
60
|
+
GrowsurfRuby::Campaign::ReferralStatus
|
|
61
|
+
},
|
|
62
|
+
api_name: :referralStatus
|
|
63
|
+
|
|
64
|
+
# @!attribute referred_by
|
|
65
|
+
#
|
|
66
|
+
# @return [String]
|
|
67
|
+
required :referred_by, String, api_name: :referredBy
|
|
68
|
+
|
|
69
|
+
# @!attribute updated_at
|
|
70
|
+
#
|
|
71
|
+
# @return [Integer]
|
|
72
|
+
required :updated_at, Integer, api_name: :updatedAt
|
|
73
|
+
|
|
74
|
+
# @!attribute first_name
|
|
75
|
+
#
|
|
76
|
+
# @return [String, nil]
|
|
77
|
+
optional :first_name, String, api_name: :firstName, nil?: true
|
|
78
|
+
|
|
79
|
+
# @!attribute last_name
|
|
80
|
+
#
|
|
81
|
+
# @return [String, nil]
|
|
82
|
+
optional :last_name, String, api_name: :lastName, nil?: true
|
|
83
|
+
|
|
84
|
+
# @!method initialize(id:, created_at:, email:, referral_status:, referred_by:, updated_at:, first_name: nil, last_name: nil)
|
|
85
|
+
# @param id [String]
|
|
86
|
+
# @param created_at [Integer]
|
|
87
|
+
# @param email [String]
|
|
88
|
+
# @param referral_status [Symbol, GrowsurfRuby::Models::Campaign::ReferralStatus]
|
|
89
|
+
# @param referred_by [String]
|
|
90
|
+
# @param updated_at [Integer]
|
|
91
|
+
# @param first_name [String, nil]
|
|
92
|
+
# @param last_name [String, nil]
|
|
93
|
+
end
|
|
94
|
+
end
|
|
95
|
+
end
|
|
96
|
+
end
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module GrowsurfRuby
|
|
4
|
+
[GrowsurfRuby::Internal::Type::BaseModel, *GrowsurfRuby::Internal::Type::BaseModel.subclasses].each do |cls|
|
|
5
|
+
cls.define_sorbet_constant!(:OrHash) { T.type_alias { T.any(cls, GrowsurfRuby::Internal::AnyHash) } }
|
|
6
|
+
end
|
|
7
|
+
|
|
8
|
+
GrowsurfRuby::Internal::Util.walk_namespaces(GrowsurfRuby::Models).each do |mod|
|
|
9
|
+
case mod
|
|
10
|
+
in GrowsurfRuby::Internal::Type::Enum | GrowsurfRuby::Internal::Type::Union
|
|
11
|
+
mod.constants.each do |name|
|
|
12
|
+
case mod.const_get(name)
|
|
13
|
+
in true | false
|
|
14
|
+
mod.define_sorbet_constant!(:TaggedBoolean) { T.type_alias { T::Boolean } }
|
|
15
|
+
mod.define_sorbet_constant!(:OrBoolean) { T.type_alias { T::Boolean } }
|
|
16
|
+
in Integer
|
|
17
|
+
mod.define_sorbet_constant!(:TaggedInteger) { T.type_alias { Integer } }
|
|
18
|
+
mod.define_sorbet_constant!(:OrInteger) { T.type_alias { Integer } }
|
|
19
|
+
in Float
|
|
20
|
+
mod.define_sorbet_constant!(:TaggedFloat) { T.type_alias { Float } }
|
|
21
|
+
mod.define_sorbet_constant!(:OrFloat) { T.type_alias { Float } }
|
|
22
|
+
in Symbol
|
|
23
|
+
mod.define_sorbet_constant!(:TaggedSymbol) { T.type_alias { Symbol } }
|
|
24
|
+
mod.define_sorbet_constant!(:OrSymbol) { T.type_alias { T.any(Symbol, String) } }
|
|
25
|
+
else
|
|
26
|
+
end
|
|
27
|
+
end
|
|
28
|
+
else
|
|
29
|
+
end
|
|
30
|
+
end
|
|
31
|
+
|
|
32
|
+
GrowsurfRuby::Internal::Util.walk_namespaces(GrowsurfRuby::Models)
|
|
33
|
+
.lazy
|
|
34
|
+
.grep(GrowsurfRuby::Internal::Type::Union)
|
|
35
|
+
.each do |mod|
|
|
36
|
+
const = :Variants
|
|
37
|
+
next if mod.sorbet_constant_defined?(const)
|
|
38
|
+
|
|
39
|
+
mod.define_sorbet_constant!(const) { T.type_alias { mod.to_sorbet_type } }
|
|
40
|
+
end
|
|
41
|
+
|
|
42
|
+
Campaign = GrowsurfRuby::Models::Campaign
|
|
43
|
+
|
|
44
|
+
CampaignAPI = GrowsurfRuby::Models::CampaignAPI
|
|
45
|
+
|
|
46
|
+
CampaignListCommissionsParams = GrowsurfRuby::Models::CampaignListCommissionsParams
|
|
47
|
+
|
|
48
|
+
CampaignListLeaderboardParams = GrowsurfRuby::Models::CampaignListLeaderboardParams
|
|
49
|
+
|
|
50
|
+
CampaignListParams = GrowsurfRuby::Models::CampaignListParams
|
|
51
|
+
|
|
52
|
+
CampaignListParticipantsParams = GrowsurfRuby::Models::CampaignListParticipantsParams
|
|
53
|
+
|
|
54
|
+
CampaignListPayoutsParams = GrowsurfRuby::Models::CampaignListPayoutsParams
|
|
55
|
+
|
|
56
|
+
CampaignListReferralsParams = GrowsurfRuby::Models::CampaignListReferralsParams
|
|
57
|
+
|
|
58
|
+
CampaignRetrieveAnalyticsParams = GrowsurfRuby::Models::CampaignRetrieveAnalyticsParams
|
|
59
|
+
|
|
60
|
+
CampaignRetrieveParams = GrowsurfRuby::Models::CampaignRetrieveParams
|
|
61
|
+
|
|
62
|
+
CommissionStructure = GrowsurfRuby::Models::CommissionStructure
|
|
63
|
+
|
|
64
|
+
ParticipantCommissionList = GrowsurfRuby::Models::ParticipantCommissionList
|
|
65
|
+
|
|
66
|
+
ParticipantList = GrowsurfRuby::Models::ParticipantList
|
|
67
|
+
|
|
68
|
+
ParticipantPayoutList = GrowsurfRuby::Models::ParticipantPayoutList
|
|
69
|
+
|
|
70
|
+
ReferralList = GrowsurfRuby::Models::ReferralList
|
|
71
|
+
end
|
|
@@ -0,0 +1,77 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module GrowsurfRuby
|
|
4
|
+
# Specify HTTP behaviour to use for a specific request. These options supplement
|
|
5
|
+
# or override those provided at the client level.
|
|
6
|
+
#
|
|
7
|
+
# When making a request, you can pass an actual {RequestOptions} instance, or
|
|
8
|
+
# simply pass a Hash with symbol keys matching the attributes on this class.
|
|
9
|
+
class RequestOptions < GrowsurfRuby::Internal::Type::BaseModel
|
|
10
|
+
# @api private
|
|
11
|
+
#
|
|
12
|
+
# @param opts [GrowsurfRuby::RequestOptions, Hash{Symbol=>Object}]
|
|
13
|
+
#
|
|
14
|
+
# @raise [ArgumentError]
|
|
15
|
+
def self.validate!(opts)
|
|
16
|
+
case opts
|
|
17
|
+
in GrowsurfRuby::RequestOptions | Hash
|
|
18
|
+
opts.to_h.each_key do |k|
|
|
19
|
+
unless fields.include?(k)
|
|
20
|
+
raise ArgumentError.new("Request `opts` keys must be one of #{fields.keys}, got #{k.inspect}")
|
|
21
|
+
end
|
|
22
|
+
end
|
|
23
|
+
else
|
|
24
|
+
raise ArgumentError.new("Request `opts` must be a Hash or RequestOptions, got #{opts.inspect}")
|
|
25
|
+
end
|
|
26
|
+
end
|
|
27
|
+
|
|
28
|
+
# @!attribute idempotency_key
|
|
29
|
+
# Idempotency key to send with request and all associated retries. Will only be
|
|
30
|
+
# sent for write requests.
|
|
31
|
+
#
|
|
32
|
+
# @return [String, nil]
|
|
33
|
+
optional :idempotency_key, String
|
|
34
|
+
|
|
35
|
+
# @!attribute extra_query
|
|
36
|
+
# Extra query params to send with the request. These are `.merge`’d into any
|
|
37
|
+
# `query` given at the client level.
|
|
38
|
+
#
|
|
39
|
+
# @return [Hash{String=>Array<String>, String, nil}, nil]
|
|
40
|
+
optional :extra_query, GrowsurfRuby::Internal::Type::HashOf[GrowsurfRuby::Internal::Type::ArrayOf[String]]
|
|
41
|
+
|
|
42
|
+
# @!attribute extra_headers
|
|
43
|
+
# Extra headers to send with the request. These are `.merged`’d into any
|
|
44
|
+
# `extra_headers` given at the client level.
|
|
45
|
+
#
|
|
46
|
+
# @return [Hash{String=>String, nil}, nil]
|
|
47
|
+
optional :extra_headers, GrowsurfRuby::Internal::Type::HashOf[String, nil?: true]
|
|
48
|
+
|
|
49
|
+
# @!attribute extra_body
|
|
50
|
+
# Extra data to send with the request. These are deep merged into any data
|
|
51
|
+
# generated as part of the normal request.
|
|
52
|
+
#
|
|
53
|
+
# @return [Object, nil]
|
|
54
|
+
optional :extra_body, GrowsurfRuby::Internal::Type::HashOf[GrowsurfRuby::Internal::Type::Unknown]
|
|
55
|
+
|
|
56
|
+
# @!attribute max_retries
|
|
57
|
+
# Maximum number of retries to attempt after a failed initial request.
|
|
58
|
+
#
|
|
59
|
+
# @return [Integer, nil]
|
|
60
|
+
optional :max_retries, Integer
|
|
61
|
+
|
|
62
|
+
# @!attribute timeout
|
|
63
|
+
# Request timeout in seconds.
|
|
64
|
+
#
|
|
65
|
+
# @return [Float, nil]
|
|
66
|
+
optional :timeout, Float
|
|
67
|
+
|
|
68
|
+
# @!method initialize(values = {})
|
|
69
|
+
# Returns a new instance of RequestOptions.
|
|
70
|
+
#
|
|
71
|
+
# @param values [Hash{Symbol=>Object}]
|
|
72
|
+
|
|
73
|
+
define_sorbet_constant!(:OrHash) do
|
|
74
|
+
T.type_alias { T.any(GrowsurfRuby::RequestOptions, GrowsurfRuby::Internal::AnyHash) }
|
|
75
|
+
end
|
|
76
|
+
end
|
|
77
|
+
end
|
|
@@ -0,0 +1,71 @@
|
|
|
1
|
+
# frozen_string_literal: true
|
|
2
|
+
|
|
3
|
+
module GrowsurfRuby
|
|
4
|
+
module Resources
|
|
5
|
+
class Campaign
|
|
6
|
+
# Affiliate transaction, commission, and payout operations.
|
|
7
|
+
class Commission
|
|
8
|
+
# Removes a pending participant commission.
|
|
9
|
+
#
|
|
10
|
+
# @overload delete(commission_id, id:, request_options: {})
|
|
11
|
+
#
|
|
12
|
+
# @param commission_id [String] Participant commission ID.
|
|
13
|
+
#
|
|
14
|
+
# @param id [String] GrowSurf program ID.
|
|
15
|
+
#
|
|
16
|
+
# @param request_options [GrowsurfRuby::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
17
|
+
#
|
|
18
|
+
# @return [GrowsurfRuby::Models::Campaign::CommissionDeleteResponse]
|
|
19
|
+
#
|
|
20
|
+
# @see GrowsurfRuby::Models::Campaign::CommissionDeleteParams
|
|
21
|
+
def delete(commission_id, params)
|
|
22
|
+
parsed, options = GrowsurfRuby::Campaign::CommissionDeleteParams.dump_request(params)
|
|
23
|
+
id =
|
|
24
|
+
parsed.delete(:id) do
|
|
25
|
+
raise ArgumentError.new("missing required path argument #{_1}")
|
|
26
|
+
end
|
|
27
|
+
@client.request(
|
|
28
|
+
method: :delete,
|
|
29
|
+
path: ["campaign/%1$s/commission/%2$s", id, commission_id],
|
|
30
|
+
model: GrowsurfRuby::Models::Campaign::CommissionDeleteResponse,
|
|
31
|
+
options: options
|
|
32
|
+
)
|
|
33
|
+
end
|
|
34
|
+
|
|
35
|
+
# Approves a pending participant commission so it can become eligible for payout.
|
|
36
|
+
#
|
|
37
|
+
# @overload approve(commission_id, id:, request_options: {})
|
|
38
|
+
#
|
|
39
|
+
# @param commission_id [String] Participant commission ID.
|
|
40
|
+
#
|
|
41
|
+
# @param id [String] GrowSurf program ID.
|
|
42
|
+
#
|
|
43
|
+
# @param request_options [GrowsurfRuby::RequestOptions, Hash{Symbol=>Object}, nil]
|
|
44
|
+
#
|
|
45
|
+
# @return [GrowsurfRuby::Models::Campaign::CommissionApproveResponse]
|
|
46
|
+
#
|
|
47
|
+
# @see GrowsurfRuby::Models::Campaign::CommissionApproveParams
|
|
48
|
+
def approve(commission_id, params)
|
|
49
|
+
parsed, options = GrowsurfRuby::Campaign::CommissionApproveParams.dump_request(params)
|
|
50
|
+
id =
|
|
51
|
+
parsed.delete(:id) do
|
|
52
|
+
raise ArgumentError.new("missing required path argument #{_1}")
|
|
53
|
+
end
|
|
54
|
+
@client.request(
|
|
55
|
+
method: :post,
|
|
56
|
+
path: ["campaign/%1$s/commission/%2$s/approve", id, commission_id],
|
|
57
|
+
model: GrowsurfRuby::Models::Campaign::CommissionApproveResponse,
|
|
58
|
+
options: options
|
|
59
|
+
)
|
|
60
|
+
end
|
|
61
|
+
|
|
62
|
+
# @api private
|
|
63
|
+
#
|
|
64
|
+
# @param client [GrowsurfRuby::Client]
|
|
65
|
+
def initialize(client:)
|
|
66
|
+
@client = client
|
|
67
|
+
end
|
|
68
|
+
end
|
|
69
|
+
end
|
|
70
|
+
end
|
|
71
|
+
end
|