Get disk usage
GET
/api/v1/
operationIdgetServerDiskUsage
- Required level
- Read only
- Rate limit
- read, 3,600 calls per hour
Actual disk usage, measured inside the VPS by the QEMU guest agent. The hypervisor only knows the allocated size of the virtual disk (disk, returned by GET /servers/{vmid}/status).
The value is aggregated over real file systems: virtual file systems (tmpfs, overlay, squashfs…) are excluded, and a device is counted only once, even if it is mounted several times.
The QEMU guest agent runs inside your system: if it is missing or stopped, the call responds 422. Install the qemu-guest-agent package and start its service to use this feature.
Path parameters
-
vmidstring required -
Identifier of the VPS. It must belong to the account and be within the key's scope.
Responses
200
Disk usage
{
"data": {
"used": 6796091392,
"total": 202655672320,
"free": 195859580928,
"percent": 3.4,
"source": "qemu-guest-agent"
}
}
Response fields 6
-
dataobjectrequired -
usedinteger (int64)Bytes used
-
totalinteger (int64)Capacity, in bytes
-
freeinteger (int64)Bytes free
-
percentnumber (double)Usage rate, in %
-
sourcestring
401
Authentication refused: invalid_token — Authorization header missing or malformed, or unknown key; access_disabled — API access turned off for this account, or API service temporarily turned off by LWS.
invalid_token — Authorization header missing or malformed, or unknown key; access_disabled — API access turned off for this account, or API service temporarily turned off by LWS.Authorization header missing or malformed, or unknown key
{
"type": "https://docs.lws.fr/kvm/errors/invalid-token",
"title": "Authentification invalide",
"status": 401,
"code": "invalid_token",
"detail": "Clé inconnue ou révoquée.",
"request_id": "3f9a1c07b2e45d18"
}
API access turned off for this account, or API service temporarily turned off by LWS
{
"type": "https://docs.lws.fr/kvm/errors/access-disabled",
"title": "Accès API désactivé",
"status": 401,
"code": "access_disabled",
"detail": "L'accès API est désactivé pour ce compte. Réactivez-le depuis la page « API / MCP » du panel.",
"request_id": "3f9a1c07b2e45d18"
}
Response fields 18
-
typestring (uri)required -
titlestringrequiredShort title, in French
-
statusinteger (int64)requiredHTTP status
-
codestringrequiredStable machine-readable code (see "Errors" in Getting started)
-
detailstringrequiredDetailed message, in French
-
request_idstringrequiredIdentifier of the request, to give to support
-
errorsobjectvalidation_failed: message per faulty parameter -
required_levelstringinsufficient_scope: level required by the operation -
task_idstringtask_already_running: task running on this VPS -
familystringrate_limited: exhausted rate limit family -
limitinteger (int64)rate_limited: hourly limit of the family -
retry_afterinteger (int64)rate_limited: seconds to wait -
lockstringserver_locked: lock set by the hypervisor (backup,snapshot,suspended…) -
reasonstringserver_locked:operation_in_progress, an operation is running, retry afterRetry-After;suspended, the VPS is hibernating, start it first;support_notified, abnormal lock, the LWS team has been notified and is taking care of it -
maintenanceobjectserver_maintenance: nature of the intervention, start and expected end (nullfor an incident) -
kindstring -
started_atstring (date-time) -
expected_endstring (date-time)
403
Access denied: ip_not_allowed — calling address not authorized.
ip_not_allowed — calling address not authorized.{
"type": "https://docs.lws.fr/kvm/errors/ip-not-allowed",
"title": "Adresse non autorisée",
"status": 403,
"code": "ip_not_allowed",
"detail": "L'adresse 203.0.113.10 ne figure pas parmi les adresses autorisées de ce compte.",
"request_id": "3f9a1c07b2e45d18"
}
Response fields 18
-
typestring (uri)required -
titlestringrequiredShort title, in French
-
statusinteger (int64)requiredHTTP status
-
codestringrequiredStable machine-readable code (see "Errors" in Getting started)
-
detailstringrequiredDetailed message, in French
-
request_idstringrequiredIdentifier of the request, to give to support
-
errorsobjectvalidation_failed: message per faulty parameter -
required_levelstringinsufficient_scope: level required by the operation -
task_idstringtask_already_running: task running on this VPS -
familystringrate_limited: exhausted rate limit family -
limitinteger (int64)rate_limited: hourly limit of the family -
retry_afterinteger (int64)rate_limited: seconds to wait -
lockstringserver_locked: lock set by the hypervisor (backup,snapshot,suspended…) -
reasonstringserver_locked:operation_in_progress, an operation is running, retry afterRetry-After;suspended, the VPS is hibernating, start it first;support_notified, abnormal lock, the LWS team has been notified and is taking care of it -
maintenanceobjectserver_maintenance: nature of the intervention, start and expected end (nullfor an incident) -
kindstring -
started_atstring (date-time) -
expected_endstring (date-time)
404
Resource not found: vm_not_found — VPS does not exist or is outside the key's scope.
vm_not_found — VPS does not exist or is outside the key's scope.{
"type": "https://docs.lws.fr/kvm/errors/vm-not-found",
"title": "VPS introuvable",
"status": 404,
"code": "vm_not_found",
"detail": "Aucun VPS 999999 sur ce compte.",
"request_id": "3f9a1c07b2e45d18"
}
Response fields 18
-
typestring (uri)required -
titlestringrequiredShort title, in French
-
statusinteger (int64)requiredHTTP status
-
codestringrequiredStable machine-readable code (see "Errors" in Getting started)
-
detailstringrequiredDetailed message, in French
-
request_idstringrequiredIdentifier of the request, to give to support
-
errorsobjectvalidation_failed: message per faulty parameter -
required_levelstringinsufficient_scope: level required by the operation -
task_idstringtask_already_running: task running on this VPS -
familystringrate_limited: exhausted rate limit family -
limitinteger (int64)rate_limited: hourly limit of the family -
retry_afterinteger (int64)rate_limited: seconds to wait -
lockstringserver_locked: lock set by the hypervisor (backup,snapshot,suspended…) -
reasonstringserver_locked:operation_in_progress, an operation is running, retry afterRetry-After;suspended, the VPS is hibernating, start it first;support_notified, abnormal lock, the LWS team has been notified and is taking care of it -
maintenanceobjectserver_maintenance: nature of the intervention, start and expected end (nullfor an incident) -
kindstring -
started_atstring (date-time) -
expected_endstring (date-time)
422
Operation unavailable on this VPS: unsupported_operation — QEMU guest agent missing, stopped, or command disabled.
unsupported_operation — QEMU guest agent missing, stopped, or command disabled.{
"type": "https://docs.lws.fr/kvm/errors/unsupported-operation",
"title": "Opération indisponible sur ce VPS",
"status": 422,
"code": "unsupported_operation",
"detail": "L'occupation disque nécessite le guest agent QEMU, qui ne répond pas sur ce VPS. Vérifiez que le paquet qemu-guest-agent est installé et son service démarré.",
"request_id": "3f9a1c07b2e45d18"
}
Response fields 18
-
typestring (uri)required -
titlestringrequiredShort title, in French
-
statusinteger (int64)requiredHTTP status
-
codestringrequiredStable machine-readable code (see "Errors" in Getting started)
-
detailstringrequiredDetailed message, in French
-
request_idstringrequiredIdentifier of the request, to give to support
-
errorsobjectvalidation_failed: message per faulty parameter -
required_levelstringinsufficient_scope: level required by the operation -
task_idstringtask_already_running: task running on this VPS -
familystringrate_limited: exhausted rate limit family -
limitinteger (int64)rate_limited: hourly limit of the family -
retry_afterinteger (int64)rate_limited: seconds to wait -
lockstringserver_locked: lock set by the hypervisor (backup,snapshot,suspended…) -
reasonstringserver_locked:operation_in_progress, an operation is running, retry afterRetry-After;suspended, the VPS is hibernating, start it first;support_notified, abnormal lock, the LWS team has been notified and is taking care of it -
maintenanceobjectserver_maintenance: nature of the intervention, start and expected end (nullfor an incident) -
kindstring -
started_atstring (date-time) -
expected_endstring (date-time)
429
Rate limit exceeded: rate_limited — hourly limit of the family exhausted.
rate_limited — hourly limit of the family exhausted.{
"type": "https://docs.lws.fr/kvm/errors/rate-limited",
"title": "Quota dépassé",
"status": 429,
"code": "rate_limited",
"detail": "Quota dépassé pour les opérations de type « read » : 3600 appels par heure. Réessayez dans 37 seconde(s).",
"request_id": "3f9a1c07b2e45d18",
"family": "read",
"limit": 3600,
"retry_after": 37
}
Response fields 18
-
typestring (uri)required -
titlestringrequiredShort title, in French
-
statusinteger (int64)requiredHTTP status
-
codestringrequiredStable machine-readable code (see "Errors" in Getting started)
-
detailstringrequiredDetailed message, in French
-
request_idstringrequiredIdentifier of the request, to give to support
-
errorsobjectvalidation_failed: message per faulty parameter -
required_levelstringinsufficient_scope: level required by the operation -
task_idstringtask_already_running: task running on this VPS -
familystringrate_limited: exhausted rate limit family -
limitinteger (int64)rate_limited: hourly limit of the family -
retry_afterinteger (int64)rate_limited: seconds to wait -
lockstringserver_locked: lock set by the hypervisor (backup,snapshot,suspended…) -
reasonstringserver_locked:operation_in_progress, an operation is running, retry afterRetry-After;suspended, the VPS is hibernating, start it first;support_notified, abnormal lock, the LWS team has been notified and is taking care of it -
maintenanceobjectserver_maintenance: nature of the intervention, start and expected end (nullfor an incident) -
kindstring -
started_atstring (date-time) -
expected_endstring (date-time)
502
Dependency unreachable: hypervisor_unreachable; upstream_unavailable — VPS inventory temporarily unavailable.
hypervisor_unreachable; upstream_unavailable — VPS inventory temporarily unavailable.Hypervisor unreachable
{
"type": "https://docs.lws.fr/kvm/errors/hypervisor-unreachable",
"title": "Hyperviseur injoignable",
"status": 502,
"code": "hypervisor_unreachable",
"detail": "L'hyperviseur hébergeant ce VPS n'a pas répondu. Réessayez dans quelques instants.",
"request_id": "3f9a1c07b2e45d18"
}
VPS inventory temporarily unavailable
{
"type": "https://docs.lws.fr/kvm/errors/upstream-unavailable",
"title": "Service momentanément indisponible",
"status": 502,
"code": "upstream_unavailable",
"detail": "Inventaire des VM indisponible.",
"request_id": "3f9a1c07b2e45d18"
}
Response fields 18
-
typestring (uri)required -
titlestringrequiredShort title, in French
-
statusinteger (int64)requiredHTTP status
-
codestringrequiredStable machine-readable code (see "Errors" in Getting started)
-
detailstringrequiredDetailed message, in French
-
request_idstringrequiredIdentifier of the request, to give to support
-
errorsobjectvalidation_failed: message per faulty parameter -
required_levelstringinsufficient_scope: level required by the operation -
task_idstringtask_already_running: task running on this VPS -
familystringrate_limited: exhausted rate limit family -
limitinteger (int64)rate_limited: hourly limit of the family -
retry_afterinteger (int64)rate_limited: seconds to wait -
lockstringserver_locked: lock set by the hypervisor (backup,snapshot,suspended…) -
reasonstringserver_locked:operation_in_progress, an operation is running, retry afterRetry-After;suspended, the VPS is hibernating, start it first;support_notified, abnormal lock, the LWS team has been notified and is taking care of it -
maintenanceobjectserver_maintenance: nature of the intervention, start and expected end (nullfor an incident) -
kindstring -
started_atstring (date-time) -
expected_endstring (date-time)
503
Host server under intervention: server_maintenance — host server under an intervention announced by LWS and unreachable; honor Retry-After.
server_maintenance — host server under an intervention announced by LWS and unreachable; honor Retry-After.{
"type": "https://docs.lws.fr/kvm/errors/server-maintenance",
"title": "Intervention en cours sur le serveur hôte",
"status": 503,
"code": "server_maintenance",
"detail": "Le serveur hébergeant ce VPS fait l'objet d'une intervention programmée par LWS : il est momentanément inaccessible. Fin prévue : 2026-10-21T18:00:00+02:00.",
"request_id": "3f9a1c07b2e45d18",
"maintenance": {
"kind": "works",
"started_at": "2026-10-21T14:00:00+02:00",
"expected_end": "2026-10-21T18:00:00+02:00"
}
}
Response fields 18
-
typestring (uri)required -
titlestringrequiredShort title, in French
-
statusinteger (int64)requiredHTTP status
-
codestringrequiredStable machine-readable code (see "Errors" in Getting started)
-
detailstringrequiredDetailed message, in French
-
request_idstringrequiredIdentifier of the request, to give to support
-
errorsobjectvalidation_failed: message per faulty parameter -
required_levelstringinsufficient_scope: level required by the operation -
task_idstringtask_already_running: task running on this VPS -
familystringrate_limited: exhausted rate limit family -
limitinteger (int64)rate_limited: hourly limit of the family -
retry_afterinteger (int64)rate_limited: seconds to wait -
lockstringserver_locked: lock set by the hypervisor (backup,snapshot,suspended…) -
reasonstringserver_locked:operation_in_progress, an operation is running, retry afterRetry-After;suspended, the VPS is hibernating, start it first;support_notified, abnormal lock, the LWS team has been notified and is taking care of it -
maintenanceobjectserver_maintenance: nature of the intervention, start and expected end (nullfor an incident) -
kindstring -
started_atstring (date-time) -
expected_endstring (date-time)