Creates a new bucket
A bucket belongs to the account used to create it.
Buckets can be named. The name must be globally unique. No account can use a bucket with the same name. Buckets are assigned a unique bucketId which is used when uploading, downloading, or deleting files. There is a limit of 100 buckets per account. Contact our Sales team if you need more than 100 buckets.
This API endpoint can be called using a
GET request by converting the parameters in the request body to query parameters.
An account authorization token, obtained from b2_authorize_account.
The token must have the
Your account ID.
The name to give the new bucket.
Bucket names must be a minimum of 6 and a maximum of 63 characters long, and must be globally unique, two different B2 accounts cannot have buckets with the same name. Bucket names can consist of letters, digits, and "-". Bucket names cannot start with "b2-", these are reserved for internal Backblaze use.
Either "allPublic", meaning that files in this bucket can be downloaded by anybody, or "allPrivate", meaning that you need a bucket authorization token to download the files.
User-defined information to be stored with the bucket as a JSON object mapping names to values. See Buckets.
Cache-Control policies can be set here on a global level for all the files in the bucket.
The initial list (a JSON array) of CORS rules for this bucket. See CORS Rules for an overview and the rule structure.
If present, the boolean value specifies whether bucket is Object Lock-enabled. The default value is
false. Setting the value to
true requires the
The initial list (a JSON array) of lifecycle rules for this bucket. Structure defined below. See Lifecycle Rules.
The configuration to create a Replication Rule. See Cloud Replication Rules.
The default server-side encryption settings for this bucket. See Server-Side Encryption for an overview and the parameter structure.
Setting the value requires the
writeBucketEncryption application key capability.
The request succeeded.
The account that the bucket is in.
The unique ID of the bucket.
The unique name of the bucket.
shared, or other values added in the future.
allPublic means that anybody can download the files is the bucket;
allPrivate means that you need an authorization token to download them;
snapshot means that it's a private bucket containing snapshots created on the B2 web site.
The user data stored with this bucket.
The CORS rules for this bucket. See CORS Rules for an overview and the rule structure.
The Object Lock configuration for this bucket. This field is filtered based on application key capabilities;
readBucketRetentions capability is required to access the value. See Object Lock for more details on response structure.
The initial list (a JSON array) of lifecycle rules for this bucket. See Lifecycle Rules for an overview and the rule structure.
The list of replication rules for this bucket. See Cloud Replication Rules for an overview and the rule structure.
A counter that is updated every time the bucket is modified, and can be used with the
ifRevisionIs parameter to b2_update_bucket to prevent colliding, simultaneous updates.
When present and set to
s3, the bucket can be accessed through the S3 Compatible API.
|400||bad_bucket_id||The requested bucket ID does not match an existing bucket.|
|400||bad_request||The request had the wrong fields or illegal values. The message returned with the error will describe the problem.|
|400||cannot_delete_non_empty_bucket||A bucket must be empty before it can be deleted. To delete this bucket, first remove all of the files in the bucket, then try the delete operation again.|
|400||too_many_buckets||The account is already at the maximum bucket count.|
|400||duplicate_bucket_name||Bucket name is already in use.|
The numeric HTTP status code. Always matches the status in the HTTP response.
A single-identifier code that identifies the error.
A human-readable message, in English, saying what went wrong.
|401||bad_auth_token||The auth token used is not valid. Call b2_authorize_account again to either get a new one, or an error message describing the problem.|
|401||expired_auth_token||The auth token used has expired. Call b2_authorize_account again to get a new one.|
|401||unauthorized||The auth token used is valid, but does not authorize this call with these parameters. The capabilities of an auth token are determined by the application key used with b2_authorize_account.|
|403||transaction_cap_exceeded||Transaction cap exceeded. To increase your cap, sign in to your B2 Cloud Storage account online. Then select the Caps & Alerts link in the B2 Cloud Storage section of the sidebar.|