sem4r 0.1.2 → 0.1.3

Sign up to get free protection for your applications and to get access to all the features.
Files changed (175) hide show
  1. data/Gemfile +13 -2
  2. data/Gemfile.lock +13 -7
  3. data/README.rdoc +44 -7
  4. data/Rakefile +2 -122
  5. data/VERSION.yml +1 -1
  6. data/bin/sem +1 -0
  7. data/examples_sem4r/01_get_account.rb +1 -0
  8. data/examples_sem4r/02_get_info.rb +1 -0
  9. data/examples_sem4r/03_list_ad.rb +1 -0
  10. data/examples_sem4r/04_list_keywords.rb +1 -0
  11. data/examples_sem4r/05_request_report.rb +25 -14
  12. data/examples_sem4r/{05_request_report_2010.rb → 06_request_report_definition.rb} +2 -4
  13. data/examples_sem4r/{06_create_campaigns.rb → 07_create_campaigns.rb} +1 -0
  14. data/examples_sem4r/{07_create_campaigns_block.rb → 08_create_campaigns_block.rb} +1 -0
  15. data/examples_sem4r/{07_create_campaigns_simple.rb → 09_create_campaigns_simple.rb} +1 -0
  16. data/examples_sem4r/{08_ad_params.rb → 10_ad_params.rb} +1 -0
  17. data/examples_sem4r/{09_targeting_idea.rb → 11_targeting_idea.rb} +1 -0
  18. data/examples_sem4r/{10_get_location.rb → 12_get_location.rb} +1 -0
  19. data/examples_sem4r/{11_submit_bulk_job.rb → 13_submit_bulk_job.rb} +1 -1
  20. data/examples_sem4r/{12_list_bulk_job.rb → 14_list_bulk_job.rb} +3 -0
  21. data/examples_sem4r/30_prune_empty_adgroup.rb +1 -0
  22. data/examples_sem4r/31_empty_accounts.rb +1 -0
  23. data/examples_sem4r/example_helper.rb +2 -1
  24. data/lib/sem4r/ad_group/ad_group.rb +22 -7
  25. data/lib/sem4r/ad_group/ad_group_bids.rb +1 -1
  26. data/lib/sem4r/ad_group/ad_group_service.rb +12 -5
  27. data/lib/sem4r/ad_group_ad/ad_group_ad.rb +1 -0
  28. data/lib/sem4r/ad_group_ad/ad_group_ad_operations.rb +1 -0
  29. data/lib/sem4r/ad_group_ad/ad_group_ad_service.rb +14 -9
  30. data/lib/sem4r/ad_group_ad/ad_group_mobile_ad.rb +16 -25
  31. data/lib/sem4r/ad_group_ad/ad_group_text_ad.rb +18 -14
  32. data/lib/sem4r/ad_group_criterion/ad_group_criterion.rb +27 -19
  33. data/lib/sem4r/ad_group_criterion/ad_group_criterion_bids.rb +2 -1
  34. data/lib/sem4r/ad_group_criterion/ad_group_criterion_operations.rb +1 -0
  35. data/lib/sem4r/ad_group_criterion/ad_group_criterion_service.rb +9 -4
  36. data/lib/sem4r/ad_group_criterion/criterion.rb +1 -0
  37. data/lib/sem4r/ad_group_criterion/criterion_keyword.rb +1 -0
  38. data/lib/sem4r/ad_group_criterion/criterion_placement.rb +1 -0
  39. data/lib/sem4r/ad_param/ad_param.rb +24 -8
  40. data/lib/sem4r/ad_param/ad_param_service.rb +8 -5
  41. data/lib/sem4r/adwords.rb +232 -76
  42. data/lib/sem4r/base.rb +1 -1
  43. data/lib/sem4r/bulk_mutate_job/bulk_mutate_job.rb +41 -35
  44. data/lib/sem4r/bulk_mutate_job/bulk_mutate_job_account_extension.rb +49 -15
  45. data/lib/sem4r/bulk_mutate_job/bulk_mutate_job_selector.rb +29 -20
  46. data/lib/sem4r/bulk_mutate_job/bulk_mutate_job_service.rb +13 -14
  47. data/lib/sem4r/bulk_mutate_job/job_operations.rb +1 -1
  48. data/lib/sem4r/campaign/campaign.rb +1 -0
  49. data/lib/sem4r/campaign/campaign_account_extension.rb +2 -1
  50. data/lib/sem4r/campaign/campaign_service.rb +9 -5
  51. data/lib/sem4r/credentials.rb +11 -5
  52. data/lib/sem4r/geo_location/address.rb +56 -0
  53. data/lib/sem4r/geo_location/geo_location_account_extension.rb +27 -6
  54. data/lib/sem4r/geo_location/geo_location_selector.rb +57 -0
  55. data/lib/sem4r/geo_location/geo_location_service.rb +9 -16
  56. data/lib/sem4r/info/info_account_extension.rb +3 -2
  57. data/lib/sem4r/info/info_selector.rb +2 -1
  58. data/lib/sem4r/info/info_service.rb +10 -3
  59. data/lib/sem4r/operation.rb +39 -20
  60. data/lib/sem4r/report_definition/report_definition.rb +37 -19
  61. data/lib/sem4r/report_definition/report_definition_account_extension.rb +66 -16
  62. data/lib/sem4r/report_definition/report_definition_operation.rb +2 -2
  63. data/lib/sem4r/report_definition/report_definition_selector.rb +1 -1
  64. data/lib/sem4r/report_definition/report_definition_service.rb +11 -7
  65. data/lib/sem4r/report_definition/report_field.rb +3 -2
  66. data/lib/sem4r/sem4r_templates.rb +77 -0
  67. data/lib/sem4r/{services/service.rb → service.rb} +23 -23
  68. data/lib/sem4r/targeting_idea/targeting_idea.rb +4 -4
  69. data/lib/sem4r/targeting_idea/targeting_idea_account_extension.rb +1 -1
  70. data/lib/sem4r/targeting_idea/targeting_idea_selector.rb +6 -6
  71. data/lib/sem4r/targeting_idea/targeting_idea_service.rb +7 -5
  72. data/lib/sem4r/v13_account/account_account_extension.rb +7 -10
  73. data/lib/sem4r/v13_account/account_service.rb +10 -4
  74. data/lib/sem4r/v13_account/billing_address.rb +2 -2
  75. data/lib/sem4r/v13_report/report_service.rb +11 -9
  76. data/lib/sem4r.rb +46 -31
  77. data/lib/{sem4r/cli → sem4r_cli}/cli_helpers.rb +3 -2
  78. data/lib/{sem4r/cli/cli_command.rb → sem4r_cli/cli_mini_framework.rb} +77 -32
  79. data/lib/{sem4r/cli/cli_common_args.rb → sem4r_cli/cli_sem.rb} +177 -157
  80. data/lib/{sem4r/cli/commands/cli_list_ads.rb → sem4r_cli/commands/cli_ads.rb} +7 -9
  81. data/lib/sem4r_cli/commands/cli_campaign.rb +69 -0
  82. data/lib/{sem4r/cli/commands/cli_list_client.rb → sem4r_cli/commands/cli_clients.rb} +2 -2
  83. data/lib/{sem4r/cli → sem4r_cli}/commands/cli_ideas.rb +35 -27
  84. data/lib/{sem4r/cli → sem4r_cli}/commands/cli_info.rb +3 -4
  85. data/lib/{sem4r/cli/commands/cli_repdef.rb → sem4r_cli/commands/cli_job.rb} +57 -55
  86. data/lib/{sem4r/cli/commands/cli_list_keywords.rb → sem4r_cli/commands/cli_keywords.rb} +14 -13
  87. data/lib/sem4r_cli/commands/cli_profile.rb +138 -0
  88. data/lib/{sem4r/cli/commands/cli_report.rb → sem4r_cli/commands/cli_repdef.rb} +67 -20
  89. data/lib/{sem4r/cli/commands/cli_request_report.rb → sem4r_cli/commands/cli_report.rb} +82 -19
  90. data/lib/sem4r_cli.rb +5 -7
  91. data/lib/sem4r_soap/http_connector.rb +206 -0
  92. data/lib/{soap_helpers → sem4r_soap}/soap_attributes.rb +8 -3
  93. data/lib/{sem4r/services → sem4r_soap}/soap_dumper.rb +36 -20
  94. data/lib/{sem4r/services → sem4r_soap}/soap_error.rb +5 -2
  95. data/lib/sem4r_soap/soap_response.rb +75 -0
  96. data/lib/sem4r_soap/soap_service.rb +137 -0
  97. data/lib/{sem4r/cli/cli_sem.rb → sem4r_soap/soap_service_v13.rb} +27 -28
  98. data/lib/sem4r_soap/soap_service_v2010.rb +80 -0
  99. data/lib/sem4r_soap.rb +17 -0
  100. data/sem4r.gemspec +93 -58
  101. data/spec/build_fixtures.rb +49 -42
  102. data/spec/fixtures/password.example.yml +3 -0
  103. data/spec/fixtures/sem4r.example.yml +6 -0
  104. data/spec/fixtures/{services/error.xml → soap_error.xml} +0 -0
  105. data/spec/fixtures/soap_error2.xml +29 -0
  106. data/spec/helpers/dump_interceptor.rb +90 -0
  107. data/spec/helpers/fixtures_bulk_mutate_job.rb +48 -0
  108. data/spec/helpers/fixtures_geo_location.rb +45 -0
  109. data/{lib/sem4r/campaign_criterion/campaign_criterion_service.rb → spec/helpers/fixtures_info.rb} +10 -6
  110. data/spec/helpers/fixtures_report_definition.rb +65 -0
  111. data/spec/{rspec_hash.rb → helpers/rspec_hash.rb} +1 -0
  112. data/spec/{rspec_matchers.rb → helpers/rspec_matchers.rb} +46 -19
  113. data/spec/{rspec_sem4r_helper.rb → helpers/rspec_sem4r_helper.rb} +19 -16
  114. data/spec/{sem4r_stubs.rb → helpers/sem4r_stubs.rb} +5 -4
  115. data/spec/rspec_helper.rb +4 -4
  116. data/spec/sem4r/account_spec.rb +2 -3
  117. data/spec/sem4r/ad_group/ad_group_service_spec.rb +1 -1
  118. data/spec/sem4r/ad_group/ad_group_spec.rb +1 -1
  119. data/spec/sem4r/ad_group_ad/ad_group_ad_operation_spec.rb +3 -3
  120. data/spec/sem4r/adwords_spec.rb +62 -39
  121. data/{lib/sem4r/cli/commands/cli_list_campaign.rb → spec/sem4r/bulk_mutate_job/bulk_mutate_job_selector_spec.rb} +14 -11
  122. data/spec/sem4r/bulk_mutate_job/bulk_mutate_job_service_spec.rb +2 -3
  123. data/spec/sem4r/bulk_mutate_job/bulk_mutate_job_spec.rb +23 -17
  124. data/spec/sem4r/bulk_mutate_job/fixtures/get-list_job-req.xml +35 -0
  125. data/spec/sem4r/bulk_mutate_job/fixtures/get-list_job-res.xml +417 -0
  126. data/spec/sem4r/bulk_mutate_job/fixtures/mutate-add_job-req.xml +106 -0
  127. data/spec/sem4r/bulk_mutate_job/fixtures/mutate-add_job-res.xml +48 -0
  128. data/spec/sem4r/bulk_mutate_job/job_operation_spec.rb +5 -7
  129. data/spec/sem4r/campaign/campaign_service_spec.rb +2 -2
  130. data/spec/sem4r/credentials_spec.rb +10 -8
  131. data/spec/sem4r/geo_location/address_spec.rb +62 -0
  132. data/spec/sem4r/geo_location/fixtures/get-req.xml +42 -0
  133. data/spec/sem4r/geo_location/fixtures/get-res.xml +60 -0
  134. data/spec/sem4r/info/fixtures/get-req.xml +34 -0
  135. data/spec/sem4r/info/fixtures/get-res.xml +27 -0
  136. data/spec/sem4r/nokogiri_parsing_spec.rb +1 -0
  137. data/spec/sem4r/operation_spec.rb +72 -0
  138. data/spec/sem4r/report_definition/fixtures/get-list-repdef-req.xml +22 -0
  139. data/spec/sem4r/report_definition/fixtures/get-list-repdef-res.xml +73 -0
  140. data/spec/sem4r/report_definition/fixtures/getReportFields-req.xml +24 -0
  141. data/spec/sem4r/report_definition/fixtures/getReportFields-res.xml +1199 -0
  142. data/spec/sem4r/report_definition/fixtures/mutate-add-report-req.xml +63 -0
  143. data/spec/sem4r/report_definition/fixtures/mutate-add-report-res.xml +68 -0
  144. data/spec/sem4r/report_definition/report_definition_service_spec.rb +5 -5
  145. data/spec/sem4r/report_definition/report_definition_spec.rb +28 -43
  146. data/{lib/sem4r/cli/commands/cli_list_report.rb → spec/sem4r/report_definition/report_field_spec.rb} +12 -10
  147. data/spec/sem4r/rexml_parsing_spec.rb +1 -0
  148. data/spec/sem4r/{services/service_spec.rb → service_spec.rb} +1 -1
  149. data/spec/sem4r/targeting_idea/targeting_idea_selector_spec.rb +1 -1
  150. data/spec/sem4r/targeting_idea/targeting_idea_service_spec.rb +1 -1
  151. data/spec/sem4r/targeting_idea/targeting_idea_spec.rb +1 -1
  152. data/spec/sem4r/v13_account/account_service_spec.rb +2 -2
  153. data/spec/sem4r/v13_report/report_service_spec.rb +2 -2
  154. data/spec/{sem4r/cli → sem4r_cli}/cli_spec.rb +22 -27
  155. data/spec/{soap_helpers → sem4r_soap}/soap_attributes_spec.rb +3 -3
  156. data/spec/{sem4r/services/soap_message_v13_spec.rb → sem4r_soap/soap_response_spec.rb} +10 -15
  157. data/spec/{sem4r/services/soap_call_spec.rb → sem4r_soap/soap_service_spec.rb} +35 -54
  158. data/tasks/jeweler.rake +66 -0
  159. data/tasks/rspec.rake +21 -0
  160. data/tasks/sem4r.rake +25 -0
  161. data/tasks/yard.rake +31 -0
  162. metadata +173 -76
  163. data/lib/sem4r/ad_extension_override/ad_extension_override_service.rb +0 -30
  164. data/lib/sem4r/api_counters.rb +0 -8
  165. data/lib/sem4r/campaign_target/campaign_target_service.rb +0 -30
  166. data/lib/sem4r/cli/commands/cli_download_report.rb +0 -82
  167. data/lib/sem4r/services/http_connector.rb +0 -93
  168. data/lib/sem4r/services/soap_call.rb +0 -122
  169. data/lib/sem4r/services/soap_connector.rb +0 -139
  170. data/lib/sem4r/services/soap_message_v13.rb +0 -135
  171. data/lib/sem4r/services/soap_message_v2010.rb +0 -184
  172. data/lib/sem4r/v13_traffic_estimator/traffic_estimator_service.rb +0 -30
  173. data/spec/aggregates_rspec_helper.rb +0 -59
  174. data/spec/sem4r/report_definition/fixtures/mutate_add-req.xml +0 -24
  175. data/spec/sem4r/report_definition/fixtures/mutate_add-req_orig.xml +0 -45
@@ -0,0 +1,1199 @@
1
+ <soap:Envelope xmlns:soap='http://schemas.xmlsoap.org/soap/envelope/'>
2
+ <soap:Header>
3
+ <ResponseHeader xmlns='https://adwords.google.com/api/adwords/cm/v201008'>
4
+ <requestId>
5
+ 7b708527a1c5af6b1facea1dd84c65a3
6
+ </requestId>
7
+ <operations>
8
+ 53
9
+ </operations>
10
+ <responseTime>
11
+ 140
12
+ </responseTime>
13
+ <units>
14
+ 53
15
+ </units>
16
+ </ResponseHeader>
17
+ </soap:Header>
18
+ <soap:Body>
19
+ <getReportFieldsResponse xmlns='https://adwords.google.com/api/adwords/cm/v201008'>
20
+ <rval>
21
+ <fieldName>
22
+ AdGroupId
23
+ </fieldName>
24
+ <displayFieldName>
25
+ Ad group ID
26
+ </displayFieldName>
27
+ <xmlAttributeName>
28
+ adGroupID
29
+ </xmlAttributeName>
30
+ <fieldType>
31
+ Long
32
+ </fieldType>
33
+ <canSelect>
34
+ true
35
+ </canSelect>
36
+ <canFilter>
37
+ true
38
+ </canFilter>
39
+ </rval>
40
+ <rval>
41
+ <fieldName>
42
+ AdGroupName
43
+ </fieldName>
44
+ <displayFieldName>
45
+ Ad group
46
+ </displayFieldName>
47
+ <xmlAttributeName>
48
+ adGroup
49
+ </xmlAttributeName>
50
+ <fieldType>
51
+ String
52
+ </fieldType>
53
+ <canSelect>
54
+ true
55
+ </canSelect>
56
+ <canFilter>
57
+ true
58
+ </canFilter>
59
+ </rval>
60
+ <rval>
61
+ <fieldName>
62
+ AdGroupStatus
63
+ </fieldName>
64
+ <displayFieldName>
65
+ Ad group state
66
+ </displayFieldName>
67
+ <xmlAttributeName>
68
+ adGroupState
69
+ </xmlAttributeName>
70
+ <fieldType>
71
+ AdGroupStatus
72
+ </fieldType>
73
+ <enumValues>
74
+ ENABLED
75
+ </enumValues>
76
+ <enumValues>
77
+ PAUSED
78
+ </enumValues>
79
+ <enumValues>
80
+ DELETED
81
+ </enumValues>
82
+ <canSelect>
83
+ true
84
+ </canSelect>
85
+ <canFilter>
86
+ true
87
+ </canFilter>
88
+ </rval>
89
+ <rval>
90
+ <fieldName>
91
+ AdNetworkType1
92
+ </fieldName>
93
+ <displayFieldName>
94
+ Network
95
+ </displayFieldName>
96
+ <xmlAttributeName>
97
+ network
98
+ </xmlAttributeName>
99
+ <fieldType>
100
+ AdNetworkType1
101
+ </fieldType>
102
+ <enumValues>
103
+ SEARCH
104
+ </enumValues>
105
+ <enumValues>
106
+ CONTENT
107
+ </enumValues>
108
+ <canSelect>
109
+ true
110
+ </canSelect>
111
+ <canFilter>
112
+ true
113
+ </canFilter>
114
+ </rval>
115
+ <rval>
116
+ <fieldName>
117
+ AdNetworkType2
118
+ </fieldName>
119
+ <displayFieldName>
120
+ Network (with search partners)
121
+ </displayFieldName>
122
+ <xmlAttributeName>
123
+ networkWithSearchPartners
124
+ </xmlAttributeName>
125
+ <fieldType>
126
+ AdNetworkType2
127
+ </fieldType>
128
+ <enumValues>
129
+ SEARCH
130
+ </enumValues>
131
+ <enumValues>
132
+ SEARCH_PARTNERS
133
+ </enumValues>
134
+ <enumValues>
135
+ CONTENT
136
+ </enumValues>
137
+ <canSelect>
138
+ true
139
+ </canSelect>
140
+ <canFilter>
141
+ true
142
+ </canFilter>
143
+ </rval>
144
+ <rval>
145
+ <fieldName>
146
+ AverageCpc
147
+ </fieldName>
148
+ <displayFieldName>
149
+ Avg. CPC
150
+ </displayFieldName>
151
+ <xmlAttributeName>
152
+ avgCPC
153
+ </xmlAttributeName>
154
+ <fieldType>
155
+ Money
156
+ </fieldType>
157
+ <canSelect>
158
+ true
159
+ </canSelect>
160
+ <canFilter>
161
+ true
162
+ </canFilter>
163
+ </rval>
164
+ <rval>
165
+ <fieldName>
166
+ AverageCpm
167
+ </fieldName>
168
+ <displayFieldName>
169
+ Avg. CPM
170
+ </displayFieldName>
171
+ <xmlAttributeName>
172
+ avgCPM
173
+ </xmlAttributeName>
174
+ <fieldType>
175
+ Money
176
+ </fieldType>
177
+ <canSelect>
178
+ true
179
+ </canSelect>
180
+ <canFilter>
181
+ true
182
+ </canFilter>
183
+ </rval>
184
+ <rval>
185
+ <fieldName>
186
+ AveragePosition
187
+ </fieldName>
188
+ <displayFieldName>
189
+ Avg. position
190
+ </displayFieldName>
191
+ <xmlAttributeName>
192
+ avgPosition
193
+ </xmlAttributeName>
194
+ <fieldType>
195
+ Double
196
+ </fieldType>
197
+ <canSelect>
198
+ true
199
+ </canSelect>
200
+ <canFilter>
201
+ true
202
+ </canFilter>
203
+ </rval>
204
+ <rval>
205
+ <fieldName>
206
+ BottomPosition
207
+ </fieldName>
208
+ <displayFieldName>
209
+ Lowest position
210
+ </displayFieldName>
211
+ <xmlAttributeName>
212
+ lowestPosition
213
+ </xmlAttributeName>
214
+ <fieldType>
215
+ int
216
+ </fieldType>
217
+ <canSelect>
218
+ true
219
+ </canSelect>
220
+ <canFilter>
221
+ true
222
+ </canFilter>
223
+ </rval>
224
+ <rval>
225
+ <fieldName>
226
+ CampaignId
227
+ </fieldName>
228
+ <displayFieldName>
229
+ Campaign ID
230
+ </displayFieldName>
231
+ <xmlAttributeName>
232
+ campaignID
233
+ </xmlAttributeName>
234
+ <fieldType>
235
+ Long
236
+ </fieldType>
237
+ <canSelect>
238
+ true
239
+ </canSelect>
240
+ <canFilter>
241
+ true
242
+ </canFilter>
243
+ </rval>
244
+ <rval>
245
+ <fieldName>
246
+ CampaignName
247
+ </fieldName>
248
+ <displayFieldName>
249
+ Campaign
250
+ </displayFieldName>
251
+ <xmlAttributeName>
252
+ campaign
253
+ </xmlAttributeName>
254
+ <fieldType>
255
+ String
256
+ </fieldType>
257
+ <canSelect>
258
+ true
259
+ </canSelect>
260
+ <canFilter>
261
+ true
262
+ </canFilter>
263
+ </rval>
264
+ <rval>
265
+ <fieldName>
266
+ CampaignStatus
267
+ </fieldName>
268
+ <displayFieldName>
269
+ Campaign state
270
+ </displayFieldName>
271
+ <xmlAttributeName>
272
+ campaignState
273
+ </xmlAttributeName>
274
+ <fieldType>
275
+ CampaignStatus
276
+ </fieldType>
277
+ <enumValues>
278
+ ACTIVE
279
+ </enumValues>
280
+ <enumValues>
281
+ DELETED
282
+ </enumValues>
283
+ <enumValues>
284
+ PAUSED
285
+ </enumValues>
286
+ <canSelect>
287
+ true
288
+ </canSelect>
289
+ <canFilter>
290
+ true
291
+ </canFilter>
292
+ </rval>
293
+ <rval>
294
+ <fieldName>
295
+ Clicks
296
+ </fieldName>
297
+ <displayFieldName>
298
+ Clicks
299
+ </displayFieldName>
300
+ <xmlAttributeName>
301
+ clicks
302
+ </xmlAttributeName>
303
+ <fieldType>
304
+ Long
305
+ </fieldType>
306
+ <canSelect>
307
+ true
308
+ </canSelect>
309
+ <canFilter>
310
+ true
311
+ </canFilter>
312
+ </rval>
313
+ <rval>
314
+ <fieldName>
315
+ ClickType
316
+ </fieldName>
317
+ <displayFieldName>
318
+ Click type
319
+ </displayFieldName>
320
+ <xmlAttributeName>
321
+ clickType
322
+ </xmlAttributeName>
323
+ <fieldType>
324
+ ClickType
325
+ </fieldType>
326
+ <enumValues>
327
+ URL_CLICKS
328
+ </enumValues>
329
+ <enumValues>
330
+ CALLS
331
+ </enumValues>
332
+ <enumValues>
333
+ OTHER
334
+ </enumValues>
335
+ <enumValues>
336
+ PRODUCT_EXTENSION_CLICKS
337
+ </enumValues>
338
+ <enumValues>
339
+ SITELINKS
340
+ </enumValues>
341
+ <enumValues>
342
+ PRODUCT_LISTING_AD_CLICKS
343
+ </enumValues>
344
+ <enumValues>
345
+ GET_DIRECTIONS
346
+ </enumValues>
347
+ <enumValues>
348
+ OFFER_PRINTS
349
+ </enumValues>
350
+ <canSelect>
351
+ true
352
+ </canSelect>
353
+ <canFilter>
354
+ true
355
+ </canFilter>
356
+ </rval>
357
+ <rval>
358
+ <fieldName>
359
+ ConversionCategoryName
360
+ </fieldName>
361
+ <displayFieldName>
362
+ Conversion tracking purpose
363
+ </displayFieldName>
364
+ <xmlAttributeName>
365
+ conversionTrackingPurpose
366
+ </xmlAttributeName>
367
+ <fieldType>
368
+ String
369
+ </fieldType>
370
+ <canSelect>
371
+ true
372
+ </canSelect>
373
+ <canFilter>
374
+ true
375
+ </canFilter>
376
+ </rval>
377
+ <rval>
378
+ <fieldName>
379
+ ConversionRate
380
+ </fieldName>
381
+ <displayFieldName>
382
+ Conv. rate (1-per-click)
383
+ </displayFieldName>
384
+ <xmlAttributeName>
385
+ convRate1PerClick
386
+ </xmlAttributeName>
387
+ <fieldType>
388
+ Double
389
+ </fieldType>
390
+ <canSelect>
391
+ true
392
+ </canSelect>
393
+ <canFilter>
394
+ true
395
+ </canFilter>
396
+ </rval>
397
+ <rval>
398
+ <fieldName>
399
+ ConversionRateManyPerClick
400
+ </fieldName>
401
+ <displayFieldName>
402
+ Conv. rate (many-per-click)
403
+ </displayFieldName>
404
+ <xmlAttributeName>
405
+ convRateManyPerClick
406
+ </xmlAttributeName>
407
+ <fieldType>
408
+ Double
409
+ </fieldType>
410
+ <canSelect>
411
+ true
412
+ </canSelect>
413
+ <canFilter>
414
+ true
415
+ </canFilter>
416
+ </rval>
417
+ <rval>
418
+ <fieldName>
419
+ Conversions
420
+ </fieldName>
421
+ <displayFieldName>
422
+ Conv. (1-per-click)
423
+ </displayFieldName>
424
+ <xmlAttributeName>
425
+ conv1PerClick
426
+ </xmlAttributeName>
427
+ <fieldType>
428
+ Long
429
+ </fieldType>
430
+ <canSelect>
431
+ true
432
+ </canSelect>
433
+ <canFilter>
434
+ true
435
+ </canFilter>
436
+ </rval>
437
+ <rval>
438
+ <fieldName>
439
+ ConversionsManyPerClick
440
+ </fieldName>
441
+ <displayFieldName>
442
+ Conv. (many-per-click)
443
+ </displayFieldName>
444
+ <xmlAttributeName>
445
+ convManyPerClick
446
+ </xmlAttributeName>
447
+ <fieldType>
448
+ Long
449
+ </fieldType>
450
+ <canSelect>
451
+ true
452
+ </canSelect>
453
+ <canFilter>
454
+ true
455
+ </canFilter>
456
+ </rval>
457
+ <rval>
458
+ <fieldName>
459
+ ConversionTypeName
460
+ </fieldName>
461
+ <displayFieldName>
462
+ Conversion action name
463
+ </displayFieldName>
464
+ <xmlAttributeName>
465
+ conversionActionName
466
+ </xmlAttributeName>
467
+ <fieldType>
468
+ String
469
+ </fieldType>
470
+ <canSelect>
471
+ true
472
+ </canSelect>
473
+ <canFilter>
474
+ true
475
+ </canFilter>
476
+ </rval>
477
+ <rval>
478
+ <fieldName>
479
+ ConversionValue
480
+ </fieldName>
481
+ <displayFieldName>
482
+ Total conv. value
483
+ </displayFieldName>
484
+ <xmlAttributeName>
485
+ totalConvValue
486
+ </xmlAttributeName>
487
+ <fieldType>
488
+ Long
489
+ </fieldType>
490
+ <canSelect>
491
+ true
492
+ </canSelect>
493
+ <canFilter>
494
+ true
495
+ </canFilter>
496
+ </rval>
497
+ <rval>
498
+ <fieldName>
499
+ Cost
500
+ </fieldName>
501
+ <displayFieldName>
502
+ Cost
503
+ </displayFieldName>
504
+ <xmlAttributeName>
505
+ cost
506
+ </xmlAttributeName>
507
+ <fieldType>
508
+ Money
509
+ </fieldType>
510
+ <canSelect>
511
+ true
512
+ </canSelect>
513
+ <canFilter>
514
+ true
515
+ </canFilter>
516
+ </rval>
517
+ <rval>
518
+ <fieldName>
519
+ CostPerConversion
520
+ </fieldName>
521
+ <displayFieldName>
522
+ Cost / conv. (1-per-click)
523
+ </displayFieldName>
524
+ <xmlAttributeName>
525
+ costConv1PerClick
526
+ </xmlAttributeName>
527
+ <fieldType>
528
+ Money
529
+ </fieldType>
530
+ <canSelect>
531
+ true
532
+ </canSelect>
533
+ <canFilter>
534
+ true
535
+ </canFilter>
536
+ </rval>
537
+ <rval>
538
+ <fieldName>
539
+ CostPerConversionManyPerClick
540
+ </fieldName>
541
+ <displayFieldName>
542
+ Cost / conv. (many-per-click)
543
+ </displayFieldName>
544
+ <xmlAttributeName>
545
+ costConvManyPerClick
546
+ </xmlAttributeName>
547
+ <fieldType>
548
+ Money
549
+ </fieldType>
550
+ <canSelect>
551
+ true
552
+ </canSelect>
553
+ <canFilter>
554
+ true
555
+ </canFilter>
556
+ </rval>
557
+ <rval>
558
+ <fieldName>
559
+ CriteriaDestinationUrl
560
+ </fieldName>
561
+ <displayFieldName>
562
+ Destination URL
563
+ </displayFieldName>
564
+ <xmlAttributeName>
565
+ destinationURL
566
+ </xmlAttributeName>
567
+ <fieldType>
568
+ String
569
+ </fieldType>
570
+ <canSelect>
571
+ true
572
+ </canSelect>
573
+ <canFilter>
574
+ true
575
+ </canFilter>
576
+ </rval>
577
+ <rval>
578
+ <fieldName>
579
+ Ctr
580
+ </fieldName>
581
+ <displayFieldName>
582
+ CTR
583
+ </displayFieldName>
584
+ <xmlAttributeName>
585
+ ctr
586
+ </xmlAttributeName>
587
+ <fieldType>
588
+ Double
589
+ </fieldType>
590
+ <canSelect>
591
+ true
592
+ </canSelect>
593
+ <canFilter>
594
+ true
595
+ </canFilter>
596
+ </rval>
597
+ <rval>
598
+ <fieldName>
599
+ Date
600
+ </fieldName>
601
+ <displayFieldName>
602
+ Day
603
+ </displayFieldName>
604
+ <xmlAttributeName>
605
+ day
606
+ </xmlAttributeName>
607
+ <fieldType>
608
+ String
609
+ </fieldType>
610
+ <canSelect>
611
+ true
612
+ </canSelect>
613
+ <canFilter>
614
+ true
615
+ </canFilter>
616
+ </rval>
617
+ <rval>
618
+ <fieldName>
619
+ DayOfWeek
620
+ </fieldName>
621
+ <displayFieldName>
622
+ Day of week
623
+ </displayFieldName>
624
+ <xmlAttributeName>
625
+ dayOfWeek
626
+ </xmlAttributeName>
627
+ <fieldType>
628
+ Enum
629
+ </fieldType>
630
+ <canSelect>
631
+ true
632
+ </canSelect>
633
+ <canFilter>
634
+ true
635
+ </canFilter>
636
+ </rval>
637
+ <rval>
638
+ <fieldName>
639
+ DestinationUrl
640
+ </fieldName>
641
+ <displayFieldName>
642
+ Destination URL
643
+ </displayFieldName>
644
+ <xmlAttributeName>
645
+ destinationURL
646
+ </xmlAttributeName>
647
+ <fieldType>
648
+ String
649
+ </fieldType>
650
+ <canSelect>
651
+ true
652
+ </canSelect>
653
+ <canFilter>
654
+ true
655
+ </canFilter>
656
+ </rval>
657
+ <rval>
658
+ <fieldName>
659
+ Device
660
+ </fieldName>
661
+ <displayFieldName>
662
+ Device
663
+ </displayFieldName>
664
+ <xmlAttributeName>
665
+ device
666
+ </xmlAttributeName>
667
+ <fieldType>
668
+ DeviceType
669
+ </fieldType>
670
+ <enumValues>
671
+ DESKTOP
672
+ </enumValues>
673
+ <enumValues>
674
+ HIGH_END_MOBILE
675
+ </enumValues>
676
+ <canSelect>
677
+ true
678
+ </canSelect>
679
+ <canFilter>
680
+ true
681
+ </canFilter>
682
+ </rval>
683
+ <rval>
684
+ <fieldName>
685
+ FirstPageCpc
686
+ </fieldName>
687
+ <displayFieldName>
688
+ First page CPC
689
+ </displayFieldName>
690
+ <xmlAttributeName>
691
+ firstPageCPC
692
+ </xmlAttributeName>
693
+ <fieldType>
694
+ Bid
695
+ </fieldType>
696
+ <canSelect>
697
+ true
698
+ </canSelect>
699
+ <canFilter>
700
+ true
701
+ </canFilter>
702
+ </rval>
703
+ <rval>
704
+ <fieldName>
705
+ Id
706
+ </fieldName>
707
+ <displayFieldName>
708
+ Keyword ID
709
+ </displayFieldName>
710
+ <xmlAttributeName>
711
+ keywordID
712
+ </xmlAttributeName>
713
+ <fieldType>
714
+ Long
715
+ </fieldType>
716
+ <canSelect>
717
+ true
718
+ </canSelect>
719
+ <canFilter>
720
+ true
721
+ </canFilter>
722
+ </rval>
723
+ <rval>
724
+ <fieldName>
725
+ Impressions
726
+ </fieldName>
727
+ <displayFieldName>
728
+ Impressions
729
+ </displayFieldName>
730
+ <xmlAttributeName>
731
+ impressions
732
+ </xmlAttributeName>
733
+ <fieldType>
734
+ Long
735
+ </fieldType>
736
+ <canSelect>
737
+ true
738
+ </canSelect>
739
+ <canFilter>
740
+ true
741
+ </canFilter>
742
+ </rval>
743
+ <rval>
744
+ <fieldName>
745
+ KeywordMatchType
746
+ </fieldName>
747
+ <displayFieldName>
748
+ Match type
749
+ </displayFieldName>
750
+ <xmlAttributeName>
751
+ matchType
752
+ </xmlAttributeName>
753
+ <fieldType>
754
+ KeywordMatchType
755
+ </fieldType>
756
+ <enumValues>
757
+ EXACT
758
+ </enumValues>
759
+ <enumValues>
760
+ PHRASE
761
+ </enumValues>
762
+ <enumValues>
763
+ BROAD
764
+ </enumValues>
765
+ <canSelect>
766
+ true
767
+ </canSelect>
768
+ <canFilter>
769
+ true
770
+ </canFilter>
771
+ </rval>
772
+ <rval>
773
+ <fieldName>
774
+ KeywordText
775
+ </fieldName>
776
+ <displayFieldName>
777
+ Keyword text
778
+ </displayFieldName>
779
+ <xmlAttributeName>
780
+ keywordText
781
+ </xmlAttributeName>
782
+ <fieldType>
783
+ String
784
+ </fieldType>
785
+ <canSelect>
786
+ true
787
+ </canSelect>
788
+ <canFilter>
789
+ true
790
+ </canFilter>
791
+ </rval>
792
+ <rval>
793
+ <fieldName>
794
+ MaxCpc
795
+ </fieldName>
796
+ <displayFieldName>
797
+ Max. CPC
798
+ </displayFieldName>
799
+ <xmlAttributeName>
800
+ maxCPC
801
+ </xmlAttributeName>
802
+ <fieldType>
803
+ Bid
804
+ </fieldType>
805
+ <canSelect>
806
+ true
807
+ </canSelect>
808
+ <canFilter>
809
+ true
810
+ </canFilter>
811
+ </rval>
812
+ <rval>
813
+ <fieldName>
814
+ MaxCpm
815
+ </fieldName>
816
+ <displayFieldName>
817
+ Max. CPM
818
+ </displayFieldName>
819
+ <xmlAttributeName>
820
+ maxCPM
821
+ </xmlAttributeName>
822
+ <fieldType>
823
+ Bid
824
+ </fieldType>
825
+ <canSelect>
826
+ true
827
+ </canSelect>
828
+ <canFilter>
829
+ true
830
+ </canFilter>
831
+ </rval>
832
+ <rval>
833
+ <fieldName>
834
+ Month
835
+ </fieldName>
836
+ <displayFieldName>
837
+ Month
838
+ </displayFieldName>
839
+ <xmlAttributeName>
840
+ month
841
+ </xmlAttributeName>
842
+ <fieldType>
843
+ String
844
+ </fieldType>
845
+ <canSelect>
846
+ true
847
+ </canSelect>
848
+ <canFilter>
849
+ true
850
+ </canFilter>
851
+ </rval>
852
+ <rval>
853
+ <fieldName>
854
+ MonthOfYear
855
+ </fieldName>
856
+ <displayFieldName>
857
+ Month of Year
858
+ </displayFieldName>
859
+ <xmlAttributeName>
860
+ monthOfYear
861
+ </xmlAttributeName>
862
+ <fieldType>
863
+ MonthOfYearType
864
+ </fieldType>
865
+ <enumValues>
866
+ JANUARY
867
+ </enumValues>
868
+ <enumValues>
869
+ FEBRUARY
870
+ </enumValues>
871
+ <enumValues>
872
+ MARCH
873
+ </enumValues>
874
+ <enumValues>
875
+ APRIL
876
+ </enumValues>
877
+ <enumValues>
878
+ MAY
879
+ </enumValues>
880
+ <enumValues>
881
+ JUNE
882
+ </enumValues>
883
+ <enumValues>
884
+ JULY
885
+ </enumValues>
886
+ <enumValues>
887
+ AUGUST
888
+ </enumValues>
889
+ <enumValues>
890
+ SEPTEMBER
891
+ </enumValues>
892
+ <enumValues>
893
+ OCTOBER
894
+ </enumValues>
895
+ <enumValues>
896
+ NOVEMBER
897
+ </enumValues>
898
+ <enumValues>
899
+ DECEMBER
900
+ </enumValues>
901
+ <canSelect>
902
+ true
903
+ </canSelect>
904
+ <canFilter>
905
+ true
906
+ </canFilter>
907
+ </rval>
908
+ <rval>
909
+ <fieldName>
910
+ PlacementUrl
911
+ </fieldName>
912
+ <displayFieldName>
913
+ Keyword
914
+ </displayFieldName>
915
+ <xmlAttributeName>
916
+ keyword
917
+ </xmlAttributeName>
918
+ <fieldType>
919
+ String
920
+ </fieldType>
921
+ <canSelect>
922
+ true
923
+ </canSelect>
924
+ <canFilter>
925
+ true
926
+ </canFilter>
927
+ </rval>
928
+ <rval>
929
+ <fieldName>
930
+ PreferredPosition
931
+ </fieldName>
932
+ <displayFieldName>
933
+ Highest position
934
+ </displayFieldName>
935
+ <xmlAttributeName>
936
+ highestPosition
937
+ </xmlAttributeName>
938
+ <fieldType>
939
+ int
940
+ </fieldType>
941
+ <canSelect>
942
+ true
943
+ </canSelect>
944
+ <canFilter>
945
+ true
946
+ </canFilter>
947
+ </rval>
948
+ <rval>
949
+ <fieldName>
950
+ ProxyMaxCpc
951
+ </fieldName>
952
+ <displayFieldName>
953
+ Max. CPC
954
+ </displayFieldName>
955
+ <xmlAttributeName>
956
+ maxCPC
957
+ </xmlAttributeName>
958
+ <fieldType>
959
+ Bid
960
+ </fieldType>
961
+ <canSelect>
962
+ true
963
+ </canSelect>
964
+ <canFilter>
965
+ true
966
+ </canFilter>
967
+ </rval>
968
+ <rval>
969
+ <fieldName>
970
+ QualityScore
971
+ </fieldName>
972
+ <displayFieldName>
973
+ Quality score
974
+ </displayFieldName>
975
+ <xmlAttributeName>
976
+ qualityScore
977
+ </xmlAttributeName>
978
+ <fieldType>
979
+ Integer
980
+ </fieldType>
981
+ <canSelect>
982
+ true
983
+ </canSelect>
984
+ <canFilter>
985
+ true
986
+ </canFilter>
987
+ </rval>
988
+ <rval>
989
+ <fieldName>
990
+ Quarter
991
+ </fieldName>
992
+ <displayFieldName>
993
+ Quarter
994
+ </displayFieldName>
995
+ <xmlAttributeName>
996
+ quarter
997
+ </xmlAttributeName>
998
+ <fieldType>
999
+ String
1000
+ </fieldType>
1001
+ <canSelect>
1002
+ true
1003
+ </canSelect>
1004
+ <canFilter>
1005
+ true
1006
+ </canFilter>
1007
+ </rval>
1008
+ <rval>
1009
+ <fieldName>
1010
+ Status
1011
+ </fieldName>
1012
+ <displayFieldName>
1013
+ Keyword state
1014
+ </displayFieldName>
1015
+ <xmlAttributeName>
1016
+ keywordState
1017
+ </xmlAttributeName>
1018
+ <fieldType>
1019
+ UserStatus
1020
+ </fieldType>
1021
+ <enumValues>
1022
+ ACTIVE
1023
+ </enumValues>
1024
+ <enumValues>
1025
+ DELETED
1026
+ </enumValues>
1027
+ <enumValues>
1028
+ PAUSED
1029
+ </enumValues>
1030
+ <canSelect>
1031
+ true
1032
+ </canSelect>
1033
+ <canFilter>
1034
+ true
1035
+ </canFilter>
1036
+ </rval>
1037
+ <rval>
1038
+ <fieldName>
1039
+ TotalConvValue
1040
+ </fieldName>
1041
+ <displayFieldName>
1042
+ Total conv. value
1043
+ </displayFieldName>
1044
+ <xmlAttributeName>
1045
+ totalConvValue
1046
+ </xmlAttributeName>
1047
+ <fieldType>
1048
+ Long
1049
+ </fieldType>
1050
+ <canSelect>
1051
+ true
1052
+ </canSelect>
1053
+ <canFilter>
1054
+ true
1055
+ </canFilter>
1056
+ </rval>
1057
+ <rval>
1058
+ <fieldName>
1059
+ ValuePerConv
1060
+ </fieldName>
1061
+ <displayFieldName>
1062
+ Value / conv. (1-per-click)
1063
+ </displayFieldName>
1064
+ <xmlAttributeName>
1065
+ valueConv1PerClick
1066
+ </xmlAttributeName>
1067
+ <fieldType>
1068
+ Double
1069
+ </fieldType>
1070
+ <canSelect>
1071
+ true
1072
+ </canSelect>
1073
+ <canFilter>
1074
+ true
1075
+ </canFilter>
1076
+ </rval>
1077
+ <rval>
1078
+ <fieldName>
1079
+ ValuePerConversion
1080
+ </fieldName>
1081
+ <displayFieldName>
1082
+ Value / conv. (1-per-click)
1083
+ </displayFieldName>
1084
+ <xmlAttributeName>
1085
+ valueConv1PerClick
1086
+ </xmlAttributeName>
1087
+ <fieldType>
1088
+ Double
1089
+ </fieldType>
1090
+ <canSelect>
1091
+ true
1092
+ </canSelect>
1093
+ <canFilter>
1094
+ true
1095
+ </canFilter>
1096
+ </rval>
1097
+ <rval>
1098
+ <fieldName>
1099
+ ValuePerConversionManyPerClick
1100
+ </fieldName>
1101
+ <displayFieldName>
1102
+ Value / conv. (many-per-click)
1103
+ </displayFieldName>
1104
+ <xmlAttributeName>
1105
+ valueConvManyPerClick
1106
+ </xmlAttributeName>
1107
+ <fieldType>
1108
+ Double
1109
+ </fieldType>
1110
+ <canSelect>
1111
+ true
1112
+ </canSelect>
1113
+ <canFilter>
1114
+ true
1115
+ </canFilter>
1116
+ </rval>
1117
+ <rval>
1118
+ <fieldName>
1119
+ ValuePerConvManyPerClick
1120
+ </fieldName>
1121
+ <displayFieldName>
1122
+ Value / conv. (many-per-click)
1123
+ </displayFieldName>
1124
+ <xmlAttributeName>
1125
+ valueConvManyPerClick
1126
+ </xmlAttributeName>
1127
+ <fieldType>
1128
+ Double
1129
+ </fieldType>
1130
+ <canSelect>
1131
+ true
1132
+ </canSelect>
1133
+ <canFilter>
1134
+ true
1135
+ </canFilter>
1136
+ </rval>
1137
+ <rval>
1138
+ <fieldName>
1139
+ ViewThroughConversions
1140
+ </fieldName>
1141
+ <displayFieldName>
1142
+ View-through conv.
1143
+ </displayFieldName>
1144
+ <xmlAttributeName>
1145
+ viewThroughConv
1146
+ </xmlAttributeName>
1147
+ <fieldType>
1148
+ Long
1149
+ </fieldType>
1150
+ <canSelect>
1151
+ true
1152
+ </canSelect>
1153
+ <canFilter>
1154
+ true
1155
+ </canFilter>
1156
+ </rval>
1157
+ <rval>
1158
+ <fieldName>
1159
+ Week
1160
+ </fieldName>
1161
+ <displayFieldName>
1162
+ Week
1163
+ </displayFieldName>
1164
+ <xmlAttributeName>
1165
+ week
1166
+ </xmlAttributeName>
1167
+ <fieldType>
1168
+ String
1169
+ </fieldType>
1170
+ <canSelect>
1171
+ true
1172
+ </canSelect>
1173
+ <canFilter>
1174
+ true
1175
+ </canFilter>
1176
+ </rval>
1177
+ <rval>
1178
+ <fieldName>
1179
+ Year
1180
+ </fieldName>
1181
+ <displayFieldName>
1182
+ Year
1183
+ </displayFieldName>
1184
+ <xmlAttributeName>
1185
+ year
1186
+ </xmlAttributeName>
1187
+ <fieldType>
1188
+ Integer
1189
+ </fieldType>
1190
+ <canSelect>
1191
+ true
1192
+ </canSelect>
1193
+ <canFilter>
1194
+ true
1195
+ </canFilter>
1196
+ </rval>
1197
+ </getReportFieldsResponse>
1198
+ </soap:Body>
1199
+ </soap:Envelope>