google-api-client 0.9.26 → 0.9.28

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (123) hide show
  1. checksums.yaml +4 -4
  2. data/CHANGELOG.md +7 -0
  3. data/README.md +1 -1
  4. data/api_names.yaml +36326 -36213
  5. data/generated/google/apis/adexchangebuyer2_v2beta1.rb +1 -1
  6. data/generated/google/apis/adexchangebuyer2_v2beta1/classes.rb +155 -155
  7. data/generated/google/apis/adexchangebuyer2_v2beta1/representations.rb +32 -32
  8. data/generated/google/apis/adexchangebuyer2_v2beta1/service.rb +104 -104
  9. data/generated/google/apis/adsense_v1_4.rb +1 -1
  10. data/generated/google/apis/adsensehost_v4_1.rb +1 -1
  11. data/generated/google/apis/androidenterprise_v1.rb +1 -1
  12. data/generated/google/apis/appstate_v1.rb +1 -1
  13. data/generated/google/apis/calendar_v3.rb +1 -1
  14. data/generated/google/apis/cloudbuild_v1.rb +1 -1
  15. data/generated/google/apis/cloudbuild_v1/classes.rb +260 -248
  16. data/generated/google/apis/cloudbuild_v1/representations.rb +47 -45
  17. data/generated/google/apis/cloudbuild_v1/service.rb +167 -167
  18. data/generated/google/apis/clouddebugger_v2.rb +3 -3
  19. data/generated/google/apis/clouddebugger_v2/classes.rb +569 -569
  20. data/generated/google/apis/clouddebugger_v2/representations.rb +146 -146
  21. data/generated/google/apis/clouddebugger_v2/service.rb +145 -145
  22. data/generated/google/apis/cloudkms_v1beta1.rb +4 -3
  23. data/generated/google/apis/cloudkms_v1beta1/classes.rb +428 -428
  24. data/generated/google/apis/cloudkms_v1beta1/representations.rb +115 -115
  25. data/generated/google/apis/cloudkms_v1beta1/service.rb +161 -160
  26. data/generated/google/apis/cloudmonitoring_v2beta2.rb +1 -1
  27. data/generated/google/apis/cloudresourcemanager_v1.rb +1 -1
  28. data/generated/google/apis/cloudresourcemanager_v1/classes.rb +583 -583
  29. data/generated/google/apis/cloudresourcemanager_v1/representations.rb +100 -100
  30. data/generated/google/apis/cloudresourcemanager_v1/service.rb +116 -116
  31. data/generated/google/apis/cloudresourcemanager_v1beta1.rb +1 -1
  32. data/generated/google/apis/cloudresourcemanager_v1beta1/classes.rb +195 -195
  33. data/generated/google/apis/cloudresourcemanager_v1beta1/representations.rb +58 -58
  34. data/generated/google/apis/cloudresourcemanager_v1beta1/service.rb +316 -316
  35. data/generated/google/apis/content_v2.rb +1 -1
  36. data/generated/google/apis/content_v2/classes.rb +12 -0
  37. data/generated/google/apis/content_v2/representations.rb +2 -0
  38. data/generated/google/apis/dataflow_v1b3.rb +1 -1
  39. data/generated/google/apis/dataflow_v1b3/classes.rb +2833 -2694
  40. data/generated/google/apis/dataflow_v1b3/representations.rb +666 -666
  41. data/generated/google/apis/dataflow_v1b3/service.rb +351 -349
  42. data/generated/google/apis/datastore_v1.rb +1 -1
  43. data/generated/google/apis/deploymentmanager_v2.rb +1 -1
  44. data/generated/google/apis/deploymentmanager_v2/classes.rb +21 -12
  45. data/generated/google/apis/deploymentmanager_v2/representations.rb +1 -0
  46. data/generated/google/apis/deploymentmanager_v2/service.rb +5 -5
  47. data/generated/google/apis/dns_v1.rb +1 -1
  48. data/generated/google/apis/dns_v2beta1.rb +1 -1
  49. data/generated/google/apis/doubleclicksearch_v2.rb +1 -1
  50. data/generated/google/apis/doubleclicksearch_v2/classes.rb +6 -4
  51. data/generated/google/apis/drive_v2.rb +1 -1
  52. data/generated/google/apis/drive_v2/classes.rb +26 -0
  53. data/generated/google/apis/drive_v2/representations.rb +14 -0
  54. data/generated/google/apis/drive_v2/service.rb +38 -2
  55. data/generated/google/apis/drive_v3.rb +1 -1
  56. data/generated/google/apis/games_configuration_v1configuration.rb +1 -1
  57. data/generated/google/apis/games_management_v1management.rb +1 -1
  58. data/generated/google/apis/games_v1.rb +1 -1
  59. data/generated/google/apis/genomics_v1.rb +4 -4
  60. data/generated/google/apis/genomics_v1/classes.rb +2317 -2317
  61. data/generated/google/apis/genomics_v1/representations.rb +476 -476
  62. data/generated/google/apis/genomics_v1/service.rb +1038 -1038
  63. data/generated/google/apis/gmail_v1.rb +1 -1
  64. data/generated/google/apis/gmail_v1/classes.rb +82 -1
  65. data/generated/google/apis/gmail_v1/representations.rb +33 -0
  66. data/generated/google/apis/gmail_v1/service.rb +215 -5
  67. data/generated/google/apis/iam_v1.rb +1 -1
  68. data/generated/google/apis/iam_v1/classes.rb +446 -343
  69. data/generated/google/apis/iam_v1/representations.rb +112 -85
  70. data/generated/google/apis/iam_v1/service.rb +248 -192
  71. data/generated/google/apis/kgsearch_v1/classes.rb +6 -6
  72. data/generated/google/apis/kgsearch_v1/representations.rb +1 -1
  73. data/generated/google/apis/kgsearch_v1/service.rb +15 -15
  74. data/generated/google/apis/language_v1beta1.rb +1 -1
  75. data/generated/google/apis/language_v1beta1/classes.rb +396 -396
  76. data/generated/google/apis/language_v1beta1/representations.rb +97 -97
  77. data/generated/google/apis/language_v1beta1/service.rb +42 -42
  78. data/generated/google/apis/logging_v2beta1.rb +1 -1
  79. data/generated/google/apis/logging_v2beta1/classes.rb +855 -855
  80. data/generated/google/apis/logging_v2beta1/representations.rb +155 -155
  81. data/generated/google/apis/logging_v2beta1/service.rb +214 -214
  82. data/generated/google/apis/monitoring_v3.rb +4 -4
  83. data/generated/google/apis/monitoring_v3/classes.rb +551 -551
  84. data/generated/google/apis/monitoring_v3/representations.rb +123 -123
  85. data/generated/google/apis/monitoring_v3/service.rb +80 -80
  86. data/generated/google/apis/plus_domains_v1.rb +1 -1
  87. data/generated/google/apis/plus_v1.rb +1 -1
  88. data/generated/google/apis/pubsub_v1.rb +3 -3
  89. data/generated/google/apis/pubsub_v1/classes.rb +391 -391
  90. data/generated/google/apis/pubsub_v1/representations.rb +83 -83
  91. data/generated/google/apis/pubsub_v1/service.rb +257 -257
  92. data/generated/google/apis/sheets_v4.rb +1 -1
  93. data/generated/google/apis/sheets_v4/classes.rb +4334 -4334
  94. data/generated/google/apis/sheets_v4/representations.rb +861 -861
  95. data/generated/google/apis/sheets_v4/service.rb +191 -191
  96. data/generated/google/apis/slides_v1.rb +7 -7
  97. data/generated/google/apis/slides_v1/classes.rb +2726 -2555
  98. data/generated/google/apis/slides_v1/representations.rb +678 -607
  99. data/generated/google/apis/slides_v1/service.rb +16 -16
  100. data/generated/google/apis/speech_v1beta1.rb +1 -1
  101. data/generated/google/apis/speech_v1beta1/classes.rb +57 -59
  102. data/generated/google/apis/speech_v1beta1/representations.rb +9 -9
  103. data/generated/google/apis/speech_v1beta1/service.rb +63 -63
  104. data/generated/google/apis/storage_v1.rb +1 -1
  105. data/generated/google/apis/storage_v1/classes.rb +4 -3
  106. data/generated/google/apis/vision_v1/classes.rb +925 -925
  107. data/generated/google/apis/vision_v1/representations.rb +134 -134
  108. data/generated/google/apis/vision_v1/service.rb +4 -4
  109. data/generated/google/apis/youtube_analytics_v1.rb +1 -1
  110. data/generated/google/apis/youtube_partner_v1.rb +1 -1
  111. data/generated/google/apis/youtube_v3.rb +1 -1
  112. data/generated/google/apis/youtube_v3/classes.rb +234 -1
  113. data/generated/google/apis/youtube_v3/representations.rb +83 -0
  114. data/generated/google/apis/youtube_v3/service.rb +55 -0
  115. data/generated/google/apis/youtubereporting_v1.rb +1 -1
  116. data/generated/google/apis/youtubereporting_v1/classes.rb +105 -105
  117. data/generated/google/apis/youtubereporting_v1/representations.rb +31 -31
  118. data/generated/google/apis/youtubereporting_v1/service.rb +78 -78
  119. data/lib/google/apis/core/api_command.rb +11 -5
  120. data/lib/google/apis/core/base_service.rb +7 -5
  121. data/lib/google/apis/errors.rb +4 -0
  122. data/lib/google/apis/version.rb +1 -1
  123. metadata +28 -28
@@ -25,7 +25,7 @@ module Google
25
25
  # @see https://cloud.google.com/monitoring/v2beta2/
26
26
  module CloudmonitoringV2beta2
27
27
  VERSION = 'V2beta2'
28
- REVISION = '20161031'
28
+ REVISION = '20170130'
29
29
 
30
30
  # View and manage your data across Google Cloud Platform services
31
31
  AUTH_CLOUD_PLATFORM = 'https://www.googleapis.com/auth/cloud-platform'
@@ -26,7 +26,7 @@ module Google
26
26
  # @see https://cloud.google.com/resource-manager
27
27
  module CloudresourcemanagerV1
28
28
  VERSION = 'V1'
29
- REVISION = '20170125'
29
+ REVISION = '20170201'
30
30
 
31
31
  # View your data across Google Cloud Platform services
32
32
  AUTH_CLOUD_PLATFORM_READ_ONLY = 'https://www.googleapis.com/auth/cloud-platform.read-only'
@@ -22,429 +22,6 @@ module Google
22
22
  module Apis
23
23
  module CloudresourcemanagerV1
24
24
 
25
- # The request sent to the
26
- # GetAncestry
27
- # method.
28
- class GetAncestryRequest
29
- include Google::Apis::Core::Hashable
30
-
31
- def initialize(**args)
32
- update!(**args)
33
- end
34
-
35
- # Update properties of this object
36
- def update!(**args)
37
- end
38
- end
39
-
40
- # A Project is a high-level Google Cloud Platform entity. It is a
41
- # container for ACLs, APIs, AppEngine Apps, VMs, and other
42
- # Google Cloud Platform resources.
43
- class Project
44
- include Google::Apis::Core::Hashable
45
-
46
- # The Project lifecycle state.
47
- # Read-only.
48
- # Corresponds to the JSON property `lifecycleState`
49
- # @return [String]
50
- attr_accessor :lifecycle_state
51
-
52
- # The number uniquely identifying the project.
53
- # Example: <code>415104041262</code>
54
- # Read-only.
55
- # Corresponds to the JSON property `projectNumber`
56
- # @return [String]
57
- attr_accessor :project_number
58
-
59
- # A container to reference an id for any resource type. A `resource` in Google
60
- # Cloud Platform is a generic term for something you (a developer) may want to
61
- # interact with through one of our API's. Some examples are an AppEngine app,
62
- # a Compute Engine instance, a Cloud SQL database, and so on.
63
- # Corresponds to the JSON property `parent`
64
- # @return [Google::Apis::CloudresourcemanagerV1::ResourceId]
65
- attr_accessor :parent
66
-
67
- # Creation time.
68
- # Read-only.
69
- # Corresponds to the JSON property `createTime`
70
- # @return [String]
71
- attr_accessor :create_time
72
-
73
- # The labels associated with this Project.
74
- # Label keys must be between 1 and 63 characters long and must conform
75
- # to the following regular expression: \[a-z\](\[-a-z0-9\]*\[a-z0-9\])?.
76
- # Label values must be between 0 and 63 characters long and must conform
77
- # to the regular expression (\[a-z\](\[-a-z0-9\]*\[a-z0-9\])?)?.
78
- # No more than 256 labels can be associated with a given resource.
79
- # Clients should store labels in a representation such as JSON that does not
80
- # depend on specific characters being disallowed.
81
- # Example: <code>"environment" : "dev"</code>
82
- # Read-write.
83
- # Corresponds to the JSON property `labels`
84
- # @return [Hash<String,String>]
85
- attr_accessor :labels
86
-
87
- # The user-assigned display name of the Project.
88
- # It must be 4 to 30 characters.
89
- # Allowed characters are: lowercase and uppercase letters, numbers,
90
- # hyphen, single-quote, double-quote, space, and exclamation point.
91
- # Example: <code>My Project</code>
92
- # Read-write.
93
- # Corresponds to the JSON property `name`
94
- # @return [String]
95
- attr_accessor :name
96
-
97
- # The unique, user-assigned ID of the Project.
98
- # It must be 6 to 30 lowercase letters, digits, or hyphens.
99
- # It must start with a letter.
100
- # Trailing hyphens are prohibited.
101
- # Example: <code>tokyo-rain-123</code>
102
- # Read-only after creation.
103
- # Corresponds to the JSON property `projectId`
104
- # @return [String]
105
- attr_accessor :project_id
106
-
107
- def initialize(**args)
108
- update!(**args)
109
- end
110
-
111
- # Update properties of this object
112
- def update!(**args)
113
- @lifecycle_state = args[:lifecycle_state] if args.key?(:lifecycle_state)
114
- @project_number = args[:project_number] if args.key?(:project_number)
115
- @parent = args[:parent] if args.key?(:parent)
116
- @create_time = args[:create_time] if args.key?(:create_time)
117
- @labels = args[:labels] if args.key?(:labels)
118
- @name = args[:name] if args.key?(:name)
119
- @project_id = args[:project_id] if args.key?(:project_id)
120
- end
121
- end
122
-
123
- # The response returned from the `SearchOrganizations` method.
124
- class SearchOrganizationsResponse
125
- include Google::Apis::Core::Hashable
126
-
127
- # The list of Organizations that matched the search query, possibly
128
- # paginated.
129
- # Corresponds to the JSON property `organizations`
130
- # @return [Array<Google::Apis::CloudresourcemanagerV1::Organization>]
131
- attr_accessor :organizations
132
-
133
- # A pagination token to be used to retrieve the next page of results. If the
134
- # result is too large to fit within the page size specified in the request,
135
- # this field will be set with a token that can be used to fetch the next page
136
- # of results. If this field is empty, it indicates that this response
137
- # contains the last page of results.
138
- # Corresponds to the JSON property `nextPageToken`
139
- # @return [String]
140
- attr_accessor :next_page_token
141
-
142
- def initialize(**args)
143
- update!(**args)
144
- end
145
-
146
- # Update properties of this object
147
- def update!(**args)
148
- @organizations = args[:organizations] if args.key?(:organizations)
149
- @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
150
- end
151
- end
152
-
153
- # Request message for `TestIamPermissions` method.
154
- class TestIamPermissionsRequest
155
- include Google::Apis::Core::Hashable
156
-
157
- # The set of permissions to check for the `resource`. Permissions with
158
- # wildcards (such as '*' or 'storage.*') are not allowed. For more
159
- # information see
160
- # [IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).
161
- # Corresponds to the JSON property `permissions`
162
- # @return [Array<String>]
163
- attr_accessor :permissions
164
-
165
- def initialize(**args)
166
- update!(**args)
167
- end
168
-
169
- # Update properties of this object
170
- def update!(**args)
171
- @permissions = args[:permissions] if args.key?(:permissions)
172
- end
173
- end
174
-
175
- # Defines an Identity and Access Management (IAM) policy. It is used to
176
- # specify access control policies for Cloud Platform resources.
177
- # A `Policy` consists of a list of `bindings`. A `Binding` binds a list of
178
- # `members` to a `role`, where the members can be user accounts, Google groups,
179
- # Google domains, and service accounts. A `role` is a named list of permissions
180
- # defined by IAM.
181
- # **Example**
182
- # `
183
- # "bindings": [
184
- # `
185
- # "role": "roles/owner",
186
- # "members": [
187
- # "user:mike@example.com",
188
- # "group:admins@example.com",
189
- # "domain:google.com",
190
- # "serviceAccount:my-other-app@appspot.gserviceaccount.com",
191
- # ]
192
- # `,
193
- # `
194
- # "role": "roles/viewer",
195
- # "members": ["user:sean@example.com"]
196
- # `
197
- # ]
198
- # `
199
- # For a description of IAM and its features, see the
200
- # [IAM developer's guide](https://cloud.google.com/iam).
201
- class Policy
202
- include Google::Apis::Core::Hashable
203
-
204
- # Associates a list of `members` to a `role`.
205
- # Multiple `bindings` must not be specified for the same `role`.
206
- # `bindings` with no members will result in an error.
207
- # Corresponds to the JSON property `bindings`
208
- # @return [Array<Google::Apis::CloudresourcemanagerV1::Binding>]
209
- attr_accessor :bindings
210
-
211
- # `etag` is used for optimistic concurrency control as a way to help
212
- # prevent simultaneous updates of a policy from overwriting each other.
213
- # It is strongly suggested that systems make use of the `etag` in the
214
- # read-modify-write cycle to perform policy updates in order to avoid race
215
- # conditions: An `etag` is returned in the response to `getIamPolicy`, and
216
- # systems are expected to put that etag in the request to `setIamPolicy` to
217
- # ensure that their change will be applied to the same version of the policy.
218
- # If no `etag` is provided in the call to `setIamPolicy`, then the existing
219
- # policy is overwritten blindly.
220
- # Corresponds to the JSON property `etag`
221
- # @return [String]
222
- attr_accessor :etag
223
-
224
- # Version of the `Policy`. The default version is 0.
225
- # Corresponds to the JSON property `version`
226
- # @return [Fixnum]
227
- attr_accessor :version
228
-
229
- def initialize(**args)
230
- update!(**args)
231
- end
232
-
233
- # Update properties of this object
234
- def update!(**args)
235
- @bindings = args[:bindings] if args.key?(:bindings)
236
- @etag = args[:etag] if args.key?(:etag)
237
- @version = args[:version] if args.key?(:version)
238
- end
239
- end
240
-
241
- # Metadata describing a long running folder operation
242
- class FolderOperation
243
- include Google::Apis::Core::Hashable
244
-
245
- # The display name of the folder.
246
- # Corresponds to the JSON property `displayName`
247
- # @return [String]
248
- attr_accessor :display_name
249
-
250
- # The resource name of the folder's parent.
251
- # Only applicable when the operation_type is MOVE.
252
- # Corresponds to the JSON property `sourceParent`
253
- # @return [String]
254
- attr_accessor :source_parent
255
-
256
- # The resource name of the folder or organization we are either creating
257
- # the folder under or moving the folder to.
258
- # Corresponds to the JSON property `destinationParent`
259
- # @return [String]
260
- attr_accessor :destination_parent
261
-
262
- # The type of this operation.
263
- # Corresponds to the JSON property `operationType`
264
- # @return [String]
265
- attr_accessor :operation_type
266
-
267
- def initialize(**args)
268
- update!(**args)
269
- end
270
-
271
- # Update properties of this object
272
- def update!(**args)
273
- @display_name = args[:display_name] if args.key?(:display_name)
274
- @source_parent = args[:source_parent] if args.key?(:source_parent)
275
- @destination_parent = args[:destination_parent] if args.key?(:destination_parent)
276
- @operation_type = args[:operation_type] if args.key?(:operation_type)
277
- end
278
- end
279
-
280
- # A classification of the Folder Operation error.
281
- class FolderOperationError
282
- include Google::Apis::Core::Hashable
283
-
284
- # The type of operation error experienced.
285
- # Corresponds to the JSON property `errorMessageId`
286
- # @return [String]
287
- attr_accessor :error_message_id
288
-
289
- def initialize(**args)
290
- update!(**args)
291
- end
292
-
293
- # Update properties of this object
294
- def update!(**args)
295
- @error_message_id = args[:error_message_id] if args.key?(:error_message_id)
296
- end
297
- end
298
-
299
- # A container to reference an id for any resource type. A `resource` in Google
300
- # Cloud Platform is a generic term for something you (a developer) may want to
301
- # interact with through one of our API's. Some examples are an AppEngine app,
302
- # a Compute Engine instance, a Cloud SQL database, and so on.
303
- class ResourceId
304
- include Google::Apis::Core::Hashable
305
-
306
- # Required field representing the resource type this id is for.
307
- # At present, the only valid type is "organization".
308
- # Corresponds to the JSON property `type`
309
- # @return [String]
310
- attr_accessor :type
311
-
312
- # Required field for the type-specific id. This should correspond to the id
313
- # used in the type-specific API's.
314
- # Corresponds to the JSON property `id`
315
- # @return [String]
316
- attr_accessor :id
317
-
318
- def initialize(**args)
319
- update!(**args)
320
- end
321
-
322
- # Update properties of this object
323
- def update!(**args)
324
- @type = args[:type] if args.key?(:type)
325
- @id = args[:id] if args.key?(:id)
326
- end
327
- end
328
-
329
- # This resource represents a long-running operation that is the result of a
330
- # network API call.
331
- class Operation
332
- include Google::Apis::Core::Hashable
333
-
334
- # If the value is `false`, it means the operation is still in progress.
335
- # If true, the operation is completed, and either `error` or `response` is
336
- # available.
337
- # Corresponds to the JSON property `done`
338
- # @return [Boolean]
339
- attr_accessor :done
340
- alias_method :done?, :done
341
-
342
- # The normal response of the operation in case of success. If the original
343
- # method returns no data on success, such as `Delete`, the response is
344
- # `google.protobuf.Empty`. If the original method is standard
345
- # `Get`/`Create`/`Update`, the response should be the resource. For other
346
- # methods, the response should have the type `XxxResponse`, where `Xxx`
347
- # is the original method name. For example, if the original method name
348
- # is `TakeSnapshot()`, the inferred response type is
349
- # `TakeSnapshotResponse`.
350
- # Corresponds to the JSON property `response`
351
- # @return [Hash<String,Object>]
352
- attr_accessor :response
353
-
354
- # The server-assigned name, which is only unique within the same service that
355
- # originally returns it. If you use the default HTTP mapping, the
356
- # `name` should have the format of `operations/some/unique/name`.
357
- # Corresponds to the JSON property `name`
358
- # @return [String]
359
- attr_accessor :name
360
-
361
- # The `Status` type defines a logical error model that is suitable for different
362
- # programming environments, including REST APIs and RPC APIs. It is used by
363
- # [gRPC](https://github.com/grpc). The error model is designed to be:
364
- # - Simple to use and understand for most users
365
- # - Flexible enough to meet unexpected needs
366
- # # Overview
367
- # The `Status` message contains three pieces of data: error code, error message,
368
- # and error details. The error code should be an enum value of
369
- # google.rpc.Code, but it may accept additional error codes if needed. The
370
- # error message should be a developer-facing English message that helps
371
- # developers *understand* and *resolve* the error. If a localized user-facing
372
- # error message is needed, put the localized message in the error details or
373
- # localize it in the client. The optional error details may contain arbitrary
374
- # information about the error. There is a predefined set of error detail types
375
- # in the package `google.rpc` which can be used for common error conditions.
376
- # # Language mapping
377
- # The `Status` message is the logical representation of the error model, but it
378
- # is not necessarily the actual wire format. When the `Status` message is
379
- # exposed in different client libraries and different wire protocols, it can be
380
- # mapped differently. For example, it will likely be mapped to some exceptions
381
- # in Java, but more likely mapped to some error codes in C.
382
- # # Other uses
383
- # The error model and the `Status` message can be used in a variety of
384
- # environments, either with or without APIs, to provide a
385
- # consistent developer experience across different environments.
386
- # Example uses of this error model include:
387
- # - Partial errors. If a service needs to return partial errors to the client,
388
- # it may embed the `Status` in the normal response to indicate the partial
389
- # errors.
390
- # - Workflow errors. A typical workflow has multiple steps. Each step may
391
- # have a `Status` message for error reporting purpose.
392
- # - Batch operations. If a client uses batch request and batch response, the
393
- # `Status` message should be used directly inside batch response, one for
394
- # each error sub-response.
395
- # - Asynchronous operations. If an API call embeds asynchronous operation
396
- # results in its response, the status of those operations should be
397
- # represented directly using the `Status` message.
398
- # - Logging. If some API errors are stored in logs, the message `Status` could
399
- # be used directly after any stripping needed for security/privacy reasons.
400
- # Corresponds to the JSON property `error`
401
- # @return [Google::Apis::CloudresourcemanagerV1::Status]
402
- attr_accessor :error
403
-
404
- # Service-specific metadata associated with the operation. It typically
405
- # contains progress information and common metadata such as create time.
406
- # Some services might not provide such metadata. Any method that returns a
407
- # long-running operation should document the metadata type, if any.
408
- # Corresponds to the JSON property `metadata`
409
- # @return [Hash<String,Object>]
410
- attr_accessor :metadata
411
-
412
- def initialize(**args)
413
- update!(**args)
414
- end
415
-
416
- # Update properties of this object
417
- def update!(**args)
418
- @done = args[:done] if args.key?(:done)
419
- @response = args[:response] if args.key?(:response)
420
- @name = args[:name] if args.key?(:name)
421
- @error = args[:error] if args.key?(:error)
422
- @metadata = args[:metadata] if args.key?(:metadata)
423
- end
424
- end
425
-
426
- # Identifying information for a single ancestor of a project.
427
- class Ancestor
428
- include Google::Apis::Core::Hashable
429
-
430
- # A container to reference an id for any resource type. A `resource` in Google
431
- # Cloud Platform is a generic term for something you (a developer) may want to
432
- # interact with through one of our API's. Some examples are an AppEngine app,
433
- # a Compute Engine instance, a Cloud SQL database, and so on.
434
- # Corresponds to the JSON property `resourceId`
435
- # @return [Google::Apis::CloudresourcemanagerV1::ResourceId]
436
- attr_accessor :resource_id
437
-
438
- def initialize(**args)
439
- update!(**args)
440
- end
441
-
442
- # Update properties of this object
443
- def update!(**args)
444
- @resource_id = args[:resource_id] if args.key?(:resource_id)
445
- end
446
- end
447
-
448
25
  # Request message for `SetIamPolicy` method.
449
26
  class SetIamPolicyRequest
450
27
  include Google::Apis::Core::Hashable
@@ -583,12 +160,250 @@ module Google
583
160
  # @return [Array<String>]
584
161
  attr_accessor :members
585
162
 
586
- # Role that is assigned to `members`.
587
- # For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
588
- # Required
589
- # Corresponds to the JSON property `role`
163
+ # Role that is assigned to `members`.
164
+ # For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
165
+ # Required
166
+ # Corresponds to the JSON property `role`
167
+ # @return [String]
168
+ attr_accessor :role
169
+
170
+ def initialize(**args)
171
+ update!(**args)
172
+ end
173
+
174
+ # Update properties of this object
175
+ def update!(**args)
176
+ @members = args[:members] if args.key?(:members)
177
+ @role = args[:role] if args.key?(:role)
178
+ end
179
+ end
180
+
181
+ # A generic empty message that you can re-use to avoid defining duplicated
182
+ # empty messages in your APIs. A typical example is to use it as the request
183
+ # or the response type of an API method. For instance:
184
+ # service Foo `
185
+ # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
186
+ # `
187
+ # The JSON representation for `Empty` is empty JSON object ````.
188
+ class Empty
189
+ include Google::Apis::Core::Hashable
190
+
191
+ def initialize(**args)
192
+ update!(**args)
193
+ end
194
+
195
+ # Update properties of this object
196
+ def update!(**args)
197
+ end
198
+ end
199
+
200
+ # The request sent to the UndeleteProject
201
+ # method.
202
+ class UndeleteProjectRequest
203
+ include Google::Apis::Core::Hashable
204
+
205
+ def initialize(**args)
206
+ update!(**args)
207
+ end
208
+
209
+ # Update properties of this object
210
+ def update!(**args)
211
+ end
212
+ end
213
+
214
+ # The root node in the resource hierarchy to which a particular entity's
215
+ # (e.g., company) resources belong.
216
+ class Organization
217
+ include Google::Apis::Core::Hashable
218
+
219
+ # A friendly string to be used to refer to the Organization in the UI.
220
+ # Assigned by the server, set to the firm name of the Google For Work
221
+ # customer that owns this organization.
222
+ # @OutputOnly
223
+ # Corresponds to the JSON property `displayName`
224
+ # @return [String]
225
+ attr_accessor :display_name
226
+
227
+ # Timestamp when the Organization was created. Assigned by the server.
228
+ # @OutputOnly
229
+ # Corresponds to the JSON property `creationTime`
230
+ # @return [String]
231
+ attr_accessor :creation_time
232
+
233
+ # The entity that owns an Organization. The lifetime of the Organization and
234
+ # all of its descendants are bound to the `OrganizationOwner`. If the
235
+ # `OrganizationOwner` is deleted, the Organization and all its descendants will
236
+ # be deleted.
237
+ # Corresponds to the JSON property `owner`
238
+ # @return [Google::Apis::CloudresourcemanagerV1::OrganizationOwner]
239
+ attr_accessor :owner
240
+
241
+ # The organization's current lifecycle state. Assigned by the server.
242
+ # @OutputOnly
243
+ # Corresponds to the JSON property `lifecycleState`
244
+ # @return [String]
245
+ attr_accessor :lifecycle_state
246
+
247
+ # Output Only. The resource name of the organization. This is the
248
+ # organization's relative path in the API. Its format is
249
+ # "organizations/[organization_id]". For example, "organizations/1234".
250
+ # Corresponds to the JSON property `name`
251
+ # @return [String]
252
+ attr_accessor :name
253
+
254
+ def initialize(**args)
255
+ update!(**args)
256
+ end
257
+
258
+ # Update properties of this object
259
+ def update!(**args)
260
+ @display_name = args[:display_name] if args.key?(:display_name)
261
+ @creation_time = args[:creation_time] if args.key?(:creation_time)
262
+ @owner = args[:owner] if args.key?(:owner)
263
+ @lifecycle_state = args[:lifecycle_state] if args.key?(:lifecycle_state)
264
+ @name = args[:name] if args.key?(:name)
265
+ end
266
+ end
267
+
268
+ # A status object which is used as the `metadata` field for the Operation
269
+ # returned by CreateProject. It provides insight for when significant phases of
270
+ # Project creation have completed.
271
+ class ProjectCreationStatus
272
+ include Google::Apis::Core::Hashable
273
+
274
+ # True if the project creation process is complete.
275
+ # Corresponds to the JSON property `ready`
276
+ # @return [Boolean]
277
+ attr_accessor :ready
278
+ alias_method :ready?, :ready
279
+
280
+ # Creation time of the project creation workflow.
281
+ # Corresponds to the JSON property `createTime`
282
+ # @return [String]
283
+ attr_accessor :create_time
284
+
285
+ # True if the project can be retrieved using GetProject. No other operations
286
+ # on the project are guaranteed to work until the project creation is
287
+ # complete.
288
+ # Corresponds to the JSON property `gettable`
289
+ # @return [Boolean]
290
+ attr_accessor :gettable
291
+ alias_method :gettable?, :gettable
292
+
293
+ def initialize(**args)
294
+ update!(**args)
295
+ end
296
+
297
+ # Update properties of this object
298
+ def update!(**args)
299
+ @ready = args[:ready] if args.key?(:ready)
300
+ @create_time = args[:create_time] if args.key?(:create_time)
301
+ @gettable = args[:gettable] if args.key?(:gettable)
302
+ end
303
+ end
304
+
305
+ # Response message for `TestIamPermissions` method.
306
+ class TestIamPermissionsResponse
307
+ include Google::Apis::Core::Hashable
308
+
309
+ # A subset of `TestPermissionsRequest.permissions` that the caller is
310
+ # allowed.
311
+ # Corresponds to the JSON property `permissions`
312
+ # @return [Array<String>]
313
+ attr_accessor :permissions
314
+
315
+ def initialize(**args)
316
+ update!(**args)
317
+ end
318
+
319
+ # Update properties of this object
320
+ def update!(**args)
321
+ @permissions = args[:permissions] if args.key?(:permissions)
322
+ end
323
+ end
324
+
325
+ # Request message for `GetIamPolicy` method.
326
+ class GetIamPolicyRequest
327
+ include Google::Apis::Core::Hashable
328
+
329
+ def initialize(**args)
330
+ update!(**args)
331
+ end
332
+
333
+ # Update properties of this object
334
+ def update!(**args)
335
+ end
336
+ end
337
+
338
+ # Response from the GetAncestry method.
339
+ class GetAncestryResponse
340
+ include Google::Apis::Core::Hashable
341
+
342
+ # Ancestors are ordered from bottom to top of the resource hierarchy. The
343
+ # first ancestor is the project itself, followed by the project's parent,
344
+ # etc.
345
+ # Corresponds to the JSON property `ancestor`
346
+ # @return [Array<Google::Apis::CloudresourcemanagerV1::Ancestor>]
347
+ attr_accessor :ancestor
348
+
349
+ def initialize(**args)
350
+ update!(**args)
351
+ end
352
+
353
+ # Update properties of this object
354
+ def update!(**args)
355
+ @ancestor = args[:ancestor] if args.key?(:ancestor)
356
+ end
357
+ end
358
+
359
+ # The entity that owns an Organization. The lifetime of the Organization and
360
+ # all of its descendants are bound to the `OrganizationOwner`. If the
361
+ # `OrganizationOwner` is deleted, the Organization and all its descendants will
362
+ # be deleted.
363
+ class OrganizationOwner
364
+ include Google::Apis::Core::Hashable
365
+
366
+ # The Google for Work customer id used in the Directory API.
367
+ # Corresponds to the JSON property `directoryCustomerId`
368
+ # @return [String]
369
+ attr_accessor :directory_customer_id
370
+
371
+ def initialize(**args)
372
+ update!(**args)
373
+ end
374
+
375
+ # Update properties of this object
376
+ def update!(**args)
377
+ @directory_customer_id = args[:directory_customer_id] if args.key?(:directory_customer_id)
378
+ end
379
+ end
380
+
381
+ # A page of the response received from the
382
+ # ListProjects
383
+ # method.
384
+ # A paginated response where more pages are available has
385
+ # `next_page_token` set. This token can be used in a subsequent request to
386
+ # retrieve the next request page.
387
+ class ListProjectsResponse
388
+ include Google::Apis::Core::Hashable
389
+
390
+ # The list of Projects that matched the list filter. This list can
391
+ # be paginated.
392
+ # Corresponds to the JSON property `projects`
393
+ # @return [Array<Google::Apis::CloudresourcemanagerV1::Project>]
394
+ attr_accessor :projects
395
+
396
+ # Pagination token.
397
+ # If the result set is too large to fit in a single response, this token
398
+ # is returned. It encodes the position of the current result cursor.
399
+ # Feeding this value into a new list request with the `page_token` parameter
400
+ # gives the next page of the results.
401
+ # When `next_page_token` is not filled in, there is no next page and
402
+ # the list returned is the last page in the result set.
403
+ # Pagination tokens have a limited lifetime.
404
+ # Corresponds to the JSON property `nextPageToken`
590
405
  # @return [String]
591
- attr_accessor :role
406
+ attr_accessor :next_page_token
592
407
 
593
408
  def initialize(**args)
594
409
  update!(**args)
@@ -596,33 +411,58 @@ module Google
596
411
 
597
412
  # Update properties of this object
598
413
  def update!(**args)
599
- @members = args[:members] if args.key?(:members)
600
- @role = args[:role] if args.key?(:role)
414
+ @projects = args[:projects] if args.key?(:projects)
415
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
601
416
  end
602
417
  end
603
418
 
604
- # A generic empty message that you can re-use to avoid defining duplicated
605
- # empty messages in your APIs. A typical example is to use it as the request
606
- # or the response type of an API method. For instance:
607
- # service Foo `
608
- # rpc Bar(google.protobuf.Empty) returns (google.protobuf.Empty);
609
- # `
610
- # The JSON representation for `Empty` is empty JSON object ````.
611
- class Empty
419
+ # The request sent to the `SearchOrganizations` method.
420
+ class SearchOrganizationsRequest
612
421
  include Google::Apis::Core::Hashable
613
422
 
423
+ # An optional query string used to filter the Organizations to return in
424
+ # the response. Filter rules are case-insensitive.
425
+ # Organizations may be filtered by `owner.directoryCustomerId` or by
426
+ # `domain`, where the domain is a Google for Work domain, for example:
427
+ # |Filter|Description|
428
+ # |------|-----------|
429
+ # |owner.directorycustomerid:123456789|Organizations with
430
+ # `owner.directory_customer_id` equal to `123456789`.|
431
+ # |domain:google.com|Organizations corresponding to the domain `google.com`.|
432
+ # This field is optional.
433
+ # Corresponds to the JSON property `filter`
434
+ # @return [String]
435
+ attr_accessor :filter
436
+
437
+ # A pagination token returned from a previous call to `SearchOrganizations`
438
+ # that indicates from where listing should continue.
439
+ # This field is optional.
440
+ # Corresponds to the JSON property `pageToken`
441
+ # @return [String]
442
+ attr_accessor :page_token
443
+
444
+ # The maximum number of Organizations to return in the response.
445
+ # This field is optional.
446
+ # Corresponds to the JSON property `pageSize`
447
+ # @return [Fixnum]
448
+ attr_accessor :page_size
449
+
614
450
  def initialize(**args)
615
451
  update!(**args)
616
452
  end
617
453
 
618
454
  # Update properties of this object
619
455
  def update!(**args)
456
+ @filter = args[:filter] if args.key?(:filter)
457
+ @page_token = args[:page_token] if args.key?(:page_token)
458
+ @page_size = args[:page_size] if args.key?(:page_size)
620
459
  end
621
460
  end
622
461
 
623
- # The request sent to the UndeleteProject
462
+ # The request sent to the
463
+ # GetAncestry
624
464
  # method.
625
- class UndeleteProjectRequest
465
+ class GetAncestryRequest
626
466
  include Google::Apis::Core::Hashable
627
467
 
628
468
  def initialize(**args)
@@ -634,84 +474,194 @@ module Google
634
474
  end
635
475
  end
636
476
 
637
- # The root node in the resource hierarchy to which a particular entity's
638
- # (e.g., company) resources belong.
639
- class Organization
477
+ # A Project is a high-level Google Cloud Platform entity. It is a
478
+ # container for ACLs, APIs, AppEngine Apps, VMs, and other
479
+ # Google Cloud Platform resources.
480
+ class Project
640
481
  include Google::Apis::Core::Hashable
641
482
 
642
- # A friendly string to be used to refer to the Organization in the UI.
643
- # Assigned by the server, set to the firm name of the Google For Work
644
- # customer that owns this organization.
645
- # @OutputOnly
646
- # Corresponds to the JSON property `displayName`
483
+ # The Project lifecycle state.
484
+ # Read-only.
485
+ # Corresponds to the JSON property `lifecycleState`
647
486
  # @return [String]
648
- attr_accessor :display_name
487
+ attr_accessor :lifecycle_state
649
488
 
650
- # Timestamp when the Organization was created. Assigned by the server.
651
- # @OutputOnly
652
- # Corresponds to the JSON property `creationTime`
489
+ # The number uniquely identifying the project.
490
+ # Example: <code>415104041262</code>
491
+ # Read-only.
492
+ # Corresponds to the JSON property `projectNumber`
653
493
  # @return [String]
654
- attr_accessor :creation_time
494
+ attr_accessor :project_number
655
495
 
656
- # The entity that owns an Organization. The lifetime of the Organization and
657
- # all of its descendants are bound to the `OrganizationOwner`. If the
658
- # `OrganizationOwner` is deleted, the Organization and all its descendants will
659
- # be deleted.
660
- # Corresponds to the JSON property `owner`
661
- # @return [Google::Apis::CloudresourcemanagerV1::OrganizationOwner]
662
- attr_accessor :owner
496
+ # A container to reference an id for any resource type. A `resource` in Google
497
+ # Cloud Platform is a generic term for something you (a developer) may want to
498
+ # interact with through one of our API's. Some examples are an AppEngine app,
499
+ # a Compute Engine instance, a Cloud SQL database, and so on.
500
+ # Corresponds to the JSON property `parent`
501
+ # @return [Google::Apis::CloudresourcemanagerV1::ResourceId]
502
+ attr_accessor :parent
663
503
 
664
- # The organization's current lifecycle state. Assigned by the server.
665
- # @OutputOnly
666
- # Corresponds to the JSON property `lifecycleState`
504
+ # Creation time.
505
+ # Read-only.
506
+ # Corresponds to the JSON property `createTime`
667
507
  # @return [String]
668
- attr_accessor :lifecycle_state
508
+ attr_accessor :create_time
669
509
 
670
- # Output Only. The resource name of the organization. This is the
671
- # organization's relative path in the API. Its format is
672
- # "organizations/[organization_id]". For example, "organizations/1234".
510
+ # The labels associated with this Project.
511
+ # Label keys must be between 1 and 63 characters long and must conform
512
+ # to the following regular expression: \[a-z\](\[-a-z0-9\]*\[a-z0-9\])?.
513
+ # Label values must be between 0 and 63 characters long and must conform
514
+ # to the regular expression (\[a-z\](\[-a-z0-9\]*\[a-z0-9\])?)?.
515
+ # No more than 256 labels can be associated with a given resource.
516
+ # Clients should store labels in a representation such as JSON that does not
517
+ # depend on specific characters being disallowed.
518
+ # Example: <code>"environment" : "dev"</code>
519
+ # Read-write.
520
+ # Corresponds to the JSON property `labels`
521
+ # @return [Hash<String,String>]
522
+ attr_accessor :labels
523
+
524
+ # The user-assigned display name of the Project.
525
+ # It must be 4 to 30 characters.
526
+ # Allowed characters are: lowercase and uppercase letters, numbers,
527
+ # hyphen, single-quote, double-quote, space, and exclamation point.
528
+ # Example: <code>My Project</code>
529
+ # Read-write.
673
530
  # Corresponds to the JSON property `name`
674
531
  # @return [String]
675
532
  attr_accessor :name
676
533
 
534
+ # The unique, user-assigned ID of the Project.
535
+ # It must be 6 to 30 lowercase letters, digits, or hyphens.
536
+ # It must start with a letter.
537
+ # Trailing hyphens are prohibited.
538
+ # Example: <code>tokyo-rain-123</code>
539
+ # Read-only after creation.
540
+ # Corresponds to the JSON property `projectId`
541
+ # @return [String]
542
+ attr_accessor :project_id
543
+
677
544
  def initialize(**args)
678
545
  update!(**args)
679
546
  end
680
547
 
681
548
  # Update properties of this object
682
549
  def update!(**args)
683
- @display_name = args[:display_name] if args.key?(:display_name)
684
- @creation_time = args[:creation_time] if args.key?(:creation_time)
685
- @owner = args[:owner] if args.key?(:owner)
686
550
  @lifecycle_state = args[:lifecycle_state] if args.key?(:lifecycle_state)
551
+ @project_number = args[:project_number] if args.key?(:project_number)
552
+ @parent = args[:parent] if args.key?(:parent)
553
+ @create_time = args[:create_time] if args.key?(:create_time)
554
+ @labels = args[:labels] if args.key?(:labels)
687
555
  @name = args[:name] if args.key?(:name)
556
+ @project_id = args[:project_id] if args.key?(:project_id)
688
557
  end
689
558
  end
690
559
 
691
- # A status object which is used as the `metadata` field for the Operation
692
- # returned by CreateProject. It provides insight for when significant phases of
693
- # Project creation have completed.
694
- class ProjectCreationStatus
560
+ # Request message for `TestIamPermissions` method.
561
+ class TestIamPermissionsRequest
695
562
  include Google::Apis::Core::Hashable
696
563
 
697
- # True if the project creation process is complete.
698
- # Corresponds to the JSON property `ready`
699
- # @return [Boolean]
700
- attr_accessor :ready
701
- alias_method :ready?, :ready
564
+ # The set of permissions to check for the `resource`. Permissions with
565
+ # wildcards (such as '*' or 'storage.*') are not allowed. For more
566
+ # information see
567
+ # [IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).
568
+ # Corresponds to the JSON property `permissions`
569
+ # @return [Array<String>]
570
+ attr_accessor :permissions
702
571
 
703
- # Creation time of the project creation workflow.
704
- # Corresponds to the JSON property `createTime`
572
+ def initialize(**args)
573
+ update!(**args)
574
+ end
575
+
576
+ # Update properties of this object
577
+ def update!(**args)
578
+ @permissions = args[:permissions] if args.key?(:permissions)
579
+ end
580
+ end
581
+
582
+ # The response returned from the `SearchOrganizations` method.
583
+ class SearchOrganizationsResponse
584
+ include Google::Apis::Core::Hashable
585
+
586
+ # A pagination token to be used to retrieve the next page of results. If the
587
+ # result is too large to fit within the page size specified in the request,
588
+ # this field will be set with a token that can be used to fetch the next page
589
+ # of results. If this field is empty, it indicates that this response
590
+ # contains the last page of results.
591
+ # Corresponds to the JSON property `nextPageToken`
705
592
  # @return [String]
706
- attr_accessor :create_time
593
+ attr_accessor :next_page_token
594
+
595
+ # The list of Organizations that matched the search query, possibly
596
+ # paginated.
597
+ # Corresponds to the JSON property `organizations`
598
+ # @return [Array<Google::Apis::CloudresourcemanagerV1::Organization>]
599
+ attr_accessor :organizations
600
+
601
+ def initialize(**args)
602
+ update!(**args)
603
+ end
604
+
605
+ # Update properties of this object
606
+ def update!(**args)
607
+ @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
608
+ @organizations = args[:organizations] if args.key?(:organizations)
609
+ end
610
+ end
611
+
612
+ # Defines an Identity and Access Management (IAM) policy. It is used to
613
+ # specify access control policies for Cloud Platform resources.
614
+ # A `Policy` consists of a list of `bindings`. A `Binding` binds a list of
615
+ # `members` to a `role`, where the members can be user accounts, Google groups,
616
+ # Google domains, and service accounts. A `role` is a named list of permissions
617
+ # defined by IAM.
618
+ # **Example**
619
+ # `
620
+ # "bindings": [
621
+ # `
622
+ # "role": "roles/owner",
623
+ # "members": [
624
+ # "user:mike@example.com",
625
+ # "group:admins@example.com",
626
+ # "domain:google.com",
627
+ # "serviceAccount:my-other-app@appspot.gserviceaccount.com",
628
+ # ]
629
+ # `,
630
+ # `
631
+ # "role": "roles/viewer",
632
+ # "members": ["user:sean@example.com"]
633
+ # `
634
+ # ]
635
+ # `
636
+ # For a description of IAM and its features, see the
637
+ # [IAM developer's guide](https://cloud.google.com/iam).
638
+ class Policy
639
+ include Google::Apis::Core::Hashable
640
+
641
+ # `etag` is used for optimistic concurrency control as a way to help
642
+ # prevent simultaneous updates of a policy from overwriting each other.
643
+ # It is strongly suggested that systems make use of the `etag` in the
644
+ # read-modify-write cycle to perform policy updates in order to avoid race
645
+ # conditions: An `etag` is returned in the response to `getIamPolicy`, and
646
+ # systems are expected to put that etag in the request to `setIamPolicy` to
647
+ # ensure that their change will be applied to the same version of the policy.
648
+ # If no `etag` is provided in the call to `setIamPolicy`, then the existing
649
+ # policy is overwritten blindly.
650
+ # Corresponds to the JSON property `etag`
651
+ # @return [String]
652
+ attr_accessor :etag
707
653
 
708
- # True if the project can be retrieved using GetProject. No other operations
709
- # on the project are guaranteed to work until the project creation is
710
- # complete.
711
- # Corresponds to the JSON property `gettable`
712
- # @return [Boolean]
713
- attr_accessor :gettable
714
- alias_method :gettable?, :gettable
654
+ # Version of the `Policy`. The default version is 0.
655
+ # Corresponds to the JSON property `version`
656
+ # @return [Fixnum]
657
+ attr_accessor :version
658
+
659
+ # Associates a list of `members` to a `role`.
660
+ # Multiple `bindings` must not be specified for the same `role`.
661
+ # `bindings` with no members will result in an error.
662
+ # Corresponds to the JSON property `bindings`
663
+ # @return [Array<Google::Apis::CloudresourcemanagerV1::Binding>]
664
+ attr_accessor :bindings
715
665
 
716
666
  def initialize(**args)
717
667
  update!(**args)
@@ -719,34 +669,37 @@ module Google
719
669
 
720
670
  # Update properties of this object
721
671
  def update!(**args)
722
- @ready = args[:ready] if args.key?(:ready)
723
- @create_time = args[:create_time] if args.key?(:create_time)
724
- @gettable = args[:gettable] if args.key?(:gettable)
672
+ @etag = args[:etag] if args.key?(:etag)
673
+ @version = args[:version] if args.key?(:version)
674
+ @bindings = args[:bindings] if args.key?(:bindings)
725
675
  end
726
676
  end
727
677
 
728
- # Request message for `GetIamPolicy` method.
729
- class GetIamPolicyRequest
678
+ # Metadata describing a long running folder operation
679
+ class FolderOperation
730
680
  include Google::Apis::Core::Hashable
731
681
 
732
- def initialize(**args)
733
- update!(**args)
734
- end
682
+ # The type of this operation.
683
+ # Corresponds to the JSON property `operationType`
684
+ # @return [String]
685
+ attr_accessor :operation_type
735
686
 
736
- # Update properties of this object
737
- def update!(**args)
738
- end
739
- end
687
+ # The display name of the folder.
688
+ # Corresponds to the JSON property `displayName`
689
+ # @return [String]
690
+ attr_accessor :display_name
740
691
 
741
- # Response message for `TestIamPermissions` method.
742
- class TestIamPermissionsResponse
743
- include Google::Apis::Core::Hashable
692
+ # The resource name of the folder's parent.
693
+ # Only applicable when the operation_type is MOVE.
694
+ # Corresponds to the JSON property `sourceParent`
695
+ # @return [String]
696
+ attr_accessor :source_parent
744
697
 
745
- # A subset of `TestPermissionsRequest.permissions` that the caller is
746
- # allowed.
747
- # Corresponds to the JSON property `permissions`
748
- # @return [Array<String>]
749
- attr_accessor :permissions
698
+ # The resource name of the folder or organization we are either creating
699
+ # the folder under or moving the folder to.
700
+ # Corresponds to the JSON property `destinationParent`
701
+ # @return [String]
702
+ attr_accessor :destination_parent
750
703
 
751
704
  def initialize(**args)
752
705
  update!(**args)
@@ -754,20 +707,21 @@ module Google
754
707
 
755
708
  # Update properties of this object
756
709
  def update!(**args)
757
- @permissions = args[:permissions] if args.key?(:permissions)
710
+ @operation_type = args[:operation_type] if args.key?(:operation_type)
711
+ @display_name = args[:display_name] if args.key?(:display_name)
712
+ @source_parent = args[:source_parent] if args.key?(:source_parent)
713
+ @destination_parent = args[:destination_parent] if args.key?(:destination_parent)
758
714
  end
759
715
  end
760
716
 
761
- # Response from the GetAncestry method.
762
- class GetAncestryResponse
717
+ # A classification of the Folder Operation error.
718
+ class FolderOperationError
763
719
  include Google::Apis::Core::Hashable
764
720
 
765
- # Ancestors are ordered from bottom to top of the resource hierarchy. The
766
- # first ancestor is the project itself, followed by the project's parent,
767
- # etc.
768
- # Corresponds to the JSON property `ancestor`
769
- # @return [Array<Google::Apis::CloudresourcemanagerV1::Ancestor>]
770
- attr_accessor :ancestor
721
+ # The type of operation error experienced.
722
+ # Corresponds to the JSON property `errorMessageId`
723
+ # @return [String]
724
+ attr_accessor :error_message_id
771
725
 
772
726
  def initialize(**args)
773
727
  update!(**args)
@@ -775,21 +729,28 @@ module Google
775
729
 
776
730
  # Update properties of this object
777
731
  def update!(**args)
778
- @ancestor = args[:ancestor] if args.key?(:ancestor)
732
+ @error_message_id = args[:error_message_id] if args.key?(:error_message_id)
779
733
  end
780
734
  end
781
735
 
782
- # The entity that owns an Organization. The lifetime of the Organization and
783
- # all of its descendants are bound to the `OrganizationOwner`. If the
784
- # `OrganizationOwner` is deleted, the Organization and all its descendants will
785
- # be deleted.
786
- class OrganizationOwner
736
+ # A container to reference an id for any resource type. A `resource` in Google
737
+ # Cloud Platform is a generic term for something you (a developer) may want to
738
+ # interact with through one of our API's. Some examples are an AppEngine app,
739
+ # a Compute Engine instance, a Cloud SQL database, and so on.
740
+ class ResourceId
787
741
  include Google::Apis::Core::Hashable
788
742
 
789
- # The Google for Work customer id used in the Directory API.
790
- # Corresponds to the JSON property `directoryCustomerId`
743
+ # Required field representing the resource type this id is for.
744
+ # At present, the only valid type is "organization".
745
+ # Corresponds to the JSON property `type`
791
746
  # @return [String]
792
- attr_accessor :directory_customer_id
747
+ attr_accessor :type
748
+
749
+ # Required field for the type-specific id. This should correspond to the id
750
+ # used in the type-specific API's.
751
+ # Corresponds to the JSON property `id`
752
+ # @return [String]
753
+ attr_accessor :id
793
754
 
794
755
  def initialize(**args)
795
756
  update!(**args)
@@ -797,36 +758,93 @@ module Google
797
758
 
798
759
  # Update properties of this object
799
760
  def update!(**args)
800
- @directory_customer_id = args[:directory_customer_id] if args.key?(:directory_customer_id)
761
+ @type = args[:type] if args.key?(:type)
762
+ @id = args[:id] if args.key?(:id)
801
763
  end
802
764
  end
803
765
 
804
- # A page of the response received from the
805
- # ListProjects
806
- # method.
807
- # A paginated response where more pages are available has
808
- # `next_page_token` set. This token can be used in a subsequent request to
809
- # retrieve the next request page.
810
- class ListProjectsResponse
766
+ # This resource represents a long-running operation that is the result of a
767
+ # network API call.
768
+ class Operation
811
769
  include Google::Apis::Core::Hashable
812
770
 
813
- # The list of Projects that matched the list filter. This list can
814
- # be paginated.
815
- # Corresponds to the JSON property `projects`
816
- # @return [Array<Google::Apis::CloudresourcemanagerV1::Project>]
817
- attr_accessor :projects
771
+ # If the value is `false`, it means the operation is still in progress.
772
+ # If true, the operation is completed, and either `error` or `response` is
773
+ # available.
774
+ # Corresponds to the JSON property `done`
775
+ # @return [Boolean]
776
+ attr_accessor :done
777
+ alias_method :done?, :done
818
778
 
819
- # Pagination token.
820
- # If the result set is too large to fit in a single response, this token
821
- # is returned. It encodes the position of the current result cursor.
822
- # Feeding this value into a new list request with the `page_token` parameter
823
- # gives the next page of the results.
824
- # When `next_page_token` is not filled in, there is no next page and
825
- # the list returned is the last page in the result set.
826
- # Pagination tokens have a limited lifetime.
827
- # Corresponds to the JSON property `nextPageToken`
779
+ # The normal response of the operation in case of success. If the original
780
+ # method returns no data on success, such as `Delete`, the response is
781
+ # `google.protobuf.Empty`. If the original method is standard
782
+ # `Get`/`Create`/`Update`, the response should be the resource. For other
783
+ # methods, the response should have the type `XxxResponse`, where `Xxx`
784
+ # is the original method name. For example, if the original method name
785
+ # is `TakeSnapshot()`, the inferred response type is
786
+ # `TakeSnapshotResponse`.
787
+ # Corresponds to the JSON property `response`
788
+ # @return [Hash<String,Object>]
789
+ attr_accessor :response
790
+
791
+ # The server-assigned name, which is only unique within the same service that
792
+ # originally returns it. If you use the default HTTP mapping, the
793
+ # `name` should have the format of `operations/some/unique/name`.
794
+ # Corresponds to the JSON property `name`
828
795
  # @return [String]
829
- attr_accessor :next_page_token
796
+ attr_accessor :name
797
+
798
+ # The `Status` type defines a logical error model that is suitable for different
799
+ # programming environments, including REST APIs and RPC APIs. It is used by
800
+ # [gRPC](https://github.com/grpc). The error model is designed to be:
801
+ # - Simple to use and understand for most users
802
+ # - Flexible enough to meet unexpected needs
803
+ # # Overview
804
+ # The `Status` message contains three pieces of data: error code, error message,
805
+ # and error details. The error code should be an enum value of
806
+ # google.rpc.Code, but it may accept additional error codes if needed. The
807
+ # error message should be a developer-facing English message that helps
808
+ # developers *understand* and *resolve* the error. If a localized user-facing
809
+ # error message is needed, put the localized message in the error details or
810
+ # localize it in the client. The optional error details may contain arbitrary
811
+ # information about the error. There is a predefined set of error detail types
812
+ # in the package `google.rpc` which can be used for common error conditions.
813
+ # # Language mapping
814
+ # The `Status` message is the logical representation of the error model, but it
815
+ # is not necessarily the actual wire format. When the `Status` message is
816
+ # exposed in different client libraries and different wire protocols, it can be
817
+ # mapped differently. For example, it will likely be mapped to some exceptions
818
+ # in Java, but more likely mapped to some error codes in C.
819
+ # # Other uses
820
+ # The error model and the `Status` message can be used in a variety of
821
+ # environments, either with or without APIs, to provide a
822
+ # consistent developer experience across different environments.
823
+ # Example uses of this error model include:
824
+ # - Partial errors. If a service needs to return partial errors to the client,
825
+ # it may embed the `Status` in the normal response to indicate the partial
826
+ # errors.
827
+ # - Workflow errors. A typical workflow has multiple steps. Each step may
828
+ # have a `Status` message for error reporting purpose.
829
+ # - Batch operations. If a client uses batch request and batch response, the
830
+ # `Status` message should be used directly inside batch response, one for
831
+ # each error sub-response.
832
+ # - Asynchronous operations. If an API call embeds asynchronous operation
833
+ # results in its response, the status of those operations should be
834
+ # represented directly using the `Status` message.
835
+ # - Logging. If some API errors are stored in logs, the message `Status` could
836
+ # be used directly after any stripping needed for security/privacy reasons.
837
+ # Corresponds to the JSON property `error`
838
+ # @return [Google::Apis::CloudresourcemanagerV1::Status]
839
+ attr_accessor :error
840
+
841
+ # Service-specific metadata associated with the operation. It typically
842
+ # contains progress information and common metadata such as create time.
843
+ # Some services might not provide such metadata. Any method that returns a
844
+ # long-running operation should document the metadata type, if any.
845
+ # Corresponds to the JSON property `metadata`
846
+ # @return [Hash<String,Object>]
847
+ attr_accessor :metadata
830
848
 
831
849
  def initialize(**args)
832
850
  update!(**args)
@@ -834,41 +852,25 @@ module Google
834
852
 
835
853
  # Update properties of this object
836
854
  def update!(**args)
837
- @projects = args[:projects] if args.key?(:projects)
838
- @next_page_token = args[:next_page_token] if args.key?(:next_page_token)
855
+ @done = args[:done] if args.key?(:done)
856
+ @response = args[:response] if args.key?(:response)
857
+ @name = args[:name] if args.key?(:name)
858
+ @error = args[:error] if args.key?(:error)
859
+ @metadata = args[:metadata] if args.key?(:metadata)
839
860
  end
840
861
  end
841
862
 
842
- # The request sent to the `SearchOrganizations` method.
843
- class SearchOrganizationsRequest
863
+ # Identifying information for a single ancestor of a project.
864
+ class Ancestor
844
865
  include Google::Apis::Core::Hashable
845
866
 
846
- # An optional query string used to filter the Organizations to return in
847
- # the response. Filter rules are case-insensitive.
848
- # Organizations may be filtered by `owner.directoryCustomerId` or by
849
- # `domain`, where the domain is a Google for Work domain, for example:
850
- # |Filter|Description|
851
- # |------|-----------|
852
- # |owner.directorycustomerid:123456789|Organizations with
853
- # `owner.directory_customer_id` equal to `123456789`.|
854
- # |domain:google.com|Organizations corresponding to the domain `google.com`.|
855
- # This field is optional.
856
- # Corresponds to the JSON property `filter`
857
- # @return [String]
858
- attr_accessor :filter
859
-
860
- # A pagination token returned from a previous call to `SearchOrganizations`
861
- # that indicates from where listing should continue.
862
- # This field is optional.
863
- # Corresponds to the JSON property `pageToken`
864
- # @return [String]
865
- attr_accessor :page_token
866
-
867
- # The maximum number of Organizations to return in the response.
868
- # This field is optional.
869
- # Corresponds to the JSON property `pageSize`
870
- # @return [Fixnum]
871
- attr_accessor :page_size
867
+ # A container to reference an id for any resource type. A `resource` in Google
868
+ # Cloud Platform is a generic term for something you (a developer) may want to
869
+ # interact with through one of our API's. Some examples are an AppEngine app,
870
+ # a Compute Engine instance, a Cloud SQL database, and so on.
871
+ # Corresponds to the JSON property `resourceId`
872
+ # @return [Google::Apis::CloudresourcemanagerV1::ResourceId]
873
+ attr_accessor :resource_id
872
874
 
873
875
  def initialize(**args)
874
876
  update!(**args)
@@ -876,9 +878,7 @@ module Google
876
878
 
877
879
  # Update properties of this object
878
880
  def update!(**args)
879
- @filter = args[:filter] if args.key?(:filter)
880
- @page_token = args[:page_token] if args.key?(:page_token)
881
- @page_size = args[:page_size] if args.key?(:page_size)
881
+ @resource_id = args[:resource_id] if args.key?(:resource_id)
882
882
  end
883
883
  end
884
884
  end