google-apis-doubleclicksearch_v2 0.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -0,0 +1,28 @@
1
+ # Copyright 2020 Google LLC
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+ module Google
16
+ module Apis
17
+ module DoubleclicksearchV2
18
+ # Version of the google-apis-doubleclicksearch_v2 gem
19
+ GEM_VERSION = "0.1.0"
20
+
21
+ # Version of the code generator used to generate this client
22
+ GENERATOR_VERSION = "0.1.1"
23
+
24
+ # Revision of the discovery document this client was generated from
25
+ REVISION = "20200825"
26
+ end
27
+ end
28
+ end
@@ -0,0 +1,348 @@
1
+ # Copyright 2020 Google LLC
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+ require 'date'
16
+ require 'google/apis/core/base_service'
17
+ require 'google/apis/core/json_representation'
18
+ require 'google/apis/core/hashable'
19
+ require 'google/apis/errors'
20
+
21
+ module Google
22
+ module Apis
23
+ module DoubleclicksearchV2
24
+
25
+ class Availability
26
+ class Representation < Google::Apis::Core::JsonRepresentation; end
27
+
28
+ include Google::Apis::Core::JsonObjectSupport
29
+ end
30
+
31
+ class Conversion
32
+ class Representation < Google::Apis::Core::JsonRepresentation; end
33
+
34
+ include Google::Apis::Core::JsonObjectSupport
35
+ end
36
+
37
+ class ConversionList
38
+ class Representation < Google::Apis::Core::JsonRepresentation; end
39
+
40
+ include Google::Apis::Core::JsonObjectSupport
41
+ end
42
+
43
+ class CustomDimension
44
+ class Representation < Google::Apis::Core::JsonRepresentation; end
45
+
46
+ include Google::Apis::Core::JsonObjectSupport
47
+ end
48
+
49
+ class CustomMetric
50
+ class Representation < Google::Apis::Core::JsonRepresentation; end
51
+
52
+ include Google::Apis::Core::JsonObjectSupport
53
+ end
54
+
55
+ class Report
56
+ class Representation < Google::Apis::Core::JsonRepresentation; end
57
+
58
+ class File
59
+ class Representation < Google::Apis::Core::JsonRepresentation; end
60
+
61
+ include Google::Apis::Core::JsonObjectSupport
62
+ end
63
+
64
+ include Google::Apis::Core::JsonObjectSupport
65
+ end
66
+
67
+ class ReportApiColumnSpec
68
+ class Representation < Google::Apis::Core::JsonRepresentation; end
69
+
70
+ include Google::Apis::Core::JsonObjectSupport
71
+ end
72
+
73
+ class ReportRequest
74
+ class Representation < Google::Apis::Core::JsonRepresentation; end
75
+
76
+ class Filter
77
+ class Representation < Google::Apis::Core::JsonRepresentation; end
78
+
79
+ include Google::Apis::Core::JsonObjectSupport
80
+ end
81
+
82
+ class OrderBy
83
+ class Representation < Google::Apis::Core::JsonRepresentation; end
84
+
85
+ include Google::Apis::Core::JsonObjectSupport
86
+ end
87
+
88
+ class ReportScope
89
+ class Representation < Google::Apis::Core::JsonRepresentation; end
90
+
91
+ include Google::Apis::Core::JsonObjectSupport
92
+ end
93
+
94
+ class TimeRange
95
+ class Representation < Google::Apis::Core::JsonRepresentation; end
96
+
97
+ include Google::Apis::Core::JsonObjectSupport
98
+ end
99
+
100
+ include Google::Apis::Core::JsonObjectSupport
101
+ end
102
+
103
+ class SavedColumn
104
+ class Representation < Google::Apis::Core::JsonRepresentation; end
105
+
106
+ include Google::Apis::Core::JsonObjectSupport
107
+ end
108
+
109
+ class SavedColumnList
110
+ class Representation < Google::Apis::Core::JsonRepresentation; end
111
+
112
+ include Google::Apis::Core::JsonObjectSupport
113
+ end
114
+
115
+ class UpdateAvailabilityRequest
116
+ class Representation < Google::Apis::Core::JsonRepresentation; end
117
+
118
+ include Google::Apis::Core::JsonObjectSupport
119
+ end
120
+
121
+ class UpdateAvailabilityResponse
122
+ class Representation < Google::Apis::Core::JsonRepresentation; end
123
+
124
+ include Google::Apis::Core::JsonObjectSupport
125
+ end
126
+
127
+ class Availability
128
+ # @private
129
+ class Representation < Google::Apis::Core::JsonRepresentation
130
+ property :advertiser_id, :numeric_string => true, as: 'advertiserId'
131
+ property :agency_id, :numeric_string => true, as: 'agencyId'
132
+ property :availability_timestamp, :numeric_string => true, as: 'availabilityTimestamp'
133
+ property :segmentation_id, :numeric_string => true, as: 'segmentationId'
134
+ property :segmentation_name, as: 'segmentationName'
135
+ property :segmentation_type, as: 'segmentationType'
136
+ end
137
+ end
138
+
139
+ class Conversion
140
+ # @private
141
+ class Representation < Google::Apis::Core::JsonRepresentation
142
+ property :ad_group_id, :numeric_string => true, as: 'adGroupId'
143
+ property :ad_id, :numeric_string => true, as: 'adId'
144
+ property :advertiser_id, :numeric_string => true, as: 'advertiserId'
145
+ property :agency_id, :numeric_string => true, as: 'agencyId'
146
+ property :attribution_model, as: 'attributionModel'
147
+ property :campaign_id, :numeric_string => true, as: 'campaignId'
148
+ property :channel, as: 'channel'
149
+ property :click_id, as: 'clickId'
150
+ property :conversion_id, as: 'conversionId'
151
+ property :conversion_modified_timestamp, :numeric_string => true, as: 'conversionModifiedTimestamp'
152
+ property :conversion_timestamp, as: 'conversionTimestamp'
153
+ property :count_millis, :numeric_string => true, as: 'countMillis'
154
+ property :criterion_id, :numeric_string => true, as: 'criterionId'
155
+ property :currency_code, as: 'currencyCode'
156
+ collection :custom_dimension, as: 'customDimension', class: Google::Apis::DoubleclicksearchV2::CustomDimension, decorator: Google::Apis::DoubleclicksearchV2::CustomDimension::Representation
157
+
158
+ collection :custom_metric, as: 'customMetric', class: Google::Apis::DoubleclicksearchV2::CustomMetric, decorator: Google::Apis::DoubleclicksearchV2::CustomMetric::Representation
159
+
160
+ property :device_type, as: 'deviceType'
161
+ property :ds_conversion_id, :numeric_string => true, as: 'dsConversionId'
162
+ property :engine_account_id, :numeric_string => true, as: 'engineAccountId'
163
+ property :floodlight_order_id, as: 'floodlightOrderId'
164
+ property :inventory_account_id, :numeric_string => true, as: 'inventoryAccountId'
165
+ property :product_country, as: 'productCountry'
166
+ property :product_group_id, :numeric_string => true, as: 'productGroupId'
167
+ property :product_id, as: 'productId'
168
+ property :product_language, as: 'productLanguage'
169
+ property :quantity_millis, :numeric_string => true, as: 'quantityMillis'
170
+ property :revenue_micros, as: 'revenueMicros'
171
+ property :segmentation_id, :numeric_string => true, as: 'segmentationId'
172
+ property :segmentation_name, as: 'segmentationName'
173
+ property :segmentation_type, as: 'segmentationType'
174
+ property :state, as: 'state'
175
+ property :store_id, as: 'storeId'
176
+ property :type, as: 'type'
177
+ end
178
+ end
179
+
180
+ class ConversionList
181
+ # @private
182
+ class Representation < Google::Apis::Core::JsonRepresentation
183
+ collection :conversion, as: 'conversion', class: Google::Apis::DoubleclicksearchV2::Conversion, decorator: Google::Apis::DoubleclicksearchV2::Conversion::Representation
184
+
185
+ property :kind, as: 'kind'
186
+ end
187
+ end
188
+
189
+ class CustomDimension
190
+ # @private
191
+ class Representation < Google::Apis::Core::JsonRepresentation
192
+ property :name, as: 'name'
193
+ property :value, as: 'value'
194
+ end
195
+ end
196
+
197
+ class CustomMetric
198
+ # @private
199
+ class Representation < Google::Apis::Core::JsonRepresentation
200
+ property :name, as: 'name'
201
+ property :value, as: 'value'
202
+ end
203
+ end
204
+
205
+ class Report
206
+ # @private
207
+ class Representation < Google::Apis::Core::JsonRepresentation
208
+ collection :files, as: 'files', class: Google::Apis::DoubleclicksearchV2::Report::File, decorator: Google::Apis::DoubleclicksearchV2::Report::File::Representation
209
+
210
+ property :id, as: 'id'
211
+ property :is_report_ready, as: 'isReportReady'
212
+ property :kind, as: 'kind'
213
+ property :request, as: 'request', class: Google::Apis::DoubleclicksearchV2::ReportRequest, decorator: Google::Apis::DoubleclicksearchV2::ReportRequest::Representation
214
+
215
+ property :row_count, as: 'rowCount'
216
+ collection :rows, as: 'rows'
217
+ property :statistics_currency_code, as: 'statisticsCurrencyCode'
218
+ property :statistics_time_zone, as: 'statisticsTimeZone'
219
+ end
220
+
221
+ class File
222
+ # @private
223
+ class Representation < Google::Apis::Core::JsonRepresentation
224
+ property :byte_count, :numeric_string => true, as: 'byteCount'
225
+ property :url, as: 'url'
226
+ end
227
+ end
228
+ end
229
+
230
+ class ReportApiColumnSpec
231
+ # @private
232
+ class Representation < Google::Apis::Core::JsonRepresentation
233
+ property :column_name, as: 'columnName'
234
+ property :custom_dimension_name, as: 'customDimensionName'
235
+ property :custom_metric_name, as: 'customMetricName'
236
+ property :end_date, as: 'endDate'
237
+ property :group_by_column, as: 'groupByColumn'
238
+ property :header_text, as: 'headerText'
239
+ property :platform_source, as: 'platformSource'
240
+ property :product_report_perspective, as: 'productReportPerspective'
241
+ property :saved_column_name, as: 'savedColumnName'
242
+ property :start_date, as: 'startDate'
243
+ end
244
+ end
245
+
246
+ class ReportRequest
247
+ # @private
248
+ class Representation < Google::Apis::Core::JsonRepresentation
249
+ collection :columns, as: 'columns', class: Google::Apis::DoubleclicksearchV2::ReportApiColumnSpec, decorator: Google::Apis::DoubleclicksearchV2::ReportApiColumnSpec::Representation
250
+
251
+ property :download_format, as: 'downloadFormat'
252
+ collection :filters, as: 'filters', class: Google::Apis::DoubleclicksearchV2::ReportRequest::Filter, decorator: Google::Apis::DoubleclicksearchV2::ReportRequest::Filter::Representation
253
+
254
+ property :include_deleted_entities, as: 'includeDeletedEntities'
255
+ property :include_removed_entities, as: 'includeRemovedEntities'
256
+ property :max_rows_per_file, as: 'maxRowsPerFile'
257
+ collection :order_by, as: 'orderBy', class: Google::Apis::DoubleclicksearchV2::ReportRequest::OrderBy, decorator: Google::Apis::DoubleclicksearchV2::ReportRequest::OrderBy::Representation
258
+
259
+ property :report_scope, as: 'reportScope', class: Google::Apis::DoubleclicksearchV2::ReportRequest::ReportScope, decorator: Google::Apis::DoubleclicksearchV2::ReportRequest::ReportScope::Representation
260
+
261
+ property :report_type, as: 'reportType'
262
+ property :row_count, as: 'rowCount'
263
+ property :start_row, as: 'startRow'
264
+ property :statistics_currency, as: 'statisticsCurrency'
265
+ property :time_range, as: 'timeRange', class: Google::Apis::DoubleclicksearchV2::ReportRequest::TimeRange, decorator: Google::Apis::DoubleclicksearchV2::ReportRequest::TimeRange::Representation
266
+
267
+ property :verify_single_time_zone, as: 'verifySingleTimeZone'
268
+ end
269
+
270
+ class Filter
271
+ # @private
272
+ class Representation < Google::Apis::Core::JsonRepresentation
273
+ property :column, as: 'column', class: Google::Apis::DoubleclicksearchV2::ReportApiColumnSpec, decorator: Google::Apis::DoubleclicksearchV2::ReportApiColumnSpec::Representation
274
+
275
+ property :operator, as: 'operator'
276
+ collection :values, as: 'values'
277
+ end
278
+ end
279
+
280
+ class OrderBy
281
+ # @private
282
+ class Representation < Google::Apis::Core::JsonRepresentation
283
+ property :column, as: 'column', class: Google::Apis::DoubleclicksearchV2::ReportApiColumnSpec, decorator: Google::Apis::DoubleclicksearchV2::ReportApiColumnSpec::Representation
284
+
285
+ property :sort_order, as: 'sortOrder'
286
+ end
287
+ end
288
+
289
+ class ReportScope
290
+ # @private
291
+ class Representation < Google::Apis::Core::JsonRepresentation
292
+ property :ad_group_id, :numeric_string => true, as: 'adGroupId'
293
+ property :ad_id, :numeric_string => true, as: 'adId'
294
+ property :advertiser_id, :numeric_string => true, as: 'advertiserId'
295
+ property :agency_id, :numeric_string => true, as: 'agencyId'
296
+ property :campaign_id, :numeric_string => true, as: 'campaignId'
297
+ property :engine_account_id, :numeric_string => true, as: 'engineAccountId'
298
+ property :keyword_id, :numeric_string => true, as: 'keywordId'
299
+ end
300
+ end
301
+
302
+ class TimeRange
303
+ # @private
304
+ class Representation < Google::Apis::Core::JsonRepresentation
305
+ property :changed_attributes_since_timestamp, as: 'changedAttributesSinceTimestamp'
306
+ property :changed_metrics_since_timestamp, as: 'changedMetricsSinceTimestamp'
307
+ property :end_date, as: 'endDate'
308
+ property :start_date, as: 'startDate'
309
+ end
310
+ end
311
+ end
312
+
313
+ class SavedColumn
314
+ # @private
315
+ class Representation < Google::Apis::Core::JsonRepresentation
316
+ property :kind, as: 'kind'
317
+ property :saved_column_name, as: 'savedColumnName'
318
+ property :type, as: 'type'
319
+ end
320
+ end
321
+
322
+ class SavedColumnList
323
+ # @private
324
+ class Representation < Google::Apis::Core::JsonRepresentation
325
+ collection :items, as: 'items', class: Google::Apis::DoubleclicksearchV2::SavedColumn, decorator: Google::Apis::DoubleclicksearchV2::SavedColumn::Representation
326
+
327
+ property :kind, as: 'kind'
328
+ end
329
+ end
330
+
331
+ class UpdateAvailabilityRequest
332
+ # @private
333
+ class Representation < Google::Apis::Core::JsonRepresentation
334
+ collection :availabilities, as: 'availabilities', class: Google::Apis::DoubleclicksearchV2::Availability, decorator: Google::Apis::DoubleclicksearchV2::Availability::Representation
335
+
336
+ end
337
+ end
338
+
339
+ class UpdateAvailabilityResponse
340
+ # @private
341
+ class Representation < Google::Apis::Core::JsonRepresentation
342
+ collection :availabilities, as: 'availabilities', class: Google::Apis::DoubleclicksearchV2::Availability, decorator: Google::Apis::DoubleclicksearchV2::Availability::Representation
343
+
344
+ end
345
+ end
346
+ end
347
+ end
348
+ end
@@ -0,0 +1,374 @@
1
+ # Copyright 2020 Google LLC
2
+ #
3
+ # Licensed under the Apache License, Version 2.0 (the "License");
4
+ # you may not use this file except in compliance with the License.
5
+ # You may obtain a copy of the License at
6
+ #
7
+ # http://www.apache.org/licenses/LICENSE-2.0
8
+ #
9
+ # Unless required by applicable law or agreed to in writing, software
10
+ # distributed under the License is distributed on an "AS IS" BASIS,
11
+ # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12
+ # See the License for the specific language governing permissions and
13
+ # limitations under the License.
14
+
15
+ require 'google/apis/core/base_service'
16
+ require 'google/apis/core/json_representation'
17
+ require 'google/apis/core/hashable'
18
+ require 'google/apis/errors'
19
+
20
+ module Google
21
+ module Apis
22
+ module DoubleclicksearchV2
23
+ # Search Ads 360 API
24
+ #
25
+ # The Search Ads 360 API allows developers to automate uploading conversions and
26
+ # downloading reports from Search Ads 360.
27
+ #
28
+ # @example
29
+ # require 'google/apis/doubleclicksearch_v2'
30
+ #
31
+ # Doubleclicksearch = Google::Apis::DoubleclicksearchV2 # Alias the module
32
+ # service = Doubleclicksearch::DoubleclicksearchService.new
33
+ #
34
+ # @see https://developers.google.com/search-ads
35
+ class DoubleclicksearchService < Google::Apis::Core::BaseService
36
+ # @return [String]
37
+ # API key. Your API key identifies your project and provides you with API access,
38
+ # quota, and reports. Required unless you provide an OAuth 2.0 token.
39
+ attr_accessor :key
40
+
41
+ # @return [String]
42
+ # Available to use for quota purposes for server-side applications. Can be any
43
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
44
+ attr_accessor :quota_user
45
+
46
+ def initialize
47
+ super('https://doubleclicksearch.googleapis.com/', '',
48
+ client_name: 'google-apis-doubleclicksearch_v2',
49
+ client_version: Google::Apis::DoubleclicksearchV2::GEM_VERSION)
50
+ @batch_path = 'batch'
51
+ end
52
+
53
+ # Retrieves a list of conversions from a DoubleClick Search engine account.
54
+ # @param [Fixnum] agency_id
55
+ # Numeric ID of the agency.
56
+ # @param [Fixnum] advertiser_id
57
+ # Numeric ID of the advertiser.
58
+ # @param [Fixnum] engine_account_id
59
+ # Numeric ID of the engine account.
60
+ # @param [Fixnum] end_date
61
+ # Last date (inclusive) on which to retrieve conversions. Format is yyyymmdd.
62
+ # @param [Fixnum] row_count
63
+ # The number of conversions to return per call.
64
+ # @param [Fixnum] start_date
65
+ # First date (inclusive) on which to retrieve conversions. Format is yyyymmdd.
66
+ # @param [Fixnum] start_row
67
+ # The 0-based starting index for retrieving conversions results.
68
+ # @param [Fixnum] ad_group_id
69
+ # Numeric ID of the ad group.
70
+ # @param [Fixnum] ad_id
71
+ # Numeric ID of the ad.
72
+ # @param [Fixnum] campaign_id
73
+ # Numeric ID of the campaign.
74
+ # @param [Fixnum] criterion_id
75
+ # Numeric ID of the criterion.
76
+ # @param [String] fields
77
+ # Selector specifying which fields to include in a partial response.
78
+ # @param [String] quota_user
79
+ # Available to use for quota purposes for server-side applications. Can be any
80
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
81
+ # @param [Google::Apis::RequestOptions] options
82
+ # Request-specific options
83
+ #
84
+ # @yield [result, err] Result & error if block supplied
85
+ # @yieldparam result [Google::Apis::DoubleclicksearchV2::ConversionList] parsed result object
86
+ # @yieldparam err [StandardError] error object if request failed
87
+ #
88
+ # @return [Google::Apis::DoubleclicksearchV2::ConversionList]
89
+ #
90
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
91
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
92
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
93
+ def get_conversion(agency_id, advertiser_id, engine_account_id, end_date, row_count, start_date, start_row, ad_group_id: nil, ad_id: nil, campaign_id: nil, criterion_id: nil, fields: nil, quota_user: nil, options: nil, &block)
94
+ command = make_simple_command(:get, 'doubleclicksearch/v2/agency/{agencyId}/advertiser/{advertiserId}/engine/{engineAccountId}/conversion', options)
95
+ command.response_representation = Google::Apis::DoubleclicksearchV2::ConversionList::Representation
96
+ command.response_class = Google::Apis::DoubleclicksearchV2::ConversionList
97
+ command.params['agencyId'] = agency_id unless agency_id.nil?
98
+ command.params['advertiserId'] = advertiser_id unless advertiser_id.nil?
99
+ command.params['engineAccountId'] = engine_account_id unless engine_account_id.nil?
100
+ command.query['adGroupId'] = ad_group_id unless ad_group_id.nil?
101
+ command.query['adId'] = ad_id unless ad_id.nil?
102
+ command.query['campaignId'] = campaign_id unless campaign_id.nil?
103
+ command.query['criterionId'] = criterion_id unless criterion_id.nil?
104
+ command.query['endDate'] = end_date unless end_date.nil?
105
+ command.query['rowCount'] = row_count unless row_count.nil?
106
+ command.query['startDate'] = start_date unless start_date.nil?
107
+ command.query['startRow'] = start_row unless start_row.nil?
108
+ command.query['fields'] = fields unless fields.nil?
109
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
110
+ execute_or_queue_command(command, &block)
111
+ end
112
+
113
+ # Inserts a batch of new conversions into DoubleClick Search.
114
+ # @param [Google::Apis::DoubleclicksearchV2::ConversionList] conversion_list_object
115
+ # @param [String] fields
116
+ # Selector specifying which fields to include in a partial response.
117
+ # @param [String] quota_user
118
+ # Available to use for quota purposes for server-side applications. Can be any
119
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
120
+ # @param [Google::Apis::RequestOptions] options
121
+ # Request-specific options
122
+ #
123
+ # @yield [result, err] Result & error if block supplied
124
+ # @yieldparam result [Google::Apis::DoubleclicksearchV2::ConversionList] parsed result object
125
+ # @yieldparam err [StandardError] error object if request failed
126
+ #
127
+ # @return [Google::Apis::DoubleclicksearchV2::ConversionList]
128
+ #
129
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
130
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
131
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
132
+ def insert_conversion(conversion_list_object = nil, fields: nil, quota_user: nil, options: nil, &block)
133
+ command = make_simple_command(:post, 'doubleclicksearch/v2/conversion', options)
134
+ command.request_representation = Google::Apis::DoubleclicksearchV2::ConversionList::Representation
135
+ command.request_object = conversion_list_object
136
+ command.response_representation = Google::Apis::DoubleclicksearchV2::ConversionList::Representation
137
+ command.response_class = Google::Apis::DoubleclicksearchV2::ConversionList
138
+ command.query['fields'] = fields unless fields.nil?
139
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
140
+ execute_or_queue_command(command, &block)
141
+ end
142
+
143
+ # Updates a batch of conversions in DoubleClick Search.
144
+ # @param [Google::Apis::DoubleclicksearchV2::ConversionList] conversion_list_object
145
+ # @param [String] fields
146
+ # Selector specifying which fields to include in a partial response.
147
+ # @param [String] quota_user
148
+ # Available to use for quota purposes for server-side applications. Can be any
149
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
150
+ # @param [Google::Apis::RequestOptions] options
151
+ # Request-specific options
152
+ #
153
+ # @yield [result, err] Result & error if block supplied
154
+ # @yieldparam result [Google::Apis::DoubleclicksearchV2::ConversionList] parsed result object
155
+ # @yieldparam err [StandardError] error object if request failed
156
+ #
157
+ # @return [Google::Apis::DoubleclicksearchV2::ConversionList]
158
+ #
159
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
160
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
161
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
162
+ def update_conversion(conversion_list_object = nil, fields: nil, quota_user: nil, options: nil, &block)
163
+ command = make_simple_command(:put, 'doubleclicksearch/v2/conversion', options)
164
+ command.request_representation = Google::Apis::DoubleclicksearchV2::ConversionList::Representation
165
+ command.request_object = conversion_list_object
166
+ command.response_representation = Google::Apis::DoubleclicksearchV2::ConversionList::Representation
167
+ command.response_class = Google::Apis::DoubleclicksearchV2::ConversionList
168
+ command.query['fields'] = fields unless fields.nil?
169
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
170
+ execute_or_queue_command(command, &block)
171
+ end
172
+
173
+ # Updates the availabilities of a batch of floodlight activities in DoubleClick
174
+ # Search.
175
+ # @param [Google::Apis::DoubleclicksearchV2::UpdateAvailabilityRequest] update_availability_request_object
176
+ # @param [String] fields
177
+ # Selector specifying which fields to include in a partial response.
178
+ # @param [String] quota_user
179
+ # Available to use for quota purposes for server-side applications. Can be any
180
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
181
+ # @param [Google::Apis::RequestOptions] options
182
+ # Request-specific options
183
+ #
184
+ # @yield [result, err] Result & error if block supplied
185
+ # @yieldparam result [Google::Apis::DoubleclicksearchV2::UpdateAvailabilityResponse] parsed result object
186
+ # @yieldparam err [StandardError] error object if request failed
187
+ #
188
+ # @return [Google::Apis::DoubleclicksearchV2::UpdateAvailabilityResponse]
189
+ #
190
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
191
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
192
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
193
+ def update_conversion_availability(update_availability_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
194
+ command = make_simple_command(:post, 'doubleclicksearch/v2/conversion/updateAvailability', options)
195
+ command.request_representation = Google::Apis::DoubleclicksearchV2::UpdateAvailabilityRequest::Representation
196
+ command.request_object = update_availability_request_object
197
+ command.response_representation = Google::Apis::DoubleclicksearchV2::UpdateAvailabilityResponse::Representation
198
+ command.response_class = Google::Apis::DoubleclicksearchV2::UpdateAvailabilityResponse
199
+ command.query['fields'] = fields unless fields.nil?
200
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
201
+ execute_or_queue_command(command, &block)
202
+ end
203
+
204
+ # Generates and returns a report immediately.
205
+ # @param [Google::Apis::DoubleclicksearchV2::ReportRequest] report_request_object
206
+ # @param [String] fields
207
+ # Selector specifying which fields to include in a partial response.
208
+ # @param [String] quota_user
209
+ # Available to use for quota purposes for server-side applications. Can be any
210
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
211
+ # @param [Google::Apis::RequestOptions] options
212
+ # Request-specific options
213
+ #
214
+ # @yield [result, err] Result & error if block supplied
215
+ # @yieldparam result [Google::Apis::DoubleclicksearchV2::Report] parsed result object
216
+ # @yieldparam err [StandardError] error object if request failed
217
+ #
218
+ # @return [Google::Apis::DoubleclicksearchV2::Report]
219
+ #
220
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
221
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
222
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
223
+ def generate_report(report_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
224
+ command = make_simple_command(:post, 'doubleclicksearch/v2/reports/generate', options)
225
+ command.request_representation = Google::Apis::DoubleclicksearchV2::ReportRequest::Representation
226
+ command.request_object = report_request_object
227
+ command.response_representation = Google::Apis::DoubleclicksearchV2::Report::Representation
228
+ command.response_class = Google::Apis::DoubleclicksearchV2::Report
229
+ command.query['fields'] = fields unless fields.nil?
230
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
231
+ execute_or_queue_command(command, &block)
232
+ end
233
+
234
+ # Polls for the status of a report request.
235
+ # @param [String] report_id
236
+ # ID of the report request being polled.
237
+ # @param [String] fields
238
+ # Selector specifying which fields to include in a partial response.
239
+ # @param [String] quota_user
240
+ # Available to use for quota purposes for server-side applications. Can be any
241
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
242
+ # @param [Google::Apis::RequestOptions] options
243
+ # Request-specific options
244
+ #
245
+ # @yield [result, err] Result & error if block supplied
246
+ # @yieldparam result [Google::Apis::DoubleclicksearchV2::Report] parsed result object
247
+ # @yieldparam err [StandardError] error object if request failed
248
+ #
249
+ # @return [Google::Apis::DoubleclicksearchV2::Report]
250
+ #
251
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
252
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
253
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
254
+ def get_report(report_id, fields: nil, quota_user: nil, options: nil, &block)
255
+ command = make_simple_command(:get, 'doubleclicksearch/v2/reports/{reportId}', options)
256
+ command.response_representation = Google::Apis::DoubleclicksearchV2::Report::Representation
257
+ command.response_class = Google::Apis::DoubleclicksearchV2::Report
258
+ command.params['reportId'] = report_id unless report_id.nil?
259
+ command.query['fields'] = fields unless fields.nil?
260
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
261
+ execute_or_queue_command(command, &block)
262
+ end
263
+
264
+ # Downloads a report file encoded in UTF-8.
265
+ # @param [String] report_id
266
+ # ID of the report.
267
+ # @param [Fixnum] report_fragment
268
+ # The index of the report fragment to download.
269
+ # @param [String] fields
270
+ # Selector specifying which fields to include in a partial response.
271
+ # @param [String] quota_user
272
+ # Available to use for quota purposes for server-side applications. Can be any
273
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
274
+ # @param [IO, String] download_dest
275
+ # IO stream or filename to receive content download
276
+ # @param [Google::Apis::RequestOptions] options
277
+ # Request-specific options
278
+ #
279
+ # @yield [result, err] Result & error if block supplied
280
+ # @yieldparam result [NilClass] No result returned for this method
281
+ # @yieldparam err [StandardError] error object if request failed
282
+ #
283
+ # @return [void]
284
+ #
285
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
286
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
287
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
288
+ def get_report_file(report_id, report_fragment, fields: nil, quota_user: nil, download_dest: nil, options: nil, &block)
289
+ if download_dest.nil?
290
+ command = make_simple_command(:get, 'doubleclicksearch/v2/reports/{reportId}/files/{reportFragment}', options)
291
+ else
292
+ command = make_download_command(:get, 'doubleclicksearch/v2/reports/{reportId}/files/{reportFragment}', options)
293
+ command.download_dest = download_dest
294
+ end
295
+ command.params['reportId'] = report_id unless report_id.nil?
296
+ command.params['reportFragment'] = report_fragment unless report_fragment.nil?
297
+ command.query['fields'] = fields unless fields.nil?
298
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
299
+ execute_or_queue_command(command, &block)
300
+ end
301
+
302
+ # Inserts a report request into the reporting system.
303
+ # @param [Google::Apis::DoubleclicksearchV2::ReportRequest] report_request_object
304
+ # @param [String] fields
305
+ # Selector specifying which fields to include in a partial response.
306
+ # @param [String] quota_user
307
+ # Available to use for quota purposes for server-side applications. Can be any
308
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
309
+ # @param [Google::Apis::RequestOptions] options
310
+ # Request-specific options
311
+ #
312
+ # @yield [result, err] Result & error if block supplied
313
+ # @yieldparam result [Google::Apis::DoubleclicksearchV2::Report] parsed result object
314
+ # @yieldparam err [StandardError] error object if request failed
315
+ #
316
+ # @return [Google::Apis::DoubleclicksearchV2::Report]
317
+ #
318
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
319
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
320
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
321
+ def request_report(report_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
322
+ command = make_simple_command(:post, 'doubleclicksearch/v2/reports', options)
323
+ command.request_representation = Google::Apis::DoubleclicksearchV2::ReportRequest::Representation
324
+ command.request_object = report_request_object
325
+ command.response_representation = Google::Apis::DoubleclicksearchV2::Report::Representation
326
+ command.response_class = Google::Apis::DoubleclicksearchV2::Report
327
+ command.query['fields'] = fields unless fields.nil?
328
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
329
+ execute_or_queue_command(command, &block)
330
+ end
331
+
332
+ # Retrieve the list of saved columns for a specified advertiser.
333
+ # @param [Fixnum] agency_id
334
+ # DS ID of the agency.
335
+ # @param [Fixnum] advertiser_id
336
+ # DS ID of the advertiser.
337
+ # @param [String] fields
338
+ # Selector specifying which fields to include in a partial response.
339
+ # @param [String] quota_user
340
+ # Available to use for quota purposes for server-side applications. Can be any
341
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
342
+ # @param [Google::Apis::RequestOptions] options
343
+ # Request-specific options
344
+ #
345
+ # @yield [result, err] Result & error if block supplied
346
+ # @yieldparam result [Google::Apis::DoubleclicksearchV2::SavedColumnList] parsed result object
347
+ # @yieldparam err [StandardError] error object if request failed
348
+ #
349
+ # @return [Google::Apis::DoubleclicksearchV2::SavedColumnList]
350
+ #
351
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
352
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
353
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
354
+ def list_saved_columns(agency_id, advertiser_id, fields: nil, quota_user: nil, options: nil, &block)
355
+ command = make_simple_command(:get, 'doubleclicksearch/v2/agency/{agencyId}/advertiser/{advertiserId}/savedcolumns', options)
356
+ command.response_representation = Google::Apis::DoubleclicksearchV2::SavedColumnList::Representation
357
+ command.response_class = Google::Apis::DoubleclicksearchV2::SavedColumnList
358
+ command.params['agencyId'] = agency_id unless agency_id.nil?
359
+ command.params['advertiserId'] = advertiser_id unless advertiser_id.nil?
360
+ command.query['fields'] = fields unless fields.nil?
361
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
362
+ execute_or_queue_command(command, &block)
363
+ end
364
+
365
+ protected
366
+
367
+ def apply_command_defaults(command)
368
+ command.query['key'] = key unless key.nil?
369
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
370
+ end
371
+ end
372
+ end
373
+ end
374
+ end