Class: TheTradeDeskAds::AdAudience

Inherits:
Base
  • Object
show all
Defined in:
lib/the_trade_desk_ads/ad_audience.rb

Overview

Constant Summary collapse

FIELDS =
%w[AdvertiserId AudienceId AudienceName Description IncludedDataGroupIds ExcludedDataGroupIds IsAutoGenerated].freeze
SORTING_FIELDS =
{"Name": "Name",
"Description": "Description"}

Class Method Summary collapse

Instance Method Summary collapse

Methods inherited from Base

auth, delete, #destroy, find, get, paginate, post, #save, #update

Class Method Details

.all(query = {}) ⇒ Object



17
18
19
# File 'lib/the_trade_desk_ads/ad_audience.rb', line 17

def all(query = {})
  get('/me/adaccounts', query: query, objectify: true)
end

.facets(query = {}) ⇒ Object

facets = TheTradeDeskAds::AdAudience.facets



13
14
15
# File 'lib/the_trade_desk_ads/ad_audience.rb', line 13

def facets(query = {})
  get('audience/query/facets', query: query, objectify: false)
end

.find_by(conditions) ⇒ Object



21
22
23
24
25
26
27
# File 'lib/the_trade_desk_ads/ad_audience.rb', line 21

def find_by(conditions)
  all.detect do |object|
    conditions.all? do |key, value|
      object.send(key) == value
    end
  end
end

Instance Method Details

#ad_advertiserObject

belongs_to advertiser



34
35
36
# File 'lib/the_trade_desk_ads/ad_audience.rb', line 34

def ad_advertiser
  @ad_advertiser ||= AdAdvertiser.find(AdvertiserId)
end

#share(account_id) ⇒ Object

actions



40
41
42
43
44
45
46
47
48
# File 'lib/the_trade_desk_ads/ad_audience.rb', line 40

def share()
  query = {
    share_with_object_id: ,
    share_with_object_type: 'Account'
  }
  result = AdAccount.post("/#{id}/share_with_objects", query: query)
  # result['success']
  result # No idea what this response looks like.
end