folders

POST /v3/folders

Changed on

Creates a folder in the resource hierarchy. Returns an Operation which can be used to track the progress of the folder creation workflow. Upon success, the Operation.response field will be populated with the created Folder. In order to succeed, the addition of this new folder must not violate the folder naming, height, or fanout constraints. + The folder's display_name must be distinct from all other folders that share its parent. + The addition of the folder must not cause the active folder hierarchy to exceed a height of 10. Note, the full active + deleted folder hierarchy is allowed to reach a height of 20; this provides additional headroom when moving folders that contain deleted folders. + The addition of the folder must not cause the total number of folders under its parent to exceed 300. If the operation fails due to a folder constraint violation, some errors may be returned by the CreateFolder request, with status code FAILED_PRECONDITION and an error description. Other folder constraint violations will be communicated in the Operation, with the specific PreconditionFailure returned in the details list in the Operation.error field. The caller must have resourcemanager.folders.create permission on the identified parent.

Request

  • Base URL
    https://cloudresourcemanager.googleapis.com
  • URL
    https://cloudresourcemanager.googleapis.com/v3/folders
  • Auth
    OAuth 2 and OAuth 2
    Implicit: https://accounts.google.com/o/oauth2/auth
    Scopes: https://www.googleapis.com/auth/cloud-platform
    Authorization code: https://accounts.google.com/o/oauth2/auth
    Token URL: https://accounts.google.com/o/oauth2/token scopes: https://www.googleapis.com/auth/cloud-platform

Request body

configuredCapabilitiesstring[]

Output only. Optional capabilities configured for this folder (via UpdateCapability API). Example: folders/123/capabilities/app-management.

createTimestring google-datetime

Output only. Timestamp when the folder was created.

deleteTimestring google-datetime

Output only. Timestamp when the folder was requested to be deleted.

displayNamestring

The folder's display name. A folder's display name must be unique amongst its siblings. For example, no two folders with the same parent can share the same display name. The display name must start and end with a letter or digit, may contain letters, digits, spaces, hyphens and underscores and can be no longer than 30 characters. This is captured by the regular expression: [\p{L}\p{N}]([\p{L}\p{N}_- ]{0,28}[\p{L}\p{N}])?.

etagstring

Output only. A checksum computed by the server based on the current value of the folder resource. This may be sent on update and delete requests to ensure the client has an up-to-date value before proceeding.

managementProjectstring

Output only. Management Project associated with this folder (if app-management capability is enabled). Example: projects/google-mp-123 OUTPUT ONLY.

namestring

Identifier. The resource name of the folder. Its format is folders/{folder_id}, for example: "folders/1234".

parentstring

Required. The folder's parent's resource name. Updates to the folder's parent must be performed using MoveFolder.

state'STATE_UNSPECIFIED' | 'ACTIVE' | 'DELETE_REQUESTED'

Output only. The lifecycle state of the folder. Updates to the state must be performed using DeleteFolder and UndeleteFolder.

tagsobject

Optional. Input only. Immutable. Tag keys/values directly bound to this folder. Each item in the map must be expressed as " : ". For example: "123/environment" : "production", "123/costCenter" : "marketing" Note: Currently this field is in Preview.

updateTimestring google-datetime

Output only. Timestamp when the folder was last modified.

Response

Successful response

doneboolean

If the value is false, it means the operation is still in progress. If true, the operation is completed, and either error or response is available.

metadataobject

Service-specific metadata associated with the operation. It typically contains progress information and common metadata such as create time. Some services might not provide such metadata. Any method that returns a long-running operation should document the metadata type, if any.

namestring

The server-assigned name, which is only unique within the same service that originally returns it. If you use the default HTTP mapping, the name should be a resource name ending with operations/{unique_id}.

responseobject

The normal, successful response of the operation. If the original method returns no data on success, such as Delete, the response is google.protobuf.Empty. If the original method is standard Get/Create/Update, the response should be the resource. For other methods, the response should have the type XxxResponse, where Xxx is the original method name. For example, if the original method name is TakeSnapshot(), the inferred response type is TakeSnapshotResponse.

Changes

    • breaking

      removed the request body

    • breaking

      removed the media type */* for the response with the status