From f9066a34927f1a60e0410c865a08473ee7195c49 Mon Sep 17 00:00:00 2001 From: Eiji Sakai <33144111+esakai@users.noreply.github.com> Date: Thu, 7 Dec 2017 14:29:56 +0900 Subject: [PATCH] Temporary workaround for twitterdev issue #107 https://github.com/twitterdev/twitter-ruby-ads-sdk/issues/107 This patch of code has been incoprated from kamabayashia/twitter-ruby-ads-sdk. --- lib/twitter-ads/campaign/line_item.rb | 15 +++++++++++++++ 1 file changed, 15 insertions(+) diff --git a/lib/twitter-ads/campaign/line_item.rb b/lib/twitter-ads/campaign/line_item.rb index 12fc0281..43bca4bf 100644 --- a/lib/twitter-ads/campaign/line_item.rb +++ b/lib/twitter-ads/campaign/line_item.rb @@ -97,5 +97,20 @@ def targeting_criteria(id = nil, opts = {}) id ? TargetingCriteria.load(account, id, opts) : TargetingCriteria.all(account, @id, opts) end + def to_params + params = super + + # If bid_type is set, automatically_select_bid must not be set. + params.delete(:automatically_select_bid) if params.key?(:bid_type) + + # If set to true, bid_amount_local_micro must be NULL + params.store(:bid_amount_local_micro, nil) if params[:bid_type].to_s == Enum::BidType::AUTO.to_s && !self.id.nil? + + # advertiser_user_id is currently beta-only and causes an error when sent. + params.delete(:advertiser_user_id) + + params + end + end end