FruxonDocs
SystemStorage

Gets tenant-wide storage totals.

Independent of the list filters: this is what the whole workspace is using, split into retained storage and temporary uploads that will drain on their own once their TTL passes. The figures are tracked bytes (the sum over stored-file rows), which is not the same as what the storage provider bills — a versioned bucket also keeps the archived generation of every replaced file. The literal `usage` segment takes routing precedence over the sibling `{fileId}` download template, and file ids are always `{guid}{ext}`, so the two cannot collide.

GET
/v1/tenants/{tenant}/storage/usage
AuthorizationBearer <token>

JWT Authorization header using the Bearer scheme. Enter 'Bearer' [space] and then your token.

In: header

Path Parameters

tenant*string

The tenant identifier

Response Body

curl -X GET "https://api.fruxon.com/v1/tenants/string/storage/usage"
{
  "totalBytes": 0,
  "totalFiles": 0,
  "retainedBytes": 0,
  "retainedFiles": 0,
  "temporaryBytes": 0,
  "temporaryFiles": 0,
  "byApplication": [
    {
      "networkId": "00000000-0000-0000-0000-000000000000",
      "files": 0,
      "bytes": 0
    }
  ],
  "unattributedBytes": 0,
  "unattributedFiles": 0,
  "quota": {
    "usedBytes": 0,
    "limitBytes": 0,
    "bytesAddedLast24h": 0,
    "hasLimit": false,
    "percentUsed": null,
    "remainingBytes": null,
    "isOverLimit": false,
    "isWarning": false,
    "isRateSpike": false
  }
}
Empty
Empty
{
  "type": "string",
  "title": "string",
  "status": 0,
  "detail": "string",
  "instance": "string",
  "property1": null,
  "property2": null
}