Ga naar hoofdinhoud

Image Asset Endpoints

Upload and manage image assets (avatars, logos, screenshots, documents).

Base Path​

/api/image-assets

Endpoints​

List Image Assets​

GET /api/image-assets
Authorization: Bearer {token}

Get Image Asset by ID​

GET /api/image-assets/:id
Authorization: Bearer {token}

Upload Image​

POST /api/image-assets/upload/{folder}
Authorization: Bearer {token}
Content-Type: multipart/form-data

file: <binary>

Path Parameters:

ParameterDescription
folderStorage folder name (e.g., profile_pictures, logos)

Response 201 Created:

{
"id": "uuid",
"name": "screenshot.png",
"url": "https://storage.example.com/profile_pictures/screenshot.png",
"thumb": "https://storage.example.com/profile_pictures/screenshot_thumb.png",
"width": 1920,
"height": 1080,
"size": 245678,
"isFeatured": false
}

Delete Image Asset​

DELETE /api/image-assets/:id
Authorization: Bearer {token}

File Storage Providers​

The upload destination depends on the configured storage provider:

ProviderEnvironment VariableDescription
LocalFILE_PROVIDER=LOCALLocal filesystem storage
S3FILE_PROVIDER=S3Amazon S3 / compatible
WasabiFILE_PROVIDER=WASABIWasabi Cloud Storage
CloudinaryFILE_PROVIDER=CLOUDINARYCloudinary CDN
DigitalOceanFILE_PROVIDER=DIGITALOCEAN_S3DO Spaces

Data Model​

interface IImageAsset {
id: string;
name: string;
url: string;
thumb?: string;
width?: number;
height?: number;
size?: number;
isFeatured?: boolean;
externalProviderId?: string;
storageProvider?: FileStorageProviderEnum;
organizationId?: string;
tenantId: string;
}