Skip to content
Knowledge base
Open dashboard
UAEN
ReferenceUpdated 02/11/2026

Files: upload, folders

Endpoints of the file controller: multipart upload, file list and card, media library folders, file configs (sound, plugins). File deletion is not available in the API.

Checked on the current dashboard version

The file controller uploads media to the cabinet library, reads the file list and card, and stores per-playlistA set of files with a playback schedule that is assigned to screens or networks. file configs (muted sound, plugin settings). Folders are read via folder. Base URL http://api.advision.digital, header Authorization: Bearer $ADV_T. Deleting and renaming files via API is not available.

Method and path

What it does

Important

POST /file/post

Upload a file: multipart/form-data, field file

Returns id, name, size, width, height, duration, mime, link, thumbnail, checksum, isDuplicate; a duplicate returns the existing id

GET /file?itemsPerPage=9999

File list

Response key is files, not data

GET /file/<FILE_ID>

One file

A deleted file answers 403 Not avaliable, not 404

GET /folder

Media library folders

Key data, plus tags[] and total; creating folders and moving files via API is not verified

POST /file/config

File config inside a playlistA set of files with a playback schedule that is assigned to screens or networks.: {"fileId": <FILE_ID>, "playlistId": <PLAYLISTA set of files with a playback schedule that is assigned to screens or networks._ID>, "pointId": null, "config": "isMuted=true"}

Upsert by file × playlistA set of files with a playback schedule that is assigned to screens or networks. × screenA device running the Advision player that shows content; the cabinet calls it a media device.; pointId: null means all screens

GET /file/getConfigs?itemsPerPage=9999

List of configs

Key configs: id, fileId, playlistId, pointId, config, playlistA set of files with a playback schedule that is assigned to screens or networks. and screenA device running the Advision player that shows content; the cabinet calls it a media device. names

POST /file/removeConfig/<CONFIG_ID>

Remove a config

A full playlistA set of files with a playback schedule that is assigned to screens or networks. patch does not remove configs

Upload a file

curl: curl -s -H "Authorization: Bearer $ADV_T" -F "file=@promo.mp4;type=video/mp4" http://api.advision.digital/file/post

Python: with open("promo.mp4", "rb") as f: r = c.post("/file/post", files={"file": ("promo.mp4", f, "video/mp4")}, timeout=600); file_id = r.json()["id"]

Response field

Type

Note

id

number

Identifier for the playlistA set of files with a playback schedule that is assigned to screens or networks. files[]; for a duplicate the existing file id is returned with isDuplicate: true

name, size, mime

string, number, string

Name, bytes, type

width, height, duration

number

Dimensions and video duration in seconds; for images duration is set later in the playlistA set of files with a playback schedule that is assigned to screens or networks.

link, thumbnail

string

Public URL of the file and its thumbnail

checksum

string

Used by the API to detect duplicates

Set the content type explicitly by extension (image/png, image/jpeg, video/mp4, application/zip). With application/octet-stream the API answers 200 with an empty [] instead of a file object. A small standalone .html fails with 500 Undefined array key "mime_type": put it as index.html into a zip and upload it as application/zip. A web link cannot be added as a separate file via API; the workaround is the same: an html with an <iframe> inside a zip.

File requirements are the same as in the cabinet: see file requirements. Video guideline: 1920×1080, H.264, 25 fps, about 5 Mbit/s.

Find a file in the list

Request: curl -s -H "Authorization: Bearer $ADV_T" "http://api.advision.digital/file?itemsPerPage=9999"

Python: files = c.get("/file", params={"itemsPerPage": 9999}).json()["files"]; by_name = {f["name"]: f["id"] for f in files}. Server-side search by name is not verified, so filter on your side.

Mute a video inside a playlist

Sound is controlled by a file config, not by a playlistA set of files with a playback schedule that is assigned to screens or networks. field: curl -s -X POST -H "Authorization: Bearer $ADV_T" -H "Content-Type: application/json" -d '{"fileId": <FILE_ID>, "playlistId": <PLAYLISTA set of files with a playback schedule that is assigned to screens or networks._ID>, "pointId": null, "config": "isMuted=true"}' http://api.advision.digital/file/config

The config field is a query-string formatted string; plugin settings live there too (name=…&price=…), so isMuted=true is appended with &. A mute field inside the playlistA set of files with a playback schedule that is assigned to screens or networks. files[] is silently ignored by the API. Verified 26.10.2026.

What the API does not offer

  • Deleting a file from the media library: cabinet only. Via API you can only remove the file from playlists.
  • Renaming a file, creating folders and moving files between them: not verified, no such methods in the sources.
  • CSV export of the file list: download the JSON and convert it yourself.