adwords4r 11.1.0 → 12.0.0
Sign up to get free protection for your applications and to get access to all the features.
- data/ChangeLog.txt +4 -0
- data/Rakefile +76 -70
- data/examples/campaign.rb +40 -0
- data/examples/{old/framework.rb → framework.rb} +0 -0
- data/examples/{old/get_free_usage_this_month.rb → get_free_usage_this_month.rb} +8 -6
- data/examples/get_unit_count.rb +21 -0
- data/examples/keyword_suggestions.rb +179 -0
- data/examples/keyword_tool_demo.rb +31 -0
- data/examples/reports.rb +6 -6
- data/examples/traffic_estimator.rb +34 -0
- data/lib/adwords4r.rb +26 -19
- data/lib/adwords4r/credentials.rb +4 -2
- data/lib/adwords4r/services.rb +4 -2
- data/lib/adwords4r/v11/AccountServiceDriver.rb +3 -3
- data/lib/adwords4r/v11/AdGroupServiceDriver.rb +8 -8
- data/lib/adwords4r/v11/AdServiceDriver.rb +10 -10
- data/lib/adwords4r/v11/CampaignServiceDriver.rb +10 -10
- data/lib/adwords4r/v11/CriterionServiceDriver.rb +9 -9
- data/lib/adwords4r/v11/InfoServiceDriver.rb +8 -8
- data/lib/adwords4r/v11/KeywordToolServiceDriver.rb +2 -2
- data/lib/adwords4r/v11/ReportServiceDriver.rb +7 -7
- data/lib/adwords4r/v11/SiteSuggestionServiceDriver.rb +4 -4
- data/lib/adwords4r/v11/TrafficEstimatorServiceDriver.rb +4 -4
- data/lib/adwords4r/{v10 → v12}/AccountService.rb +13 -32
- data/lib/adwords4r/{v10 → v12}/AccountServiceDriver.rb +12 -20
- data/lib/adwords4r/{v10 → v12}/AccountServiceMappingRegistry.rb +23 -38
- data/lib/adwords4r/{v10 → v12}/AdGroupService.rb +43 -37
- data/lib/adwords4r/{v10 → v12}/AdGroupServiceDriver.rb +27 -27
- data/lib/adwords4r/{v10 → v12}/AdGroupServiceMappingRegistry.rb +46 -42
- data/lib/adwords4r/{v10 → v12}/AdService.rb +68 -56
- data/lib/adwords4r/{v10 → v12}/AdServiceDriver.rb +33 -33
- data/lib/adwords4r/{v10 → v12}/AdServiceMappingRegistry.rb +113 -105
- data/lib/adwords4r/{v10 → v12}/CampaignService.rb +99 -44
- data/lib/adwords4r/{v10 → v12}/CampaignServiceDriver.rb +41 -33
- data/lib/adwords4r/{v10 → v12}/CampaignServiceMappingRegistry.rb +143 -65
- data/lib/adwords4r/{v10 → v12}/CriterionService.rb +46 -43
- data/lib/adwords4r/{v10 → v12}/CriterionServiceDriver.rb +30 -30
- data/lib/adwords4r/{v10 → v12}/CriterionServiceMappingRegistry.rb +67 -65
- data/lib/adwords4r/{v10 → v12}/InfoService.rb +19 -19
- data/lib/adwords4r/{v10 → v12}/InfoServiceDriver.rb +27 -27
- data/lib/adwords4r/{v10 → v12}/InfoServiceMappingRegistry.rb +25 -25
- data/lib/adwords4r/{v10 → v12}/KeywordToolService.rb +12 -12
- data/lib/adwords4r/{v10 → v12}/KeywordToolServiceDriver.rb +9 -9
- data/lib/adwords4r/{v10 → v12}/KeywordToolServiceMappingRegistry.rb +23 -23
- data/lib/adwords4r/v12/ReportService.rb +322 -0
- data/lib/adwords4r/{v10 → v12}/ReportServiceDriver.rb +29 -21
- data/lib/adwords4r/v12/ReportServiceMappingRegistry.rb +298 -0
- data/lib/adwords4r/{v10 → v12}/SiteSuggestionService.rb +18 -18
- data/lib/adwords4r/{v10 → v12}/SiteSuggestionServiceDriver.rb +15 -15
- data/lib/adwords4r/{v10 → v12}/SiteSuggestionServiceMappingRegistry.rb +45 -45
- data/lib/adwords4r/{v10 → v12}/TrafficEstimatorService.rb +29 -29
- data/lib/adwords4r/{v10 → v12}/TrafficEstimatorServiceDriver.rb +15 -15
- data/lib/adwords4r/{v10 → v12}/TrafficEstimatorServiceMappingRegistry.rb +55 -55
- data/svn-commit.2.tmp +60 -0
- data/svn-commit.tmp +60 -0
- metadata +41 -38
- data/examples/old/campaign.rb +0 -40
- data/examples/old/get_unit_count.rb +0 -21
- data/examples/old/keyword_tool_demo.rb +0 -30
- data/examples/old/traffic_estimator.rb +0 -34
- data/lib/adwords4r/v10/ReportService.rb +0 -652
- data/lib/adwords4r/v10/ReportServiceMappingRegistry.rb +0 -559
@@ -0,0 +1,31 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
|
3
|
+
# Use adwords4r in parent dir
|
4
|
+
$LOAD_PATH.unshift '../lib/'
|
5
|
+
|
6
|
+
require 'adwords4r'
|
7
|
+
|
8
|
+
def printkw(kw, gname)
|
9
|
+
puts "#{gname} #{kw.advertiserCompetitionScale} " +
|
10
|
+
"#{kw.searchVolumeScale} #{kw.text}"
|
11
|
+
end
|
12
|
+
|
13
|
+
begin
|
14
|
+
if (ARGV.length < 1)
|
15
|
+
puts "Usage: #$0 <url>"
|
16
|
+
exit
|
17
|
+
end
|
18
|
+
adwords = AdWords::API.new
|
19
|
+
result = adwords.getKeywordsFromSite(ARGV[0], true, [], [])
|
20
|
+
groups = result.getKeywordsFromSiteReturn.groups
|
21
|
+
kws = result.getKeywordsFromSiteReturn.keywords
|
22
|
+
puts "GroupName AdvertiserCompetitionScale searchVolumeScale text"
|
23
|
+
kws.each {|kw| printkw(kw, groups[kw.groupId.to_i])}
|
24
|
+
|
25
|
+
rescue AdWords::Error::UnknownAPICall => e
|
26
|
+
puts e
|
27
|
+
rescue AdWords::Error::ApiError => e
|
28
|
+
puts e.code
|
29
|
+
puts e.message
|
30
|
+
end
|
31
|
+
|
data/examples/reports.rb
CHANGED
@@ -91,7 +91,7 @@ def main()
|
|
91
91
|
|
92
92
|
if status == 'Completed'
|
93
93
|
report_url = adwords.getReportDownloadUrl(job_id).
|
94
|
-
|
94
|
+
getReportDownloadUrlReturn
|
95
95
|
puts 'Report is completed. Downloading report from %s' % report_url
|
96
96
|
|
97
97
|
# Download the report via the HTTPClient library and write it to disk.
|
@@ -102,8 +102,8 @@ def main()
|
|
102
102
|
report_data = client.get_content(report_url)
|
103
103
|
file_name = '%s.xml' % report_name # Add path to write report elsewhere.
|
104
104
|
begin
|
105
|
-
|
106
|
-
|
105
|
+
open(file_name, 'w') {|file| file.puts(report_data)}
|
106
|
+
puts 'Report has been written to %s' % file_name
|
107
107
|
|
108
108
|
rescue Errno::ENOENT, Errno::EACCES => e
|
109
109
|
puts 'Unable to write file: %s' % e
|
@@ -146,11 +146,11 @@ def main()
|
|
146
146
|
puts 'Source: %s' % e.backtrace.first
|
147
147
|
|
148
148
|
ensure
|
149
|
-
# Display API unit usage information. This data is stored as a class
|
150
|
-
# in the AdWords::API class and accessed via static methods.
|
149
|
+
# Display API unit usage information. This data is stored as a class
|
150
|
+
# variable in the AdWords::API class and accessed via static methods.
|
151
151
|
# AdWords::API.get_total_units() returns a running total of units used in
|
152
152
|
# the scope of the current program.
|
153
|
-
# AdWords::API.get_last_units() returns the number used in the last
|
153
|
+
# AdWords::API.get_last_units() returns the number used in the last call.
|
154
154
|
|
155
155
|
puts
|
156
156
|
puts '%d API units consumed total (%d in last call).' %
|
@@ -0,0 +1,34 @@
|
|
1
|
+
#!/usr/bin/env ruby
|
2
|
+
|
3
|
+
# Use adwords4r in parent dir
|
4
|
+
$LOAD_PATH.unshift '../lib/'
|
5
|
+
|
6
|
+
require 'adwords4r'
|
7
|
+
|
8
|
+
SEP = "---"
|
9
|
+
|
10
|
+
def dumpObj(o)
|
11
|
+
str = ""
|
12
|
+
o.instance_variables.each { |v| str << dumpAttr(o, v)}
|
13
|
+
return str << SEP
|
14
|
+
end
|
15
|
+
|
16
|
+
def dumpAttr(o, v)
|
17
|
+
name = v.sub(/@/,'')
|
18
|
+
value = eval("o.#{name}.to_s")
|
19
|
+
return "#{name}: #{value}\n"
|
20
|
+
end
|
21
|
+
|
22
|
+
begin
|
23
|
+
adwords = AdWords::API.new
|
24
|
+
|
25
|
+
res = adwords.estimateKeywordList([AdWords::KeywordRequest.new(
|
26
|
+
nil, 50000, false, 'flowers', 'Broad')]).estimateKeywordListReturn
|
27
|
+
res.each {|c| puts dumpObj(c)}
|
28
|
+
|
29
|
+
rescue AdWords::Error::UnknownAPICall => e
|
30
|
+
puts e
|
31
|
+
rescue AdWords::Error::ApiError => e
|
32
|
+
puts e.code
|
33
|
+
puts e.message
|
34
|
+
end
|
data/lib/adwords4r.rb
CHANGED
@@ -27,7 +27,7 @@ module SOAP
|
|
27
27
|
end
|
28
28
|
|
29
29
|
module AdWords
|
30
|
-
|
30
|
+
|
31
31
|
class API
|
32
32
|
|
33
33
|
@@total_units = 0
|
@@ -36,7 +36,7 @@ module AdWords
|
|
36
36
|
def API.add_total_units(increment)
|
37
37
|
@@total_units += increment
|
38
38
|
end
|
39
|
-
|
39
|
+
|
40
40
|
def API.get_total_units()
|
41
41
|
return @@total_units
|
42
42
|
end
|
@@ -48,11 +48,12 @@ module AdWords
|
|
48
48
|
def API.get_last_units()
|
49
49
|
return @@last_units
|
50
50
|
end
|
51
|
-
|
51
|
+
|
52
52
|
attr_reader :credentials, :drivers, :version
|
53
53
|
@methodMap = Hash.new
|
54
|
-
|
55
|
-
def initialize(credentials = AdWordsCredentials.new,
|
54
|
+
|
55
|
+
def initialize(credentials = AdWordsCredentials.new,
|
56
|
+
version = Service.getVersions.sort.last)
|
56
57
|
@credentials, @version = credentials, version
|
57
58
|
@drivers = Hash.new
|
58
59
|
prepareDrivers
|
@@ -72,7 +73,8 @@ module AdWords
|
|
72
73
|
end
|
73
74
|
# Handle AdWords Application-level error
|
74
75
|
rescue SOAP::FaultError => fault
|
75
|
-
raise(Error::ApiError.new(fault),
|
76
|
+
raise(Error::ApiError.new(fault),
|
77
|
+
"#{methodName} Call Failed: #{fault.faultstring.to_s}", caller)
|
76
78
|
end
|
77
79
|
|
78
80
|
def prepareDrivers()
|
@@ -124,13 +126,16 @@ module AdWords
|
|
124
126
|
class Error
|
125
127
|
class Error < StandardError; end
|
126
128
|
|
127
|
-
# Raised if a call is made to a method that does not exist
|
129
|
+
# Raised if a call is made to a method that does not exist
|
130
|
+
# in the AdWords SOAP API
|
128
131
|
class UnknownAPICall < Error; end
|
129
132
|
|
130
|
-
# Raised if an attempt is made to instantiate a type that does not exist
|
133
|
+
# Raised if an attempt is made to instantiate a type that does not exist
|
134
|
+
# in the AdWords SOAP API
|
131
135
|
class UnknownType < Error; end
|
132
136
|
|
133
|
-
# Raised if a call returns with a SOAP error,
|
137
|
+
# Raised if a call returns with a SOAP error,
|
138
|
+
# gives you easy access to adwords error fields
|
134
139
|
class ApiError < Error
|
135
140
|
attr_accessor :soap_faultcode
|
136
141
|
attr_accessor :soap_faultstring
|
@@ -146,10 +151,12 @@ module AdWords
|
|
146
151
|
attr_accessor :textLength
|
147
152
|
attr_accessor :trigger
|
148
153
|
|
149
|
-
# These *_ex attributes have been added to correct deficiencies with the
|
150
|
-
#
|
151
|
-
#
|
152
|
-
#
|
154
|
+
# These *_ex attributes have been added to correct deficiencies with the
|
155
|
+
# initial implementation.
|
156
|
+
# They should expose more useful information (i.e. text of errors instead
|
157
|
+
# of a SOAP element) and proper mapping of a fault's trigger and code.
|
158
|
+
# The old attributes are left behind for backward compatibility;
|
159
|
+
# hopefully this isn't too confusing!
|
153
160
|
attr_accessor :trigger_ex
|
154
161
|
attr_accessor :soap_faultcode_ex
|
155
162
|
attr_accessor :soap_faultstring_ex
|
@@ -166,7 +173,7 @@ module AdWords
|
|
166
173
|
@internal = protect { fault.internal }
|
167
174
|
@message = protect { fault.message }
|
168
175
|
@trigger_ex = protect { fault.trigger }
|
169
|
-
|
176
|
+
@code_ex = protect { fault.code }
|
170
177
|
if protect { fault.errors and fault.errors.size > 0 }
|
171
178
|
error = fault.errors.first
|
172
179
|
@code = protect { error.code }
|
@@ -197,11 +204,11 @@ module AdWords
|
|
197
204
|
def on_inbound(xml, opt)
|
198
205
|
# Parse the response XML string for the <operations> header value.
|
199
206
|
if xml =~ %r{<units.+?>(\d+)</units>}
|
200
|
-
|
201
|
-
|
202
|
-
|
203
|
-
|
204
|
-
|
207
|
+
units = $1.to_i
|
208
|
+
# Since we don't really have an instance of a useful class here,
|
209
|
+
# we're stuck sticking the value in a class variable for AdWords::API.
|
210
|
+
AdWords::API.set_last_units(units)
|
211
|
+
AdWords::API.add_total_units(units)
|
205
212
|
end
|
206
213
|
|
207
214
|
return xml
|
@@ -20,7 +20,8 @@ module AdWords
|
|
20
20
|
|
21
21
|
def getDefaults()
|
22
22
|
cred = Hash.new
|
23
|
-
IO.foreach("#{ENV['HOME']}/adwords.properties") {|line|
|
23
|
+
IO.foreach("#{ENV['HOME']}/adwords.properties") {|line|
|
24
|
+
addCredential(cred, line.split('=')) if !(line =~ /^#/)}
|
24
25
|
return cred
|
25
26
|
end
|
26
27
|
|
@@ -36,7 +37,8 @@ module AdWords
|
|
36
37
|
else
|
37
38
|
credentials = getDefaults()
|
38
39
|
end
|
39
|
-
credentials.each {|key, value|
|
40
|
+
credentials.each {|key, value|
|
41
|
+
@handlers << HeaderHandler.new(key, value) if !(key =~ /^alternateUrl/)}
|
40
42
|
@alternateUrl = credentials['alternateUrl']
|
41
43
|
end
|
42
44
|
end
|
data/lib/adwords4r/services.rb
CHANGED
@@ -2,8 +2,10 @@ module AdWords
|
|
2
2
|
class Service
|
3
3
|
|
4
4
|
@services = {
|
5
|
-
|
6
|
-
|
5
|
+
11 => ["Account", "AdGroup", "Ad", "Campaign", "Criterion", "Info",
|
6
|
+
"KeywordTool", "Report", "SiteSuggestion", "TrafficEstimator"],
|
7
|
+
12 => ["Account", "AdGroup", "Ad", "Campaign", "Criterion", "Info",
|
8
|
+
"KeywordTool", "Report", "SiteSuggestion", "TrafficEstimator"]
|
7
9
|
}
|
8
10
|
|
9
11
|
def self.getVersions
|
@@ -15,7 +15,7 @@ class AccountInterface < ::SOAP::RPC::Driver
|
|
15
15
|
["out", "parameters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v11", "getAccountInfoResponse"]] ],
|
16
16
|
{ :request_style => :document, :request_use => :literal,
|
17
17
|
:response_style => :document, :response_use => :literal,
|
18
|
-
:faults => {"AdWords::AccountService::ApiException"=>{:
|
18
|
+
:faults => {"AdWords::AccountService::ApiException"=>{:encodingstyle=>"document", :use=>"literal", :ns=>"https://adwords.google.com/api/adwords/v11", :name=>"ApiException", :namespace=>nil}} }
|
19
19
|
],
|
20
20
|
[ "",
|
21
21
|
"getClientAccounts",
|
@@ -23,7 +23,7 @@ class AccountInterface < ::SOAP::RPC::Driver
|
|
23
23
|
["out", "parameters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v11", "getClientAccountsResponse"]] ],
|
24
24
|
{ :request_style => :document, :request_use => :literal,
|
25
25
|
:response_style => :document, :response_use => :literal,
|
26
|
-
:faults => {"AdWords::AccountService::ApiException"=>{:
|
26
|
+
:faults => {"AdWords::AccountService::ApiException"=>{:encodingstyle=>"document", :use=>"literal", :ns=>"https://adwords.google.com/api/adwords/v11", :name=>"ApiException", :namespace=>nil}} }
|
27
27
|
],
|
28
28
|
[ "",
|
29
29
|
"updateAccountInfo",
|
@@ -31,7 +31,7 @@ class AccountInterface < ::SOAP::RPC::Driver
|
|
31
31
|
["out", "parameters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v11", "updateAccountInfoResponse"]] ],
|
32
32
|
{ :request_style => :document, :request_use => :literal,
|
33
33
|
:response_style => :document, :response_use => :literal,
|
34
|
-
:faults => {"AdWords::AccountService::ApiException"=>{:
|
34
|
+
:faults => {"AdWords::AccountService::ApiException"=>{:encodingstyle=>"document", :use=>"literal", :ns=>"https://adwords.google.com/api/adwords/v11", :name=>"ApiException", :namespace=>nil}} }
|
35
35
|
]
|
36
36
|
]
|
37
37
|
|
@@ -15,7 +15,7 @@ class AdGroupInterface < ::SOAP::RPC::Driver
|
|
15
15
|
["out", "parameters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v11", "addAdGroupResponse"]] ],
|
16
16
|
{ :request_style => :document, :request_use => :literal,
|
17
17
|
:response_style => :document, :response_use => :literal,
|
18
|
-
:faults => {"AdWords::AdGroupService::ApiException"=>{:
|
18
|
+
:faults => {"AdWords::AdGroupService::ApiException"=>{:encodingstyle=>"document", :use=>"literal", :ns=>"https://adwords.google.com/api/adwords/v11", :name=>"ApiException", :namespace=>nil}} }
|
19
19
|
],
|
20
20
|
[ "",
|
21
21
|
"addAdGroupList",
|
@@ -23,7 +23,7 @@ class AdGroupInterface < ::SOAP::RPC::Driver
|
|
23
23
|
["out", "parameters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v11", "addAdGroupListResponse"]] ],
|
24
24
|
{ :request_style => :document, :request_use => :literal,
|
25
25
|
:response_style => :document, :response_use => :literal,
|
26
|
-
:faults => {"AdWords::AdGroupService::ApiException"=>{:
|
26
|
+
:faults => {"AdWords::AdGroupService::ApiException"=>{:encodingstyle=>"document", :use=>"literal", :ns=>"https://adwords.google.com/api/adwords/v11", :name=>"ApiException", :namespace=>nil}} }
|
27
27
|
],
|
28
28
|
[ "",
|
29
29
|
"getAdGroup",
|
@@ -31,7 +31,7 @@ class AdGroupInterface < ::SOAP::RPC::Driver
|
|
31
31
|
["out", "parameters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v11", "getAdGroupResponse"]] ],
|
32
32
|
{ :request_style => :document, :request_use => :literal,
|
33
33
|
:response_style => :document, :response_use => :literal,
|
34
|
-
:faults => {"AdWords::AdGroupService::ApiException"=>{:
|
34
|
+
:faults => {"AdWords::AdGroupService::ApiException"=>{:encodingstyle=>"document", :use=>"literal", :ns=>"https://adwords.google.com/api/adwords/v11", :name=>"ApiException", :namespace=>nil}} }
|
35
35
|
],
|
36
36
|
[ "",
|
37
37
|
"getAdGroupList",
|
@@ -39,7 +39,7 @@ class AdGroupInterface < ::SOAP::RPC::Driver
|
|
39
39
|
["out", "parameters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v11", "getAdGroupListResponse"]] ],
|
40
40
|
{ :request_style => :document, :request_use => :literal,
|
41
41
|
:response_style => :document, :response_use => :literal,
|
42
|
-
:faults => {"AdWords::AdGroupService::ApiException"=>{:
|
42
|
+
:faults => {"AdWords::AdGroupService::ApiException"=>{:encodingstyle=>"document", :use=>"literal", :ns=>"https://adwords.google.com/api/adwords/v11", :name=>"ApiException", :namespace=>nil}} }
|
43
43
|
],
|
44
44
|
[ "",
|
45
45
|
"getAdGroupStats",
|
@@ -47,7 +47,7 @@ class AdGroupInterface < ::SOAP::RPC::Driver
|
|
47
47
|
["out", "parameters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v11", "getAdGroupStatsResponse"]] ],
|
48
48
|
{ :request_style => :document, :request_use => :literal,
|
49
49
|
:response_style => :document, :response_use => :literal,
|
50
|
-
:faults => {"AdWords::AdGroupService::ApiException"=>{:
|
50
|
+
:faults => {"AdWords::AdGroupService::ApiException"=>{:encodingstyle=>"document", :use=>"literal", :ns=>"https://adwords.google.com/api/adwords/v11", :name=>"ApiException", :namespace=>nil}} }
|
51
51
|
],
|
52
52
|
[ "",
|
53
53
|
"getAllAdGroups",
|
@@ -55,7 +55,7 @@ class AdGroupInterface < ::SOAP::RPC::Driver
|
|
55
55
|
["out", "parameters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v11", "getAllAdGroupsResponse"]] ],
|
56
56
|
{ :request_style => :document, :request_use => :literal,
|
57
57
|
:response_style => :document, :response_use => :literal,
|
58
|
-
:faults => {"AdWords::AdGroupService::ApiException"=>{:
|
58
|
+
:faults => {"AdWords::AdGroupService::ApiException"=>{:encodingstyle=>"document", :use=>"literal", :ns=>"https://adwords.google.com/api/adwords/v11", :name=>"ApiException", :namespace=>nil}} }
|
59
59
|
],
|
60
60
|
[ "",
|
61
61
|
"updateAdGroup",
|
@@ -63,7 +63,7 @@ class AdGroupInterface < ::SOAP::RPC::Driver
|
|
63
63
|
["out", "parameters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v11", "updateAdGroupResponse"]] ],
|
64
64
|
{ :request_style => :document, :request_use => :literal,
|
65
65
|
:response_style => :document, :response_use => :literal,
|
66
|
-
:faults => {"AdWords::AdGroupService::ApiException"=>{:
|
66
|
+
:faults => {"AdWords::AdGroupService::ApiException"=>{:encodingstyle=>"document", :use=>"literal", :ns=>"https://adwords.google.com/api/adwords/v11", :name=>"ApiException", :namespace=>nil}} }
|
67
67
|
],
|
68
68
|
[ "",
|
69
69
|
"updateAdGroupList",
|
@@ -71,7 +71,7 @@ class AdGroupInterface < ::SOAP::RPC::Driver
|
|
71
71
|
["out", "parameters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v11", "updateAdGroupListResponse"]] ],
|
72
72
|
{ :request_style => :document, :request_use => :literal,
|
73
73
|
:response_style => :document, :response_use => :literal,
|
74
|
-
:faults => {"AdWords::AdGroupService::ApiException"=>{:
|
74
|
+
:faults => {"AdWords::AdGroupService::ApiException"=>{:encodingstyle=>"document", :use=>"literal", :ns=>"https://adwords.google.com/api/adwords/v11", :name=>"ApiException", :namespace=>nil}} }
|
75
75
|
]
|
76
76
|
]
|
77
77
|
|
@@ -15,7 +15,7 @@ class AdInterface < ::SOAP::RPC::Driver
|
|
15
15
|
["out", "parameters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v11", "addAdsResponse"]] ],
|
16
16
|
{ :request_style => :document, :request_use => :literal,
|
17
17
|
:response_style => :document, :response_use => :literal,
|
18
|
-
:faults => {"AdWords::AdService::ApiException"=>{:
|
18
|
+
:faults => {"AdWords::AdService::ApiException"=>{:encodingstyle=>"document", :use=>"literal", :ns=>"https://adwords.google.com/api/adwords/v11", :name=>"ApiException", :namespace=>nil}} }
|
19
19
|
],
|
20
20
|
[ "",
|
21
21
|
"checkAds",
|
@@ -23,7 +23,7 @@ class AdInterface < ::SOAP::RPC::Driver
|
|
23
23
|
["out", "parameters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v11", "checkAdsResponse"]] ],
|
24
24
|
{ :request_style => :document, :request_use => :literal,
|
25
25
|
:response_style => :document, :response_use => :literal,
|
26
|
-
:faults => {"AdWords::AdService::ApiException"=>{:
|
26
|
+
:faults => {"AdWords::AdService::ApiException"=>{:encodingstyle=>"document", :use=>"literal", :ns=>"https://adwords.google.com/api/adwords/v11", :name=>"ApiException", :namespace=>nil}} }
|
27
27
|
],
|
28
28
|
[ "",
|
29
29
|
"findBusinesses",
|
@@ -31,7 +31,7 @@ class AdInterface < ::SOAP::RPC::Driver
|
|
31
31
|
["out", "parameters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v11", "findBusinessesResponse"]] ],
|
32
32
|
{ :request_style => :document, :request_use => :literal,
|
33
33
|
:response_style => :document, :response_use => :literal,
|
34
|
-
:faults => {"AdWords::AdService::ApiException"=>{:
|
34
|
+
:faults => {"AdWords::AdService::ApiException"=>{:encodingstyle=>"document", :use=>"literal", :ns=>"https://adwords.google.com/api/adwords/v11", :name=>"ApiException", :namespace=>nil}} }
|
35
35
|
],
|
36
36
|
[ "",
|
37
37
|
"getActiveAds",
|
@@ -39,7 +39,7 @@ class AdInterface < ::SOAP::RPC::Driver
|
|
39
39
|
["out", "parameters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v11", "getActiveAdsResponse"]] ],
|
40
40
|
{ :request_style => :document, :request_use => :literal,
|
41
41
|
:response_style => :document, :response_use => :literal,
|
42
|
-
:faults => {"AdWords::AdService::ApiException"=>{:
|
42
|
+
:faults => {"AdWords::AdService::ApiException"=>{:encodingstyle=>"document", :use=>"literal", :ns=>"https://adwords.google.com/api/adwords/v11", :name=>"ApiException", :namespace=>nil}} }
|
43
43
|
],
|
44
44
|
[ "",
|
45
45
|
"getAd",
|
@@ -47,7 +47,7 @@ class AdInterface < ::SOAP::RPC::Driver
|
|
47
47
|
["out", "parameters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v11", "getAdResponse"]] ],
|
48
48
|
{ :request_style => :document, :request_use => :literal,
|
49
49
|
:response_style => :document, :response_use => :literal,
|
50
|
-
:faults => {"AdWords::AdService::ApiException"=>{:
|
50
|
+
:faults => {"AdWords::AdService::ApiException"=>{:encodingstyle=>"document", :use=>"literal", :ns=>"https://adwords.google.com/api/adwords/v11", :name=>"ApiException", :namespace=>nil}} }
|
51
51
|
],
|
52
52
|
[ "",
|
53
53
|
"getAdStats",
|
@@ -55,7 +55,7 @@ class AdInterface < ::SOAP::RPC::Driver
|
|
55
55
|
["out", "parameters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v11", "getAdStatsResponse"]] ],
|
56
56
|
{ :request_style => :document, :request_use => :literal,
|
57
57
|
:response_style => :document, :response_use => :literal,
|
58
|
-
:faults => {"AdWords::AdService::ApiException"=>{:
|
58
|
+
:faults => {"AdWords::AdService::ApiException"=>{:encodingstyle=>"document", :use=>"literal", :ns=>"https://adwords.google.com/api/adwords/v11", :name=>"ApiException", :namespace=>nil}} }
|
59
59
|
],
|
60
60
|
[ "",
|
61
61
|
"getAllAds",
|
@@ -63,7 +63,7 @@ class AdInterface < ::SOAP::RPC::Driver
|
|
63
63
|
["out", "parameters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v11", "getAllAdsResponse"]] ],
|
64
64
|
{ :request_style => :document, :request_use => :literal,
|
65
65
|
:response_style => :document, :response_use => :literal,
|
66
|
-
:faults => {"AdWords::AdService::ApiException"=>{:
|
66
|
+
:faults => {"AdWords::AdService::ApiException"=>{:encodingstyle=>"document", :use=>"literal", :ns=>"https://adwords.google.com/api/adwords/v11", :name=>"ApiException", :namespace=>nil}} }
|
67
67
|
],
|
68
68
|
[ "",
|
69
69
|
"getMyBusinesses",
|
@@ -71,7 +71,7 @@ class AdInterface < ::SOAP::RPC::Driver
|
|
71
71
|
["out", "parameters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v11", "getMyBusinessesResponse"]] ],
|
72
72
|
{ :request_style => :document, :request_use => :literal,
|
73
73
|
:response_style => :document, :response_use => :literal,
|
74
|
-
:faults => {"AdWords::AdService::ApiException"=>{:
|
74
|
+
:faults => {"AdWords::AdService::ApiException"=>{:encodingstyle=>"document", :use=>"literal", :ns=>"https://adwords.google.com/api/adwords/v11", :name=>"ApiException", :namespace=>nil}} }
|
75
75
|
],
|
76
76
|
[ "",
|
77
77
|
"getMyVideos",
|
@@ -79,7 +79,7 @@ class AdInterface < ::SOAP::RPC::Driver
|
|
79
79
|
["out", "parameters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v11", "getMyVideosResponse"]] ],
|
80
80
|
{ :request_style => :document, :request_use => :literal,
|
81
81
|
:response_style => :document, :response_use => :literal,
|
82
|
-
:faults => {"AdWords::AdService::ApiException"=>{:
|
82
|
+
:faults => {"AdWords::AdService::ApiException"=>{:encodingstyle=>"document", :use=>"literal", :ns=>"https://adwords.google.com/api/adwords/v11", :name=>"ApiException", :namespace=>nil}} }
|
83
83
|
],
|
84
84
|
[ "",
|
85
85
|
"updateAds",
|
@@ -87,7 +87,7 @@ class AdInterface < ::SOAP::RPC::Driver
|
|
87
87
|
["out", "parameters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v11", "updateAdsResponse"]] ],
|
88
88
|
{ :request_style => :document, :request_use => :literal,
|
89
89
|
:response_style => :document, :response_use => :literal,
|
90
|
-
:faults => {"AdWords::AdService::ApiException"=>{:
|
90
|
+
:faults => {"AdWords::AdService::ApiException"=>{:encodingstyle=>"document", :use=>"literal", :ns=>"https://adwords.google.com/api/adwords/v11", :name=>"ApiException", :namespace=>nil}} }
|
91
91
|
]
|
92
92
|
]
|
93
93
|
|
@@ -15,7 +15,7 @@ class CampaignInterface < ::SOAP::RPC::Driver
|
|
15
15
|
["out", "parameters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v11", "addCampaignResponse"]] ],
|
16
16
|
{ :request_style => :document, :request_use => :literal,
|
17
17
|
:response_style => :document, :response_use => :literal,
|
18
|
-
:faults => {"AdWords::CampaignService::ApiException"=>{:
|
18
|
+
:faults => {"AdWords::CampaignService::ApiException"=>{:encodingstyle=>"document", :use=>"literal", :ns=>"https://adwords.google.com/api/adwords/v11", :name=>"ApiException", :namespace=>nil}} }
|
19
19
|
],
|
20
20
|
[ "",
|
21
21
|
"addCampaignList",
|
@@ -23,7 +23,7 @@ class CampaignInterface < ::SOAP::RPC::Driver
|
|
23
23
|
["out", "parameters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v11", "addCampaignListResponse"]] ],
|
24
24
|
{ :request_style => :document, :request_use => :literal,
|
25
25
|
:response_style => :document, :response_use => :literal,
|
26
|
-
:faults => {"AdWords::CampaignService::ApiException"=>{:
|
26
|
+
:faults => {"AdWords::CampaignService::ApiException"=>{:encodingstyle=>"document", :use=>"literal", :ns=>"https://adwords.google.com/api/adwords/v11", :name=>"ApiException", :namespace=>nil}} }
|
27
27
|
],
|
28
28
|
[ "",
|
29
29
|
"getAllAdWordsCampaigns",
|
@@ -31,7 +31,7 @@ class CampaignInterface < ::SOAP::RPC::Driver
|
|
31
31
|
["out", "parameters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v11", "getAllAdWordsCampaignsResponse"]] ],
|
32
32
|
{ :request_style => :document, :request_use => :literal,
|
33
33
|
:response_style => :document, :response_use => :literal,
|
34
|
-
:faults => {"AdWords::CampaignService::ApiException"=>{:
|
34
|
+
:faults => {"AdWords::CampaignService::ApiException"=>{:encodingstyle=>"document", :use=>"literal", :ns=>"https://adwords.google.com/api/adwords/v11", :name=>"ApiException", :namespace=>nil}} }
|
35
35
|
],
|
36
36
|
[ "",
|
37
37
|
"getCampaign",
|
@@ -39,7 +39,7 @@ class CampaignInterface < ::SOAP::RPC::Driver
|
|
39
39
|
["out", "parameters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v11", "getCampaignResponse"]] ],
|
40
40
|
{ :request_style => :document, :request_use => :literal,
|
41
41
|
:response_style => :document, :response_use => :literal,
|
42
|
-
:faults => {"AdWords::CampaignService::ApiException"=>{:
|
42
|
+
:faults => {"AdWords::CampaignService::ApiException"=>{:encodingstyle=>"document", :use=>"literal", :ns=>"https://adwords.google.com/api/adwords/v11", :name=>"ApiException", :namespace=>nil}} }
|
43
43
|
],
|
44
44
|
[ "",
|
45
45
|
"getCampaignList",
|
@@ -47,7 +47,7 @@ class CampaignInterface < ::SOAP::RPC::Driver
|
|
47
47
|
["out", "parameters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v11", "getCampaignListResponse"]] ],
|
48
48
|
{ :request_style => :document, :request_use => :literal,
|
49
49
|
:response_style => :document, :response_use => :literal,
|
50
|
-
:faults => {"AdWords::CampaignService::ApiException"=>{:
|
50
|
+
:faults => {"AdWords::CampaignService::ApiException"=>{:encodingstyle=>"document", :use=>"literal", :ns=>"https://adwords.google.com/api/adwords/v11", :name=>"ApiException", :namespace=>nil}} }
|
51
51
|
],
|
52
52
|
[ "",
|
53
53
|
"getCampaignStats",
|
@@ -55,7 +55,7 @@ class CampaignInterface < ::SOAP::RPC::Driver
|
|
55
55
|
["out", "parameters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v11", "getCampaignStatsResponse"]] ],
|
56
56
|
{ :request_style => :document, :request_use => :literal,
|
57
57
|
:response_style => :document, :response_use => :literal,
|
58
|
-
:faults => {"AdWords::CampaignService::ApiException"=>{:
|
58
|
+
:faults => {"AdWords::CampaignService::ApiException"=>{:encodingstyle=>"document", :use=>"literal", :ns=>"https://adwords.google.com/api/adwords/v11", :name=>"ApiException", :namespace=>nil}} }
|
59
59
|
],
|
60
60
|
[ "",
|
61
61
|
"getOptimizeAdServing",
|
@@ -63,7 +63,7 @@ class CampaignInterface < ::SOAP::RPC::Driver
|
|
63
63
|
["out", "parameters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v11", "getOptimizeAdServingResponse"]] ],
|
64
64
|
{ :request_style => :document, :request_use => :literal,
|
65
65
|
:response_style => :document, :response_use => :literal,
|
66
|
-
:faults => {"AdWords::CampaignService::ApiException"=>{:
|
66
|
+
:faults => {"AdWords::CampaignService::ApiException"=>{:encodingstyle=>"document", :use=>"literal", :ns=>"https://adwords.google.com/api/adwords/v11", :name=>"ApiException", :namespace=>nil}} }
|
67
67
|
],
|
68
68
|
[ "",
|
69
69
|
"setOptimizeAdServing",
|
@@ -71,7 +71,7 @@ class CampaignInterface < ::SOAP::RPC::Driver
|
|
71
71
|
["out", "parameters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v11", "setOptimizeAdServingResponse"]] ],
|
72
72
|
{ :request_style => :document, :request_use => :literal,
|
73
73
|
:response_style => :document, :response_use => :literal,
|
74
|
-
:faults => {"AdWords::CampaignService::ApiException"=>{:
|
74
|
+
:faults => {"AdWords::CampaignService::ApiException"=>{:encodingstyle=>"document", :use=>"literal", :ns=>"https://adwords.google.com/api/adwords/v11", :name=>"ApiException", :namespace=>nil}} }
|
75
75
|
],
|
76
76
|
[ "",
|
77
77
|
"updateCampaign",
|
@@ -79,7 +79,7 @@ class CampaignInterface < ::SOAP::RPC::Driver
|
|
79
79
|
["out", "parameters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v11", "updateCampaignResponse"]] ],
|
80
80
|
{ :request_style => :document, :request_use => :literal,
|
81
81
|
:response_style => :document, :response_use => :literal,
|
82
|
-
:faults => {"AdWords::CampaignService::ApiException"=>{:
|
82
|
+
:faults => {"AdWords::CampaignService::ApiException"=>{:encodingstyle=>"document", :use=>"literal", :ns=>"https://adwords.google.com/api/adwords/v11", :name=>"ApiException", :namespace=>nil}} }
|
83
83
|
],
|
84
84
|
[ "",
|
85
85
|
"updateCampaignList",
|
@@ -87,7 +87,7 @@ class CampaignInterface < ::SOAP::RPC::Driver
|
|
87
87
|
["out", "parameters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v11", "updateCampaignListResponse"]] ],
|
88
88
|
{ :request_style => :document, :request_use => :literal,
|
89
89
|
:response_style => :document, :response_use => :literal,
|
90
|
-
:faults => {"AdWords::CampaignService::ApiException"=>{:
|
90
|
+
:faults => {"AdWords::CampaignService::ApiException"=>{:encodingstyle=>"document", :use=>"literal", :ns=>"https://adwords.google.com/api/adwords/v11", :name=>"ApiException", :namespace=>nil}} }
|
91
91
|
]
|
92
92
|
]
|
93
93
|
|