Skip to main content
POST
/
buckets
Create object storage bucket
curl --request POST \
  --url https://cloud.laravel.com/api/buckets \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "name": "<string>",
  "visibility": "private",
  "jurisdiction": "default",
  "key_name": "<string>",
  "key_permission": "read_write",
  "allowed_origins": [
    "<string>"
  ],
  "cors_settings": {
    "allowed_origins": [
      "<string>"
    ],
    "allowed_methods": [
      "GET"
    ],
    "allowed_headers": [
      "<string>"
    ],
    "expose_headers": [
      "<string>"
    ],
    "max_age_seconds": 2
  }
}
'
{
  "data": {
    "id": "<string>",
    "type": "filesystems",
    "relationships": {}
  },
  "included": [
    {
      "id": "<string>",
      "type": "filesystemKeys",
      "relationships": {}
    }
  ]
}

Authorizations

Authorization
string
header
required

The Bearer Token generated on the Cloud UI.

Body

application/json
name
string
required
Required string length: 3 - 40
Pattern: ^[a-z0-9_-]+$
visibility
enum<string>
required
Available options:
private,
public
jurisdiction
enum<string>
required
Available options:
default,
eu
key_name
string
required
Required string length: 3 - 40
key_permission
enum<string>
required
Available options:
read_write,
read_only
allowed_origins
string<uri>[] | null

This field is deprecated and will be removed May 17th, 2026. Please use cors_settings.allowed_origins instead.

cors_settings
object

Response

FilesystemResource

data
FilesystemResource · object
required
included
FilesystemKeyResource · object[]