adwords4r 0.5 → 0.6

Sign up to get free protection for your applications and to get access to all the features.
Files changed (57) hide show
  1. data/ChangeLog.txt +4 -0
  2. data/Rakefile +10 -10
  3. data/Readme.txt +78 -74
  4. data/Todo.txt +12 -0
  5. data/adwords.properties +2 -0
  6. data/examples/campaign.rb +1 -2
  7. data/examples/keyword_tool_demo.rb +27 -0
  8. data/examples/sandbox.rb +30 -0
  9. data/lib/adwords4r.rb +7 -1
  10. data/lib/adwords4r/credentials.rb +5 -3
  11. data/lib/adwords4r/services.rb +2 -2
  12. data/lib/adwords4r/v4/CreativeService.rb +0 -33
  13. data/lib/adwords4r/{v3 → v5}/AccountService.rb +311 -86
  14. data/lib/adwords4r/{v3 → v5}/AccountServiceDriver.rb +69 -34
  15. data/lib/adwords4r/{v3 → v5}/AdGroupService.rb +90 -58
  16. data/lib/adwords4r/{v3 → v5}/AdGroupServiceDriver.rb +18 -18
  17. data/lib/adwords4r/{v3 → v5}/CampaignService.rb +121 -89
  18. data/lib/adwords4r/{v3 → v5}/CampaignServiceDriver.rb +22 -22
  19. data/lib/adwords4r/{v3 → v5}/CreativeService.rb +84 -81
  20. data/lib/adwords4r/{v2 → v5}/CreativeServiceDriver.rb +20 -20
  21. data/lib/adwords4r/{v3 → v5}/CriterionService.rb +96 -64
  22. data/lib/adwords4r/{v3 → v5}/CriterionServiceDriver.rb +18 -18
  23. data/lib/adwords4r/{v3 → v5}/InfoService.rb +70 -34
  24. data/lib/adwords4r/{v2 → v5}/InfoServiceDriver.rb +16 -16
  25. data/lib/adwords4r/{v3 → v5}/KeywordToolService.rb +62 -26
  26. data/lib/adwords4r/{v3 → v5}/KeywordToolServiceDriver.rb +6 -6
  27. data/lib/adwords4r/v5/ReportService.rb +788 -0
  28. data/lib/adwords4r/{v2 → v5}/ReportServiceDriver.rb +14 -14
  29. data/lib/adwords4r/{v3 → v5}/TrafficEstimatorService.rb +95 -50
  30. data/lib/adwords4r/{v2 → v5}/TrafficEstimatorServiceDriver.rb +8 -8
  31. metadata +23 -46
  32. data/examples/report_demo.rb +0 -42
  33. data/lib/adwords4r/registry.rb +0 -31
  34. data/lib/adwords4r/v2/AccountService.rb +0 -628
  35. data/lib/adwords4r/v2/AccountServiceDriver.rb +0 -153
  36. data/lib/adwords4r/v2/AdGroupService.rb +0 -317
  37. data/lib/adwords4r/v2/AdGroupServiceDriver.rb +0 -97
  38. data/lib/adwords4r/v2/CampaignService.rb +0 -517
  39. data/lib/adwords4r/v2/CampaignServiceDriver.rb +0 -111
  40. data/lib/adwords4r/v2/CreativeService.rb +0 -401
  41. data/lib/adwords4r/v2/CriterionService.rb +0 -415
  42. data/lib/adwords4r/v2/CriterionServiceDriver.rb +0 -97
  43. data/lib/adwords4r/v2/InfoService.rb +0 -260
  44. data/lib/adwords4r/v2/KeywordService.rb +0 -543
  45. data/lib/adwords4r/v2/KeywordServiceDriver.rb +0 -125
  46. data/lib/adwords4r/v2/ReportService.rb +0 -569
  47. data/lib/adwords4r/v2/TrafficEstimatorService.rb +0 -251
  48. data/lib/adwords4r/v2/default.rb +0 -364
  49. data/lib/adwords4r/v2/defaultDriver.rb +0 -102
  50. data/lib/adwords4r/v3/CreativeServiceDriver.rb +0 -104
  51. data/lib/adwords4r/v3/InfoServiceDriver.rb +0 -90
  52. data/lib/adwords4r/v3/KeywordService.rb +0 -543
  53. data/lib/adwords4r/v3/KeywordServiceDriver.rb +0 -125
  54. data/lib/adwords4r/v3/ReportService.rb +0 -569
  55. data/lib/adwords4r/v3/ReportServiceDriver.rb +0 -83
  56. data/lib/adwords4r/v3/TrafficEstimatorServiceDriver.rb +0 -62
  57. data/scripts/publish.rb +0 -16
@@ -1,24 +1,24 @@
1
1
  module AdWords
2
- require 'adwords4r/v3/KeywordToolService'
2
+ require 'adwords4r/v5/KeywordToolService'
3
3
 
4
4
  require 'soap/rpc/driver'
5
5
 
6
6
  class KeywordToolInterface < ::SOAP::RPC::Driver
7
- DefaultEndpointUrl = "https://adwords.google.com/api/adwords/v3/KeywordToolService"
7
+ DefaultEndpointUrl = "https://adwords.google.com/api/adwords/v5/KeywordToolService"
8
8
  MappingRegistry = ::SOAP::Mapping::Registry.new
9
9
 
10
10
  Methods = [
11
11
  [ "",
12
12
  "getKeywordVariations",
13
- [ ["in", "parameters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v3", "getKeywordVariations"], true],
14
- ["out", "paramteters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v3", "getKeywordVariationsResponse"], true] ],
13
+ [ ["in", "parameters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v5", "getKeywordVariations"], true],
14
+ ["out", "paramteters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v5", "getKeywordVariationsResponse"], true] ],
15
15
  { :request_style => :document, :request_use => :literal,
16
16
  :response_style => :document, :response_use => :literal }
17
17
  ],
18
18
  [ "",
19
19
  "getKeywordsFromSite",
20
- [ ["in", "parameters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v3", "getKeywordsFromSite"], true],
21
- ["out", "parameters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v3", "getKeywordsFromSiteResponse"], true] ],
20
+ [ ["in", "parameters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v5", "getKeywordsFromSite"], true],
21
+ ["out", "parameters", ["::SOAP::SOAPElement", "https://adwords.google.com/api/adwords/v5", "getKeywordsFromSiteResponse"], true] ],
22
22
  { :request_style => :document, :request_use => :literal,
23
23
  :response_style => :document, :response_use => :literal }
24
24
  ]
@@ -0,0 +1,788 @@
1
+ module AdWords
2
+ require 'xsd/qname'
3
+
4
+ # {https://adwords.google.com/api/adwords/v5}scheduleReportJob
5
+ class ScheduleReportJob
6
+ @@schema_type = "scheduleReportJob"
7
+ @@schema_ns = "https://adwords.google.com/api/adwords/v5"
8
+ @@schema_qualified = "true"
9
+ @@schema_element = [
10
+ ["job", "ReportJob"]
11
+ ]
12
+
13
+ attr_accessor :job
14
+
15
+ def initialize(job = nil)
16
+ @job = job
17
+ end
18
+ end
19
+
20
+ # {https://adwords.google.com/api/adwords/v5}scheduleReportJobResponse
21
+ class ScheduleReportJobResponse
22
+ @@schema_type = "scheduleReportJobResponse"
23
+ @@schema_ns = "https://adwords.google.com/api/adwords/v5"
24
+ @@schema_qualified = "true"
25
+ @@schema_element = [
26
+ ["scheduleReportJobReturn", "SOAP::SOAPLong"]
27
+ ]
28
+
29
+ attr_accessor :scheduleReportJobReturn
30
+
31
+ def initialize(scheduleReportJobReturn = nil)
32
+ @scheduleReportJobReturn = scheduleReportJobReturn
33
+ end
34
+ end
35
+
36
+ # {https://adwords.google.com/api/adwords/v5}getReportJobStatus
37
+ class GetReportJobStatus
38
+ @@schema_type = "getReportJobStatus"
39
+ @@schema_ns = "https://adwords.google.com/api/adwords/v5"
40
+ @@schema_qualified = "true"
41
+ @@schema_element = [
42
+ ["reportJobId", "SOAP::SOAPLong"]
43
+ ]
44
+
45
+ attr_accessor :reportJobId
46
+
47
+ def initialize(reportJobId = nil)
48
+ @reportJobId = reportJobId
49
+ end
50
+ end
51
+
52
+ # {https://adwords.google.com/api/adwords/v5}getReportJobStatusResponse
53
+ class GetReportJobStatusResponse
54
+ @@schema_type = "getReportJobStatusResponse"
55
+ @@schema_ns = "https://adwords.google.com/api/adwords/v5"
56
+ @@schema_qualified = "true"
57
+ @@schema_element = [
58
+ ["getReportJobStatusReturn", "SOAP::SOAPString"]
59
+ ]
60
+
61
+ attr_accessor :getReportJobStatusReturn
62
+
63
+ def initialize(getReportJobStatusReturn = nil)
64
+ @getReportJobStatusReturn = getReportJobStatusReturn
65
+ end
66
+ end
67
+
68
+ # {https://adwords.google.com/api/adwords/v5}getReportDownloadUrl
69
+ class GetReportDownloadUrl
70
+ @@schema_type = "getReportDownloadUrl"
71
+ @@schema_ns = "https://adwords.google.com/api/adwords/v5"
72
+ @@schema_qualified = "true"
73
+ @@schema_element = [
74
+ ["reportJobId", "SOAP::SOAPLong"]
75
+ ]
76
+
77
+ attr_accessor :reportJobId
78
+
79
+ def initialize(reportJobId = nil)
80
+ @reportJobId = reportJobId
81
+ end
82
+ end
83
+
84
+ # {https://adwords.google.com/api/adwords/v5}getReportDownloadUrlResponse
85
+ class GetReportDownloadUrlResponse
86
+ @@schema_type = "getReportDownloadUrlResponse"
87
+ @@schema_ns = "https://adwords.google.com/api/adwords/v5"
88
+ @@schema_qualified = "true"
89
+ @@schema_element = [
90
+ ["getReportDownloadUrlReturn", "SOAP::SOAPString"]
91
+ ]
92
+
93
+ attr_accessor :getReportDownloadUrlReturn
94
+
95
+ def initialize(getReportDownloadUrlReturn = nil)
96
+ @getReportDownloadUrlReturn = getReportDownloadUrlReturn
97
+ end
98
+ end
99
+
100
+ # {https://adwords.google.com/api/adwords/v5}getGzipReportDownloadUrl
101
+ class GetGzipReportDownloadUrl
102
+ @@schema_type = "getGzipReportDownloadUrl"
103
+ @@schema_ns = "https://adwords.google.com/api/adwords/v5"
104
+ @@schema_qualified = "true"
105
+ @@schema_element = [
106
+ ["reportJobId", "SOAP::SOAPLong"]
107
+ ]
108
+
109
+ attr_accessor :reportJobId
110
+
111
+ def initialize(reportJobId = nil)
112
+ @reportJobId = reportJobId
113
+ end
114
+ end
115
+
116
+ # {https://adwords.google.com/api/adwords/v5}getGzipReportDownloadUrlResponse
117
+ class GetGzipReportDownloadUrlResponse
118
+ @@schema_type = "getGzipReportDownloadUrlResponse"
119
+ @@schema_ns = "https://adwords.google.com/api/adwords/v5"
120
+ @@schema_qualified = "true"
121
+ @@schema_element = [
122
+ ["getGzipReportDownloadUrlReturn", "SOAP::SOAPString"]
123
+ ]
124
+
125
+ attr_accessor :getGzipReportDownloadUrlReturn
126
+
127
+ def initialize(getGzipReportDownloadUrlReturn = nil)
128
+ @getGzipReportDownloadUrlReturn = getGzipReportDownloadUrlReturn
129
+ end
130
+ end
131
+
132
+ # {https://adwords.google.com/api/adwords/v5}getAllJobs
133
+ class GetAllJobs
134
+ @@schema_type = "getAllJobs"
135
+ @@schema_ns = "https://adwords.google.com/api/adwords/v5"
136
+ @@schema_qualified = "true"
137
+ @@schema_element = []
138
+
139
+ def initialize
140
+ end
141
+ end
142
+
143
+ # {https://adwords.google.com/api/adwords/v5}getAllJobsResponse
144
+ class GetAllJobsResponse < ::Array
145
+ @@schema_element = [
146
+ ["getAllJobsReturn", ["ReportJob[]", XSD::QName.new("https://adwords.google.com/api/adwords/v5", "getAllJobsReturn")]]
147
+ ]
148
+ end
149
+
150
+ # {https://adwords.google.com/api/adwords/v5}deleteReport
151
+ class DeleteReport
152
+ @@schema_type = "deleteReport"
153
+ @@schema_ns = "https://adwords.google.com/api/adwords/v5"
154
+ @@schema_qualified = "true"
155
+ @@schema_element = [
156
+ ["reportJobId", "SOAP::SOAPLong"]
157
+ ]
158
+
159
+ attr_accessor :reportJobId
160
+
161
+ def initialize(reportJobId = nil)
162
+ @reportJobId = reportJobId
163
+ end
164
+ end
165
+
166
+ # {https://adwords.google.com/api/adwords/v5}deleteReportResponse
167
+ class DeleteReportResponse
168
+ @@schema_type = "deleteReportResponse"
169
+ @@schema_ns = "https://adwords.google.com/api/adwords/v5"
170
+ @@schema_qualified = "true"
171
+ @@schema_element = []
172
+
173
+ def initialize
174
+ end
175
+ end
176
+
177
+ # {https://adwords.google.com/api/adwords/v5}ApiException
178
+ class ApiException
179
+ @@schema_type = "ApiException"
180
+ @@schema_ns = "https://adwords.google.com/api/adwords/v5"
181
+ @@schema_element = [
182
+ ["code", "SOAP::SOAPInt"],
183
+ ["internal", "SOAP::SOAPBoolean"],
184
+ ["message", "SOAP::SOAPString"],
185
+ ["trigger", "SOAP::SOAPString"],
186
+ ["errors", "ApiError[]"]
187
+ ]
188
+
189
+ attr_accessor :code
190
+ attr_accessor :internal
191
+ attr_accessor :message
192
+ attr_accessor :trigger
193
+ attr_accessor :errors
194
+
195
+ def initialize(code = nil, internal = nil, message = nil, trigger = nil, errors = [])
196
+ @code = code
197
+ @internal = internal
198
+ @message = message
199
+ @trigger = trigger
200
+ @errors = errors
201
+ end
202
+ end
203
+
204
+ # {https://adwords.google.com/api/adwords/v5}ApiError
205
+ class ApiError
206
+ @@schema_type = "ApiError"
207
+ @@schema_ns = "https://adwords.google.com/api/adwords/v5"
208
+ @@schema_element = [
209
+ ["index", "SOAP::SOAPInt"],
210
+ ["field", "SOAP::SOAPString"],
211
+ ["textIndex", "SOAP::SOAPInt"],
212
+ ["textLength", "SOAP::SOAPInt"],
213
+ ["trigger", "SOAP::SOAPString"],
214
+ ["code", "SOAP::SOAPInt"],
215
+ ["isExemptable", "SOAP::SOAPBoolean"],
216
+ ["detail", "SOAP::SOAPString"]
217
+ ]
218
+
219
+ attr_accessor :index
220
+ attr_accessor :field
221
+ attr_accessor :textIndex
222
+ attr_accessor :textLength
223
+ attr_accessor :trigger
224
+ attr_accessor :code
225
+ attr_accessor :isExemptable
226
+ attr_accessor :detail
227
+
228
+ def initialize(index = nil, field = nil, textIndex = nil, textLength = nil, trigger = nil, code = nil, isExemptable = nil, detail = nil)
229
+ @index = index
230
+ @field = field
231
+ @textIndex = textIndex
232
+ @textLength = textLength
233
+ @trigger = trigger
234
+ @code = code
235
+ @isExemptable = isExemptable
236
+ @detail = detail
237
+ end
238
+ end
239
+
240
+ # {https://adwords.google.com/api/adwords/v5}ReportJob
241
+ class ReportJob
242
+ @@schema_type = "ReportJob"
243
+ @@schema_ns = "https://adwords.google.com/api/adwords/v5"
244
+ @@schema_element = [
245
+ ["aggregationType", "SOAP::SOAPString"],
246
+ ["clientEmails", "SOAP::SOAPString[]"],
247
+ ["crossClient", "SOAP::SOAPBoolean"],
248
+ ["endDay", "SOAP::SOAPDate"],
249
+ ["id", "SOAP::SOAPLong"],
250
+ ["name", "SOAP::SOAPString"],
251
+ ["startDay", "SOAP::SOAPDate"],
252
+ ["status", "SOAP::SOAPString"]
253
+ ]
254
+
255
+ attr_accessor :aggregationType
256
+ attr_accessor :clientEmails
257
+ attr_accessor :crossClient
258
+ attr_accessor :endDay
259
+ attr_accessor :id
260
+ attr_accessor :name
261
+ attr_accessor :startDay
262
+ attr_accessor :status
263
+
264
+ def initialize(aggregationType = nil, clientEmails = [], crossClient = nil, endDay = nil, id = nil, name = nil, startDay = nil, status = nil)
265
+ @aggregationType = aggregationType
266
+ @clientEmails = clientEmails
267
+ @crossClient = crossClient
268
+ @endDay = endDay
269
+ @id = id
270
+ @name = name
271
+ @startDay = startDay
272
+ @status = status
273
+ end
274
+ end
275
+
276
+ # {https://adwords.google.com/api/adwords/v5}KeywordReportJob
277
+ class KeywordReportJob
278
+ @@schema_type = "KeywordReportJob"
279
+ @@schema_ns = "https://adwords.google.com/api/adwords/v5"
280
+ @@schema_element = [
281
+ ["aggregationType", "SOAP::SOAPString"],
282
+ ["clientEmails", "SOAP::SOAPString[]"],
283
+ ["crossClient", "SOAP::SOAPBoolean"],
284
+ ["endDay", "SOAP::SOAPDate"],
285
+ ["id", "SOAP::SOAPLong"],
286
+ ["name", "SOAP::SOAPString"],
287
+ ["startDay", "SOAP::SOAPDate"],
288
+ ["status", "SOAP::SOAPString"],
289
+ ["adWordsType", "SOAP::SOAPString"],
290
+ ["campaigns", "SOAP::SOAPInt[]"],
291
+ ["keywordStatuses", "SOAP::SOAPString[]"],
292
+ ["keywordType", "SOAP::SOAPString"],
293
+ ["includeZeroImpression", "SOAP::SOAPBoolean"]
294
+ ]
295
+
296
+ attr_accessor :aggregationType
297
+ attr_accessor :clientEmails
298
+ attr_accessor :crossClient
299
+ attr_accessor :endDay
300
+ attr_accessor :id
301
+ attr_accessor :name
302
+ attr_accessor :startDay
303
+ attr_accessor :status
304
+ attr_accessor :adWordsType
305
+ attr_accessor :campaigns
306
+ attr_accessor :keywordStatuses
307
+ attr_accessor :keywordType
308
+ attr_accessor :includeZeroImpression
309
+
310
+ def initialize(aggregationType = nil, clientEmails = [], crossClient = nil, endDay = nil, id = nil, name = nil, startDay = nil, status = nil, adWordsType = nil, campaigns = [], keywordStatuses = [], keywordType = nil, includeZeroImpression = nil)
311
+ @aggregationType = aggregationType
312
+ @clientEmails = clientEmails
313
+ @crossClient = crossClient
314
+ @endDay = endDay
315
+ @id = id
316
+ @name = name
317
+ @startDay = startDay
318
+ @status = status
319
+ @adWordsType = adWordsType
320
+ @campaigns = campaigns
321
+ @keywordStatuses = keywordStatuses
322
+ @keywordType = keywordType
323
+ @includeZeroImpression = includeZeroImpression
324
+ end
325
+ end
326
+
327
+ # {https://adwords.google.com/api/adwords/v5}AdTextReportJob
328
+ class AdTextReportJob
329
+ @@schema_type = "AdTextReportJob"
330
+ @@schema_ns = "https://adwords.google.com/api/adwords/v5"
331
+ @@schema_element = [
332
+ ["aggregationType", "SOAP::SOAPString"],
333
+ ["clientEmails", "SOAP::SOAPString[]"],
334
+ ["crossClient", "SOAP::SOAPBoolean"],
335
+ ["endDay", "SOAP::SOAPDate"],
336
+ ["id", "SOAP::SOAPLong"],
337
+ ["name", "SOAP::SOAPString"],
338
+ ["startDay", "SOAP::SOAPDate"],
339
+ ["status", "SOAP::SOAPString"],
340
+ ["adWordsType", "SOAP::SOAPString"],
341
+ ["campaigns", "SOAP::SOAPInt[]"]
342
+ ]
343
+
344
+ attr_accessor :aggregationType
345
+ attr_accessor :clientEmails
346
+ attr_accessor :crossClient
347
+ attr_accessor :endDay
348
+ attr_accessor :id
349
+ attr_accessor :name
350
+ attr_accessor :startDay
351
+ attr_accessor :status
352
+ attr_accessor :adWordsType
353
+ attr_accessor :campaigns
354
+
355
+ def initialize(aggregationType = nil, clientEmails = [], crossClient = nil, endDay = nil, id = nil, name = nil, startDay = nil, status = nil, adWordsType = nil, campaigns = [])
356
+ @aggregationType = aggregationType
357
+ @clientEmails = clientEmails
358
+ @crossClient = crossClient
359
+ @endDay = endDay
360
+ @id = id
361
+ @name = name
362
+ @startDay = startDay
363
+ @status = status
364
+ @adWordsType = adWordsType
365
+ @campaigns = campaigns
366
+ end
367
+ end
368
+
369
+ # {https://adwords.google.com/api/adwords/v5}UrlReportJob
370
+ class UrlReportJob
371
+ @@schema_type = "UrlReportJob"
372
+ @@schema_ns = "https://adwords.google.com/api/adwords/v5"
373
+ @@schema_element = [
374
+ ["aggregationType", "SOAP::SOAPString"],
375
+ ["clientEmails", "SOAP::SOAPString[]"],
376
+ ["crossClient", "SOAP::SOAPBoolean"],
377
+ ["endDay", "SOAP::SOAPDate"],
378
+ ["id", "SOAP::SOAPLong"],
379
+ ["name", "SOAP::SOAPString"],
380
+ ["startDay", "SOAP::SOAPDate"],
381
+ ["status", "SOAP::SOAPString"],
382
+ ["adWordsType", "SOAP::SOAPString"],
383
+ ["campaigns", "SOAP::SOAPInt[]"]
384
+ ]
385
+
386
+ attr_accessor :aggregationType
387
+ attr_accessor :clientEmails
388
+ attr_accessor :crossClient
389
+ attr_accessor :endDay
390
+ attr_accessor :id
391
+ attr_accessor :name
392
+ attr_accessor :startDay
393
+ attr_accessor :status
394
+ attr_accessor :adWordsType
395
+ attr_accessor :campaigns
396
+
397
+ def initialize(aggregationType = nil, clientEmails = [], crossClient = nil, endDay = nil, id = nil, name = nil, startDay = nil, status = nil, adWordsType = nil, campaigns = [])
398
+ @aggregationType = aggregationType
399
+ @clientEmails = clientEmails
400
+ @crossClient = crossClient
401
+ @endDay = endDay
402
+ @id = id
403
+ @name = name
404
+ @startDay = startDay
405
+ @status = status
406
+ @adWordsType = adWordsType
407
+ @campaigns = campaigns
408
+ end
409
+ end
410
+
411
+ # {https://adwords.google.com/api/adwords/v5}CustomReportJob
412
+ class CustomReportJob
413
+ @@schema_type = "CustomReportJob"
414
+ @@schema_ns = "https://adwords.google.com/api/adwords/v5"
415
+ @@schema_element = [
416
+ ["aggregationType", "SOAP::SOAPString"],
417
+ ["clientEmails", "SOAP::SOAPString[]"],
418
+ ["crossClient", "SOAP::SOAPBoolean"],
419
+ ["endDay", "SOAP::SOAPDate"],
420
+ ["id", "SOAP::SOAPLong"],
421
+ ["name", "SOAP::SOAPString"],
422
+ ["startDay", "SOAP::SOAPDate"],
423
+ ["status", "SOAP::SOAPString"],
424
+ ["adGroupStatuses", "SOAP::SOAPString[]"],
425
+ ["adGroups", "SOAP::SOAPInt[]"],
426
+ ["adWordsType", "SOAP::SOAPString"],
427
+ ["campaignStatuses", "SOAP::SOAPString[]"],
428
+ ["campaigns", "SOAP::SOAPInt[]"],
429
+ ["customOptions", "SOAP::SOAPString[]"],
430
+ ["keywordStatuses", "SOAP::SOAPString[]"],
431
+ ["keywordType", "SOAP::SOAPString"],
432
+ ["keywords", "SOAP::SOAPString[]"],
433
+ ["includeZeroImpression", "SOAP::SOAPBoolean"]
434
+ ]
435
+
436
+ attr_accessor :aggregationType
437
+ attr_accessor :clientEmails
438
+ attr_accessor :crossClient
439
+ attr_accessor :endDay
440
+ attr_accessor :id
441
+ attr_accessor :name
442
+ attr_accessor :startDay
443
+ attr_accessor :status
444
+ attr_accessor :adGroupStatuses
445
+ attr_accessor :adGroups
446
+ attr_accessor :adWordsType
447
+ attr_accessor :campaignStatuses
448
+ attr_accessor :campaigns
449
+ attr_accessor :customOptions
450
+ attr_accessor :keywordStatuses
451
+ attr_accessor :keywordType
452
+ attr_accessor :keywords
453
+ attr_accessor :includeZeroImpression
454
+
455
+ def initialize(aggregationType = nil, clientEmails = [], crossClient = nil, endDay = nil, id = nil, name = nil, startDay = nil, status = nil, adGroupStatuses = [], adGroups = [], adWordsType = nil, campaignStatuses = [], campaigns = [], customOptions = [], keywordStatuses = [], keywordType = nil, keywords = [], includeZeroImpression = nil)
456
+ @aggregationType = aggregationType
457
+ @clientEmails = clientEmails
458
+ @crossClient = crossClient
459
+ @endDay = endDay
460
+ @id = id
461
+ @name = name
462
+ @startDay = startDay
463
+ @status = status
464
+ @adGroupStatuses = adGroupStatuses
465
+ @adGroups = adGroups
466
+ @adWordsType = adWordsType
467
+ @campaignStatuses = campaignStatuses
468
+ @campaigns = campaigns
469
+ @customOptions = customOptions
470
+ @keywordStatuses = keywordStatuses
471
+ @keywordType = keywordType
472
+ @keywords = keywords
473
+ @includeZeroImpression = includeZeroImpression
474
+ end
475
+ end
476
+
477
+ # {https://adwords.google.com/api/adwords/v5}CampaignReportJob
478
+ class CampaignReportJob
479
+ @@schema_type = "CampaignReportJob"
480
+ @@schema_ns = "https://adwords.google.com/api/adwords/v5"
481
+ @@schema_element = [
482
+ ["aggregationType", "SOAP::SOAPString"],
483
+ ["clientEmails", "SOAP::SOAPString[]"],
484
+ ["crossClient", "SOAP::SOAPBoolean"],
485
+ ["endDay", "SOAP::SOAPDate"],
486
+ ["id", "SOAP::SOAPLong"],
487
+ ["name", "SOAP::SOAPString"],
488
+ ["startDay", "SOAP::SOAPDate"],
489
+ ["status", "SOAP::SOAPString"],
490
+ ["adWordsType", "SOAP::SOAPString"],
491
+ ["campaigns", "SOAP::SOAPInt[]"]
492
+ ]
493
+
494
+ attr_accessor :aggregationType
495
+ attr_accessor :clientEmails
496
+ attr_accessor :crossClient
497
+ attr_accessor :endDay
498
+ attr_accessor :id
499
+ attr_accessor :name
500
+ attr_accessor :startDay
501
+ attr_accessor :status
502
+ attr_accessor :adWordsType
503
+ attr_accessor :campaigns
504
+
505
+ def initialize(aggregationType = nil, clientEmails = [], crossClient = nil, endDay = nil, id = nil, name = nil, startDay = nil, status = nil, adWordsType = nil, campaigns = [])
506
+ @aggregationType = aggregationType
507
+ @clientEmails = clientEmails
508
+ @crossClient = crossClient
509
+ @endDay = endDay
510
+ @id = id
511
+ @name = name
512
+ @startDay = startDay
513
+ @status = status
514
+ @adWordsType = adWordsType
515
+ @campaigns = campaigns
516
+ end
517
+ end
518
+
519
+ # {https://adwords.google.com/api/adwords/v5}AccountReportJob
520
+ class AccountReportJob
521
+ @@schema_type = "AccountReportJob"
522
+ @@schema_ns = "https://adwords.google.com/api/adwords/v5"
523
+ @@schema_element = [
524
+ ["aggregationType", "SOAP::SOAPString"],
525
+ ["clientEmails", "SOAP::SOAPString[]"],
526
+ ["crossClient", "SOAP::SOAPBoolean"],
527
+ ["endDay", "SOAP::SOAPDate"],
528
+ ["id", "SOAP::SOAPLong"],
529
+ ["name", "SOAP::SOAPString"],
530
+ ["startDay", "SOAP::SOAPDate"],
531
+ ["status", "SOAP::SOAPString"],
532
+ ["adWordsType", "SOAP::SOAPString"]
533
+ ]
534
+
535
+ attr_accessor :aggregationType
536
+ attr_accessor :clientEmails
537
+ attr_accessor :crossClient
538
+ attr_accessor :endDay
539
+ attr_accessor :id
540
+ attr_accessor :name
541
+ attr_accessor :startDay
542
+ attr_accessor :status
543
+ attr_accessor :adWordsType
544
+
545
+ def initialize(aggregationType = nil, clientEmails = [], crossClient = nil, endDay = nil, id = nil, name = nil, startDay = nil, status = nil, adWordsType = nil)
546
+ @aggregationType = aggregationType
547
+ @clientEmails = clientEmails
548
+ @crossClient = crossClient
549
+ @endDay = endDay
550
+ @id = id
551
+ @name = name
552
+ @startDay = startDay
553
+ @status = status
554
+ @adWordsType = adWordsType
555
+ end
556
+ end
557
+
558
+ # {https://adwords.google.com/api/adwords/v5}AdGroupReportJob
559
+ class AdGroupReportJob
560
+ @@schema_type = "AdGroupReportJob"
561
+ @@schema_ns = "https://adwords.google.com/api/adwords/v5"
562
+ @@schema_element = [
563
+ ["aggregationType", "SOAP::SOAPString"],
564
+ ["clientEmails", "SOAP::SOAPString[]"],
565
+ ["crossClient", "SOAP::SOAPBoolean"],
566
+ ["endDay", "SOAP::SOAPDate"],
567
+ ["id", "SOAP::SOAPLong"],
568
+ ["name", "SOAP::SOAPString"],
569
+ ["startDay", "SOAP::SOAPDate"],
570
+ ["status", "SOAP::SOAPString"],
571
+ ["adWordsType", "SOAP::SOAPString"],
572
+ ["campaigns", "SOAP::SOAPInt[]"],
573
+ ["adGroupStatuses", "SOAP::SOAPString[]"]
574
+ ]
575
+
576
+ attr_accessor :aggregationType
577
+ attr_accessor :clientEmails
578
+ attr_accessor :crossClient
579
+ attr_accessor :endDay
580
+ attr_accessor :id
581
+ attr_accessor :name
582
+ attr_accessor :startDay
583
+ attr_accessor :status
584
+ attr_accessor :adWordsType
585
+ attr_accessor :campaigns
586
+ attr_accessor :adGroupStatuses
587
+
588
+ def initialize(aggregationType = nil, clientEmails = [], crossClient = nil, endDay = nil, id = nil, name = nil, startDay = nil, status = nil, adWordsType = nil, campaigns = [], adGroupStatuses = [])
589
+ @aggregationType = aggregationType
590
+ @clientEmails = clientEmails
591
+ @crossClient = crossClient
592
+ @endDay = endDay
593
+ @id = id
594
+ @name = name
595
+ @startDay = startDay
596
+ @status = status
597
+ @adWordsType = adWordsType
598
+ @campaigns = campaigns
599
+ @adGroupStatuses = adGroupStatuses
600
+ end
601
+ end
602
+
603
+ # {https://adwords.google.com/api/adwords/v5}AdImageReportJob
604
+ class AdImageReportJob
605
+ @@schema_type = "AdImageReportJob"
606
+ @@schema_ns = "https://adwords.google.com/api/adwords/v5"
607
+ @@schema_element = [
608
+ ["aggregationType", "SOAP::SOAPString"],
609
+ ["clientEmails", "SOAP::SOAPString[]"],
610
+ ["crossClient", "SOAP::SOAPBoolean"],
611
+ ["endDay", "SOAP::SOAPDate"],
612
+ ["id", "SOAP::SOAPLong"],
613
+ ["name", "SOAP::SOAPString"],
614
+ ["startDay", "SOAP::SOAPDate"],
615
+ ["status", "SOAP::SOAPString"],
616
+ ["campaigns", "SOAP::SOAPInt[]"]
617
+ ]
618
+
619
+ attr_accessor :aggregationType
620
+ attr_accessor :clientEmails
621
+ attr_accessor :crossClient
622
+ attr_accessor :endDay
623
+ attr_accessor :id
624
+ attr_accessor :name
625
+ attr_accessor :startDay
626
+ attr_accessor :status
627
+ attr_accessor :campaigns
628
+
629
+ def initialize(aggregationType = nil, clientEmails = [], crossClient = nil, endDay = nil, id = nil, name = nil, startDay = nil, status = nil, campaigns = [])
630
+ @aggregationType = aggregationType
631
+ @clientEmails = clientEmails
632
+ @crossClient = crossClient
633
+ @endDay = endDay
634
+ @id = id
635
+ @name = name
636
+ @startDay = startDay
637
+ @status = status
638
+ @campaigns = campaigns
639
+ end
640
+ end
641
+
642
+ # {https://adwords.google.com/api/adwords/v5}ReportJobStatus
643
+ class ReportJobStatus < ::String
644
+ @@schema_type = "ReportJobStatus"
645
+ @@schema_ns = "https://adwords.google.com/api/adwords/v5"
646
+
647
+ Completed = ReportJobStatus.new("Completed")
648
+ Failed = ReportJobStatus.new("Failed")
649
+ InProgress = ReportJobStatus.new("InProgress")
650
+ Pending = ReportJobStatus.new("Pending")
651
+ end
652
+
653
+ # {https://adwords.google.com/api/adwords/v5}AggregationType
654
+ class AggregationType < ::String
655
+ @@schema_type = "AggregationType"
656
+ @@schema_ns = "https://adwords.google.com/api/adwords/v5"
657
+
658
+ Daily = AggregationType.new("Daily")
659
+ HourlyByDate = AggregationType.new("HourlyByDate")
660
+ HourlyRegardlessDate = AggregationType.new("HourlyRegardlessDate")
661
+ Monthly = AggregationType.new("Monthly")
662
+ Quarterly = AggregationType.new("Quarterly")
663
+ Summary = AggregationType.new("Summary")
664
+ Yearly = AggregationType.new("Yearly")
665
+ end
666
+
667
+ # {https://adwords.google.com/api/adwords/v5}AdWordsType
668
+ class AdWordsType < ::String
669
+ @@schema_type = "AdWordsType"
670
+ @@schema_ns = "https://adwords.google.com/api/adwords/v5"
671
+
672
+ ContentOnly = AdWordsType.new("ContentOnly")
673
+ SearchOnly = AdWordsType.new("SearchOnly")
674
+ end
675
+
676
+ # {https://adwords.google.com/api/adwords/v5}KeywordStatus
677
+ class KeywordStatus < ::String
678
+ @@schema_type = "KeywordStatus"
679
+ @@schema_ns = "https://adwords.google.com/api/adwords/v5"
680
+
681
+ Deleted = KeywordStatus.new("Deleted")
682
+ Disabled = KeywordStatus.new("Disabled")
683
+ Disapproved = KeywordStatus.new("Disapproved")
684
+ InTrial = KeywordStatus.new("InTrial")
685
+ Normal = KeywordStatus.new("Normal")
686
+ OnHold = KeywordStatus.new("OnHold")
687
+ end
688
+
689
+ # {https://adwords.google.com/api/adwords/v5}KeywordType
690
+ class KeywordType < ::String
691
+ @@schema_type = "KeywordType"
692
+ @@schema_ns = "https://adwords.google.com/api/adwords/v5"
693
+
694
+ Broad = KeywordType.new("Broad")
695
+ Exact = KeywordType.new("Exact")
696
+ Phrase = KeywordType.new("Phrase")
697
+ end
698
+
699
+ # {https://adwords.google.com/api/adwords/v5}CampaignStatus
700
+ class CampaignStatus < ::String
701
+ @@schema_type = "CampaignStatus"
702
+ @@schema_ns = "https://adwords.google.com/api/adwords/v5"
703
+
704
+ Active = CampaignStatus.new("Active")
705
+ Deleted = CampaignStatus.new("Deleted")
706
+ Ended = CampaignStatus.new("Ended")
707
+ Paused = CampaignStatus.new("Paused")
708
+ Pending = CampaignStatus.new("Pending")
709
+ Suspended = CampaignStatus.new("Suspended")
710
+ end
711
+
712
+ # {https://adwords.google.com/api/adwords/v5}CustomReportOption
713
+ class CustomReportOption < ::String
714
+ @@schema_type = "CustomReportOption"
715
+ @@schema_ns = "https://adwords.google.com/api/adwords/v5"
716
+
717
+ AccountName = CustomReportOption.new("AccountName")
718
+ AdGroup = CustomReportOption.new("AdGroup")
719
+ AdGroupId = CustomReportOption.new("AdGroupId")
720
+ AdGroupStatus = CustomReportOption.new("AdGroupStatus")
721
+ AdWordsType = CustomReportOption.new("AdWordsType")
722
+ AverageConversionValue = CustomReportOption.new("AverageConversionValue")
723
+ AveragePosition = CustomReportOption.new("AveragePosition")
724
+ BottomPosition = CustomReportOption.new("BottomPosition")
725
+ CPM = CustomReportOption.new("CPM")
726
+ Campaign = CustomReportOption.new("Campaign")
727
+ CampaignEndDate = CustomReportOption.new("CampaignEndDate")
728
+ CampaignId = CustomReportOption.new("CampaignId")
729
+ CampaignStatus = CustomReportOption.new("CampaignStatus")
730
+ Clicks = CustomReportOption.new("Clicks")
731
+ ConversionRate = CustomReportOption.new("ConversionRate")
732
+ ConversionValuePerClick = CustomReportOption.new("ConversionValuePerClick")
733
+ ConversionValuePerCost = CustomReportOption.new("ConversionValuePerCost")
734
+ Conversions = CustomReportOption.new("Conversions")
735
+ Cost = CustomReportOption.new("Cost")
736
+ CostPerConversion = CustomReportOption.new("CostPerConversion")
737
+ CostPerTransaction = CustomReportOption.new("CostPerTransaction")
738
+ Cpc = CustomReportOption.new("Cpc")
739
+ CreativeDestinationUrl = CustomReportOption.new("CreativeDestinationUrl")
740
+ CreativeId = CustomReportOption.new("CreativeId")
741
+ CreativeStatus = CustomReportOption.new("CreativeStatus")
742
+ CreativeType = CustomReportOption.new("CreativeType")
743
+ Ctr = CustomReportOption.new("Ctr")
744
+ CustomerTimeZone = CustomReportOption.new("CustomerTimeZone")
745
+ DailyBudget = CustomReportOption.new("DailyBudget")
746
+ DefaultConversionCount = CustomReportOption.new("DefaultConversionCount")
747
+ DefaultConversionValue = CustomReportOption.new("DefaultConversionValue")
748
+ DescriptionLine1 = CustomReportOption.new("DescriptionLine1")
749
+ DescriptionLine2 = CustomReportOption.new("DescriptionLine2")
750
+ DescriptionLine3 = CustomReportOption.new("DescriptionLine3")
751
+ DestinationUrl = CustomReportOption.new("DestinationUrl")
752
+ ImageAdName = CustomReportOption.new("ImageAdName")
753
+ ImageHostingKey = CustomReportOption.new("ImageHostingKey")
754
+ Impressions = CustomReportOption.new("Impressions")
755
+ Keyword = CustomReportOption.new("Keyword")
756
+ KeywordDestinationUrl = CustomReportOption.new("KeywordDestinationUrl")
757
+ KeywordId = CustomReportOption.new("KeywordId")
758
+ KeywordStatus = CustomReportOption.new("KeywordStatus")
759
+ KeywordType = CustomReportOption.new("KeywordType")
760
+ LeadCount = CustomReportOption.new("LeadCount")
761
+ LeadValue = CustomReportOption.new("LeadValue")
762
+ MaxContentCPC = CustomReportOption.new("MaxContentCPC")
763
+ MaximumCPM = CustomReportOption.new("MaximumCPM")
764
+ MaximumCpc = CustomReportOption.new("MaximumCpc")
765
+ MinimumCpc = CustomReportOption.new("MinimumCpc")
766
+ PageViewCount = CustomReportOption.new("PageViewCount")
767
+ PageViewValue = CustomReportOption.new("PageViewValue")
768
+ SaleCount = CustomReportOption.new("SaleCount")
769
+ SaleValue = CustomReportOption.new("SaleValue")
770
+ SignupCount = CustomReportOption.new("SignupCount")
771
+ SignupValue = CustomReportOption.new("SignupValue")
772
+ TopPosition = CustomReportOption.new("TopPosition")
773
+ TotalConversionValue = CustomReportOption.new("TotalConversionValue")
774
+ Transactions = CustomReportOption.new("Transactions")
775
+ VisibleUrl = CustomReportOption.new("VisibleUrl")
776
+ Website = CustomReportOption.new("Website")
777
+ end
778
+
779
+ # {https://adwords.google.com/api/adwords/v5}AdGroupStatus
780
+ class AdGroupStatus < ::String
781
+ @@schema_type = "AdGroupStatus"
782
+ @@schema_ns = "https://adwords.google.com/api/adwords/v5"
783
+
784
+ Deleted = AdGroupStatus.new("Deleted")
785
+ Enabled = AdGroupStatus.new("Enabled")
786
+ Paused = AdGroupStatus.new("Paused")
787
+ end
788
+ end