Object Storage

Create bucket

post/object-storage/buckets

Create an S3 compatible bucket in the storage tier you choose. It is ready in a few seconds and is billed by the hour for what it stores, serves and the requests it receives.

Authorization

Authorization
Authorization*string

Bearer YOUR_API_TOKEN with an API token. The X-API-Key: YOUR_API_TOKEN header works too.

Request body

Create a bucket.

application/jsonRequired
name*string

Globally unique bucket name

Rangelength ≤ 255
tier*string

Tier slug or uuid

Rangelength ≤ 64
project_id?integer | null

Project (default: the organization's first project)

versioning?boolean

Create the bucket with versioning enabled

Defaultfalse
tags?record<string, string> | null

Labels {key: value}, at most 50

lifecycle_rules?array<ObjectStorageLifecycleRule> | null

Lifecycle rules applied when the bucket is created (same as PUT .../lifecycle)

Rangeitems ≤ 1000
Properties (8)
id*string
Rangelength ≤ 255
enabled?boolean
Defaulttrue
filter?ObjectStorageLifecycleFilter | null
Properties (4)
prefix?string | null
Rangelength ≤ 4096
tags?array<ObjectStorageLifecycleTag> | null
Rangeitems ≤ 50
Properties (2)
key*string
Rangelength ≤ 512
value*string
Rangelength ≤ 512
object_size_greater_than?integer | null
object_size_less_than?integer | null
expiration?ObjectStorageLifecycleExpiration | null
Properties (3)
days?integer | null

Days after the object was written

date?string | null

YYYY-MM-DD (midnight UTC), after today

expired_object_delete_marker?boolean | null

Remove delete markers left without any version (versioned buckets)

noncurrent_version_expiration?ObjectStorageLifecycleNoncurrent | null
Properties (2)
noncurrent_days*integer

Days after a version stopped being the current one

newer_noncurrent_versions?integer | null

Keep this many newer versions

abort_incomplete_multipart_upload?ObjectStorageLifecycleAbort | null
Properties (1)
days_after_initiation*integer
transitions?any

Not supported

noncurrent_version_transitions?any

Not supported

object_lock?boolean

Create the bucket with Object Lock (WORM). Only possible now, never later; implies versioning

Defaultfalse
object_lock_default?ObjectStorageLockRetention | null

Default retention of new objects (only with object_lock); null for none

Properties (3)
mode*string

governance: keys with the bypass permission can still delete; compliance: nobody can

Value in"governance""compliance"
days?integer | null

Retention in days

years?integer | null

Retention in years

accept_object_lock_terms?boolean

Required (true) with object_lock: you accept the Object Lock terms

Defaultfalse

Responses

Successful Response

application/json

detail*string
uuid*string
name*string
status*string
project_id?integer | null
tier*ObjectStorageTierSummary
Properties (4)
uuid*string
slug*string
name*string
media*string
region*string
endpoint*string
tags?record<string, string>
Default{}
object_lock*ObjectStorageObjectLockOut
Properties (2)
enabled*boolean
default_retention?ObjectStorageLockRetentionOut | null
Properties (3)
mode*string
Value in"governance""compliance"
days?integer | null
years?integer | null