adwords4r 11.1.0 → 12.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (62) hide show
  1. data/ChangeLog.txt +4 -0
  2. data/Rakefile +76 -70
  3. data/examples/campaign.rb +40 -0
  4. data/examples/{old/framework.rb → framework.rb} +0 -0
  5. data/examples/{old/get_free_usage_this_month.rb → get_free_usage_this_month.rb} +8 -6
  6. data/examples/get_unit_count.rb +21 -0
  7. data/examples/keyword_suggestions.rb +179 -0
  8. data/examples/keyword_tool_demo.rb +31 -0
  9. data/examples/reports.rb +6 -6
  10. data/examples/traffic_estimator.rb +34 -0
  11. data/lib/adwords4r.rb +26 -19
  12. data/lib/adwords4r/credentials.rb +4 -2
  13. data/lib/adwords4r/services.rb +4 -2
  14. data/lib/adwords4r/v11/AccountServiceDriver.rb +3 -3
  15. data/lib/adwords4r/v11/AdGroupServiceDriver.rb +8 -8
  16. data/lib/adwords4r/v11/AdServiceDriver.rb +10 -10
  17. data/lib/adwords4r/v11/CampaignServiceDriver.rb +10 -10
  18. data/lib/adwords4r/v11/CriterionServiceDriver.rb +9 -9
  19. data/lib/adwords4r/v11/InfoServiceDriver.rb +8 -8
  20. data/lib/adwords4r/v11/KeywordToolServiceDriver.rb +2 -2
  21. data/lib/adwords4r/v11/ReportServiceDriver.rb +7 -7
  22. data/lib/adwords4r/v11/SiteSuggestionServiceDriver.rb +4 -4
  23. data/lib/adwords4r/v11/TrafficEstimatorServiceDriver.rb +4 -4
  24. data/lib/adwords4r/{v10 → v12}/AccountService.rb +13 -32
  25. data/lib/adwords4r/{v10 → v12}/AccountServiceDriver.rb +12 -20
  26. data/lib/adwords4r/{v10 → v12}/AccountServiceMappingRegistry.rb +23 -38
  27. data/lib/adwords4r/{v10 → v12}/AdGroupService.rb +43 -37
  28. data/lib/adwords4r/{v10 → v12}/AdGroupServiceDriver.rb +27 -27
  29. data/lib/adwords4r/{v10 → v12}/AdGroupServiceMappingRegistry.rb +46 -42
  30. data/lib/adwords4r/{v10 → v12}/AdService.rb +68 -56
  31. data/lib/adwords4r/{v10 → v12}/AdServiceDriver.rb +33 -33
  32. data/lib/adwords4r/{v10 → v12}/AdServiceMappingRegistry.rb +113 -105
  33. data/lib/adwords4r/{v10 → v12}/CampaignService.rb +99 -44
  34. data/lib/adwords4r/{v10 → v12}/CampaignServiceDriver.rb +41 -33
  35. data/lib/adwords4r/{v10 → v12}/CampaignServiceMappingRegistry.rb +143 -65
  36. data/lib/adwords4r/{v10 → v12}/CriterionService.rb +46 -43
  37. data/lib/adwords4r/{v10 → v12}/CriterionServiceDriver.rb +30 -30
  38. data/lib/adwords4r/{v10 → v12}/CriterionServiceMappingRegistry.rb +67 -65
  39. data/lib/adwords4r/{v10 → v12}/InfoService.rb +19 -19
  40. data/lib/adwords4r/{v10 → v12}/InfoServiceDriver.rb +27 -27
  41. data/lib/adwords4r/{v10 → v12}/InfoServiceMappingRegistry.rb +25 -25
  42. data/lib/adwords4r/{v10 → v12}/KeywordToolService.rb +12 -12
  43. data/lib/adwords4r/{v10 → v12}/KeywordToolServiceDriver.rb +9 -9
  44. data/lib/adwords4r/{v10 → v12}/KeywordToolServiceMappingRegistry.rb +23 -23
  45. data/lib/adwords4r/v12/ReportService.rb +322 -0
  46. data/lib/adwords4r/{v10 → v12}/ReportServiceDriver.rb +29 -21
  47. data/lib/adwords4r/v12/ReportServiceMappingRegistry.rb +298 -0
  48. data/lib/adwords4r/{v10 → v12}/SiteSuggestionService.rb +18 -18
  49. data/lib/adwords4r/{v10 → v12}/SiteSuggestionServiceDriver.rb +15 -15
  50. data/lib/adwords4r/{v10 → v12}/SiteSuggestionServiceMappingRegistry.rb +45 -45
  51. data/lib/adwords4r/{v10 → v12}/TrafficEstimatorService.rb +29 -29
  52. data/lib/adwords4r/{v10 → v12}/TrafficEstimatorServiceDriver.rb +15 -15
  53. data/lib/adwords4r/{v10 → v12}/TrafficEstimatorServiceMappingRegistry.rb +55 -55
  54. data/svn-commit.2.tmp +60 -0
  55. data/svn-commit.tmp +60 -0
  56. metadata +41 -38
  57. data/examples/old/campaign.rb +0 -40
  58. data/examples/old/get_unit_count.rb +0 -21
  59. data/examples/old/keyword_tool_demo.rb +0 -30
  60. data/examples/old/traffic_estimator.rb +0 -34
  61. data/lib/adwords4r/v10/ReportService.rb +0 -652
  62. 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
+
@@ -91,7 +91,7 @@ def main()
91
91
 
92
92
  if status == 'Completed'
93
93
  report_url = adwords.getReportDownloadUrl(job_id).
94
- getReportDownloadUrlReturn
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
- open(file_name, 'w') {|file| file.puts(report_data)}
106
- puts 'Report has been written to %s' % file_name
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 variable
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 API call.
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
@@ -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, version = Service.getVersions.sort.last)
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), "#{methodName} Call Failed: #{fault.faultstring.to_s}", caller)
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 in the AdWords SOAP API
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 in the AdWords SOAP API
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, gives you easy access to adwords error fields
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 initial implementation.
150
- # They should expose more useful information (i.e. text of errors instead of a SOAP element)
151
- # and proper mapping of a fault's trigger and code.
152
- # The old attributes are left behind for backward compatibility; hopefully this isn't too confusing!
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
- @code_ex = protect { fault.code }
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
- units = $1.to_i
201
- # Since we don't really have an instance of a useful class here,
202
- # we're stuck sticking the value in a class variable for AdWords::API.
203
- AdWords::API.set_last_units(units)
204
- AdWords::API.add_total_units(units)
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| addCredential(cred, line.split('=')) if !(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| @handlers << HeaderHandler.new(key, value) if !(key =~ /^alternateUrl/)}
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
@@ -2,8 +2,10 @@ module AdWords
2
2
  class Service
3
3
 
4
4
  @services = {
5
- 10 => ["Account", "AdGroup", "Ad", "Campaign", "Criterion", "Info", "KeywordTool", "Report", "SiteSuggestion", "TrafficEstimator"],
6
- 11 => ["Account", "AdGroup", "Ad", "Campaign", "Criterion", "Info", "KeywordTool", "Report", "SiteSuggestion", "TrafficEstimator"]
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"=>{:namespace=>nil, :ns=>"https://adwords.google.com/api/adwords/v11", :encodingstyle=>"document", :use=>"literal", :name=>"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"=>{:namespace=>nil, :ns=>"https://adwords.google.com/api/adwords/v11", :encodingstyle=>"document", :use=>"literal", :name=>"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"=>{:namespace=>nil, :ns=>"https://adwords.google.com/api/adwords/v11", :encodingstyle=>"document", :use=>"literal", :name=>"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"=>{:namespace=>nil, :ns=>"https://adwords.google.com/api/adwords/v11", :encodingstyle=>"document", :use=>"literal", :name=>"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"=>{:namespace=>nil, :ns=>"https://adwords.google.com/api/adwords/v11", :encodingstyle=>"document", :use=>"literal", :name=>"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"=>{:namespace=>nil, :ns=>"https://adwords.google.com/api/adwords/v11", :encodingstyle=>"document", :use=>"literal", :name=>"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"=>{:namespace=>nil, :ns=>"https://adwords.google.com/api/adwords/v11", :encodingstyle=>"document", :use=>"literal", :name=>"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"=>{:namespace=>nil, :ns=>"https://adwords.google.com/api/adwords/v11", :encodingstyle=>"document", :use=>"literal", :name=>"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"=>{:namespace=>nil, :ns=>"https://adwords.google.com/api/adwords/v11", :encodingstyle=>"document", :use=>"literal", :name=>"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"=>{:namespace=>nil, :ns=>"https://adwords.google.com/api/adwords/v11", :encodingstyle=>"document", :use=>"literal", :name=>"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"=>{:namespace=>nil, :ns=>"https://adwords.google.com/api/adwords/v11", :encodingstyle=>"document", :use=>"literal", :name=>"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"=>{:namespace=>nil, :ns=>"https://adwords.google.com/api/adwords/v11", :encodingstyle=>"document", :use=>"literal", :name=>"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"=>{:namespace=>nil, :ns=>"https://adwords.google.com/api/adwords/v11", :encodingstyle=>"document", :use=>"literal", :name=>"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"=>{:namespace=>nil, :ns=>"https://adwords.google.com/api/adwords/v11", :encodingstyle=>"document", :use=>"literal", :name=>"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"=>{:namespace=>nil, :ns=>"https://adwords.google.com/api/adwords/v11", :encodingstyle=>"document", :use=>"literal", :name=>"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"=>{:namespace=>nil, :ns=>"https://adwords.google.com/api/adwords/v11", :encodingstyle=>"document", :use=>"literal", :name=>"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"=>{:namespace=>nil, :ns=>"https://adwords.google.com/api/adwords/v11", :encodingstyle=>"document", :use=>"literal", :name=>"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"=>{:namespace=>nil, :ns=>"https://adwords.google.com/api/adwords/v11", :encodingstyle=>"document", :use=>"literal", :name=>"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"=>{:namespace=>nil, :ns=>"https://adwords.google.com/api/adwords/v11", :encodingstyle=>"document", :use=>"literal", :name=>"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"=>{:namespace=>nil, :ns=>"https://adwords.google.com/api/adwords/v11", :encodingstyle=>"document", :use=>"literal", :name=>"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"=>{:namespace=>nil, :ns=>"https://adwords.google.com/api/adwords/v11", :encodingstyle=>"document", :use=>"literal", :name=>"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"=>{:namespace=>nil, :ns=>"https://adwords.google.com/api/adwords/v11", :encodingstyle=>"document", :use=>"literal", :name=>"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"=>{:namespace=>nil, :ns=>"https://adwords.google.com/api/adwords/v11", :encodingstyle=>"document", :use=>"literal", :name=>"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"=>{:namespace=>nil, :ns=>"https://adwords.google.com/api/adwords/v11", :encodingstyle=>"document", :use=>"literal", :name=>"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"=>{:namespace=>nil, :ns=>"https://adwords.google.com/api/adwords/v11", :encodingstyle=>"document", :use=>"literal", :name=>"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"=>{:namespace=>nil, :ns=>"https://adwords.google.com/api/adwords/v11", :encodingstyle=>"document", :use=>"literal", :name=>"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"=>{:namespace=>nil, :ns=>"https://adwords.google.com/api/adwords/v11", :encodingstyle=>"document", :use=>"literal", :name=>"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"=>{:namespace=>nil, :ns=>"https://adwords.google.com/api/adwords/v11", :encodingstyle=>"document", :use=>"literal", :name=>"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"=>{:namespace=>nil, :ns=>"https://adwords.google.com/api/adwords/v11", :encodingstyle=>"document", :use=>"literal", :name=>"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"=>{:namespace=>nil, :ns=>"https://adwords.google.com/api/adwords/v11", :encodingstyle=>"document", :use=>"literal", :name=>"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"=>{:namespace=>nil, :ns=>"https://adwords.google.com/api/adwords/v11", :encodingstyle=>"document", :use=>"literal", :name=>"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