Sha256: 44f6b55230ec22ca1f9e7a9defef94156c0bf93a82b4a2aa09be29c6ccd5777c

Contents?: true

Size: 1.07 KB

Versions: 5

Compression:

Stored size: 1.07 KB

Contents

# frozen_string_literal: true

require 'soapy_cake/request_mass_conversion_insert'

module SoapyCake
  class AdminTrack < Client
    include Helper

    CONVERSION_DEFAULTS = {
      add_to_existing_payout: false,
      received_option: 'total_revenue',
      received: 0,
      disposition_type: 'no_change',
      update_revshare_payout: false,
      effective_date_option: 'today',
      notes_to_append: '',
      disallow_on_billing_status: 'ignore'
    }.freeze

    def mass_conversion_insert(opts)
      require_params(opts, %i[
                       conversion_date affiliate_id sub_affiliate
                       campaign_id creative_id total_to_insert
                     ])

      run RequestMassConversionInsert.new(:admin, :track, :mass_conversion_insert, opts)
    end

    def update_conversion(opts)
      require_params(opts, %i[offer_id payout])

      run Request.new(:admin, :track, :update_conversion, CONVERSION_DEFAULTS.merge(opts))
    end

    def decrypt_affiliate_link(opts = {})
      run Request.new(:admin, :track, :decrypt_affiliate_link, opts)
    end
  end
end

Version data entries

5 entries across 5 versions & 1 rubygems

Version Path
soapy_cake-2.2.5 lib/soapy_cake/admin_track.rb
soapy_cake-2.2.4 lib/soapy_cake/admin_track.rb
soapy_cake-2.2.3 lib/soapy_cake/admin_track.rb
soapy_cake-2.2.1 lib/soapy_cake/admin_track.rb
soapy_cake-2.1.6 lib/soapy_cake/admin_track.rb