adwords4r 0.5 → 0.6

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 (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