Method
POST /v1/gallery/upload
file (required) – Binary file upload.
folderId – UUID of destination folder.
fileName – Override the stored filename (defaults to the uploaded name).
publish – Truthy value (1, true, on, yes) keeps the file public; otherwise it remains private.
metadata – JSON string merged into file metadata.
width, height, duration – Optional numeric hints for images/videos.
JSON Body Parameters
Bearer token (e.g. Authorization: Bearer YOUR_API_KEY)
multipart/form-data or application/json
Request Example
curl -X POST https://api.voyantcloud.com/v1/gallery/upload \
-H "Authorization: Bearer $VOYANT_API_KEY" \
-F "[email protected]" \
-F "folderId=00000000-0000-0000-0000-000000000000" \
-F "publish=true" \
-F "metadata={\"campaign\":\"summer-2025\"}"
Response
{
"fileId": "gal_file_123",
"jobId": "gallery-job-456",
"status": "processing",
"publicUrls": {
"primary": "https://cdn.voyantcloud.com/gallery/ws_abc/hero.jpg",
"thumbnail": "https://cdn.voyantcloud.com/gallery/ws_abc/hero.jpg?w=200,h=200"
}
}
The upload response is asynchronous. Poll /v1/gallery/files or subscribe to gallery.file.uploaded webhooks to know when processing finishes.