blob: 6ca917e653e30afc933fa25f7252f7f038199bfb [file] [log] [blame]
Bu Sun Kim715bd7f2019-06-14 16:50:42 -07001<html><body>
2<style>
3
4body, h1, h2, h3, div, span, p, pre, a {
5 margin: 0;
6 padding: 0;
7 border: 0;
8 font-weight: inherit;
9 font-style: inherit;
10 font-size: 100%;
11 font-family: inherit;
12 vertical-align: baseline;
13}
14
15body {
16 font-size: 13px;
17 padding: 1em;
18}
19
20h1 {
21 font-size: 26px;
22 margin-bottom: 1em;
23}
24
25h2 {
26 font-size: 24px;
27 margin-bottom: 1em;
28}
29
30h3 {
31 font-size: 20px;
32 margin-bottom: 1em;
33 margin-top: 1em;
34}
35
36pre, code {
37 line-height: 1.5;
38 font-family: Monaco, 'DejaVu Sans Mono', 'Bitstream Vera Sans Mono', 'Lucida Console', monospace;
39}
40
41pre {
42 margin-top: 0.5em;
43}
44
45h1, h2, h3, p {
46 font-family: Arial, sans serif;
47}
48
49h1, h2, h3 {
50 border-bottom: solid #CCC 1px;
51}
52
53.toc_element {
54 margin-top: 0.5em;
55}
56
57.firstline {
58 margin-left: 2 em;
59}
60
61.method {
62 margin-top: 1em;
63 border: solid 1px #CCC;
64 padding: 1em;
65 background: #EEE;
66}
67
68.details {
69 font-weight: bold;
70 font-size: 14px;
71}
72
73</style>
74
75<h1><a href="cloudresourcemanager_v2.html">Cloud Resource Manager API</a> . <a href="cloudresourcemanager_v2.folders.html">folders</a></h1>
76<h2>Instance Methods</h2>
77<p class="toc_element">
78 <code><a href="#create">create(body, parent=None, x__xgafv=None)</a></code></p>
79<p class="firstline">Creates a Folder in the resource hierarchy.</p>
80<p class="toc_element">
81 <code><a href="#delete">delete(name, x__xgafv=None)</a></code></p>
82<p class="firstline">Requests deletion of a Folder. The Folder is moved into the</p>
83<p class="toc_element">
84 <code><a href="#get">get(name, x__xgafv=None)</a></code></p>
85<p class="firstline">Retrieves a Folder identified by the supplied resource name.</p>
86<p class="toc_element">
87 <code><a href="#getIamPolicy">getIamPolicy(resource, body=None, x__xgafv=None)</a></code></p>
88<p class="firstline">Gets the access control policy for a Folder. The returned policy may be</p>
89<p class="toc_element">
90 <code><a href="#list">list(parent=None, showDeleted=None, pageToken=None, x__xgafv=None, pageSize=None)</a></code></p>
91<p class="firstline">Lists the Folders that are direct descendants of supplied parent resource.</p>
92<p class="toc_element">
93 <code><a href="#list_next">list_next(previous_request, previous_response)</a></code></p>
94<p class="firstline">Retrieves the next page of results.</p>
95<p class="toc_element">
96 <code><a href="#move">move(name, body, x__xgafv=None)</a></code></p>
97<p class="firstline">Moves a Folder under a new resource parent.</p>
98<p class="toc_element">
99 <code><a href="#patch">patch(name, body, updateMask=None, x__xgafv=None)</a></code></p>
100<p class="firstline">Updates a Folder, changing its display_name.</p>
101<p class="toc_element">
102 <code><a href="#search">search(body, x__xgafv=None)</a></code></p>
103<p class="firstline">Search for folders that match specific filter criteria.</p>
104<p class="toc_element">
105 <code><a href="#search_next">search_next(previous_request, previous_response)</a></code></p>
106<p class="firstline">Retrieves the next page of results.</p>
107<p class="toc_element">
108 <code><a href="#setIamPolicy">setIamPolicy(resource, body, x__xgafv=None)</a></code></p>
109<p class="firstline">Sets the access control policy on a Folder, replacing any existing policy.</p>
110<p class="toc_element">
111 <code><a href="#testIamPermissions">testIamPermissions(resource, body, x__xgafv=None)</a></code></p>
112<p class="firstline">Returns permissions that a caller has on the specified Folder.</p>
113<p class="toc_element">
114 <code><a href="#undelete">undelete(name, body=None, x__xgafv=None)</a></code></p>
115<p class="firstline">Cancels the deletion request for a Folder. This method may only be</p>
116<h3>Method Details</h3>
117<div class="method">
118 <code class="details" id="create">create(body, parent=None, x__xgafv=None)</code>
119 <pre>Creates a Folder in the resource hierarchy.
120Returns an Operation which can be used to track the progress of the
121folder creation workflow.
122Upon success the Operation.response field will be populated with the
123created Folder.
124
125In order to succeed, the addition of this new Folder must not violate
126the Folder naming, height or fanout constraints.
127
128+ The Folder's display_name must be distinct from all other Folder's that
129share its parent.
130+ The addition of the Folder must not cause the active Folder hierarchy
131to exceed a height of 4. Note, the full active + deleted Folder hierarchy
132is allowed to reach a height of 8; this provides additional headroom when
133moving folders that contain deleted folders.
134+ The addition of the Folder must not cause the total number of Folders
135under its parent to exceed 100.
136
137If the operation fails due to a folder constraint violation, some errors
138may be returned by the CreateFolder request, with status code
139FAILED_PRECONDITION and an error description. Other folder constraint
140violations will be communicated in the Operation, with the specific
141PreconditionFailure returned via the details list in the Operation.error
142field.
143
144The caller must have `resourcemanager.folders.create` permission on the
145identified parent.
146
147Args:
148 body: object, The request body. (required)
149 The object takes the form of:
150
151{ # A Folder in an Organization's resource hierarchy, used to
152 # organize that Organization's resources.
153 "createTime": "A String", # Output only. Timestamp when the Folder was created. Assigned by the server.
154 "displayName": "A String", # The folder’s display name.
155 # A folder’s display name must be unique amongst its siblings, e.g.
156 # no two folders with the same parent can share the same display name.
157 # The display name must start and end with a letter or digit, may contain
158 # letters, digits, spaces, hyphens and underscores and can be no longer
159 # than 30 characters. This is captured by the regular expression:
160 # [\p{L}\p{N}]([\p{L}\p{N}_- ]{0,28}[\p{L}\p{N}])?.
161 "lifecycleState": "A String", # Output only. The lifecycle state of the folder.
162 # Updates to the lifecycle_state must be performed via
163 # DeleteFolder and
164 # UndeleteFolder.
165 "parent": "A String", # The Folder’s parent's resource name.
166 # Updates to the folder's parent must be performed via
167 # MoveFolder.
168 "name": "A String", # Output only. The resource name of the Folder.
169 # Its format is `folders/{folder_id}`, for example: "folders/1234".
170}
171
172 parent: string, The resource name of the new Folder's parent.
173Must be of the form `folders/{folder_id}` or `organizations/{org_id}`.
174 x__xgafv: string, V1 error format.
175 Allowed values
176 1 - v1 error format
177 2 - v2 error format
178
179Returns:
180 An object of the form:
181
182 { # This resource represents a long-running operation that is the result of a
183 # network API call.
184 "response": { # The normal response of the operation in case of success. If the original
185 # method returns no data on success, such as `Delete`, the response is
186 # `google.protobuf.Empty`. If the original method is standard
187 # `Get`/`Create`/`Update`, the response should be the resource. For other
188 # methods, the response should have the type `XxxResponse`, where `Xxx`
189 # is the original method name. For example, if the original method name
190 # is `TakeSnapshot()`, the inferred response type is
191 # `TakeSnapshotResponse`.
192 "a_key": "", # Properties of the object. Contains field @type with type URL.
193 },
194 "metadata": { # Service-specific metadata associated with the operation. It typically
195 # contains progress information and common metadata such as create time.
196 # Some services might not provide such metadata. Any method that returns a
197 # long-running operation should document the metadata type, if any.
198 "a_key": "", # Properties of the object. Contains field @type with type URL.
199 },
200 "done": True or False, # If the value is `false`, it means the operation is still in progress.
201 # If `true`, the operation is completed, and either `error` or `response` is
202 # available.
203 "name": "A String", # The server-assigned name, which is only unique within the same service that
204 # originally returns it. If you use the default HTTP mapping, the
205 # `name` should be a resource name ending with `operations/{unique_id}`.
206 "error": { # The `Status` type defines a logical error model that is suitable for # The error result of the operation in case of failure or cancellation.
207 # different programming environments, including REST APIs and RPC APIs. It is
208 # used by [gRPC](https://github.com/grpc). Each `Status` message contains
209 # three pieces of data: error code, error message, and error details.
210 #
211 # You can find out more about this error model and how to work with it in the
212 # [API Design Guide](https://cloud.google.com/apis/design/errors).
213 "message": "A String", # A developer-facing error message, which should be in English. Any
214 # user-facing error message should be localized and sent in the
215 # google.rpc.Status.details field, or localized by the client.
216 "code": 42, # The status code, which should be an enum value of google.rpc.Code.
217 "details": [ # A list of messages that carry the error details. There is a common set of
218 # message types for APIs to use.
219 {
220 "a_key": "", # Properties of the object. Contains field @type with type URL.
221 },
222 ],
223 },
224 }</pre>
225</div>
226
227<div class="method">
228 <code class="details" id="delete">delete(name, x__xgafv=None)</code>
229 <pre>Requests deletion of a Folder. The Folder is moved into the
230DELETE_REQUESTED state
231immediately, and is deleted approximately 30 days later. This method may
232only be called on an empty Folder in the
233ACTIVE state, where a Folder is empty if
234it doesn't contain any Folders or Projects in the
235ACTIVE state.
236The caller must have `resourcemanager.folders.delete` permission on the
237identified folder.
238
239Args:
240 name: string, the resource name of the Folder to be deleted.
241Must be of the form `folders/{folder_id}`. (required)
242 x__xgafv: string, V1 error format.
243 Allowed values
244 1 - v1 error format
245 2 - v2 error format
246
247Returns:
248 An object of the form:
249
250 { # A Folder in an Organization's resource hierarchy, used to
251 # organize that Organization's resources.
252 "createTime": "A String", # Output only. Timestamp when the Folder was created. Assigned by the server.
253 "displayName": "A String", # The folder’s display name.
254 # A folder’s display name must be unique amongst its siblings, e.g.
255 # no two folders with the same parent can share the same display name.
256 # The display name must start and end with a letter or digit, may contain
257 # letters, digits, spaces, hyphens and underscores and can be no longer
258 # than 30 characters. This is captured by the regular expression:
259 # [\p{L}\p{N}]([\p{L}\p{N}_- ]{0,28}[\p{L}\p{N}])?.
260 "lifecycleState": "A String", # Output only. The lifecycle state of the folder.
261 # Updates to the lifecycle_state must be performed via
262 # DeleteFolder and
263 # UndeleteFolder.
264 "parent": "A String", # The Folder’s parent's resource name.
265 # Updates to the folder's parent must be performed via
266 # MoveFolder.
267 "name": "A String", # Output only. The resource name of the Folder.
268 # Its format is `folders/{folder_id}`, for example: "folders/1234".
269 }</pre>
270</div>
271
272<div class="method">
273 <code class="details" id="get">get(name, x__xgafv=None)</code>
274 <pre>Retrieves a Folder identified by the supplied resource name.
275Valid Folder resource names have the format `folders/{folder_id}`
276(for example, `folders/1234`).
277The caller must have `resourcemanager.folders.get` permission on the
278identified folder.
279
280Args:
281 name: string, The resource name of the Folder to retrieve.
282Must be of the form `folders/{folder_id}`. (required)
283 x__xgafv: string, V1 error format.
284 Allowed values
285 1 - v1 error format
286 2 - v2 error format
287
288Returns:
289 An object of the form:
290
291 { # A Folder in an Organization's resource hierarchy, used to
292 # organize that Organization's resources.
293 "createTime": "A String", # Output only. Timestamp when the Folder was created. Assigned by the server.
294 "displayName": "A String", # The folder’s display name.
295 # A folder’s display name must be unique amongst its siblings, e.g.
296 # no two folders with the same parent can share the same display name.
297 # The display name must start and end with a letter or digit, may contain
298 # letters, digits, spaces, hyphens and underscores and can be no longer
299 # than 30 characters. This is captured by the regular expression:
300 # [\p{L}\p{N}]([\p{L}\p{N}_- ]{0,28}[\p{L}\p{N}])?.
301 "lifecycleState": "A String", # Output only. The lifecycle state of the folder.
302 # Updates to the lifecycle_state must be performed via
303 # DeleteFolder and
304 # UndeleteFolder.
305 "parent": "A String", # The Folder’s parent's resource name.
306 # Updates to the folder's parent must be performed via
307 # MoveFolder.
308 "name": "A String", # Output only. The resource name of the Folder.
309 # Its format is `folders/{folder_id}`, for example: "folders/1234".
310 }</pre>
311</div>
312
313<div class="method">
314 <code class="details" id="getIamPolicy">getIamPolicy(resource, body=None, x__xgafv=None)</code>
315 <pre>Gets the access control policy for a Folder. The returned policy may be
316empty if no such policy or resource exists. The `resource` field should
317be the Folder's resource name, e.g. "folders/1234".
318The caller must have `resourcemanager.folders.getIamPolicy` permission
319on the identified folder.
320
321Args:
322 resource: string, REQUIRED: The resource for which the policy is being requested.
323See the operation documentation for the appropriate value for this field. (required)
324 body: object, The request body.
325 The object takes the form of:
326
327{ # Request message for `GetIamPolicy` method.
328 }
329
330 x__xgafv: string, V1 error format.
331 Allowed values
332 1 - v1 error format
333 2 - v2 error format
334
335Returns:
336 An object of the form:
337
338 { # Defines an Identity and Access Management (IAM) policy. It is used to
339 # specify access control policies for Cloud Platform resources.
340 #
341 #
342 # A `Policy` consists of a list of `bindings`. A `binding` binds a list of
343 # `members` to a `role`, where the members can be user accounts, Google groups,
344 # Google domains, and service accounts. A `role` is a named list of permissions
345 # defined by IAM.
346 #
347 # **JSON Example**
348 #
349 # {
350 # "bindings": [
351 # {
352 # "role": "roles/owner",
353 # "members": [
354 # "user:mike@example.com",
355 # "group:admins@example.com",
356 # "domain:google.com",
357 # "serviceAccount:my-other-app@appspot.gserviceaccount.com"
358 # ]
359 # },
360 # {
361 # "role": "roles/viewer",
362 # "members": ["user:sean@example.com"]
363 # }
364 # ]
365 # }
366 #
367 # **YAML Example**
368 #
369 # bindings:
370 # - members:
371 # - user:mike@example.com
372 # - group:admins@example.com
373 # - domain:google.com
374 # - serviceAccount:my-other-app@appspot.gserviceaccount.com
375 # role: roles/owner
376 # - members:
377 # - user:sean@example.com
378 # role: roles/viewer
379 #
380 #
381 # For a description of IAM and its features, see the
382 # [IAM developer's guide](https://cloud.google.com/iam/docs).
383 "bindings": [ # Associates a list of `members` to a `role`.
384 # `bindings` with no members will result in an error.
385 { # Associates `members` with a `role`.
386 "role": "A String", # Role that is assigned to `members`.
387 # For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
388 "members": [ # Specifies the identities requesting access for a Cloud Platform resource.
389 # `members` can have the following values:
390 #
391 # * `allUsers`: A special identifier that represents anyone who is
392 # on the internet; with or without a Google account.
393 #
394 # * `allAuthenticatedUsers`: A special identifier that represents anyone
395 # who is authenticated with a Google account or a service account.
396 #
397 # * `user:{emailid}`: An email address that represents a specific Google
398 # account. For example, `alice@gmail.com` .
399 #
400 #
401 # * `serviceAccount:{emailid}`: An email address that represents a service
402 # account. For example, `my-other-app@appspot.gserviceaccount.com`.
403 #
404 # * `group:{emailid}`: An email address that represents a Google group.
405 # For example, `admins@example.com`.
406 #
407 #
408 # * `domain:{domain}`: The G Suite domain (primary) that represents all the
409 # users of that domain. For example, `google.com` or `example.com`.
410 #
411 "A String",
412 ],
413 "condition": { # Represents an expression text. Example: # The condition that is associated with this binding.
414 # NOTE: An unsatisfied condition will not allow user access via current
415 # binding. Different bindings, including their conditions, are examined
416 # independently.
417 #
418 # title: "User account presence"
419 # description: "Determines whether the request has a user account"
420 # expression: "size(request.user) > 0"
421 "location": "A String", # An optional string indicating the location of the expression for error
422 # reporting, e.g. a file name and a position in the file.
423 "expression": "A String", # Textual representation of an expression in
424 # Common Expression Language syntax.
425 #
426 # The application context of the containing message determines which
427 # well-known feature set of CEL is supported.
428 "description": "A String", # An optional description of the expression. This is a longer text which
429 # describes the expression, e.g. when hovered over it in a UI.
430 "title": "A String", # An optional title for the expression, i.e. a short string describing
431 # its purpose. This can be used e.g. in UIs which allow to enter the
432 # expression.
433 },
434 },
435 ],
436 "auditConfigs": [ # Specifies cloud audit logging configuration for this policy.
437 { # Specifies the audit configuration for a service.
438 # The configuration determines which permission types are logged, and what
439 # identities, if any, are exempted from logging.
440 # An AuditConfig must have one or more AuditLogConfigs.
441 #
442 # If there are AuditConfigs for both `allServices` and a specific service,
443 # the union of the two AuditConfigs is used for that service: the log_types
444 # specified in each AuditConfig are enabled, and the exempted_members in each
445 # AuditLogConfig are exempted.
446 #
447 # Example Policy with multiple AuditConfigs:
448 #
449 # {
450 # "audit_configs": [
451 # {
452 # "service": "allServices"
453 # "audit_log_configs": [
454 # {
455 # "log_type": "DATA_READ",
456 # "exempted_members": [
457 # "user:foo@gmail.com"
458 # ]
459 # },
460 # {
461 # "log_type": "DATA_WRITE",
462 # },
463 # {
464 # "log_type": "ADMIN_READ",
465 # }
466 # ]
467 # },
468 # {
469 # "service": "fooservice.googleapis.com"
470 # "audit_log_configs": [
471 # {
472 # "log_type": "DATA_READ",
473 # },
474 # {
475 # "log_type": "DATA_WRITE",
476 # "exempted_members": [
477 # "user:bar@gmail.com"
478 # ]
479 # }
480 # ]
481 # }
482 # ]
483 # }
484 #
485 # For fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ
486 # logging. It also exempts foo@gmail.com from DATA_READ logging, and
487 # bar@gmail.com from DATA_WRITE logging.
488 "auditLogConfigs": [ # The configuration for logging of each type of permission.
489 { # Provides the configuration for logging a type of permissions.
490 # Example:
491 #
492 # {
493 # "audit_log_configs": [
494 # {
495 # "log_type": "DATA_READ",
496 # "exempted_members": [
497 # "user:foo@gmail.com"
498 # ]
499 # },
500 # {
501 # "log_type": "DATA_WRITE",
502 # }
503 # ]
504 # }
505 #
506 # This enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting
507 # foo@gmail.com from DATA_READ logging.
508 "exemptedMembers": [ # Specifies the identities that do not cause logging for this type of
509 # permission.
510 # Follows the same format of Binding.members.
511 "A String",
512 ],
513 "logType": "A String", # The log type that this config enables.
514 },
515 ],
516 "service": "A String", # Specifies a service that will be enabled for audit logging.
517 # For example, `storage.googleapis.com`, `cloudsql.googleapis.com`.
518 # `allServices` is a special value that covers all services.
519 },
520 ],
521 "etag": "A String", # `etag` is used for optimistic concurrency control as a way to help
522 # prevent simultaneous updates of a policy from overwriting each other.
523 # It is strongly suggested that systems make use of the `etag` in the
524 # read-modify-write cycle to perform policy updates in order to avoid race
525 # conditions: An `etag` is returned in the response to `getIamPolicy`, and
526 # systems are expected to put that etag in the request to `setIamPolicy` to
527 # ensure that their change will be applied to the same version of the policy.
528 #
529 # If no `etag` is provided in the call to `setIamPolicy`, then the existing
530 # policy is overwritten blindly.
531 "version": 42, # Deprecated.
532 }</pre>
533</div>
534
535<div class="method">
536 <code class="details" id="list">list(parent=None, showDeleted=None, pageToken=None, x__xgafv=None, pageSize=None)</code>
537 <pre>Lists the Folders that are direct descendants of supplied parent resource.
538List provides a strongly consistent view of the Folders underneath
539the specified parent resource.
540List returns Folders sorted based upon the (ascending) lexical ordering
541of their display_name.
542The caller must have `resourcemanager.folders.list` permission on the
543identified parent.
544
545Args:
546 parent: string, The resource name of the Organization or Folder whose Folders are
547being listed.
548Must be of the form `folders/{folder_id}` or `organizations/{org_id}`.
549Access to this method is controlled by checking the
550`resourcemanager.folders.list` permission on the `parent`.
551 showDeleted: boolean, Controls whether Folders in the
552DELETE_REQUESTED
553state should be returned. Defaults to false. This field is optional.
554 pageToken: string, A pagination token returned from a previous call to `ListFolders`
555that indicates where this listing should continue from.
556This field is optional.
557 x__xgafv: string, V1 error format.
558 Allowed values
559 1 - v1 error format
560 2 - v2 error format
561 pageSize: integer, The maximum number of Folders to return in the response.
562This field is optional.
563
564Returns:
565 An object of the form:
566
567 { # The ListFolders response message.
568 "nextPageToken": "A String", # A pagination token returned from a previous call to `ListFolders`
569 # that indicates from where listing should continue.
570 # This field is optional.
571 "folders": [ # A possibly paginated list of Folders that are direct descendants of
572 # the specified parent resource.
573 { # A Folder in an Organization's resource hierarchy, used to
574 # organize that Organization's resources.
575 "createTime": "A String", # Output only. Timestamp when the Folder was created. Assigned by the server.
576 "displayName": "A String", # The folder’s display name.
577 # A folder’s display name must be unique amongst its siblings, e.g.
578 # no two folders with the same parent can share the same display name.
579 # The display name must start and end with a letter or digit, may contain
580 # letters, digits, spaces, hyphens and underscores and can be no longer
581 # than 30 characters. This is captured by the regular expression:
582 # [\p{L}\p{N}]([\p{L}\p{N}_- ]{0,28}[\p{L}\p{N}])?.
583 "lifecycleState": "A String", # Output only. The lifecycle state of the folder.
584 # Updates to the lifecycle_state must be performed via
585 # DeleteFolder and
586 # UndeleteFolder.
587 "parent": "A String", # The Folder’s parent's resource name.
588 # Updates to the folder's parent must be performed via
589 # MoveFolder.
590 "name": "A String", # Output only. The resource name of the Folder.
591 # Its format is `folders/{folder_id}`, for example: "folders/1234".
592 },
593 ],
594 }</pre>
595</div>
596
597<div class="method">
598 <code class="details" id="list_next">list_next(previous_request, previous_response)</code>
599 <pre>Retrieves the next page of results.
600
601Args:
602 previous_request: The request for the previous page. (required)
603 previous_response: The response from the request for the previous page. (required)
604
605Returns:
606 A request object that you can call 'execute()' on to request the next
607 page. Returns None if there are no more items in the collection.
608 </pre>
609</div>
610
611<div class="method">
612 <code class="details" id="move">move(name, body, x__xgafv=None)</code>
613 <pre>Moves a Folder under a new resource parent.
614Returns an Operation which can be used to track the progress of the
615folder move workflow.
616Upon success the Operation.response field will be populated with the
617moved Folder.
618Upon failure, a FolderOperationError categorizing the failure cause will
619be returned - if the failure occurs synchronously then the
620FolderOperationError will be returned via the Status.details field
621and if it occurs asynchronously then the FolderOperation will be returned
622via the Operation.error field.
623In addition, the Operation.metadata field will be populated with a
624FolderOperation message as an aid to stateless clients.
625Folder moves will be rejected if they violate either the naming, height
626or fanout constraints described in the
627CreateFolder documentation.
628The caller must have `resourcemanager.folders.move` permission on the
629folder's current and proposed new parent.
630
631Args:
632 name: string, The resource name of the Folder to move.
633Must be of the form folders/{folder_id} (required)
634 body: object, The request body. (required)
635 The object takes the form of:
636
637{ # The MoveFolder request message.
638 "destinationParent": "A String", # The resource name of the Folder or Organization to reparent
639 # the folder under.
640 # Must be of the form `folders/{folder_id}` or `organizations/{org_id}`.
641 }
642
643 x__xgafv: string, V1 error format.
644 Allowed values
645 1 - v1 error format
646 2 - v2 error format
647
648Returns:
649 An object of the form:
650
651 { # This resource represents a long-running operation that is the result of a
652 # network API call.
653 "response": { # The normal response of the operation in case of success. If the original
654 # method returns no data on success, such as `Delete`, the response is
655 # `google.protobuf.Empty`. If the original method is standard
656 # `Get`/`Create`/`Update`, the response should be the resource. For other
657 # methods, the response should have the type `XxxResponse`, where `Xxx`
658 # is the original method name. For example, if the original method name
659 # is `TakeSnapshot()`, the inferred response type is
660 # `TakeSnapshotResponse`.
661 "a_key": "", # Properties of the object. Contains field @type with type URL.
662 },
663 "metadata": { # Service-specific metadata associated with the operation. It typically
664 # contains progress information and common metadata such as create time.
665 # Some services might not provide such metadata. Any method that returns a
666 # long-running operation should document the metadata type, if any.
667 "a_key": "", # Properties of the object. Contains field @type with type URL.
668 },
669 "done": True or False, # If the value is `false`, it means the operation is still in progress.
670 # If `true`, the operation is completed, and either `error` or `response` is
671 # available.
672 "name": "A String", # The server-assigned name, which is only unique within the same service that
673 # originally returns it. If you use the default HTTP mapping, the
674 # `name` should be a resource name ending with `operations/{unique_id}`.
675 "error": { # The `Status` type defines a logical error model that is suitable for # The error result of the operation in case of failure or cancellation.
676 # different programming environments, including REST APIs and RPC APIs. It is
677 # used by [gRPC](https://github.com/grpc). Each `Status` message contains
678 # three pieces of data: error code, error message, and error details.
679 #
680 # You can find out more about this error model and how to work with it in the
681 # [API Design Guide](https://cloud.google.com/apis/design/errors).
682 "message": "A String", # A developer-facing error message, which should be in English. Any
683 # user-facing error message should be localized and sent in the
684 # google.rpc.Status.details field, or localized by the client.
685 "code": 42, # The status code, which should be an enum value of google.rpc.Code.
686 "details": [ # A list of messages that carry the error details. There is a common set of
687 # message types for APIs to use.
688 {
689 "a_key": "", # Properties of the object. Contains field @type with type URL.
690 },
691 ],
692 },
693 }</pre>
694</div>
695
696<div class="method">
697 <code class="details" id="patch">patch(name, body, updateMask=None, x__xgafv=None)</code>
698 <pre>Updates a Folder, changing its display_name.
699Changes to the folder display_name will be rejected if they violate either
700the display_name formatting rules or naming constraints described in
701the CreateFolder documentation.
702
703The Folder's display name must start and end with a letter or digit,
704may contain letters, digits, spaces, hyphens and underscores and can be
705no longer than 30 characters. This is captured by the regular expression:
706[\p{L}\p{N}]([\p{L}\p{N}_- ]{0,28}[\p{L}\p{N}])?.
707The caller must have `resourcemanager.folders.update` permission on the
708identified folder.
709
710If the update fails due to the unique name constraint then a
711PreconditionFailure explaining this violation will be returned
712in the Status.details field.
713
714Args:
715 name: string, Output only. The resource name of the Folder.
716Its format is `folders/{folder_id}`, for example: "folders/1234". (required)
717 body: object, The request body. (required)
718 The object takes the form of:
719
720{ # A Folder in an Organization's resource hierarchy, used to
721 # organize that Organization's resources.
722 "createTime": "A String", # Output only. Timestamp when the Folder was created. Assigned by the server.
723 "displayName": "A String", # The folder’s display name.
724 # A folder’s display name must be unique amongst its siblings, e.g.
725 # no two folders with the same parent can share the same display name.
726 # The display name must start and end with a letter or digit, may contain
727 # letters, digits, spaces, hyphens and underscores and can be no longer
728 # than 30 characters. This is captured by the regular expression:
729 # [\p{L}\p{N}]([\p{L}\p{N}_- ]{0,28}[\p{L}\p{N}])?.
730 "lifecycleState": "A String", # Output only. The lifecycle state of the folder.
731 # Updates to the lifecycle_state must be performed via
732 # DeleteFolder and
733 # UndeleteFolder.
734 "parent": "A String", # The Folder’s parent's resource name.
735 # Updates to the folder's parent must be performed via
736 # MoveFolder.
737 "name": "A String", # Output only. The resource name of the Folder.
738 # Its format is `folders/{folder_id}`, for example: "folders/1234".
739}
740
741 updateMask: string, Fields to be updated.
742Only the `display_name` can be updated.
743 x__xgafv: string, V1 error format.
744 Allowed values
745 1 - v1 error format
746 2 - v2 error format
747
748Returns:
749 An object of the form:
750
751 { # A Folder in an Organization's resource hierarchy, used to
752 # organize that Organization's resources.
753 "createTime": "A String", # Output only. Timestamp when the Folder was created. Assigned by the server.
754 "displayName": "A String", # The folder’s display name.
755 # A folder’s display name must be unique amongst its siblings, e.g.
756 # no two folders with the same parent can share the same display name.
757 # The display name must start and end with a letter or digit, may contain
758 # letters, digits, spaces, hyphens and underscores and can be no longer
759 # than 30 characters. This is captured by the regular expression:
760 # [\p{L}\p{N}]([\p{L}\p{N}_- ]{0,28}[\p{L}\p{N}])?.
761 "lifecycleState": "A String", # Output only. The lifecycle state of the folder.
762 # Updates to the lifecycle_state must be performed via
763 # DeleteFolder and
764 # UndeleteFolder.
765 "parent": "A String", # The Folder’s parent's resource name.
766 # Updates to the folder's parent must be performed via
767 # MoveFolder.
768 "name": "A String", # Output only. The resource name of the Folder.
769 # Its format is `folders/{folder_id}`, for example: "folders/1234".
770 }</pre>
771</div>
772
773<div class="method">
774 <code class="details" id="search">search(body, x__xgafv=None)</code>
775 <pre>Search for folders that match specific filter criteria.
776Search provides an eventually consistent view of the folders a user has
777access to which meet the specified filter criteria.
778
779This will only return folders on which the caller has the
780permission `resourcemanager.folders.get`.
781
782Args:
783 body: object, The request body. (required)
784 The object takes the form of:
785
786{ # The request message for searching folders.
787 "pageToken": "A String", # A pagination token returned from a previous call to `SearchFolders`
788 # that indicates from where search should continue.
789 # This field is optional.
790 "pageSize": 42, # The maximum number of folders to return in the response.
791 # This field is optional.
792 "query": "A String", # Search criteria used to select the Folders to return.
793 # If no search criteria is specified then all accessible folders will be
794 # returned.
795 #
796 # Query expressions can be used to restrict results based upon displayName,
797 # lifecycleState and parent, where the operators `=`, `NOT`, `AND` and `OR`
798 # can be used along with the suffix wildcard symbol `*`.
799 #
800 # The displayName field in a query expression should use escaped quotes
801 # for values that include whitespace to prevent unexpected behavior.
802 #
803 # Some example queries are:
804 #
805 # |Query | Description|
806 # |----- | -----------|
807 # |displayName=Test* | Folders whose display name starts with "Test".|
808 # |lifecycleState=ACTIVE | Folders whose lifecycleState is ACTIVE.|
809 # |parent=folders/123 | Folders whose parent is "folders/123".|
810 # |parent=folders/123 AND lifecycleState=ACTIVE | Active folders whose parent
811 # is "folders/123".| |displayName=\\"Test String\\"|Folders whose display
812 # name includes both "Test" and "String".|
813 }
814
815 x__xgafv: string, V1 error format.
816 Allowed values
817 1 - v1 error format
818 2 - v2 error format
819
820Returns:
821 An object of the form:
822
823 { # The response message for searching folders.
824 "folders": [ # A possibly paginated folder search results.
825 # the specified parent resource.
826 { # A Folder in an Organization's resource hierarchy, used to
827 # organize that Organization's resources.
828 "createTime": "A String", # Output only. Timestamp when the Folder was created. Assigned by the server.
829 "displayName": "A String", # The folder’s display name.
830 # A folder’s display name must be unique amongst its siblings, e.g.
831 # no two folders with the same parent can share the same display name.
832 # The display name must start and end with a letter or digit, may contain
833 # letters, digits, spaces, hyphens and underscores and can be no longer
834 # than 30 characters. This is captured by the regular expression:
835 # [\p{L}\p{N}]([\p{L}\p{N}_- ]{0,28}[\p{L}\p{N}])?.
836 "lifecycleState": "A String", # Output only. The lifecycle state of the folder.
837 # Updates to the lifecycle_state must be performed via
838 # DeleteFolder and
839 # UndeleteFolder.
840 "parent": "A String", # The Folder’s parent's resource name.
841 # Updates to the folder's parent must be performed via
842 # MoveFolder.
843 "name": "A String", # Output only. The resource name of the Folder.
844 # Its format is `folders/{folder_id}`, for example: "folders/1234".
845 },
846 ],
847 "nextPageToken": "A String", # A pagination token returned from a previous call to `SearchFolders`
848 # that indicates from where searching should continue.
849 # This field is optional.
850 }</pre>
851</div>
852
853<div class="method">
854 <code class="details" id="search_next">search_next(previous_request, previous_response)</code>
855 <pre>Retrieves the next page of results.
856
857Args:
858 previous_request: The request for the previous page. (required)
859 previous_response: The response from the request for the previous page. (required)
860
861Returns:
862 A request object that you can call 'execute()' on to request the next
863 page. Returns None if there are no more items in the collection.
864 </pre>
865</div>
866
867<div class="method">
868 <code class="details" id="setIamPolicy">setIamPolicy(resource, body, x__xgafv=None)</code>
869 <pre>Sets the access control policy on a Folder, replacing any existing policy.
870The `resource` field should be the Folder's resource name, e.g.
871"folders/1234".
872The caller must have `resourcemanager.folders.setIamPolicy` permission
873on the identified folder.
874
875Args:
876 resource: string, REQUIRED: The resource for which the policy is being specified.
877See the operation documentation for the appropriate value for this field. (required)
878 body: object, The request body. (required)
879 The object takes the form of:
880
881{ # Request message for `SetIamPolicy` method.
882 "policy": { # Defines an Identity and Access Management (IAM) policy. It is used to # REQUIRED: The complete policy to be applied to the `resource`. The size of
883 # the policy is limited to a few 10s of KB. An empty policy is a
884 # valid policy but certain Cloud Platform services (such as Projects)
885 # might reject them.
886 # specify access control policies for Cloud Platform resources.
887 #
888 #
889 # A `Policy` consists of a list of `bindings`. A `binding` binds a list of
890 # `members` to a `role`, where the members can be user accounts, Google groups,
891 # Google domains, and service accounts. A `role` is a named list of permissions
892 # defined by IAM.
893 #
894 # **JSON Example**
895 #
896 # {
897 # "bindings": [
898 # {
899 # "role": "roles/owner",
900 # "members": [
901 # "user:mike@example.com",
902 # "group:admins@example.com",
903 # "domain:google.com",
904 # "serviceAccount:my-other-app@appspot.gserviceaccount.com"
905 # ]
906 # },
907 # {
908 # "role": "roles/viewer",
909 # "members": ["user:sean@example.com"]
910 # }
911 # ]
912 # }
913 #
914 # **YAML Example**
915 #
916 # bindings:
917 # - members:
918 # - user:mike@example.com
919 # - group:admins@example.com
920 # - domain:google.com
921 # - serviceAccount:my-other-app@appspot.gserviceaccount.com
922 # role: roles/owner
923 # - members:
924 # - user:sean@example.com
925 # role: roles/viewer
926 #
927 #
928 # For a description of IAM and its features, see the
929 # [IAM developer's guide](https://cloud.google.com/iam/docs).
930 "bindings": [ # Associates a list of `members` to a `role`.
931 # `bindings` with no members will result in an error.
932 { # Associates `members` with a `role`.
933 "role": "A String", # Role that is assigned to `members`.
934 # For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
935 "members": [ # Specifies the identities requesting access for a Cloud Platform resource.
936 # `members` can have the following values:
937 #
938 # * `allUsers`: A special identifier that represents anyone who is
939 # on the internet; with or without a Google account.
940 #
941 # * `allAuthenticatedUsers`: A special identifier that represents anyone
942 # who is authenticated with a Google account or a service account.
943 #
944 # * `user:{emailid}`: An email address that represents a specific Google
945 # account. For example, `alice@gmail.com` .
946 #
947 #
948 # * `serviceAccount:{emailid}`: An email address that represents a service
949 # account. For example, `my-other-app@appspot.gserviceaccount.com`.
950 #
951 # * `group:{emailid}`: An email address that represents a Google group.
952 # For example, `admins@example.com`.
953 #
954 #
955 # * `domain:{domain}`: The G Suite domain (primary) that represents all the
956 # users of that domain. For example, `google.com` or `example.com`.
957 #
958 "A String",
959 ],
960 "condition": { # Represents an expression text. Example: # The condition that is associated with this binding.
961 # NOTE: An unsatisfied condition will not allow user access via current
962 # binding. Different bindings, including their conditions, are examined
963 # independently.
964 #
965 # title: "User account presence"
966 # description: "Determines whether the request has a user account"
967 # expression: "size(request.user) > 0"
968 "location": "A String", # An optional string indicating the location of the expression for error
969 # reporting, e.g. a file name and a position in the file.
970 "expression": "A String", # Textual representation of an expression in
971 # Common Expression Language syntax.
972 #
973 # The application context of the containing message determines which
974 # well-known feature set of CEL is supported.
975 "description": "A String", # An optional description of the expression. This is a longer text which
976 # describes the expression, e.g. when hovered over it in a UI.
977 "title": "A String", # An optional title for the expression, i.e. a short string describing
978 # its purpose. This can be used e.g. in UIs which allow to enter the
979 # expression.
980 },
981 },
982 ],
983 "auditConfigs": [ # Specifies cloud audit logging configuration for this policy.
984 { # Specifies the audit configuration for a service.
985 # The configuration determines which permission types are logged, and what
986 # identities, if any, are exempted from logging.
987 # An AuditConfig must have one or more AuditLogConfigs.
988 #
989 # If there are AuditConfigs for both `allServices` and a specific service,
990 # the union of the two AuditConfigs is used for that service: the log_types
991 # specified in each AuditConfig are enabled, and the exempted_members in each
992 # AuditLogConfig are exempted.
993 #
994 # Example Policy with multiple AuditConfigs:
995 #
996 # {
997 # "audit_configs": [
998 # {
999 # "service": "allServices"
1000 # "audit_log_configs": [
1001 # {
1002 # "log_type": "DATA_READ",
1003 # "exempted_members": [
1004 # "user:foo@gmail.com"
1005 # ]
1006 # },
1007 # {
1008 # "log_type": "DATA_WRITE",
1009 # },
1010 # {
1011 # "log_type": "ADMIN_READ",
1012 # }
1013 # ]
1014 # },
1015 # {
1016 # "service": "fooservice.googleapis.com"
1017 # "audit_log_configs": [
1018 # {
1019 # "log_type": "DATA_READ",
1020 # },
1021 # {
1022 # "log_type": "DATA_WRITE",
1023 # "exempted_members": [
1024 # "user:bar@gmail.com"
1025 # ]
1026 # }
1027 # ]
1028 # }
1029 # ]
1030 # }
1031 #
1032 # For fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ
1033 # logging. It also exempts foo@gmail.com from DATA_READ logging, and
1034 # bar@gmail.com from DATA_WRITE logging.
1035 "auditLogConfigs": [ # The configuration for logging of each type of permission.
1036 { # Provides the configuration for logging a type of permissions.
1037 # Example:
1038 #
1039 # {
1040 # "audit_log_configs": [
1041 # {
1042 # "log_type": "DATA_READ",
1043 # "exempted_members": [
1044 # "user:foo@gmail.com"
1045 # ]
1046 # },
1047 # {
1048 # "log_type": "DATA_WRITE",
1049 # }
1050 # ]
1051 # }
1052 #
1053 # This enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting
1054 # foo@gmail.com from DATA_READ logging.
1055 "exemptedMembers": [ # Specifies the identities that do not cause logging for this type of
1056 # permission.
1057 # Follows the same format of Binding.members.
1058 "A String",
1059 ],
1060 "logType": "A String", # The log type that this config enables.
1061 },
1062 ],
1063 "service": "A String", # Specifies a service that will be enabled for audit logging.
1064 # For example, `storage.googleapis.com`, `cloudsql.googleapis.com`.
1065 # `allServices` is a special value that covers all services.
1066 },
1067 ],
1068 "etag": "A String", # `etag` is used for optimistic concurrency control as a way to help
1069 # prevent simultaneous updates of a policy from overwriting each other.
1070 # It is strongly suggested that systems make use of the `etag` in the
1071 # read-modify-write cycle to perform policy updates in order to avoid race
1072 # conditions: An `etag` is returned in the response to `getIamPolicy`, and
1073 # systems are expected to put that etag in the request to `setIamPolicy` to
1074 # ensure that their change will be applied to the same version of the policy.
1075 #
1076 # If no `etag` is provided in the call to `setIamPolicy`, then the existing
1077 # policy is overwritten blindly.
1078 "version": 42, # Deprecated.
1079 },
1080 "updateMask": "A String", # OPTIONAL: A FieldMask specifying which fields of the policy to modify. Only
1081 # the fields in the mask will be modified. If no mask is provided, the
1082 # following default mask is used:
1083 # paths: "bindings, etag"
1084 # This field is only used by Cloud IAM.
1085 }
1086
1087 x__xgafv: string, V1 error format.
1088 Allowed values
1089 1 - v1 error format
1090 2 - v2 error format
1091
1092Returns:
1093 An object of the form:
1094
1095 { # Defines an Identity and Access Management (IAM) policy. It is used to
1096 # specify access control policies for Cloud Platform resources.
1097 #
1098 #
1099 # A `Policy` consists of a list of `bindings`. A `binding` binds a list of
1100 # `members` to a `role`, where the members can be user accounts, Google groups,
1101 # Google domains, and service accounts. A `role` is a named list of permissions
1102 # defined by IAM.
1103 #
1104 # **JSON Example**
1105 #
1106 # {
1107 # "bindings": [
1108 # {
1109 # "role": "roles/owner",
1110 # "members": [
1111 # "user:mike@example.com",
1112 # "group:admins@example.com",
1113 # "domain:google.com",
1114 # "serviceAccount:my-other-app@appspot.gserviceaccount.com"
1115 # ]
1116 # },
1117 # {
1118 # "role": "roles/viewer",
1119 # "members": ["user:sean@example.com"]
1120 # }
1121 # ]
1122 # }
1123 #
1124 # **YAML Example**
1125 #
1126 # bindings:
1127 # - members:
1128 # - user:mike@example.com
1129 # - group:admins@example.com
1130 # - domain:google.com
1131 # - serviceAccount:my-other-app@appspot.gserviceaccount.com
1132 # role: roles/owner
1133 # - members:
1134 # - user:sean@example.com
1135 # role: roles/viewer
1136 #
1137 #
1138 # For a description of IAM and its features, see the
1139 # [IAM developer's guide](https://cloud.google.com/iam/docs).
1140 "bindings": [ # Associates a list of `members` to a `role`.
1141 # `bindings` with no members will result in an error.
1142 { # Associates `members` with a `role`.
1143 "role": "A String", # Role that is assigned to `members`.
1144 # For example, `roles/viewer`, `roles/editor`, or `roles/owner`.
1145 "members": [ # Specifies the identities requesting access for a Cloud Platform resource.
1146 # `members` can have the following values:
1147 #
1148 # * `allUsers`: A special identifier that represents anyone who is
1149 # on the internet; with or without a Google account.
1150 #
1151 # * `allAuthenticatedUsers`: A special identifier that represents anyone
1152 # who is authenticated with a Google account or a service account.
1153 #
1154 # * `user:{emailid}`: An email address that represents a specific Google
1155 # account. For example, `alice@gmail.com` .
1156 #
1157 #
1158 # * `serviceAccount:{emailid}`: An email address that represents a service
1159 # account. For example, `my-other-app@appspot.gserviceaccount.com`.
1160 #
1161 # * `group:{emailid}`: An email address that represents a Google group.
1162 # For example, `admins@example.com`.
1163 #
1164 #
1165 # * `domain:{domain}`: The G Suite domain (primary) that represents all the
1166 # users of that domain. For example, `google.com` or `example.com`.
1167 #
1168 "A String",
1169 ],
1170 "condition": { # Represents an expression text. Example: # The condition that is associated with this binding.
1171 # NOTE: An unsatisfied condition will not allow user access via current
1172 # binding. Different bindings, including their conditions, are examined
1173 # independently.
1174 #
1175 # title: "User account presence"
1176 # description: "Determines whether the request has a user account"
1177 # expression: "size(request.user) > 0"
1178 "location": "A String", # An optional string indicating the location of the expression for error
1179 # reporting, e.g. a file name and a position in the file.
1180 "expression": "A String", # Textual representation of an expression in
1181 # Common Expression Language syntax.
1182 #
1183 # The application context of the containing message determines which
1184 # well-known feature set of CEL is supported.
1185 "description": "A String", # An optional description of the expression. This is a longer text which
1186 # describes the expression, e.g. when hovered over it in a UI.
1187 "title": "A String", # An optional title for the expression, i.e. a short string describing
1188 # its purpose. This can be used e.g. in UIs which allow to enter the
1189 # expression.
1190 },
1191 },
1192 ],
1193 "auditConfigs": [ # Specifies cloud audit logging configuration for this policy.
1194 { # Specifies the audit configuration for a service.
1195 # The configuration determines which permission types are logged, and what
1196 # identities, if any, are exempted from logging.
1197 # An AuditConfig must have one or more AuditLogConfigs.
1198 #
1199 # If there are AuditConfigs for both `allServices` and a specific service,
1200 # the union of the two AuditConfigs is used for that service: the log_types
1201 # specified in each AuditConfig are enabled, and the exempted_members in each
1202 # AuditLogConfig are exempted.
1203 #
1204 # Example Policy with multiple AuditConfigs:
1205 #
1206 # {
1207 # "audit_configs": [
1208 # {
1209 # "service": "allServices"
1210 # "audit_log_configs": [
1211 # {
1212 # "log_type": "DATA_READ",
1213 # "exempted_members": [
1214 # "user:foo@gmail.com"
1215 # ]
1216 # },
1217 # {
1218 # "log_type": "DATA_WRITE",
1219 # },
1220 # {
1221 # "log_type": "ADMIN_READ",
1222 # }
1223 # ]
1224 # },
1225 # {
1226 # "service": "fooservice.googleapis.com"
1227 # "audit_log_configs": [
1228 # {
1229 # "log_type": "DATA_READ",
1230 # },
1231 # {
1232 # "log_type": "DATA_WRITE",
1233 # "exempted_members": [
1234 # "user:bar@gmail.com"
1235 # ]
1236 # }
1237 # ]
1238 # }
1239 # ]
1240 # }
1241 #
1242 # For fooservice, this policy enables DATA_READ, DATA_WRITE and ADMIN_READ
1243 # logging. It also exempts foo@gmail.com from DATA_READ logging, and
1244 # bar@gmail.com from DATA_WRITE logging.
1245 "auditLogConfigs": [ # The configuration for logging of each type of permission.
1246 { # Provides the configuration for logging a type of permissions.
1247 # Example:
1248 #
1249 # {
1250 # "audit_log_configs": [
1251 # {
1252 # "log_type": "DATA_READ",
1253 # "exempted_members": [
1254 # "user:foo@gmail.com"
1255 # ]
1256 # },
1257 # {
1258 # "log_type": "DATA_WRITE",
1259 # }
1260 # ]
1261 # }
1262 #
1263 # This enables 'DATA_READ' and 'DATA_WRITE' logging, while exempting
1264 # foo@gmail.com from DATA_READ logging.
1265 "exemptedMembers": [ # Specifies the identities that do not cause logging for this type of
1266 # permission.
1267 # Follows the same format of Binding.members.
1268 "A String",
1269 ],
1270 "logType": "A String", # The log type that this config enables.
1271 },
1272 ],
1273 "service": "A String", # Specifies a service that will be enabled for audit logging.
1274 # For example, `storage.googleapis.com`, `cloudsql.googleapis.com`.
1275 # `allServices` is a special value that covers all services.
1276 },
1277 ],
1278 "etag": "A String", # `etag` is used for optimistic concurrency control as a way to help
1279 # prevent simultaneous updates of a policy from overwriting each other.
1280 # It is strongly suggested that systems make use of the `etag` in the
1281 # read-modify-write cycle to perform policy updates in order to avoid race
1282 # conditions: An `etag` is returned in the response to `getIamPolicy`, and
1283 # systems are expected to put that etag in the request to `setIamPolicy` to
1284 # ensure that their change will be applied to the same version of the policy.
1285 #
1286 # If no `etag` is provided in the call to `setIamPolicy`, then the existing
1287 # policy is overwritten blindly.
1288 "version": 42, # Deprecated.
1289 }</pre>
1290</div>
1291
1292<div class="method">
1293 <code class="details" id="testIamPermissions">testIamPermissions(resource, body, x__xgafv=None)</code>
1294 <pre>Returns permissions that a caller has on the specified Folder.
1295The `resource` field should be the Folder's resource name,
1296e.g. "folders/1234".
1297
1298There are no permissions required for making this API call.
1299
1300Args:
1301 resource: string, REQUIRED: The resource for which the policy detail is being requested.
1302See the operation documentation for the appropriate value for this field. (required)
1303 body: object, The request body. (required)
1304 The object takes the form of:
1305
1306{ # Request message for `TestIamPermissions` method.
1307 "permissions": [ # The set of permissions to check for the `resource`. Permissions with
1308 # wildcards (such as '*' or 'storage.*') are not allowed. For more
1309 # information see
1310 # [IAM Overview](https://cloud.google.com/iam/docs/overview#permissions).
1311 "A String",
1312 ],
1313 }
1314
1315 x__xgafv: string, V1 error format.
1316 Allowed values
1317 1 - v1 error format
1318 2 - v2 error format
1319
1320Returns:
1321 An object of the form:
1322
1323 { # Response message for `TestIamPermissions` method.
1324 "permissions": [ # A subset of `TestPermissionsRequest.permissions` that the caller is
1325 # allowed.
1326 "A String",
1327 ],
1328 }</pre>
1329</div>
1330
1331<div class="method">
1332 <code class="details" id="undelete">undelete(name, body=None, x__xgafv=None)</code>
1333 <pre>Cancels the deletion request for a Folder. This method may only be
1334called on a Folder in the
1335DELETE_REQUESTED state.
1336In order to succeed, the Folder's parent must be in the
1337ACTIVE state.
1338In addition, reintroducing the folder into the tree must not violate
1339folder naming, height and fanout constraints described in the
1340CreateFolder documentation.
1341The caller must have `resourcemanager.folders.undelete` permission on the
1342identified folder.
1343
1344Args:
1345 name: string, The resource name of the Folder to undelete.
1346Must be of the form `folders/{folder_id}`. (required)
1347 body: object, The request body.
1348 The object takes the form of:
1349
1350{ # The UndeleteFolder request message.
1351 }
1352
1353 x__xgafv: string, V1 error format.
1354 Allowed values
1355 1 - v1 error format
1356 2 - v2 error format
1357
1358Returns:
1359 An object of the form:
1360
1361 { # A Folder in an Organization's resource hierarchy, used to
1362 # organize that Organization's resources.
1363 "createTime": "A String", # Output only. Timestamp when the Folder was created. Assigned by the server.
1364 "displayName": "A String", # The folder’s display name.
1365 # A folder’s display name must be unique amongst its siblings, e.g.
1366 # no two folders with the same parent can share the same display name.
1367 # The display name must start and end with a letter or digit, may contain
1368 # letters, digits, spaces, hyphens and underscores and can be no longer
1369 # than 30 characters. This is captured by the regular expression:
1370 # [\p{L}\p{N}]([\p{L}\p{N}_- ]{0,28}[\p{L}\p{N}])?.
1371 "lifecycleState": "A String", # Output only. The lifecycle state of the folder.
1372 # Updates to the lifecycle_state must be performed via
1373 # DeleteFolder and
1374 # UndeleteFolder.
1375 "parent": "A String", # The Folder’s parent's resource name.
1376 # Updates to the folder's parent must be performed via
1377 # MoveFolder.
1378 "name": "A String", # Output only. The resource name of the Folder.
1379 # Its format is `folders/{folder_id}`, for example: "folders/1234".
1380 }</pre>
1381</div>
1382
1383</body></html>