POST
/
v1
/
assets
/
upload
Upload assets
curl --request POST \
  --url https://api.getbluma.com/api/v1/assets/upload \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: multipart/form-data' \
  --form 'files=<string>' \
  --form 'collection_id=<string>' \
  --form files.items='@example-file'
{
  "assets": [
    {
      "id": "asset_abc123",
      "display_name": "product-hero.jpg",
      "s3_url": "https://s3.amazonaws.com/bluma-images/abc123.jpg",
      "cloudfront_url": "https://cdn.getbluma.com/assets/abc123.jpg",
      "file_type": "image/jpeg",
      "width": 1920,
      "height": 1080,
      "file_size_bytes": 245678,
      "source_type": "uploaded",
      "user_id": "user_xyz789",
      "brand_id": null,
      "created_at": "2025-01-15T10:30:00Z",
      "deleted_at": null
    }
  ],
  "total": 123
}

Authorizations

Authorization
string
header
required

Use your API key in the format: Bearer bluma_live_your_api_key_here

Body

multipart/form-data
files
file[]
required

Media files to upload (up to 20 files)

collection_id
string

Optional collection ID to add assets to

Response

Assets uploaded successfully

assets
object[]
total
number