Class: GrowsurfRuby::Models::Campaign::Reward

Inherits:
Internal::Type::BaseModel show all
Defined in:
lib/growsurf_ruby/models/campaign/reward.rb,
sig/growsurf_ruby/models/campaign/reward.rbs

Overview

See Also:

  • GrowsurfRuby::Resources::Campaign::Rewards#create

Defined Under Namespace

Modules: LimitDuration, Type

Instance Attribute Summary collapse

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Internal::Type::BaseModel

==, #==, #[], coerce, #deconstruct_keys, #deep_to_h, dump, fields, hash, #hash, inherited, inspect, #inspect, known_fields, optional, recursively_to_h, required, #to_h, #to_json, #to_s, to_sorbet_type, #to_yaml

Methods included from Internal::Type::Converter

#coerce, coerce, #dump, dump, #inspect, inspect, meta_info, new_coerce_state, type_info

Methods included from Internal::Util::SorbetRuntimeSupport

#const_missing, #define_sorbet_constant!, #sorbet_constant_defined?, #to_sorbet_type, to_sorbet_type

Constructor Details

#initialize(id:, is_unlimited:, metadata:, type:, commission_structure: nil, conversions_required: nil, coupon_code: nil, description: nil, image_url: nil, limit: nil, limit_duration: nil, next_milestone_prefix: nil, next_milestone_suffix: nil, number_of_winners: nil, order: nil, referral_coupon_code: nil, referral_description: nil, referred_reward_upfront: nil, referred_value: nil, value: nil) ⇒ Object

Parameters:

  • id (String)
  • is_unlimited (Boolean)
  • metadata (Hash{Symbol=>Object})

    Shallow custom metadata object.

  • type (Symbol, GrowsurfRuby::Models::Campaign::Reward::Type)
  • commission_structure (GrowsurfRuby::Models::CommissionStructure, nil) (defaults to: nil)
  • conversions_required (Integer, nil) (defaults to: nil)
  • coupon_code (String, nil) (defaults to: nil)
  • description (String, nil) (defaults to: nil)
  • image_url (String, nil) (defaults to: nil)
  • limit (Integer, nil) (defaults to: nil)

    -1 represents an unlimited reward in REST responses.

  • limit_duration (Symbol, GrowsurfRuby::Models::Campaign::Reward::LimitDuration, nil) (defaults to: nil)
  • next_milestone_prefix (String, nil) (defaults to: nil)
  • next_milestone_suffix (String, nil) (defaults to: nil)
  • number_of_winners (Integer, nil) (defaults to: nil)
  • order (Integer, nil) (defaults to: nil)
  • referral_coupon_code (String, nil) (defaults to: nil)

    The coupon code delivered to the referred friend (double-sided rewards).

  • referral_description (String, nil) (defaults to: nil)
  • referred_reward_upfront (Boolean) (defaults to: nil)
  • referred_value (GrowsurfRuby::Models::RewardTaxValuation, nil) (defaults to: nil)

    Tax valuation for the referred friend's side of a double-sided reward.

  • value (GrowsurfRuby::Models::RewardTaxValuation, nil) (defaults to: nil)

    Tax valuation for the reward (the referrer's side of a double-sided reward).



# File 'lib/growsurf_ruby/models/campaign/reward.rb', line 124

Instance Attribute Details

#commission_structureGrowsurfRuby::Models::CommissionStructure?



32
33
34
35
# File 'lib/growsurf_ruby/models/campaign/reward.rb', line 32

optional :commission_structure,
-> { GrowsurfRuby::CommissionStructure },
api_name: :commissionStructure,
nil?: true

#conversions_requiredInteger?

Parameters:

  • value (Integer, nil)

Returns:

  • (Integer, nil)


40
# File 'lib/growsurf_ruby/models/campaign/reward.rb', line 40

optional :conversions_required, Integer, api_name: :conversionsRequired, nil?: true

#coupon_codeString?

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


45
# File 'lib/growsurf_ruby/models/campaign/reward.rb', line 45

optional :coupon_code, String, api_name: :couponCode, nil?: true

#descriptionString?

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


50
# File 'lib/growsurf_ruby/models/campaign/reward.rb', line 50

optional :description, String, nil?: true

#idString

Parameters:

  • value (String)

Returns:

  • (String)


11
# File 'lib/growsurf_ruby/models/campaign/reward.rb', line 11

required :id, String

#image_urlString?

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


55
# File 'lib/growsurf_ruby/models/campaign/reward.rb', line 55

optional :image_url, String, api_name: :imageUrl, nil?: true

#is_unlimitedBoolean

Parameters:

  • value (Boolean)

Returns:

  • (Boolean)


16
# File 'lib/growsurf_ruby/models/campaign/reward.rb', line 16

required :is_unlimited, GrowsurfRuby::Internal::Type::Boolean, api_name: :isUnlimited

#limitInteger?

-1 represents an unlimited reward in REST responses.

Parameters:

  • value (Integer, nil)

Returns:

  • (Integer, nil)


61
# File 'lib/growsurf_ruby/models/campaign/reward.rb', line 61

optional :limit, Integer, nil?: true

#limit_durationSymbol, ...

Parameters:

  • value (GrowsurfRuby::Models::Campaign::Reward::limit_duration, nil)

Returns:



66
67
68
69
# File 'lib/growsurf_ruby/models/campaign/reward.rb', line 66

optional :limit_duration,
enum: -> { GrowsurfRuby::Campaign::Reward::LimitDuration },
api_name: :limitDuration,
nil?: true

#metadataHash{Symbol=>Object}

Shallow custom metadata object.

Parameters:

  • value (::Hash[Symbol, top])

Returns:

  • (Hash{Symbol=>Object})


22
# File 'lib/growsurf_ruby/models/campaign/reward.rb', line 22

required :metadata, GrowsurfRuby::Internal::Type::HashOf[GrowsurfRuby::Internal::Type::Unknown]

#next_milestone_prefixString?

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


74
# File 'lib/growsurf_ruby/models/campaign/reward.rb', line 74

optional :next_milestone_prefix, String, api_name: :nextMilestonePrefix, nil?: true

#next_milestone_suffixString?

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


79
# File 'lib/growsurf_ruby/models/campaign/reward.rb', line 79

optional :next_milestone_suffix, String, api_name: :nextMilestoneSuffix, nil?: true

#number_of_winnersInteger?

Parameters:

  • value (Integer, nil)

Returns:

  • (Integer, nil)


84
# File 'lib/growsurf_ruby/models/campaign/reward.rb', line 84

optional :number_of_winners, Integer, api_name: :numberOfWinners, nil?: true

#orderInteger?

Parameters:

  • value (Integer, nil)

Returns:

  • (Integer, nil)


89
# File 'lib/growsurf_ruby/models/campaign/reward.rb', line 89

optional :order, Integer, nil?: true

#referral_coupon_codeString?

The coupon code delivered to the referred friend (double-sided rewards).

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


95
# File 'lib/growsurf_ruby/models/campaign/reward.rb', line 95

optional :referral_coupon_code, String, api_name: :referralCouponCode, nil?: true

#referral_descriptionString?

Parameters:

  • value (String, nil)

Returns:

  • (String, nil)


100
# File 'lib/growsurf_ruby/models/campaign/reward.rb', line 100

optional :referral_description, String, api_name: :referralDescription, nil?: true

#referred_reward_upfrontBoolean?

Parameters:

  • (Boolean)

Returns:

  • (Boolean, nil)


105
106
107
# File 'lib/growsurf_ruby/models/campaign/reward.rb', line 105

optional :referred_reward_upfront,
GrowsurfRuby::Internal::Type::Boolean,
api_name: :referredRewardUpfront

#referred_valueGrowsurfRuby::Models::RewardTaxValuation?

Tax valuation for the referred friend's side of a double-sided reward.



113
114
115
116
# File 'lib/growsurf_ruby/models/campaign/reward.rb', line 113

optional :referred_value,
-> { GrowsurfRuby::RewardTaxValuation },
api_name: :referredValue,
nil?: true

#typeSymbol, GrowsurfRuby::Models::Campaign::Reward::Type

Parameters:

  • value (GrowsurfRuby::Models::Campaign::Reward::type_)

Returns:



27
# File 'lib/growsurf_ruby/models/campaign/reward.rb', line 27

required :type, enum: -> { GrowsurfRuby::Campaign::Reward::Type }

#valueGrowsurfRuby::Models::RewardTaxValuation?

Tax valuation for the reward (the referrer's side of a double-sided reward).



122
# File 'lib/growsurf_ruby/models/campaign/reward.rb', line 122

optional :value, -> { GrowsurfRuby::RewardTaxValuation }, nil?: true

Class Method Details

.valuesArray<Symbol>

Returns:

  • (Array<Symbol>)


# File 'lib/growsurf_ruby/models/campaign/reward.rb', line 175

Instance Method Details

#to_hash{

Returns:

  • ({)


94
# File 'sig/growsurf_ruby/models/campaign/reward.rbs', line 94

def to_hash: -> {