Get Storage Status
const url = 'https://example.com/api/system/storage';const options = {method: 'GET', headers: {Authorization: 'Bearer <token>'}};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url https://example.com/api/system/storage \ --header 'Authorization: Bearer <token>'Admin-only snapshot of the artifact-storage guardrails.
Fable plan-review amendment A1: max_concurrent_uploads/
max_concurrent_downloads are now the GLOBALLY enforced numbers (Redis
counters shared by every worker process — see
app/services/redis_concurrency.py), not per-process values. Also reports
the current global in-flight counts (best-effort; 0 if Redis is
unreachable) so the ota_scale suite’s pre-flight and any operator can see
real headroom against the cap, not just its configured value.
Returns:
free_bytes: current free space on the artifact storage volume
(shutil.disk_usage, same call check_free_space makes).
min_free_bytes: STORAGE_MIN_FREE_BYTES.
max_upload_bytes: ARTIFACT_MAX_UPLOAD_BYTES.
max_concurrent_uploads: ARTIFACT_MAX_CONCURRENT_UPLOADS (global cap).
max_concurrent_downloads: OTA_MAX_CONCURRENT_DOWNLOADS (global cap).
current_uploads_in_flight: live global count of admitted uploads.
current_downloads_in_flight: live global count of admitted downloads.
Authorizations
Section titled “ Authorizations ”Responses
Section titled “ Responses ”Successful Response
object
Example generated
{}