Creating storage buckets  |  Cloud Storage  |  Google Cloud

Imported from google doc (always check for there for updates)

This page shows you how to create Cloud Storage buckets. For an overview of buckets, read the Key Terms. If not otherwise specified in your request, buckets are created in the US multi-region and have a default storage class of Standard Storage.

Console

  1. Open the Cloud Storage browser in the Google Cloud Console. Open the Cloud Storage browser

  2. Click Create bucket to open the bucket creation form.

  3. Enter your bucket information and click Continue to complete each step:

    • Specify a Name, subject to the bucket name requirements.

    • Select a Default storage class for the bucket. The default storage class will be assigned by default to all objects uploaded to the bucket. Next, select a Location where the bucket data will be permanently stored.

      Note: The Monthly cost estimate panel in the right pane estimates the bucket's monthly costs based on your selected storage class and location, as well as your expected data size and operations.

    • Select an Access control model to determine how you control access to the bucket's objects.

    • Optionally, you can add bucket labels, set a retention policy, and choose an encryption method.

  4. Click Done.

gsutil

Use the gsutil mb command:

gsutil mb gs://[BUCKET_NAME]/

Where:

  • [BUCKET_NAME] is the name you want to give your bucket, subject to naming requirements. For example, my-bucket.

Set the following optional flags to have greater control over the creation of your bucket:

  • -p: Specify the project with which your bucket will be associated. For example, my-project.

  • -c: Specify the default storage class of your bucket. For example, NEARLINE.

  • -l: Specify the location of your bucket. For example, US-EAST1.

  • -b: Enable uniform bucket-level access for your bucket.

For example:

  gsutil mb -p [PROJECT_ID] -c [STORAGE_CLASS] -l [BUCKET_LOCATION] -b on gs://[BUCKET_NAME]/

Code samples

REST APIS

JSON API

  1. Get an authorization access token from the OAuth 2.0 Playground. Configure the playground to use your own OAuth credentials.

  2. Create a .json file that contains the following information:

    {
      "name": "[BUCKET_NAME]",
      "location": "[BUCKET_LOCATION]",
      "storageClass": "[STORAGE_CLASS]"
    }

    Where:

    • [BUCKET_NAME] is the name you want to give your bucket, subject to naming requirements. For example, my-bucket.

    • [BUCKET_LOCATION] is the location where you want to store your bucket's object data. For example, US-EAST1.

    • [STORAGE_CLASS] is the default storage class of your bucket. For example, NEARLINE.

  3. Use cURL to call the JSON API:

    curl -X POST --data-binary @[JSON_FILE_NAME].json \
         -H "Authorization: Bearer [OAUTH2_TOKEN]" \
         -H "Content-Type: application/json" \
         "https://storage.googleapis.com/storage/v1/b?project=[PROJECT_ID]"

    Where:

    • [JSON_FILE_NAME] is name of the JSON file you created in Step 2.

    • [OAUTH2_TOKEN] is the access token you generated in Step 1.

    • [PROJECT_ID] is the ID of the project with which your bucket will be associated. For example, my-project.

XML API

  1. Get an authorization access token from the OAuth 2.0 Playground. Configure the playground to use your own OAuth credentials.

  2. Create a .xml file that contains the following information:

    <CreateBucketConfiguration>
       <LocationConstraint>[BUCKET_LOCATION]</LocationConstraint>
       <StorageClass>[STORAGE_CLASS]</StorageClass>
    </CreateBucketConfiguration>

    Where:

    • [BUCKET_LOCATION] is the location where you want to store your bucket's object data. For example, US-EAST1.

    • [STORAGE_CLASS] is the default storage class of your bucket. For example, NEARLINE.

  3. Use cURL to call the XML API:

    curl -X PUT --data-binary @[XML_FILE_NAME].xml \
         -H "Authorization: Bearer [OAUTH2_TOKEN]" \
         -H "x-goog-project-id: [PROJECT_ID]" \
         "https://storage.googleapis.com/[BUCKET_NAME]"

    Where:

    • [XML_FILE_NAME] is name of the XML file you created in Step 2.

    • [OAUTH2_TOKEN] is the access token you generated in Step 1.

    • [PROJECT_ID] is the ID of the project with which your bucket will be associated. For example, my-project.

    • [BUCKET_NAME] is the name you want to give your bucket, subject to naming requirements. For example, my-bucket.

Last updated

Was this helpful?