adwords4r 0.2

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 (55) hide show
  1. data/Authors.txt +2 -0
  2. data/ChangeLog.txt +4 -0
  3. data/Copying.txt +28 -0
  4. data/Licence.txt +10 -0
  5. data/Rakefile +190 -0
  6. data/Readme.txt +61 -0
  7. data/Todo.txt +9 -0
  8. data/examples/campaign.rb +36 -0
  9. data/examples/framework.rb +6 -0
  10. data/lib/adwords4r.rb +136 -0
  11. data/lib/adwords4r/credentials.rb +37 -0
  12. data/lib/adwords4r/services.rb +41 -0
  13. data/lib/adwords4r/v2/AccountService.rb +626 -0
  14. data/lib/adwords4r/v2/AccountServiceDriver.rb +153 -0
  15. data/lib/adwords4r/v2/AdGroupService.rb +315 -0
  16. data/lib/adwords4r/v2/AdGroupServiceDriver.rb +97 -0
  17. data/lib/adwords4r/v2/CampaignService.rb +515 -0
  18. data/lib/adwords4r/v2/CampaignServiceDriver.rb +111 -0
  19. data/lib/adwords4r/v2/CreativeService.rb +399 -0
  20. data/lib/adwords4r/v2/CreativeServiceDriver.rb +104 -0
  21. data/lib/adwords4r/v2/CriterionService.rb +413 -0
  22. data/lib/adwords4r/v2/CriterionServiceDriver.rb +97 -0
  23. data/lib/adwords4r/v2/InfoService.rb +258 -0
  24. data/lib/adwords4r/v2/InfoServiceDriver.rb +90 -0
  25. data/lib/adwords4r/v2/KeywordService.rb +541 -0
  26. data/lib/adwords4r/v2/KeywordServiceDriver.rb +125 -0
  27. data/lib/adwords4r/v2/ReportService.rb +567 -0
  28. data/lib/adwords4r/v2/ReportServiceDriver.rb +83 -0
  29. data/lib/adwords4r/v2/TrafficEstimatorService.rb +249 -0
  30. data/lib/adwords4r/v2/TrafficEstimatorServiceDriver.rb +62 -0
  31. data/lib/adwords4r/v2/default.rb +364 -0
  32. data/lib/adwords4r/v2/defaultDriver.rb +102 -0
  33. data/lib/adwords4r/v3/AccountService.rb +626 -0
  34. data/lib/adwords4r/v3/AccountServiceDriver.rb +153 -0
  35. data/lib/adwords4r/v3/AdGroupService.rb +318 -0
  36. data/lib/adwords4r/v3/AdGroupServiceDriver.rb +97 -0
  37. data/lib/adwords4r/v3/CampaignService.rb +529 -0
  38. data/lib/adwords4r/v3/CampaignServiceDriver.rb +111 -0
  39. data/lib/adwords4r/v3/CreativeService.rb +399 -0
  40. data/lib/adwords4r/v3/CreativeServiceDriver.rb +104 -0
  41. data/lib/adwords4r/v3/CriterionService.rb +413 -0
  42. data/lib/adwords4r/v3/CriterionServiceDriver.rb +97 -0
  43. data/lib/adwords4r/v3/InfoService.rb +258 -0
  44. data/lib/adwords4r/v3/InfoServiceDriver.rb +90 -0
  45. data/lib/adwords4r/v3/KeywordService.rb +541 -0
  46. data/lib/adwords4r/v3/KeywordServiceDriver.rb +125 -0
  47. data/lib/adwords4r/v3/KeywordToolService.rb +225 -0
  48. data/lib/adwords4r/v3/KeywordToolServiceDriver.rb +55 -0
  49. data/lib/adwords4r/v3/ReportService.rb +567 -0
  50. data/lib/adwords4r/v3/ReportServiceDriver.rb +83 -0
  51. data/lib/adwords4r/v3/TrafficEstimatorService.rb +263 -0
  52. data/lib/adwords4r/v3/TrafficEstimatorServiceDriver.rb +62 -0
  53. data/scripts/publish.rb +16 -0
  54. data/setup.rb +1585 -0
  55. metadata +92 -0
@@ -0,0 +1,153 @@
1
+ require 'adwords4r/v3/AccountService'
2
+
3
+ require 'soap/rpc/driver'
4
+ module AdWordsV3
5
+
6
+ class AccountService < ::SOAP::RPC::Driver
7
+ DefaultEndpointUrl = "https://adwords.google.com:443/api/adwords/v3/AccountService"
8
+ MappingRegistry = ::SOAP::Mapping::Registry.new
9
+
10
+ Methods = [
11
+ [ "",
12
+ "createAdWordsAccount",
13
+ [ ["in", "parameters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v3", "createAdWordsAccount"], true],
14
+ ["out", "parameters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v3", "createAdWordsAccountResponse"], true] ],
15
+ { :request_style => :document, :request_use => :literal,
16
+ :response_style => :document, :response_use => :literal }
17
+ ],
18
+ [ "",
19
+ "setLoginInfo",
20
+ [ ["in", "parameters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v3", "setLoginInfo"], true],
21
+ ["out", "parameters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v3", "setLoginInfoResponse"], true] ],
22
+ { :request_style => :document, :request_use => :literal,
23
+ :response_style => :document, :response_use => :literal }
24
+ ],
25
+ [ "",
26
+ "getAccountCurrency",
27
+ [ ["in", "parameters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v3", "getAccountCurrency"], true],
28
+ ["out", "parameters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v3", "getAccountCurrencyResponse"], true] ],
29
+ { :request_style => :document, :request_use => :literal,
30
+ :response_style => :document, :response_use => :literal }
31
+ ],
32
+ [ "",
33
+ "getCreditCard",
34
+ [ ["in", "parameters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v3", "getCreditCard"], true],
35
+ ["out", "parameters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v3", "getCreditCardResponse"], true] ],
36
+ { :request_style => :document, :request_use => :literal,
37
+ :response_style => :document, :response_use => :literal }
38
+ ],
39
+ [ "",
40
+ "getBillingAddress",
41
+ [ ["in", "parameters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v3", "getBillingAddress"], true],
42
+ ["out", "parameters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v3", "getBillingAddressResponse"], true] ],
43
+ { :request_style => :document, :request_use => :literal,
44
+ :response_style => :document, :response_use => :literal }
45
+ ],
46
+ [ "",
47
+ "setCreditCard",
48
+ [ ["in", "parameters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v3", "setCreditCard"], true],
49
+ ["out", "parameters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v3", "setCreditCardResponse"], true] ],
50
+ { :request_style => :document, :request_use => :literal,
51
+ :response_style => :document, :response_use => :literal }
52
+ ],
53
+ [ "",
54
+ "getDefaultAdsCoverage",
55
+ [ ["in", "parameters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v3", "getDefaultAdsCoverage"], true],
56
+ ["out", "parameters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v3", "getDefaultAdsCoverageResponse"], true] ],
57
+ { :request_style => :document, :request_use => :literal,
58
+ :response_style => :document, :response_use => :literal }
59
+ ],
60
+ [ "",
61
+ "setDefaultAdsCoverage",
62
+ [ ["in", "parameters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v3", "setDefaultAdsCoverage"], true],
63
+ ["out", "parameters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v3", "setDefaultAdsCoverageResponse"], true] ],
64
+ { :request_style => :document, :request_use => :literal,
65
+ :response_style => :document, :response_use => :literal }
66
+ ],
67
+ [ "",
68
+ "getLanguagePreference",
69
+ [ ["in", "parameters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v3", "getLanguagePreference"], true],
70
+ ["out", "parameters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v3", "getLanguagePreferenceResponse"], true] ],
71
+ { :request_style => :document, :request_use => :literal,
72
+ :response_style => :document, :response_use => :literal }
73
+ ],
74
+ [ "",
75
+ "setLanguagePreference",
76
+ [ ["in", "parameters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v3", "setLanguagePreference"], true],
77
+ ["out", "parameters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v3", "setLanguagePreferenceResponse"], true] ],
78
+ { :request_style => :document, :request_use => :literal,
79
+ :response_style => :document, :response_use => :literal }
80
+ ],
81
+ [ "",
82
+ "getEmailPromotionsPreferences",
83
+ [ ["in", "parameters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v3", "getEmailPromotionsPreferences"], true],
84
+ ["out", "parameters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v3", "getEmailPromotionsPreferencesResponse"], true] ],
85
+ { :request_style => :document, :request_use => :literal,
86
+ :response_style => :document, :response_use => :literal }
87
+ ],
88
+ [ "",
89
+ "setEmailPromotionsPreferences",
90
+ [ ["in", "parameters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v3", "setEmailPromotionsPreferences"], true],
91
+ ["out", "parameters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v3", "setEmailPromotionsPreferencesResponse"], true] ],
92
+ { :request_style => :document, :request_use => :literal,
93
+ :response_style => :document, :response_use => :literal }
94
+ ],
95
+ [ "",
96
+ "getPrimaryBusinessCategory",
97
+ [ ["in", "parameters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v3", "getPrimaryBusinessCategory"], true],
98
+ ["out", "parameters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v3", "getPrimaryBusinessCategoryResponse"], true] ],
99
+ { :request_style => :document, :request_use => :literal,
100
+ :response_style => :document, :response_use => :literal }
101
+ ],
102
+ [ "",
103
+ "setPrimaryBusinessCategory",
104
+ [ ["in", "parameters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v3", "setPrimaryBusinessCategory"], true],
105
+ ["out", "parameters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v3", "setPrimaryBusinessCategoryResponse"], true] ],
106
+ { :request_style => :document, :request_use => :literal,
107
+ :response_style => :document, :response_use => :literal }
108
+ ],
109
+ [ "",
110
+ "getTermsAndConditions",
111
+ [ ["in", "parameters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v3", "getTermsAndConditions"], true],
112
+ ["out", "parameters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v3", "getTermsAndConditionsResponse"], true] ],
113
+ { :request_style => :document, :request_use => :literal,
114
+ :response_style => :document, :response_use => :literal }
115
+ ],
116
+ [ "",
117
+ "getClientAccounts",
118
+ [ ["in", "parameters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v3", "getClientAccounts"], true],
119
+ ["out", "parameters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v3", "getClientAccountsResponse"], true] ],
120
+ { :request_style => :document, :request_use => :literal,
121
+ :response_style => :document, :response_use => :literal }
122
+ ]
123
+ ]
124
+
125
+ def initialize(endpoint_url = nil)
126
+ endpoint_url ||= DefaultEndpointUrl
127
+ super(endpoint_url, nil)
128
+ self.mapping_registry = MappingRegistry
129
+ init_methods
130
+ end
131
+
132
+ private
133
+
134
+ def init_methods
135
+ Methods.each do |definitions|
136
+ opt = definitions.last
137
+ if opt[:request_style] == :document
138
+ add_document_operation(*definitions)
139
+ else
140
+ add_rpc_operation(*definitions)
141
+ qname = definitions[0]
142
+ name = definitions[2]
143
+ if qname.name != name and qname.name.capitalize == name.capitalize
144
+ ::SOAP::Mapping.define_singleton_method(self, qname.name) do |*arg|
145
+ __send__(name, *arg)
146
+ end
147
+ end
148
+ end
149
+ end
150
+ end
151
+ end
152
+
153
+ end
@@ -0,0 +1,318 @@
1
+ require 'xsd/qname'
2
+
3
+ # {https://adwords.google.com/api/adwords/v3}getAdGroupList
4
+ class GetAdGroupList < ::Array
5
+ @@schema_element = [
6
+ ["adgroupIDs", ["SOAP::SOAPInt[]", XSD::QName.new("https://adwords.google.com/api/adwords/v3", "adgroupIDs")]]
7
+ ]
8
+ end
9
+
10
+ # {https://adwords.google.com/api/adwords/v3}getAdGroupListResponse
11
+ class GetAdGroupListResponse < ::Array
12
+ @@schema_element = [
13
+ ["getAdGroupListReturn", ["AdGroup[]", XSD::QName.new("https://adwords.google.com/api/adwords/v3", "getAdGroupListReturn")]]
14
+ ]
15
+ end
16
+
17
+ # {https://adwords.google.com/api/adwords/v3}getAllAdGroups
18
+ class GetAllAdGroups
19
+ @@schema_type = "getAllAdGroups"
20
+ @@schema_ns = "https://adwords.google.com/api/adwords/v3"
21
+ @@schema_qualified = "true"
22
+ @@schema_element = [
23
+ ["campaignID", "SOAP::SOAPInt"]
24
+ ]
25
+
26
+ attr_accessor :campaignID
27
+
28
+ def initialize(campaignID = nil)
29
+ @campaignID = campaignID
30
+ end
31
+ end
32
+
33
+ # {https://adwords.google.com/api/adwords/v3}getAllAdGroupsResponse
34
+ class GetAllAdGroupsResponse < ::Array
35
+ @@schema_element = [
36
+ ["getAllAdGroupsReturn", ["AdGroup[]", XSD::QName.new("https://adwords.google.com/api/adwords/v3", "getAllAdGroupsReturn")]]
37
+ ]
38
+ end
39
+
40
+ # {https://adwords.google.com/api/adwords/v3}getAdGroup
41
+ class GetAdGroup
42
+ @@schema_type = "getAdGroup"
43
+ @@schema_ns = "https://adwords.google.com/api/adwords/v3"
44
+ @@schema_qualified = "true"
45
+ @@schema_element = [
46
+ ["adGroupId", "SOAP::SOAPInt"]
47
+ ]
48
+
49
+ attr_accessor :adGroupId
50
+
51
+ def initialize(adGroupId = nil)
52
+ @adGroupId = adGroupId
53
+ end
54
+ end
55
+
56
+ # {https://adwords.google.com/api/adwords/v3}getAdGroupResponse
57
+ class GetAdGroupResponse
58
+ @@schema_type = "getAdGroupResponse"
59
+ @@schema_ns = "https://adwords.google.com/api/adwords/v3"
60
+ @@schema_qualified = "true"
61
+ @@schema_element = [
62
+ ["getAdGroupReturn", "AdGroup"]
63
+ ]
64
+
65
+ attr_accessor :getAdGroupReturn
66
+
67
+ def initialize(getAdGroupReturn = nil)
68
+ @getAdGroupReturn = getAdGroupReturn
69
+ end
70
+ end
71
+
72
+ # {https://adwords.google.com/api/adwords/v3}addAdGroup
73
+ class AddAdGroup
74
+ @@schema_type = "addAdGroup"
75
+ @@schema_ns = "https://adwords.google.com/api/adwords/v3"
76
+ @@schema_qualified = "true"
77
+ @@schema_element = [
78
+ ["campaignID", "SOAP::SOAPInt"],
79
+ ["newData", "AdGroup"]
80
+ ]
81
+
82
+ attr_accessor :campaignID
83
+ attr_accessor :newData
84
+
85
+ def initialize(campaignID = nil, newData = nil)
86
+ @campaignID = campaignID
87
+ @newData = newData
88
+ end
89
+ end
90
+
91
+ # {https://adwords.google.com/api/adwords/v3}addAdGroupResponse
92
+ class AddAdGroupResponse
93
+ @@schema_type = "addAdGroupResponse"
94
+ @@schema_ns = "https://adwords.google.com/api/adwords/v3"
95
+ @@schema_qualified = "true"
96
+ @@schema_element = [
97
+ ["addAdGroupReturn", "AdGroup"]
98
+ ]
99
+
100
+ attr_accessor :addAdGroupReturn
101
+
102
+ def initialize(addAdGroupReturn = nil)
103
+ @addAdGroupReturn = addAdGroupReturn
104
+ end
105
+ end
106
+
107
+ # {https://adwords.google.com/api/adwords/v3}addAdGroupList
108
+ class AddAdGroupList
109
+ @@schema_type = "addAdGroupList"
110
+ @@schema_ns = "https://adwords.google.com/api/adwords/v3"
111
+ @@schema_qualified = "true"
112
+ @@schema_element = [
113
+ ["campaignID", "SOAP::SOAPInt"],
114
+ ["newData", "AdGroup[]"]
115
+ ]
116
+
117
+ attr_accessor :campaignID
118
+ attr_accessor :newData
119
+
120
+ def initialize(campaignID = nil, newData = [])
121
+ @campaignID = campaignID
122
+ @newData = newData
123
+ end
124
+ end
125
+
126
+ # {https://adwords.google.com/api/adwords/v3}addAdGroupListResponse
127
+ class AddAdGroupListResponse < ::Array
128
+ @@schema_element = [
129
+ ["addAdGroupListReturn", ["AdGroup[]", XSD::QName.new("https://adwords.google.com/api/adwords/v3", "addAdGroupListReturn")]]
130
+ ]
131
+ end
132
+
133
+ # {https://adwords.google.com/api/adwords/v3}updateAdGroup
134
+ class UpdateAdGroup
135
+ @@schema_type = "updateAdGroup"
136
+ @@schema_ns = "https://adwords.google.com/api/adwords/v3"
137
+ @@schema_qualified = "true"
138
+ @@schema_element = [
139
+ ["changedData", "AdGroup"]
140
+ ]
141
+
142
+ attr_accessor :changedData
143
+
144
+ def initialize(changedData = nil)
145
+ @changedData = changedData
146
+ end
147
+ end
148
+
149
+ # {https://adwords.google.com/api/adwords/v3}updateAdGroupResponse
150
+ class UpdateAdGroupResponse
151
+ @@schema_type = "updateAdGroupResponse"
152
+ @@schema_ns = "https://adwords.google.com/api/adwords/v3"
153
+ @@schema_qualified = "true"
154
+ @@schema_element = []
155
+
156
+ def initialize
157
+ end
158
+ end
159
+
160
+ # {https://adwords.google.com/api/adwords/v3}updateAdGroupList
161
+ class UpdateAdGroupList < ::Array
162
+ @@schema_element = [
163
+ ["changedData", ["AdGroup[]", XSD::QName.new("https://adwords.google.com/api/adwords/v3", "changedData")]]
164
+ ]
165
+ end
166
+
167
+ # {https://adwords.google.com/api/adwords/v3}updateAdGroupListResponse
168
+ class UpdateAdGroupListResponse
169
+ @@schema_type = "updateAdGroupListResponse"
170
+ @@schema_ns = "https://adwords.google.com/api/adwords/v3"
171
+ @@schema_qualified = "true"
172
+ @@schema_element = []
173
+
174
+ def initialize
175
+ end
176
+ end
177
+
178
+ # {https://adwords.google.com/api/adwords/v3}getAdGroupStats
179
+ class GetAdGroupStats
180
+ @@schema_type = "getAdGroupStats"
181
+ @@schema_ns = "https://adwords.google.com/api/adwords/v3"
182
+ @@schema_qualified = "true"
183
+ @@schema_element = [
184
+ ["campaignId", "SOAP::SOAPInt"],
185
+ ["adGroupIds", "SOAP::SOAPInt[]"],
186
+ ["start", "SOAP::SOAPDateTime"],
187
+ ["v_end", ["SOAP::SOAPDateTime", XSD::QName.new("https://adwords.google.com/api/adwords/v3", "end")]]
188
+ ]
189
+
190
+ attr_accessor :campaignId
191
+ attr_accessor :adGroupIds
192
+ attr_accessor :start
193
+
194
+ def end
195
+ @v_end
196
+ end
197
+
198
+ def end=(value)
199
+ @v_end = value
200
+ end
201
+
202
+ def initialize(campaignId = nil, adGroupIds = [], start = nil, v_end = nil)
203
+ @campaignId = campaignId
204
+ @adGroupIds = adGroupIds
205
+ @start = start
206
+ @v_end = v_end
207
+ end
208
+ end
209
+
210
+ # {https://adwords.google.com/api/adwords/v3}getAdGroupStatsResponse
211
+ class GetAdGroupStatsResponse < ::Array
212
+ @@schema_element = [
213
+ ["getAdGroupStatsReturn", ["StatsRecord[]", XSD::QName.new("https://adwords.google.com/api/adwords/v3", "getAdGroupStatsReturn")]]
214
+ ]
215
+ end
216
+
217
+ # {https://adwords.google.com/api/adwords/v3}ApiException
218
+ class ApiException
219
+ @@schema_type = "ApiException"
220
+ @@schema_ns = "https://adwords.google.com/api/adwords/v3"
221
+ @@schema_element = [
222
+ ["code", "SOAP::SOAPInt"],
223
+ ["internal", "SOAP::SOAPBoolean"],
224
+ ["message", "SOAP::SOAPString"],
225
+ ["trigger", "SOAP::SOAPString"],
226
+ ["violations", "SOAP::SOAPString"]
227
+ ]
228
+
229
+ attr_accessor :code
230
+ attr_accessor :internal
231
+ attr_accessor :message
232
+ attr_accessor :trigger
233
+ attr_accessor :violations
234
+
235
+ def initialize(code = nil, internal = nil, message = nil, trigger = nil, violations = nil)
236
+ @code = code
237
+ @internal = internal
238
+ @message = message
239
+ @trigger = trigger
240
+ @violations = violations
241
+ end
242
+ end
243
+
244
+ # {https://adwords.google.com/api/adwords/v3}AdGroup
245
+ class AdGroup
246
+ @@schema_type = "AdGroup"
247
+ @@schema_ns = "https://adwords.google.com/api/adwords/v3"
248
+ @@schema_element = [
249
+ ["campaignId", "SOAP::SOAPInt"],
250
+ ["id", "SOAP::SOAPInt"],
251
+ ["maxContentCpc", "SOAP::SOAPLong"],
252
+ ["maxCpc", "SOAP::SOAPLong"],
253
+ ["maxCpm", "SOAP::SOAPLong"],
254
+ ["name", "SOAP::SOAPString"],
255
+ ["status", "AdGroupStatus"]
256
+ ]
257
+
258
+ attr_accessor :campaignId
259
+ attr_accessor :id
260
+ attr_accessor :maxContentCpc
261
+ attr_accessor :maxCpc
262
+ attr_accessor :maxCpm
263
+ attr_accessor :name
264
+ attr_accessor :status
265
+
266
+ def initialize(campaignId = nil, id = nil, maxContentCpc = nil, maxCpc = nil, maxCpm = nil, name = nil, status = nil)
267
+ @campaignId = campaignId
268
+ @id = id
269
+ @maxContentCpc = maxContentCpc
270
+ @maxCpc = maxCpc
271
+ @maxCpm = maxCpm
272
+ @name = name
273
+ @status = status
274
+ end
275
+ end
276
+
277
+ # {https://adwords.google.com/api/adwords/v3}StatsRecord
278
+ class StatsRecord
279
+ @@schema_type = "StatsRecord"
280
+ @@schema_ns = "https://adwords.google.com/api/adwords/v3"
281
+ @@schema_element = [
282
+ ["averagePosition", "SOAP::SOAPDouble"],
283
+ ["clicks", "SOAP::SOAPLong"],
284
+ ["conversionRate", "SOAP::SOAPDouble"],
285
+ ["conversions", "SOAP::SOAPLong"],
286
+ ["cost", "SOAP::SOAPLong"],
287
+ ["id", "SOAP::SOAPLong"],
288
+ ["impressions", "SOAP::SOAPLong"]
289
+ ]
290
+
291
+ attr_accessor :averagePosition
292
+ attr_accessor :clicks
293
+ attr_accessor :conversionRate
294
+ attr_accessor :conversions
295
+ attr_accessor :cost
296
+ attr_accessor :id
297
+ attr_accessor :impressions
298
+
299
+ def initialize(averagePosition = nil, clicks = nil, conversionRate = nil, conversions = nil, cost = nil, id = nil, impressions = nil)
300
+ @averagePosition = averagePosition
301
+ @clicks = clicks
302
+ @conversionRate = conversionRate
303
+ @conversions = conversions
304
+ @cost = cost
305
+ @id = id
306
+ @impressions = impressions
307
+ end
308
+ end
309
+
310
+ # {https://adwords.google.com/api/adwords/v3}AdGroupStatus
311
+ class AdGroupStatus < ::String
312
+ @@schema_type = "AdGroupStatus"
313
+ @@schema_ns = "https://adwords.google.com/api/adwords/v3"
314
+
315
+ Deleted = AdGroupStatus.new("Deleted")
316
+ Enabled = AdGroupStatus.new("Enabled")
317
+ Paused = AdGroupStatus.new("Paused")
318
+ end