This page shows you how to delete Cloud Storage buckets.
Before you begin
In order to get the required permissions for deleting a Cloud Storage
bucket, ask your administrator to grant you the Storage Admin
(roles/storage.admin
) IAM role on the bucket.
This predefined role contains the permissions required to delete a bucket. To see the exact permissions that are required, expand the Required permissions section:
Required permissions
-
storage.buckets.delete
-
storage.buckets.list
- This permission is only required when deleting buckets using the Google Cloud console.
-
storage.objects.delete
- This permission is only required if objects exist within the bucket you want to delete.
-
storage.objects.list
- This permission is only required for deleting buckets using the Google Cloud console or the Google Cloud CLI.
You might also be able to get these permissions with other custom roles or predefined roles.
For instructions on granting roles for buckets, see Use IAM with buckets.
Delete a bucket
Console
- In the Google Cloud console, go to the Cloud Storage Buckets page.
Select the checkbox of the bucket you want to delete.
Click Delete.
In the overlay window that appears, confirm you want to delete the bucket and its contents.
Click Delete.
To learn how to get detailed error information about failed Cloud Storage operations in the Google Cloud console, see Troubleshooting.
Command line
To delete the bucket, along with all the objects within the bucket, use the Google Cloud CLI command
gcloud storage rm
with the--recursive
flag:gcloud storage rm --recursive gs://BUCKET_NAME
Where
BUCKET_NAME
is the name of the bucket to delete. For example,my-bucket
.If successful, the response looks like the following example:
Removing gs://my-bucket/...
If the bucket contains managed folders, you can delete the bucket along with all the managed folders and objects within by using the Google Cloud CLI command
gcloud alpha storage rm
with the--recursive
flag:gcloud alpha storage rm --recursive gs://BUCKET_NAME
Where
BUCKET_NAME
is the name of the bucket to delete. For example,my-bucket
.If successful, the response looks like the following example:
Removing gs://my-bucket/...
If you want to avoid accidentally deleting objects or managed folders,
don't use the --recursive
flag in the commands. When you exclude the
flag, the commands only delete a bucket if the bucket is empty.
Client libraries
For more information, see the
Cloud Storage C++ API
reference documentation.
To authenticate to Cloud Storage, set up Application Default Credentials.
For more information, see
Set up authentication for a local development environment.
For more information, see the
Cloud Storage C# API
reference documentation.
To authenticate to Cloud Storage, set up Application Default Credentials.
For more information, see
Set up authentication for a local development environment.
For more information, see the
Cloud Storage Go API
reference documentation.
To authenticate to Cloud Storage, set up Application Default Credentials.
For more information, see
Set up authentication for a local development environment.
For more information, see the
Cloud Storage Java API
reference documentation.
To authenticate to Cloud Storage, set up Application Default Credentials.
For more information, see
Set up authentication for a local development environment.
For more information, see the
Cloud Storage Node.js API
reference documentation.
To authenticate to Cloud Storage, set up Application Default Credentials.
For more information, see
Set up authentication for a local development environment.
For more information, see the
Cloud Storage PHP API
reference documentation.
To authenticate to Cloud Storage, set up Application Default Credentials.
For more information, see
Set up authentication for a local development environment.
For more information, see the
Cloud Storage Python API
reference documentation.
To authenticate to Cloud Storage, set up Application Default Credentials.
For more information, see
Set up authentication for a local development environment.
For more information, see the
Cloud Storage Ruby API
reference documentation.
To authenticate to Cloud Storage, set up Application Default Credentials.
For more information, see
Set up authentication for a local development environment.
C++
C#
Go
Java
Node.js
PHP
Python
Ruby
REST APIs
JSON API
Have gcloud CLI installed and initialized, in order to generate an access token for the
Authorization
header.Alternatively, you can create an access token using the OAuth 2.0 Playground and include it in the
Authorization
header.Use
cURL
to call the JSON API with aDELETE
Bucket request:curl -X DELETE -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://storage.googleapis.com/storage/v1/b/BUCKET_NAME"
Where
BUCKET_NAME
is the name of the bucket to delete. For example,my-bucket
.
If successful, the response contains a 204 status code.
XML API
Have gcloud CLI installed and initialized, in order to generate an access token for the
Authorization
header.Alternatively, you can create an access token using the OAuth 2.0 Playground and include it in the
Authorization
header.Use
cURL
to call the XML API with aDELETE
Bucket request:curl -X DELETE -H "Authorization: Bearer $(gcloud auth print-access-token)" \ "https://storage.googleapis.com/BUCKET_NAME"
Where
BUCKET_NAME
is the name of the bucket to delete. For example,my-bucket
.