Laravel Object Storage Buckets API
The Object Storage Buckets API from Laravel — 2 operation(s) for object storage buckets.
The Object Storage Buckets API from Laravel — 2 operation(s) for object storage buckets.
openapi: 3.1.0
info:
title: Laravel Cloud Applications Object Storage Buckets API
version: 0.0.1
servers:
- url: https://cloud.laravel.com/api
security:
- http: []
tags:
- name: Object Storage Buckets
paths:
/buckets:
get:
operationId: public.buckets.index
description: Get a list of all object storage buckets for the authenticated organization.
summary: List object storage buckets
tags:
- Object Storage Buckets
parameters:
- name: filter[type]
in: query
schema:
type: string
- name: filter[status]
in: query
schema:
type: string
- name: filter[visibility]
in: query
schema:
type: string
- name: include
in: query
schema:
type: array
items:
type: string
enum:
- keys
explode: false
responses:
'200':
description: Paginated set of `FilesystemResource`
content:
application/vnd.api+json:
schema:
type: object
properties:
data:
type: array
items:
$ref: '#/components/schemas/FilesystemResource'
links:
type: object
properties:
first:
type: string
last:
type: string
prev:
type: string
next:
type: string
meta:
type: object
properties:
current_page:
type: integer
minimum: 1
from:
type:
- integer
- 'null'
minimum: 1
last_page:
type: integer
minimum: 1
links:
type: array
description: Generated paginator links.
items:
type: object
properties:
url:
type:
- string
- 'null'
label:
type: string
active:
type: boolean
required:
- url
- label
- active
path:
type:
- string
- 'null'
description: Base path for paginator generated URLs.
per_page:
type: integer
description: Number of items shown per page.
minimum: 0
to:
type:
- integer
- 'null'
description: Number of the last item in the slice.
minimum: 1
total:
type: integer
description: Total number of items being paginated.
minimum: 0
required:
- current_page
- from
- last_page
- links
- path
- per_page
- to
- total
included:
type: array
items:
$ref: '#/components/schemas/FilesystemKeyResource'
required:
- data
- links
- meta
'401':
description: An error
content:
application/json:
schema:
type: object
properties:
message:
type: string
description: Error overview.
examples:
- ''
required:
- message
'403':
$ref: '#/components/responses/AuthorizationException'
post:
operationId: public.buckets.store
description: Create a new object storage bucket with an initial key.
summary: Create object storage bucket
tags:
- Object Storage Buckets
requestBody:
required: true
content:
application/json:
schema:
$ref: '#/components/schemas/StoreFilesystemRequest'
responses:
'201':
description: '`FilesystemResource`'
content:
application/vnd.api+json:
schema:
type: object
properties:
data:
$ref: '#/components/schemas/FilesystemResource'
included:
type: array
items:
$ref: '#/components/schemas/FilesystemKeyResource'
required:
- data
'401':
description: An error
content:
application/json:
schema:
type: object
properties:
message:
type: string
description: Error overview.
examples:
- ''
required:
- message
'403':
$ref: '#/components/responses/AuthorizationException'
'422':
$ref: '#/components/responses/ValidationException'
/buckets/{filesystem}:
get:
operationId: public.buckets.show
description: Get a specific object storage bucket.
summary: Get object storage bucket
tags:
- Object Storage Buckets
parameters:
- name: filesystem
in: path
required: true
description: The filesystem identifier
schema:
type: string
- name: include
in: query
schema:
type: array
items:
type: string
enum:
- keys
explode: false
responses:
'200':
description: '`FilesystemResource`'
content:
application/vnd.api+json:
schema:
type: object
properties:
data:
$ref: '#/components/schemas/FilesystemResource'
included:
type: array
items:
$ref: '#/components/schemas/FilesystemKeyResource'
required:
- data
'404':
$ref: '#/components/responses/ModelNotFoundException'
'403':
$ref: '#/components/responses/AuthorizationException'
patch:
operationId: public.buckets.update
description: Update an object storage bucket.
summary: Update object storage bucket
tags:
- Object Storage Buckets
parameters:
- name: filesystem
in: path
required: true
description: The filesystem identifier
schema:
type: string
requestBody:
content:
application/json:
schema:
$ref: '#/components/schemas/UpdateFilesystemRequest'
responses:
'200':
description: '`FilesystemResource`'
content:
application/vnd.api+json:
schema:
type: object
properties:
data:
$ref: '#/components/schemas/FilesystemResource'
included:
type: array
items:
$ref: '#/components/schemas/FilesystemKeyResource'
required:
- data
'404':
$ref: '#/components/responses/ModelNotFoundException'
'403':
$ref: '#/components/responses/AuthorizationException'
'422':
$ref: '#/components/responses/ValidationException'
delete:
operationId: public.buckets.destroy
description: Delete an object storage bucket.
summary: Delete object storage bucket
tags:
- Object Storage Buckets
parameters:
- name: filesystem
in: path
required: true
description: The filesystem identifier
schema:
type: string
responses:
'204':
description: No content
'404':
$ref: '#/components/responses/ModelNotFoundException'
'403':
$ref: '#/components/responses/AuthorizationException'
'422':
$ref: '#/components/responses/ValidationException'
components:
schemas:
FilesystemKeyPermission:
type: string
enum:
- read_write
- read_only
title: FilesystemKeyPermission
FilesystemStatus:
type: string
enum:
- creating
- updating
- available
- deleting
- deleted
- unknown
title: FilesystemStatus
FilesystemVisibility:
type: string
enum:
- private
- public
title: FilesystemVisibility
FilesystemResource:
type: object
properties:
id:
type: string
type:
type: string
enum:
- filesystems
attributes:
type: object
properties:
name:
type: string
type:
$ref: '#/components/schemas/FilesystemType'
status:
$ref: '#/components/schemas/FilesystemStatus'
visibility:
$ref: '#/components/schemas/FilesystemVisibility'
jurisdiction:
$ref: '#/components/schemas/FilesystemJurisdiction'
endpoint:
type:
- string
- 'null'
url:
type:
- string
- 'null'
allowed_origins:
type: 'null'
cors_settings:
type: 'null'
created_at:
type:
- string
- 'null'
format: date-time
required:
- name
- type
- status
- visibility
- jurisdiction
- endpoint
- url
- allowed_origins
- cors_settings
- created_at
relationships:
type: object
properties:
keys:
type: object
properties:
data:
type: array
items:
$ref: '#/components/schemas/FilesystemKeyResourceIdentifier'
required:
- data
required:
- id
- type
title: FilesystemResource
FilesystemType:
type: string
enum:
- cloudflare_r2
title: FilesystemType
StoreFilesystemRequest:
type: object
properties:
name:
type: string
pattern: ^[a-z0-9_-]+$
minLength: 3
maxLength: 40
visibility:
$ref: '#/components/schemas/FilesystemVisibility'
jurisdiction:
$ref: '#/components/schemas/FilesystemJurisdiction'
allowed_origins:
type:
- array
- 'null'
description: This field is deprecated and will be removed May 17th, 2026. Please use `cors_settings.allowed_origins` instead.
items:
type: string
format: uri
cors_settings:
type: object
properties:
allowed_origins:
type:
- array
- 'null'
items:
type: string
format: uri
allowed_methods:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/CorsHttpMethod'
minItems: 1
allowed_headers:
type:
- array
- 'null'
items:
type: string
expose_headers:
type:
- array
- 'null'
items:
type: string
max_age_seconds:
type:
- integer
- 'null'
minimum: 1
key_name:
type: string
minLength: 3
maxLength: 40
key_permission:
$ref: '#/components/schemas/FilesystemKeyPermission'
required:
- name
- visibility
- jurisdiction
- key_name
- key_permission
title: StoreFilesystemRequest
FilesystemKeyResourceIdentifier:
type: object
properties:
type:
type: string
enum:
- filesystemKeys
id:
type: string
required:
- type
- id
title: FilesystemKeyResourceIdentifier
CorsHttpMethod:
type: string
enum:
- GET
- POST
- PUT
- DELETE
- HEAD
title: CorsHttpMethod
UpdateFilesystemRequest:
type: object
properties:
name:
type: string
pattern: ^[a-z0-9_-]+$
minLength: 3
maxLength: 40
visibility:
$ref: '#/components/schemas/FilesystemVisibility'
allowed_origins:
type:
- array
- 'null'
description: This field is deprecated and will be removed May 17th, 2026. Please use `cors_settings.allowed_origins` instead.
items:
type: string
format: uri
cors_settings:
type: object
properties:
allowed_origins:
type:
- array
- 'null'
items:
type: string
format: uri
allowed_methods:
type:
- array
- 'null'
items:
$ref: '#/components/schemas/CorsHttpMethod'
minItems: 1
allowed_headers:
type:
- array
- 'null'
items:
type: string
expose_headers:
type:
- array
- 'null'
items:
type: string
max_age_seconds:
type:
- integer
- 'null'
minimum: 1
title: UpdateFilesystemRequest
FilesystemKeyResource:
type: object
properties:
id:
type: string
type:
type: string
enum:
- filesystemKeys
attributes:
type: object
properties:
name:
type: string
permission:
$ref: '#/components/schemas/FilesystemKeyPermission'
access_key_id:
type:
- string
- 'null'
access_key_secret:
type:
- string
- 'null'
created_at:
type:
- string
- 'null'
format: date-time
required:
- name
- permission
- access_key_id
- access_key_secret
- created_at
relationships:
type: object
properties:
filesystem:
type: object
properties:
data:
anyOf:
- $ref: '#/components/schemas/FilesystemResourceIdentifier'
- type: 'null'
required:
- data
required:
- id
- type
title: FilesystemKeyResource
FilesystemResourceIdentifier:
type: object
properties:
type:
type: string
enum:
- filesystems
id:
type: string
required:
- type
- id
title: FilesystemResourceIdentifier
FilesystemJurisdiction:
type: string
enum:
- default
- eu
title: FilesystemJurisdiction
responses:
ModelNotFoundException:
description: Not found
content:
application/json:
schema:
type: object
properties:
message:
type: string
description: Error overview.
required:
- message
ValidationException:
description: Validation error
content:
application/json:
schema:
type: object
properties:
message:
type: string
description: Errors overview.
errors:
type: object
description: A detailed description of each field that failed validation.
additionalProperties:
type: array
items:
type: string
required:
- message
- errors
AuthorizationException:
description: Authorization error
content:
application/json:
schema:
type: object
properties:
message:
type: string
description: Error overview.
required:
- message
securitySchemes:
http:
type: http
description: The Bearer Token generated on the Cloud UI.
scheme: bearer
bearerFormat: bearer