google-apis-cloudasset_v1p7beta1 0.1.0

Sign up to get free protection for your applications and to get access to all the features.
@@ -0,0 +1,889 @@
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 CloudassetV1p7beta1
23
+ # Cloud Asset API
24
+ #
25
+ # The cloud asset API manages the history and inventory of cloud resources.
26
+ #
27
+ # @example
28
+ # require 'google/apis/cloudasset_v1p7beta1'
29
+ #
30
+ # Cloudasset = Google::Apis::CloudassetV1p7beta1 # Alias the module
31
+ # service = Cloudasset::CloudAssetService.new
32
+ #
33
+ # @see https://cloud.google.com/asset-inventory/docs/quickstart
34
+ class CloudAssetService < Google::Apis::Core::BaseService
35
+ # @return [String]
36
+ # API key. Your API key identifies your project and provides you with API access,
37
+ # quota, and reports. Required unless you provide an OAuth 2.0 token.
38
+ attr_accessor :key
39
+
40
+ # @return [String]
41
+ # Available to use for quota purposes for server-side applications. Can be any
42
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
43
+ attr_accessor :quota_user
44
+
45
+ def initialize
46
+ super('https://cloudasset.googleapis.com/', '',
47
+ client_name: 'google-apis-cloudasset_v1p7beta1',
48
+ client_version: Google::Apis::CloudassetV1p7beta1::GEM_VERSION)
49
+ @batch_path = 'batch'
50
+ end
51
+
52
+ # Lists asset updates within a time window and returns paged results in response.
53
+ # @param [String] parent
54
+ # Required. Name of the organization or project the assets belong to. Format: "
55
+ # organizations/[organization-number]" (such as "organizations/123"), "projects/[
56
+ # project-number]" (such as "projects/my-project-id"), or "projects/[project-id]"
57
+ # (such as "projects/12345").
58
+ # @param [Array<String>, String] asset_names
59
+ # A list of the full names of the assets to list the updates for. See: https://
60
+ # cloud.google.com/asset-inventory/docs/resource-name-format Example: `//compute.
61
+ # googleapis.com/projects/my_project_123/zones/zone1/instances/instance1`. If
62
+ # specified, only assets in the list will be returned. At most one of
63
+ # asset_types and asset_names should be specified. If neither is specified, all
64
+ # assets under the parent will be returned.
65
+ # @param [Array<String>, String] asset_types
66
+ # A list of asset types to list the updates for. For example: "compute.
67
+ # googleapis.com/Disk". Regular expression is also supported. For example: * "
68
+ # compute.googleapis.com.*" snapshots resources whose asset type starts with "
69
+ # compute.googleapis.com". * ".*Instance" snapshots resources whose asset type
70
+ # ends with "Instance". * ".*Instance.*" snapshots resources whose asset type
71
+ # contains "Instance". See [RE2](https://github.com/google/re2/wiki/Syntax) for
72
+ # all supported regular expression syntax. If the regular expression does not
73
+ # match any supported asset type, an INVALID_ARGUMENT error will be returned. If
74
+ # specified, only matching assets will be returned. At most one of asset_types
75
+ # and asset_names should be specified. If neither is specified, all assets under
76
+ # the parent will be returned.
77
+ # @param [String] content_type
78
+ # Asset content type. If not specified, no content but the asset name will be
79
+ # returned.
80
+ # @param [Fixnum] page_size
81
+ # The maximum number of assets to be returned in a single response. Default is
82
+ # 100, minimum is 1, and maximum is 1000.
83
+ # @param [String] page_token
84
+ # The `next_page_token` returned from the previous `ListAssetsResponse`, or
85
+ # unspecified for the first `ListAssetsRequest`. It is a continuation of a prior
86
+ # `ListAssets` call, and the API should return the next page of assets.
87
+ # @param [String] update_time_window_time_window_end_time
88
+ # End time of the time window (inclusive). If not specified, the current
89
+ # timestamp is used instead.
90
+ # @param [String] update_time_window_time_window_start_time
91
+ # Start time of the time window (exclusive).
92
+ # @param [String] update_time_window_type
93
+ # The type of the time in time_window.
94
+ # @param [String] fields
95
+ # Selector specifying which fields to include in a partial response.
96
+ # @param [String] quota_user
97
+ # Available to use for quota purposes for server-side applications. Can be any
98
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
99
+ # @param [Google::Apis::RequestOptions] options
100
+ # Request-specific options
101
+ #
102
+ # @yield [result, err] Result & error if block supplied
103
+ # @yieldparam result [Google::Apis::CloudassetV1p7beta1::ListAssetUpdatesResponse] parsed result object
104
+ # @yieldparam err [StandardError] error object if request failed
105
+ #
106
+ # @return [Google::Apis::CloudassetV1p7beta1::ListAssetUpdatesResponse]
107
+ #
108
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
109
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
110
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
111
+ def list_asset_updates(parent, asset_names: nil, asset_types: nil, content_type: nil, page_size: nil, page_token: nil, update_time_window_time_window_end_time: nil, update_time_window_time_window_start_time: nil, update_time_window_type: nil, fields: nil, quota_user: nil, options: nil, &block)
112
+ command = make_simple_command(:get, 'v1p7beta1/{+parent}/assetUpdates', options)
113
+ command.response_representation = Google::Apis::CloudassetV1p7beta1::ListAssetUpdatesResponse::Representation
114
+ command.response_class = Google::Apis::CloudassetV1p7beta1::ListAssetUpdatesResponse
115
+ command.params['parent'] = parent unless parent.nil?
116
+ command.query['assetNames'] = asset_names unless asset_names.nil?
117
+ command.query['assetTypes'] = asset_types unless asset_types.nil?
118
+ command.query['contentType'] = content_type unless content_type.nil?
119
+ command.query['pageSize'] = page_size unless page_size.nil?
120
+ command.query['pageToken'] = page_token unless page_token.nil?
121
+ command.query['updateTimeWindow.timeWindow.endTime'] = update_time_window_time_window_end_time unless update_time_window_time_window_end_time.nil?
122
+ command.query['updateTimeWindow.timeWindow.startTime'] = update_time_window_time_window_start_time unless update_time_window_time_window_start_time.nil?
123
+ command.query['updateTimeWindow.type'] = update_time_window_type unless update_time_window_type.nil?
124
+ command.query['fields'] = fields unless fields.nil?
125
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
126
+ execute_or_queue_command(command, &block)
127
+ end
128
+
129
+ # Gets details about an inventory setting.
130
+ # @param [String] name
131
+ # Required. The name of the [InventorySettings] which has the format of:
132
+ # projects/`PROJECT_NUMBER`/inventorySettings folders/`FOLDER_NUMBER`/
133
+ # inventorySettings organizations/`ORGANIZATION_NUMBER`/inventorySettings
134
+ # @param [String] fields
135
+ # Selector specifying which fields to include in a partial response.
136
+ # @param [String] quota_user
137
+ # Available to use for quota purposes for server-side applications. Can be any
138
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
139
+ # @param [Google::Apis::RequestOptions] options
140
+ # Request-specific options
141
+ #
142
+ # @yield [result, err] Result & error if block supplied
143
+ # @yieldparam result [Google::Apis::CloudassetV1p7beta1::InventorySettings] parsed result object
144
+ # @yieldparam err [StandardError] error object if request failed
145
+ #
146
+ # @return [Google::Apis::CloudassetV1p7beta1::InventorySettings]
147
+ #
148
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
149
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
150
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
151
+ def get_folder_inventory_settings(name, fields: nil, quota_user: nil, options: nil, &block)
152
+ command = make_simple_command(:get, 'v1p7beta1/{+name}', options)
153
+ command.response_representation = Google::Apis::CloudassetV1p7beta1::InventorySettings::Representation
154
+ command.response_class = Google::Apis::CloudassetV1p7beta1::InventorySettings
155
+ command.params['name'] = name unless name.nil?
156
+ command.query['fields'] = fields unless fields.nil?
157
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
158
+ execute_or_queue_command(command, &block)
159
+ end
160
+
161
+ # Creates an export setting.
162
+ # @param [String] parent
163
+ # Required. Name of the inventory settings where this export setting should be
164
+ # created in. The format will be: projects/`PROJECT_NUMBER`/inventorySettings
165
+ # folders/`FOLDER_NUMBER`/inventorySettings organizations/`ORGANIZATION_NUMBER`/
166
+ # inventorySettings Currently a maximum of 100 export setting can be created
167
+ # under each [InventorySettings].
168
+ # @param [Google::Apis::CloudassetV1p7beta1::CreateExportSettingRequest] create_export_setting_request_object
169
+ # @param [String] fields
170
+ # Selector specifying which fields to include in a partial response.
171
+ # @param [String] quota_user
172
+ # Available to use for quota purposes for server-side applications. Can be any
173
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
174
+ # @param [Google::Apis::RequestOptions] options
175
+ # Request-specific options
176
+ #
177
+ # @yield [result, err] Result & error if block supplied
178
+ # @yieldparam result [Google::Apis::CloudassetV1p7beta1::ExportSetting] parsed result object
179
+ # @yieldparam err [StandardError] error object if request failed
180
+ #
181
+ # @return [Google::Apis::CloudassetV1p7beta1::ExportSetting]
182
+ #
183
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
184
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
185
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
186
+ def create_folder_inventory_setting_export_setting(parent, create_export_setting_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
187
+ command = make_simple_command(:post, 'v1p7beta1/{+parent}/exportSettings', options)
188
+ command.request_representation = Google::Apis::CloudassetV1p7beta1::CreateExportSettingRequest::Representation
189
+ command.request_object = create_export_setting_request_object
190
+ command.response_representation = Google::Apis::CloudassetV1p7beta1::ExportSetting::Representation
191
+ command.response_class = Google::Apis::CloudassetV1p7beta1::ExportSetting
192
+ command.params['parent'] = parent unless parent.nil?
193
+ command.query['fields'] = fields unless fields.nil?
194
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
195
+ execute_or_queue_command(command, &block)
196
+ end
197
+
198
+ # Deletes an export setting.
199
+ # @param [String] name
200
+ # Required. The name of the export setting and it must be in the format of:
201
+ # projects/`PROJECT_NUMBER`/inventorySettings/exportSettings/`EXPORT_SETTING_ID`
202
+ # folders/`FOLDER_NUMBER`/inventorySettings/exportSettings/`EXPORT_SETTING_ID`
203
+ # organizations/`ORGANIZATION_NUMBER`/inventorySettings/exportSettings/`
204
+ # EXPORT_SETTING_ID`
205
+ # @param [String] fields
206
+ # Selector specifying which fields to include in a partial response.
207
+ # @param [String] quota_user
208
+ # Available to use for quota purposes for server-side applications. Can be any
209
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
210
+ # @param [Google::Apis::RequestOptions] options
211
+ # Request-specific options
212
+ #
213
+ # @yield [result, err] Result & error if block supplied
214
+ # @yieldparam result [Google::Apis::CloudassetV1p7beta1::Empty] parsed result object
215
+ # @yieldparam err [StandardError] error object if request failed
216
+ #
217
+ # @return [Google::Apis::CloudassetV1p7beta1::Empty]
218
+ #
219
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
220
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
221
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
222
+ def delete_folder_inventory_setting_export_setting(name, fields: nil, quota_user: nil, options: nil, &block)
223
+ command = make_simple_command(:delete, 'v1p7beta1/{+name}', options)
224
+ command.response_representation = Google::Apis::CloudassetV1p7beta1::Empty::Representation
225
+ command.response_class = Google::Apis::CloudassetV1p7beta1::Empty
226
+ command.params['name'] = name unless name.nil?
227
+ command.query['fields'] = fields unless fields.nil?
228
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
229
+ execute_or_queue_command(command, &block)
230
+ end
231
+
232
+ # Gets details about an export setting.
233
+ # @param [String] name
234
+ # Required. The name of the [ExportSetting] and it must be in the format of:
235
+ # projects/`PROJECT_NUMBER`/inventorySettings/exportSettings/`EXPORT_SETTING_ID`
236
+ # folders/`FOLDER_NUMBER`/inventorySettings/exportSettings/`EXPORT_SETTING_ID`
237
+ # organizations/`ORGANIZATION_NUMBER`/inventorySettings/exportSettings/`
238
+ # EXPORT_SETTING_ID`
239
+ # @param [String] fields
240
+ # Selector specifying which fields to include in a partial response.
241
+ # @param [String] quota_user
242
+ # Available to use for quota purposes for server-side applications. Can be any
243
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
244
+ # @param [Google::Apis::RequestOptions] options
245
+ # Request-specific options
246
+ #
247
+ # @yield [result, err] Result & error if block supplied
248
+ # @yieldparam result [Google::Apis::CloudassetV1p7beta1::ExportSetting] parsed result object
249
+ # @yieldparam err [StandardError] error object if request failed
250
+ #
251
+ # @return [Google::Apis::CloudassetV1p7beta1::ExportSetting]
252
+ #
253
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
254
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
255
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
256
+ def get_folder_inventory_setting_export_setting(name, fields: nil, quota_user: nil, options: nil, &block)
257
+ command = make_simple_command(:get, 'v1p7beta1/{+name}', options)
258
+ command.response_representation = Google::Apis::CloudassetV1p7beta1::ExportSetting::Representation
259
+ command.response_class = Google::Apis::CloudassetV1p7beta1::ExportSetting
260
+ command.params['name'] = name unless name.nil?
261
+ command.query['fields'] = fields unless fields.nil?
262
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
263
+ execute_or_queue_command(command, &block)
264
+ end
265
+
266
+ # Lists all export settings under a [InventorySettings].
267
+ # @param [String] parent
268
+ # Required. The parent [InventorySettings] whose export settings are to be
269
+ # listed.
270
+ # @param [Fixnum] page_size
271
+ # The maximum number of export settings to return. The service may return fewer
272
+ # than this value. If unspecified, at most 100 export settings will be returned.
273
+ # The maximum value is 100, as currently only a maximum of 100 export settings
274
+ # can be created under each parent.
275
+ # @param [String] page_token
276
+ # A page token, received from a previous `ListExportSettings` call. Provide this
277
+ # to retrieve the subsequent page. When paginating, all other parameters
278
+ # provided to `ListExportSettings` must match the call that provided the page
279
+ # token.
280
+ # @param [String] fields
281
+ # Selector specifying which fields to include in a partial response.
282
+ # @param [String] quota_user
283
+ # Available to use for quota purposes for server-side applications. Can be any
284
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
285
+ # @param [Google::Apis::RequestOptions] options
286
+ # Request-specific options
287
+ #
288
+ # @yield [result, err] Result & error if block supplied
289
+ # @yieldparam result [Google::Apis::CloudassetV1p7beta1::ListExportSettingsResponse] parsed result object
290
+ # @yieldparam err [StandardError] error object if request failed
291
+ #
292
+ # @return [Google::Apis::CloudassetV1p7beta1::ListExportSettingsResponse]
293
+ #
294
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
295
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
296
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
297
+ def list_folder_inventory_setting_export_settings(parent, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block)
298
+ command = make_simple_command(:get, 'v1p7beta1/{+parent}/exportSettings', options)
299
+ command.response_representation = Google::Apis::CloudassetV1p7beta1::ListExportSettingsResponse::Representation
300
+ command.response_class = Google::Apis::CloudassetV1p7beta1::ListExportSettingsResponse
301
+ command.params['parent'] = parent unless parent.nil?
302
+ command.query['pageSize'] = page_size unless page_size.nil?
303
+ command.query['pageToken'] = page_token unless page_token.nil?
304
+ command.query['fields'] = fields unless fields.nil?
305
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
306
+ execute_or_queue_command(command, &block)
307
+ end
308
+
309
+ # Updates an export setting.
310
+ # @param [String] name
311
+ # The format will be: organizations/`ORGANIZATION_NUMBER`/inventorySettings/
312
+ # exportSettings/`exportSetting` or folders/`FOLDER_NUMBER`/inventorySettings/
313
+ # exportSettings/`exportSetting` or projects/`PROJECT_NUMBER`/inventorySettings/
314
+ # exportSettings/`exportSetting`
315
+ # @param [Google::Apis::CloudassetV1p7beta1::ExportSetting] export_setting_object
316
+ # @param [String] update_mask
317
+ # Required. Only updates the `export_setting` fields indicated by this mask. The
318
+ # field mask must not be empty, and it must not contain fields that are
319
+ # immutable or only set by the server.
320
+ # @param [String] fields
321
+ # Selector specifying which fields to include in a partial response.
322
+ # @param [String] quota_user
323
+ # Available to use for quota purposes for server-side applications. Can be any
324
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
325
+ # @param [Google::Apis::RequestOptions] options
326
+ # Request-specific options
327
+ #
328
+ # @yield [result, err] Result & error if block supplied
329
+ # @yieldparam result [Google::Apis::CloudassetV1p7beta1::ExportSetting] parsed result object
330
+ # @yieldparam err [StandardError] error object if request failed
331
+ #
332
+ # @return [Google::Apis::CloudassetV1p7beta1::ExportSetting]
333
+ #
334
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
335
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
336
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
337
+ def patch_folder_inventory_setting_export_setting(name, export_setting_object = nil, update_mask: nil, fields: nil, quota_user: nil, options: nil, &block)
338
+ command = make_simple_command(:patch, 'v1p7beta1/{+name}', options)
339
+ command.request_representation = Google::Apis::CloudassetV1p7beta1::ExportSetting::Representation
340
+ command.request_object = export_setting_object
341
+ command.response_representation = Google::Apis::CloudassetV1p7beta1::ExportSetting::Representation
342
+ command.response_class = Google::Apis::CloudassetV1p7beta1::ExportSetting
343
+ command.params['name'] = name unless name.nil?
344
+ command.query['updateMask'] = update_mask unless update_mask.nil?
345
+ command.query['fields'] = fields unless fields.nil?
346
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
347
+ execute_or_queue_command(command, &block)
348
+ end
349
+
350
+ # Gets details about an inventory setting.
351
+ # @param [String] name
352
+ # Required. The name of the [InventorySettings] which has the format of:
353
+ # projects/`PROJECT_NUMBER`/inventorySettings folders/`FOLDER_NUMBER`/
354
+ # inventorySettings organizations/`ORGANIZATION_NUMBER`/inventorySettings
355
+ # @param [String] fields
356
+ # Selector specifying which fields to include in a partial response.
357
+ # @param [String] quota_user
358
+ # Available to use for quota purposes for server-side applications. Can be any
359
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
360
+ # @param [Google::Apis::RequestOptions] options
361
+ # Request-specific options
362
+ #
363
+ # @yield [result, err] Result & error if block supplied
364
+ # @yieldparam result [Google::Apis::CloudassetV1p7beta1::InventorySettings] parsed result object
365
+ # @yieldparam err [StandardError] error object if request failed
366
+ #
367
+ # @return [Google::Apis::CloudassetV1p7beta1::InventorySettings]
368
+ #
369
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
370
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
371
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
372
+ def get_organization_inventory_settings(name, fields: nil, quota_user: nil, options: nil, &block)
373
+ command = make_simple_command(:get, 'v1p7beta1/{+name}', options)
374
+ command.response_representation = Google::Apis::CloudassetV1p7beta1::InventorySettings::Representation
375
+ command.response_class = Google::Apis::CloudassetV1p7beta1::InventorySettings
376
+ command.params['name'] = name unless name.nil?
377
+ command.query['fields'] = fields unless fields.nil?
378
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
379
+ execute_or_queue_command(command, &block)
380
+ end
381
+
382
+ # Creates an export setting.
383
+ # @param [String] parent
384
+ # Required. Name of the inventory settings where this export setting should be
385
+ # created in. The format will be: projects/`PROJECT_NUMBER`/inventorySettings
386
+ # folders/`FOLDER_NUMBER`/inventorySettings organizations/`ORGANIZATION_NUMBER`/
387
+ # inventorySettings Currently a maximum of 100 export setting can be created
388
+ # under each [InventorySettings].
389
+ # @param [Google::Apis::CloudassetV1p7beta1::CreateExportSettingRequest] create_export_setting_request_object
390
+ # @param [String] fields
391
+ # Selector specifying which fields to include in a partial response.
392
+ # @param [String] quota_user
393
+ # Available to use for quota purposes for server-side applications. Can be any
394
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
395
+ # @param [Google::Apis::RequestOptions] options
396
+ # Request-specific options
397
+ #
398
+ # @yield [result, err] Result & error if block supplied
399
+ # @yieldparam result [Google::Apis::CloudassetV1p7beta1::ExportSetting] parsed result object
400
+ # @yieldparam err [StandardError] error object if request failed
401
+ #
402
+ # @return [Google::Apis::CloudassetV1p7beta1::ExportSetting]
403
+ #
404
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
405
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
406
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
407
+ def create_organization_inventory_setting_export_setting(parent, create_export_setting_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
408
+ command = make_simple_command(:post, 'v1p7beta1/{+parent}/exportSettings', options)
409
+ command.request_representation = Google::Apis::CloudassetV1p7beta1::CreateExportSettingRequest::Representation
410
+ command.request_object = create_export_setting_request_object
411
+ command.response_representation = Google::Apis::CloudassetV1p7beta1::ExportSetting::Representation
412
+ command.response_class = Google::Apis::CloudassetV1p7beta1::ExportSetting
413
+ command.params['parent'] = parent unless parent.nil?
414
+ command.query['fields'] = fields unless fields.nil?
415
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
416
+ execute_or_queue_command(command, &block)
417
+ end
418
+
419
+ # Deletes an export setting.
420
+ # @param [String] name
421
+ # Required. The name of the export setting and it must be in the format of:
422
+ # projects/`PROJECT_NUMBER`/inventorySettings/exportSettings/`EXPORT_SETTING_ID`
423
+ # folders/`FOLDER_NUMBER`/inventorySettings/exportSettings/`EXPORT_SETTING_ID`
424
+ # organizations/`ORGANIZATION_NUMBER`/inventorySettings/exportSettings/`
425
+ # EXPORT_SETTING_ID`
426
+ # @param [String] fields
427
+ # Selector specifying which fields to include in a partial response.
428
+ # @param [String] quota_user
429
+ # Available to use for quota purposes for server-side applications. Can be any
430
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
431
+ # @param [Google::Apis::RequestOptions] options
432
+ # Request-specific options
433
+ #
434
+ # @yield [result, err] Result & error if block supplied
435
+ # @yieldparam result [Google::Apis::CloudassetV1p7beta1::Empty] parsed result object
436
+ # @yieldparam err [StandardError] error object if request failed
437
+ #
438
+ # @return [Google::Apis::CloudassetV1p7beta1::Empty]
439
+ #
440
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
441
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
442
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
443
+ def delete_organization_inventory_setting_export_setting(name, fields: nil, quota_user: nil, options: nil, &block)
444
+ command = make_simple_command(:delete, 'v1p7beta1/{+name}', options)
445
+ command.response_representation = Google::Apis::CloudassetV1p7beta1::Empty::Representation
446
+ command.response_class = Google::Apis::CloudassetV1p7beta1::Empty
447
+ command.params['name'] = name unless name.nil?
448
+ command.query['fields'] = fields unless fields.nil?
449
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
450
+ execute_or_queue_command(command, &block)
451
+ end
452
+
453
+ # Gets details about an export setting.
454
+ # @param [String] name
455
+ # Required. The name of the [ExportSetting] and it must be in the format of:
456
+ # projects/`PROJECT_NUMBER`/inventorySettings/exportSettings/`EXPORT_SETTING_ID`
457
+ # folders/`FOLDER_NUMBER`/inventorySettings/exportSettings/`EXPORT_SETTING_ID`
458
+ # organizations/`ORGANIZATION_NUMBER`/inventorySettings/exportSettings/`
459
+ # EXPORT_SETTING_ID`
460
+ # @param [String] fields
461
+ # Selector specifying which fields to include in a partial response.
462
+ # @param [String] quota_user
463
+ # Available to use for quota purposes for server-side applications. Can be any
464
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
465
+ # @param [Google::Apis::RequestOptions] options
466
+ # Request-specific options
467
+ #
468
+ # @yield [result, err] Result & error if block supplied
469
+ # @yieldparam result [Google::Apis::CloudassetV1p7beta1::ExportSetting] parsed result object
470
+ # @yieldparam err [StandardError] error object if request failed
471
+ #
472
+ # @return [Google::Apis::CloudassetV1p7beta1::ExportSetting]
473
+ #
474
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
475
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
476
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
477
+ def get_organization_inventory_setting_export_setting(name, fields: nil, quota_user: nil, options: nil, &block)
478
+ command = make_simple_command(:get, 'v1p7beta1/{+name}', options)
479
+ command.response_representation = Google::Apis::CloudassetV1p7beta1::ExportSetting::Representation
480
+ command.response_class = Google::Apis::CloudassetV1p7beta1::ExportSetting
481
+ command.params['name'] = name unless name.nil?
482
+ command.query['fields'] = fields unless fields.nil?
483
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
484
+ execute_or_queue_command(command, &block)
485
+ end
486
+
487
+ # Lists all export settings under a [InventorySettings].
488
+ # @param [String] parent
489
+ # Required. The parent [InventorySettings] whose export settings are to be
490
+ # listed.
491
+ # @param [Fixnum] page_size
492
+ # The maximum number of export settings to return. The service may return fewer
493
+ # than this value. If unspecified, at most 100 export settings will be returned.
494
+ # The maximum value is 100, as currently only a maximum of 100 export settings
495
+ # can be created under each parent.
496
+ # @param [String] page_token
497
+ # A page token, received from a previous `ListExportSettings` call. Provide this
498
+ # to retrieve the subsequent page. When paginating, all other parameters
499
+ # provided to `ListExportSettings` must match the call that provided the page
500
+ # token.
501
+ # @param [String] fields
502
+ # Selector specifying which fields to include in a partial response.
503
+ # @param [String] quota_user
504
+ # Available to use for quota purposes for server-side applications. Can be any
505
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
506
+ # @param [Google::Apis::RequestOptions] options
507
+ # Request-specific options
508
+ #
509
+ # @yield [result, err] Result & error if block supplied
510
+ # @yieldparam result [Google::Apis::CloudassetV1p7beta1::ListExportSettingsResponse] parsed result object
511
+ # @yieldparam err [StandardError] error object if request failed
512
+ #
513
+ # @return [Google::Apis::CloudassetV1p7beta1::ListExportSettingsResponse]
514
+ #
515
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
516
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
517
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
518
+ def list_organization_inventory_setting_export_settings(parent, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block)
519
+ command = make_simple_command(:get, 'v1p7beta1/{+parent}/exportSettings', options)
520
+ command.response_representation = Google::Apis::CloudassetV1p7beta1::ListExportSettingsResponse::Representation
521
+ command.response_class = Google::Apis::CloudassetV1p7beta1::ListExportSettingsResponse
522
+ command.params['parent'] = parent unless parent.nil?
523
+ command.query['pageSize'] = page_size unless page_size.nil?
524
+ command.query['pageToken'] = page_token unless page_token.nil?
525
+ command.query['fields'] = fields unless fields.nil?
526
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
527
+ execute_or_queue_command(command, &block)
528
+ end
529
+
530
+ # Updates an export setting.
531
+ # @param [String] name
532
+ # The format will be: organizations/`ORGANIZATION_NUMBER`/inventorySettings/
533
+ # exportSettings/`exportSetting` or folders/`FOLDER_NUMBER`/inventorySettings/
534
+ # exportSettings/`exportSetting` or projects/`PROJECT_NUMBER`/inventorySettings/
535
+ # exportSettings/`exportSetting`
536
+ # @param [Google::Apis::CloudassetV1p7beta1::ExportSetting] export_setting_object
537
+ # @param [String] update_mask
538
+ # Required. Only updates the `export_setting` fields indicated by this mask. The
539
+ # field mask must not be empty, and it must not contain fields that are
540
+ # immutable or only set by the server.
541
+ # @param [String] fields
542
+ # Selector specifying which fields to include in a partial response.
543
+ # @param [String] quota_user
544
+ # Available to use for quota purposes for server-side applications. Can be any
545
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
546
+ # @param [Google::Apis::RequestOptions] options
547
+ # Request-specific options
548
+ #
549
+ # @yield [result, err] Result & error if block supplied
550
+ # @yieldparam result [Google::Apis::CloudassetV1p7beta1::ExportSetting] parsed result object
551
+ # @yieldparam err [StandardError] error object if request failed
552
+ #
553
+ # @return [Google::Apis::CloudassetV1p7beta1::ExportSetting]
554
+ #
555
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
556
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
557
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
558
+ def patch_organization_inventory_setting_export_setting(name, export_setting_object = nil, update_mask: nil, fields: nil, quota_user: nil, options: nil, &block)
559
+ command = make_simple_command(:patch, 'v1p7beta1/{+name}', options)
560
+ command.request_representation = Google::Apis::CloudassetV1p7beta1::ExportSetting::Representation
561
+ command.request_object = export_setting_object
562
+ command.response_representation = Google::Apis::CloudassetV1p7beta1::ExportSetting::Representation
563
+ command.response_class = Google::Apis::CloudassetV1p7beta1::ExportSetting
564
+ command.params['name'] = name unless name.nil?
565
+ command.query['updateMask'] = update_mask unless update_mask.nil?
566
+ command.query['fields'] = fields unless fields.nil?
567
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
568
+ execute_or_queue_command(command, &block)
569
+ end
570
+
571
+ # Gets details about an inventory setting.
572
+ # @param [String] name
573
+ # Required. The name of the [InventorySettings] which has the format of:
574
+ # projects/`PROJECT_NUMBER`/inventorySettings folders/`FOLDER_NUMBER`/
575
+ # inventorySettings organizations/`ORGANIZATION_NUMBER`/inventorySettings
576
+ # @param [String] fields
577
+ # Selector specifying which fields to include in a partial response.
578
+ # @param [String] quota_user
579
+ # Available to use for quota purposes for server-side applications. Can be any
580
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
581
+ # @param [Google::Apis::RequestOptions] options
582
+ # Request-specific options
583
+ #
584
+ # @yield [result, err] Result & error if block supplied
585
+ # @yieldparam result [Google::Apis::CloudassetV1p7beta1::InventorySettings] parsed result object
586
+ # @yieldparam err [StandardError] error object if request failed
587
+ #
588
+ # @return [Google::Apis::CloudassetV1p7beta1::InventorySettings]
589
+ #
590
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
591
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
592
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
593
+ def get_project_inventory_settings(name, fields: nil, quota_user: nil, options: nil, &block)
594
+ command = make_simple_command(:get, 'v1p7beta1/{+name}', options)
595
+ command.response_representation = Google::Apis::CloudassetV1p7beta1::InventorySettings::Representation
596
+ command.response_class = Google::Apis::CloudassetV1p7beta1::InventorySettings
597
+ command.params['name'] = name unless name.nil?
598
+ command.query['fields'] = fields unless fields.nil?
599
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
600
+ execute_or_queue_command(command, &block)
601
+ end
602
+
603
+ # Creates an export setting.
604
+ # @param [String] parent
605
+ # Required. Name of the inventory settings where this export setting should be
606
+ # created in. The format will be: projects/`PROJECT_NUMBER`/inventorySettings
607
+ # folders/`FOLDER_NUMBER`/inventorySettings organizations/`ORGANIZATION_NUMBER`/
608
+ # inventorySettings Currently a maximum of 100 export setting can be created
609
+ # under each [InventorySettings].
610
+ # @param [Google::Apis::CloudassetV1p7beta1::CreateExportSettingRequest] create_export_setting_request_object
611
+ # @param [String] fields
612
+ # Selector specifying which fields to include in a partial response.
613
+ # @param [String] quota_user
614
+ # Available to use for quota purposes for server-side applications. Can be any
615
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
616
+ # @param [Google::Apis::RequestOptions] options
617
+ # Request-specific options
618
+ #
619
+ # @yield [result, err] Result & error if block supplied
620
+ # @yieldparam result [Google::Apis::CloudassetV1p7beta1::ExportSetting] parsed result object
621
+ # @yieldparam err [StandardError] error object if request failed
622
+ #
623
+ # @return [Google::Apis::CloudassetV1p7beta1::ExportSetting]
624
+ #
625
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
626
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
627
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
628
+ def create_project_inventory_setting_export_setting(parent, create_export_setting_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
629
+ command = make_simple_command(:post, 'v1p7beta1/{+parent}/exportSettings', options)
630
+ command.request_representation = Google::Apis::CloudassetV1p7beta1::CreateExportSettingRequest::Representation
631
+ command.request_object = create_export_setting_request_object
632
+ command.response_representation = Google::Apis::CloudassetV1p7beta1::ExportSetting::Representation
633
+ command.response_class = Google::Apis::CloudassetV1p7beta1::ExportSetting
634
+ command.params['parent'] = parent unless parent.nil?
635
+ command.query['fields'] = fields unless fields.nil?
636
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
637
+ execute_or_queue_command(command, &block)
638
+ end
639
+
640
+ # Deletes an export setting.
641
+ # @param [String] name
642
+ # Required. The name of the export setting and it must be in the format of:
643
+ # projects/`PROJECT_NUMBER`/inventorySettings/exportSettings/`EXPORT_SETTING_ID`
644
+ # folders/`FOLDER_NUMBER`/inventorySettings/exportSettings/`EXPORT_SETTING_ID`
645
+ # organizations/`ORGANIZATION_NUMBER`/inventorySettings/exportSettings/`
646
+ # EXPORT_SETTING_ID`
647
+ # @param [String] fields
648
+ # Selector specifying which fields to include in a partial response.
649
+ # @param [String] quota_user
650
+ # Available to use for quota purposes for server-side applications. Can be any
651
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
652
+ # @param [Google::Apis::RequestOptions] options
653
+ # Request-specific options
654
+ #
655
+ # @yield [result, err] Result & error if block supplied
656
+ # @yieldparam result [Google::Apis::CloudassetV1p7beta1::Empty] parsed result object
657
+ # @yieldparam err [StandardError] error object if request failed
658
+ #
659
+ # @return [Google::Apis::CloudassetV1p7beta1::Empty]
660
+ #
661
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
662
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
663
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
664
+ def delete_project_inventory_setting_export_setting(name, fields: nil, quota_user: nil, options: nil, &block)
665
+ command = make_simple_command(:delete, 'v1p7beta1/{+name}', options)
666
+ command.response_representation = Google::Apis::CloudassetV1p7beta1::Empty::Representation
667
+ command.response_class = Google::Apis::CloudassetV1p7beta1::Empty
668
+ command.params['name'] = name unless name.nil?
669
+ command.query['fields'] = fields unless fields.nil?
670
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
671
+ execute_or_queue_command(command, &block)
672
+ end
673
+
674
+ # Gets details about an export setting.
675
+ # @param [String] name
676
+ # Required. The name of the [ExportSetting] and it must be in the format of:
677
+ # projects/`PROJECT_NUMBER`/inventorySettings/exportSettings/`EXPORT_SETTING_ID`
678
+ # folders/`FOLDER_NUMBER`/inventorySettings/exportSettings/`EXPORT_SETTING_ID`
679
+ # organizations/`ORGANIZATION_NUMBER`/inventorySettings/exportSettings/`
680
+ # EXPORT_SETTING_ID`
681
+ # @param [String] fields
682
+ # Selector specifying which fields to include in a partial response.
683
+ # @param [String] quota_user
684
+ # Available to use for quota purposes for server-side applications. Can be any
685
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
686
+ # @param [Google::Apis::RequestOptions] options
687
+ # Request-specific options
688
+ #
689
+ # @yield [result, err] Result & error if block supplied
690
+ # @yieldparam result [Google::Apis::CloudassetV1p7beta1::ExportSetting] parsed result object
691
+ # @yieldparam err [StandardError] error object if request failed
692
+ #
693
+ # @return [Google::Apis::CloudassetV1p7beta1::ExportSetting]
694
+ #
695
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
696
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
697
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
698
+ def get_project_inventory_setting_export_setting(name, fields: nil, quota_user: nil, options: nil, &block)
699
+ command = make_simple_command(:get, 'v1p7beta1/{+name}', options)
700
+ command.response_representation = Google::Apis::CloudassetV1p7beta1::ExportSetting::Representation
701
+ command.response_class = Google::Apis::CloudassetV1p7beta1::ExportSetting
702
+ command.params['name'] = name unless name.nil?
703
+ command.query['fields'] = fields unless fields.nil?
704
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
705
+ execute_or_queue_command(command, &block)
706
+ end
707
+
708
+ # Lists all export settings under a [InventorySettings].
709
+ # @param [String] parent
710
+ # Required. The parent [InventorySettings] whose export settings are to be
711
+ # listed.
712
+ # @param [Fixnum] page_size
713
+ # The maximum number of export settings to return. The service may return fewer
714
+ # than this value. If unspecified, at most 100 export settings will be returned.
715
+ # The maximum value is 100, as currently only a maximum of 100 export settings
716
+ # can be created under each parent.
717
+ # @param [String] page_token
718
+ # A page token, received from a previous `ListExportSettings` call. Provide this
719
+ # to retrieve the subsequent page. When paginating, all other parameters
720
+ # provided to `ListExportSettings` must match the call that provided the page
721
+ # token.
722
+ # @param [String] fields
723
+ # Selector specifying which fields to include in a partial response.
724
+ # @param [String] quota_user
725
+ # Available to use for quota purposes for server-side applications. Can be any
726
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
727
+ # @param [Google::Apis::RequestOptions] options
728
+ # Request-specific options
729
+ #
730
+ # @yield [result, err] Result & error if block supplied
731
+ # @yieldparam result [Google::Apis::CloudassetV1p7beta1::ListExportSettingsResponse] parsed result object
732
+ # @yieldparam err [StandardError] error object if request failed
733
+ #
734
+ # @return [Google::Apis::CloudassetV1p7beta1::ListExportSettingsResponse]
735
+ #
736
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
737
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
738
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
739
+ def list_project_inventory_setting_export_settings(parent, page_size: nil, page_token: nil, fields: nil, quota_user: nil, options: nil, &block)
740
+ command = make_simple_command(:get, 'v1p7beta1/{+parent}/exportSettings', options)
741
+ command.response_representation = Google::Apis::CloudassetV1p7beta1::ListExportSettingsResponse::Representation
742
+ command.response_class = Google::Apis::CloudassetV1p7beta1::ListExportSettingsResponse
743
+ command.params['parent'] = parent unless parent.nil?
744
+ command.query['pageSize'] = page_size unless page_size.nil?
745
+ command.query['pageToken'] = page_token unless page_token.nil?
746
+ command.query['fields'] = fields unless fields.nil?
747
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
748
+ execute_or_queue_command(command, &block)
749
+ end
750
+
751
+ # Updates an export setting.
752
+ # @param [String] name
753
+ # The format will be: organizations/`ORGANIZATION_NUMBER`/inventorySettings/
754
+ # exportSettings/`exportSetting` or folders/`FOLDER_NUMBER`/inventorySettings/
755
+ # exportSettings/`exportSetting` or projects/`PROJECT_NUMBER`/inventorySettings/
756
+ # exportSettings/`exportSetting`
757
+ # @param [Google::Apis::CloudassetV1p7beta1::ExportSetting] export_setting_object
758
+ # @param [String] update_mask
759
+ # Required. Only updates the `export_setting` fields indicated by this mask. The
760
+ # field mask must not be empty, and it must not contain fields that are
761
+ # immutable or only set by the server.
762
+ # @param [String] fields
763
+ # Selector specifying which fields to include in a partial response.
764
+ # @param [String] quota_user
765
+ # Available to use for quota purposes for server-side applications. Can be any
766
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
767
+ # @param [Google::Apis::RequestOptions] options
768
+ # Request-specific options
769
+ #
770
+ # @yield [result, err] Result & error if block supplied
771
+ # @yieldparam result [Google::Apis::CloudassetV1p7beta1::ExportSetting] parsed result object
772
+ # @yieldparam err [StandardError] error object if request failed
773
+ #
774
+ # @return [Google::Apis::CloudassetV1p7beta1::ExportSetting]
775
+ #
776
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
777
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
778
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
779
+ def patch_project_inventory_setting_export_setting(name, export_setting_object = nil, update_mask: nil, fields: nil, quota_user: nil, options: nil, &block)
780
+ command = make_simple_command(:patch, 'v1p7beta1/{+name}', options)
781
+ command.request_representation = Google::Apis::CloudassetV1p7beta1::ExportSetting::Representation
782
+ command.request_object = export_setting_object
783
+ command.response_representation = Google::Apis::CloudassetV1p7beta1::ExportSetting::Representation
784
+ command.response_class = Google::Apis::CloudassetV1p7beta1::ExportSetting
785
+ command.params['name'] = name unless name.nil?
786
+ command.query['updateMask'] = update_mask unless update_mask.nil?
787
+ command.query['fields'] = fields unless fields.nil?
788
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
789
+ execute_or_queue_command(command, &block)
790
+ end
791
+
792
+ # Exports asset updates within a time window to a given Cloud Storage location/
793
+ # BigQuery table. For Cloud Storage location destinations, the output format is
794
+ # newline-delimited JSON. Each line represents a google.cloud.asset.v1p7beta1.
795
+ # Asset in the JSON format; for BigQuery table destinations, the output table
796
+ # stores the fields in asset proto as columns. This API implements the google.
797
+ # longrunning.Operation API , which allows you to keep track of the export. We
798
+ # recommend intervals of at least 2 seconds with exponential retry to poll the
799
+ # export operation result. For regular-size resource parent, the export
800
+ # operation usually finishes within 5 minutes.
801
+ # @param [String] parent
802
+ # Required. The relative name of the root asset. This can only be an
803
+ # organization number (such as "organizations/123"), a project ID (such as "
804
+ # projects/my-project-id"), or a project number (such as "projects/12345"), or a
805
+ # folder number (such as "folders/123").
806
+ # @param [Google::Apis::CloudassetV1p7beta1::ExportAssetUpdatesRequest] export_asset_updates_request_object
807
+ # @param [String] fields
808
+ # Selector specifying which fields to include in a partial response.
809
+ # @param [String] quota_user
810
+ # Available to use for quota purposes for server-side applications. Can be any
811
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
812
+ # @param [Google::Apis::RequestOptions] options
813
+ # Request-specific options
814
+ #
815
+ # @yield [result, err] Result & error if block supplied
816
+ # @yieldparam result [Google::Apis::CloudassetV1p7beta1::Operation] parsed result object
817
+ # @yieldparam err [StandardError] error object if request failed
818
+ #
819
+ # @return [Google::Apis::CloudassetV1p7beta1::Operation]
820
+ #
821
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
822
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
823
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
824
+ def export_asset_updates(parent, export_asset_updates_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
825
+ command = make_simple_command(:post, 'v1p7beta1/{+parent}:exportAssetUpdates', options)
826
+ command.request_representation = Google::Apis::CloudassetV1p7beta1::ExportAssetUpdatesRequest::Representation
827
+ command.request_object = export_asset_updates_request_object
828
+ command.response_representation = Google::Apis::CloudassetV1p7beta1::Operation::Representation
829
+ command.response_class = Google::Apis::CloudassetV1p7beta1::Operation
830
+ command.params['parent'] = parent unless parent.nil?
831
+ command.query['fields'] = fields unless fields.nil?
832
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
833
+ execute_or_queue_command(command, &block)
834
+ end
835
+
836
+ # Exports assets with time and resource types to a given Cloud Storage location/
837
+ # BigQuery table. For Cloud Storage location destinations, the output format is
838
+ # newline-delimited JSON. Each line represents a google.cloud.asset.v1p7beta1.
839
+ # Asset in the JSON format; for BigQuery table destinations, the output table
840
+ # stores the fields in asset proto as columns. This API implements the google.
841
+ # longrunning.Operation API , which allows you to keep track of the export. We
842
+ # recommend intervals of at least 2 seconds with exponential retry to poll the
843
+ # export operation result. For regular-size resource parent, the export
844
+ # operation usually finishes within 5 minutes.
845
+ # @param [String] parent
846
+ # Required. The relative name of the root asset. This can only be an
847
+ # organization number (such as "organizations/123"), a project ID (such as "
848
+ # projects/my-project-id"), or a project number (such as "projects/12345"), or a
849
+ # folder number (such as "folders/123").
850
+ # @param [Google::Apis::CloudassetV1p7beta1::ExportAssetsRequest] export_assets_request_object
851
+ # @param [String] fields
852
+ # Selector specifying which fields to include in a partial response.
853
+ # @param [String] quota_user
854
+ # Available to use for quota purposes for server-side applications. Can be any
855
+ # arbitrary string assigned to a user, but should not exceed 40 characters.
856
+ # @param [Google::Apis::RequestOptions] options
857
+ # Request-specific options
858
+ #
859
+ # @yield [result, err] Result & error if block supplied
860
+ # @yieldparam result [Google::Apis::CloudassetV1p7beta1::Operation] parsed result object
861
+ # @yieldparam err [StandardError] error object if request failed
862
+ #
863
+ # @return [Google::Apis::CloudassetV1p7beta1::Operation]
864
+ #
865
+ # @raise [Google::Apis::ServerError] An error occurred on the server and the request can be retried
866
+ # @raise [Google::Apis::ClientError] The request is invalid and should not be retried without modification
867
+ # @raise [Google::Apis::AuthorizationError] Authorization is required
868
+ def export_assets(parent, export_assets_request_object = nil, fields: nil, quota_user: nil, options: nil, &block)
869
+ command = make_simple_command(:post, 'v1p7beta1/{+parent}:exportAssets', options)
870
+ command.request_representation = Google::Apis::CloudassetV1p7beta1::ExportAssetsRequest::Representation
871
+ command.request_object = export_assets_request_object
872
+ command.response_representation = Google::Apis::CloudassetV1p7beta1::Operation::Representation
873
+ command.response_class = Google::Apis::CloudassetV1p7beta1::Operation
874
+ command.params['parent'] = parent unless parent.nil?
875
+ command.query['fields'] = fields unless fields.nil?
876
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
877
+ execute_or_queue_command(command, &block)
878
+ end
879
+
880
+ protected
881
+
882
+ def apply_command_defaults(command)
883
+ command.query['key'] = key unless key.nil?
884
+ command.query['quotaUser'] = quota_user unless quota_user.nil?
885
+ end
886
+ end
887
+ end
888
+ end
889
+ end