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