Crie um bucket

Ao criar um bucket, é possível especificar a localização geográfica do bucket e a classe de armazenamento dele.

Se você tentar criar um bucket com nome inválido, receberá um 400 Solicitação inválida código de status e o corpo da resposta de erro teráInvalidBucketName no Code.

Só é possível criar um bucket em projetos em que você tem permissão para fazer isso. Por exemplo, se você tiver o papel Administrador do Storage em um projeto, terá a permissão necessária (storage.objects.create) para criar buckets.

Além disso, como o namespace do bucket é global, o nome dele precisa ser exclusivo em todo o namespace do Cloud Storage. Se o nome do bucket estiver em uso, você receberá um código de status 409 Conflict e a solicitação de criação de bucket falhará. O corpo da resposta de erro conterá BucketAlreadyExists no elemento Code se o bucket já existir no namespace ou incluir um BucketAlreadyOwnedByYou no elemento Code se o bucket pertencer a você. Para mais informações, consulte as Diretrizes de nomenclatura de bucket e as diretrizes de nomenclatura de objetos.

Parâmetros de string de consulta

Normalmente, essa solicitação não inclui parâmetros de string de consulta.

Consulte parâmetros de string de consulta de URL assinado para informações sobre os parâmetros incluídos ao criar e usar URLs assinados.

Cabeçalhos de solicitação

Além dos cabeçalhos de solicitação comuns, os itens a seguir podem ser usados.

Header Descrição Obrigatório
x-goog-acl A lista de controle de acesso (ACL) predefinida que você deseja aplicar ao bloco. Não use esse parâmetro se você estiver usando o parâmetro de string de consulta acl para aplicar ACLs. Não
x-goog-bucket-retention-period O tempo, em segundos, que os objetos no bucket precisam ser retidos antes de serem substituídos ou excluídos. Não
x-goog-project-id O ID de um projeto. Obrigatório, a menos que você tenha definido o projeto padrão para acesso interoperável. Não

Elementos do corpo da solicitação

Os seguintes elementos do corpo da solicitação são aplicáveis ao criar um bucket. Se você não especificar um corpo de solicitação, o Cloud Storage criará um bucket no local US com uma classe de armazenamento STANDARD.

Element Descrição
CreateBucketConfiguration Contêiner para solicitação de criação de corpo.
LocationConstraint Um local para o bucket.
StorageClass A classe de armazenamento do bucket, como STANDARD, NEARLINE, COLDLINE ou ARCHIVE.

Sintaxe da solicitação

PUT / HTTP/1.1
Host: BUCKET_NAME.storage.googleapis.com
Date: DATE
Content-Length: REQUEST_BODY_LENGTH
Authorization: AUTHENTICATION_STRING
x-goog-project-id: PROJECT_ID
x-goog-acl: PREDEFINED_ACL
x-goog-bucket-retention-period: TIME_IN_SECONDS

<CreateBucketConfiguration>
  <LocationConstraint>LOCATION</LocationConstraint>
  <StorageClass>STORAGE_CLASS</StorageClass>
</CreateBucketConfiguration>

Cabeçalhos de resposta

A solicitação pode retornar diversos cabeçalhos de resposta, dependendo dos cabeçalhos de solicitação usados.

Elementos do corpo da resposta

A resposta não inclui um documento XML no corpo da resposta.

Exemplo

A amostra a seguir cria um bucket de Armazenamento padrão chamado acme-pets no local dos EUA e no projeto especificado (nenhum corpo da solicitação especificado).

Solicitação

PUT / HTTP/1.1
Host: acme-pets.storage.googleapis.com
Date: Mon, 15 Feb  2008 21:30:39 GMT
Content-Length: 0
x-goog-project-id: 123456789123
Authorization: Bearer ya29.AHES6ZRVmB7fkLtd1XTmq6mo0S1wqZZi3-Lh_s-6Uw7p8vtgSwg
 
<CreateBucketConfiguration>
  <StorageClass>STANDARD</StorageClass>
</CreateBucketConfiguration>

Resposta

HTTP/1.1 200 OK
Date: Mon, 15 Feb 2010 12:30:40 GMT
Content-Length: 0