Class: PPC::API::Sm::Group
Constant Summary
collapse
- Service =
'adgroup'
- GroupType =
{
plan_id: :campaignId,
id: :adgroupId,
name: :adgroupName,
price: :maxPrice,
negative: :negativeWords,
exact_negative: :exactNegativeWords,
pause: :pause,
status: :status,
os: :adPlatformOS,
group_ids: :adgroupIds,
groups: :adgroupTypes,
}
Class Method Summary
collapse
process, request_uri
Methods included from PPC::API
#make_type, #process, #request, #request_http_body, #request_http_header, #request_uri, #reverse_type
Class Method Details
.add(auth, groups) ⇒ Object
43
44
45
46
47
|
# File 'lib/ppc/api/sm/group.rb', line 43
def self.add(auth, groups)
body = {adgroupTypes: make_type(groups)}
response = request(auth, Service, "addAdgroup", body)
process(response, 'adgroupTypes'){|x| reverse_type(x) }
end
|
.all(auth, plan_ids) ⇒ Object
28
29
30
31
|
# File 'lib/ppc/api/sm/group.rb', line 28
def self.all( auth, plan_ids )
response = request(auth, Service, "getAdgroupByCampaignId", {campaignIds: plan_ids} )
process(response, 'campaignAdgroups' ){ |x| reverse_type(x.map{|temp| temp["adgroupTypes"]}.flatten) }
end
|
.delete(auth, ids) ⇒ Object
55
56
57
58
|
# File 'lib/ppc/api/sm/group.rb', line 55
def self.delete(auth, ids)
response = request(auth, Service, "deleteAdgroup", {adgroupIds: ids} , "delete")
process(response, 'result'){ |x| x }
end
|
.enable(auth, ids) ⇒ Object
60
61
62
63
|
# File 'lib/ppc/api/sm/group.rb', line 60
def self.enable( auth, ids )
groups = ids.map{|id| {id: id, pause: false} }
self.update( auth, groups )
end
|
.get(auth, ids) ⇒ Object
38
39
40
41
|
# File 'lib/ppc/api/sm/group.rb', line 38
def self.get(auth, ids)
response = request(auth, Service, "getAdgroupByAdgroupId", {adgroupIds: ids} )
process(response, 'adgroupTypes'){|x| reverse_type(x) }
end
|
.ids(auth, plan_ids) ⇒ Object
33
34
35
36
|
# File 'lib/ppc/api/sm/group.rb', line 33
def self.ids( auth, plan_ids )
response = request(auth, Service, "getAdgroupIdByCampaignId", {campaignIds: plan_ids} )
process(response, 'campaignAdgroupIds'){ |x| reverse_type( x ) }
end
|
.info(auth, ids) ⇒ Object
23
24
25
26
|
# File 'lib/ppc/api/sm/group.rb', line 23
def self.info(auth, ids)
response = request(auth, Service, "getAdgroupByAdgroupId", {adgroupIds: ids} )
process(response, 'adgroupTypes'){|x| reverse_type(x)[0] }
end
|
.pause(auth, ids) ⇒ Object
65
66
67
68
|
# File 'lib/ppc/api/sm/group.rb', line 65
def self.pause( auth, ids )
groups = ids.map{|id| {id: id, pause: true} }
self.update( auth, groups )
end
|
.update(auth, groups) ⇒ Object
49
50
51
52
53
|
# File 'lib/ppc/api/sm/group.rb', line 49
def self.update(auth, groups)
body = {adgroupTypes: make_type(groups)}
response = request(auth, Service, "updateAdgroup", body)
process(response, 'adgroupTypes'){|x| reverse_type(x) }
end
|