Updates a bucket. Changes to the bucket will be readable immediately after writing, but configuration changes may take time to propagate. This method sets the complete metadata of a bucket. If you want to change some of a bucket's metadata while leaving other parts unaffected, use the PATCH method instead. Try it now.
The authenticated user must have OWNER
permissions on the bucket.
Request
HTTP request
PUT https://www.googleapis.com/storage/v1/b/bucket
Parameters
Parameter name | Value | Description |
---|---|---|
Path parameters | ||
bucket |
string |
Name of a bucket. |
Optional query parameters | ||
ifMetagenerationMatch |
long |
Makes the return of the bucket metadata conditional on whether the bucket's current metageneration matches the given value. |
ifMetagenerationNotMatch |
long |
Makes the return of the bucket metadata conditional on whether the bucket's current metageneration does not match the given value. |
predefinedAcl |
string |
Apply a predefined set of access controls to this bucket.
Acceptable values are:
|
predefinedDefaultObjectAcl |
string |
Apply a predefined set of default object access controls to this bucket.
Acceptable values are:
|
projection |
string |
Set of properties to return. Defaults to full .
Acceptable values are:
|
userProject |
string |
The project to be billed for this request. Required for Requester Pays buckets. |
Request body
In the request body, supply a bucket resource with the following properties:
Property name | Value | Description | Notes |
---|---|---|---|
Required Properties | |||
acl[] |
list |
Access controls on the bucket, containing one or more bucketAccessControls Resources. | writable |
Optional Properties | |||
billing |
object |
The bucket's billing configuration. | writable |
billing.requesterPays |
boolean |
When set to true, Requester Pays is enabled for this bucket. | writable |
cors[] |
list |
The bucket's Cross-Origin Resource Sharing (CORS) configuration. | writable |
cors[].maxAgeSeconds |
integer |
The value, in seconds, to return in the Access-Control-Max-Age header used in preflight responses. | writable |
cors[].method[] |
list |
The list of HTTP methods on which to include CORS response headers, (GET , OPTIONS , POST , etc) Note: "*" is permitted in the list of methods, and means "any method". |
writable |
cors[].origin[] |
list |
The list of Origins eligible to receive CORS response headers. Note: "*" is permitted in the list of origins, and means "any Origin". | writable |
cors[].responseHeader[] |
list |
The list of HTTP headers other than the simple response headers to give permission for the user-agent to share across domains. | writable |
defaultEventBasedHold |
boolean |
Whether or not to automatically apply an
eventBasedHold to new
objects added to the bucket. |
writable |
defaultObjectAcl[] |
list |
Default access controls to apply to new objects when no ACL is provided. | writable |
defaultObjectAcl[].entity |
string |
The entity holding the permission, in one of the following forms:
|
writable |
defaultObjectAcl[].role |
string |
The access permission for the entity.
Acceptable values are:
|
writable |
encryption |
object |
Encryption configuration for a bucket. | writable |
encryption.defaultKmsKeyName |
string |
A Cloud KMS key that will be used to encrypt objects inserted into this bucket, if no encryption method is specified. | |
iamConfiguration |
object |
The bucket's IAM configuration. | writable |
iamConfiguration.bucketPolicyOnly |
object |
The bucket's Bucket Policy OnlyBETA configuration. | writable |
iamConfiguration.bucketPolicyOnly.enabled |
boolean |
Whether or not the bucket uses Bucket Policy Only. If set, access checks only use bucket-level IAM policies or above. | writable |
labels |
object |
User-provided bucket labels, in key/value pairs. | writable |
labels.(key) |
string |
An individual label entry. | writable |
lifecycle |
object |
The bucket's lifecycle configuration. See lifecycle management for more information. | writable |
logging |
object |
The bucket's logging configuration, which defines the destination bucket and optional name prefix for the current bucket's logs. | writable |
logging.logBucket |
string |
The destination bucket where the current bucket's logs should be placed. | writable |
logging.logObjectPrefix |
string |
A prefix for log object names. | writable |
retentionPolicy |
object |
The bucket's retention policy, which defines the minimum age an object in the bucket must reach before it can be deleted or overwritten. | writable |
retentionPolicy.retentionPeriod |
string |
The period of time, in seconds, that objects in the bucket must be retained and cannot be deleted, overwritten, or archived. The value must be less than 3,155,760,000 seconds. | writable |
storageClass |
string |
The bucket's default storage class, used whenever no storageClass is specified for a newly-created object. This defines how objects in the bucket are stored and determines the SLA and the cost of storage. Values include MULTI_REGIONAL , REGIONAL , STANDARD , NEARLINE , COLDLINE , and DURABLE_REDUCED_AVAILABILITY . If this value is not specified when the bucket is created, it will default to STANDARD . For more information, see storage classes. |
writable |
versioning |
object |
The bucket's versioning configuration. | writable |
versioning.enabled |
boolean |
While set to true, versioning is fully enabled for this bucket. | writable |
website |
object |
The bucket's website configuration, controlling how the service behaves when accessing bucket contents as a web site. See the Static Website Examples for more information. | writable |
website.mainPageSuffix |
string |
If the requested object path is missing, the service will ensure the path has a trailing '/', append this suffix, and attempt to retrieve the resulting object. This allows the creation of index.html objects to represent directory pages. |
writable |
website.notFoundPage |
string |
If the requested object path is missing, and any mainPageSuffix object is missing, if applicable, the service will return the named object from this bucket as the content for a 404 Not Found result. |
writable |
Response
If successful, this method returns a bucket resource in the response body.
Try it!
Use the APIs Explorer below to call this method on live data and see the response.