Listar os VPS
GET
/api/v1/
operationIdgetServers
- Nível exigido
- Apenas leitura
- Quota
- leitura, 3600 chamadas por hora
Inventário dos VPS abrangidos pela chave. O estado de alimentação é lido no hipervisor; se este estiver momentaneamente inacessível, status é unavailable e o resto da ficha continua utilizável.
Durante uma intervenção anunciada pela LWS no servidor anfitrião (atualização, reinício…), maintenance indica a sua natureza e o seu horário, quer esteja programada quer esteja em curso. Se o servidor anfitrião deixar de responder durante essa intervenção, status é maintenance: uma indisponibilidade prevista e passageira, não uma avaria.
O filtro status aplica-se à página pedida: meta descreve o inventário completo, sem filtro, pelo que uma página filtrada pode conter menos entradas do que per_page.
O estado lido no hipervisor é guardado em cache durante 15 segundos: uma chamada mais próxima devolve o mesmo valor. Qualquer escrita feita através da API num VPS atualiza imediatamente o seu estado.
Parâmetros de consulta
-
pageinteger opcional -
Página pedida. Um valor inferior a 1 é ajustado para 1.
-
per_pageinteger opcional -
Tamanho da página. Um valor superior a 100 é ajustado para 100; um valor nulo, negativo ou não numérico, para 25.
-
statusstring opcional -
Manter apenas os VPS neste estado (aplicado à página devolvida).
Respostas
200
Uma página do inventário
{
"data": [
{
"vmid": "116807",
"name": "vps116807",
"node": "shp-40",
"status": "running",
"maintenance": null,
"os_template": "debian12_64",
"commercial_name": "Debian 12",
"ipv4": "31.207.34.214",
"ipv6": "2a00:7ee0:9:1:11:6807:1:1",
"additional_ips": [
"51.83.12.98"
],
"datacenter": {
"code": "SJ1",
"city": "Nancy",
"country": "France",
"zone": "eu-france-est"
},
"purchased_at": "2025-03-14T00:00:00+01:00",
"expires_at": "2027-03-14T00:00:00+01:00",
"enabled": true,
"expired": false,
"comment": null
}
],
"meta": {
"page": 1,
"per_page": 25,
"total": 1,
"total_pages": 1
}
}
Campos da resposta 30
-
dataobject[]obrigatório -
vmidstringIdentificador do VPS
-
namestringNome da máquina no hipervisor
-
nodestringHipervisor que aloja o VPS, a título informativo. Nunca é pedido como entrada e pode mudar durante uma migração.
-
statusstringEstado de alimentação;
unavailablese o hipervisor não respondeu;maintenancese não responder durante uma intervenção anunciada pela LWS -
maintenanceobjectIntervenção anunciada pela LWS no servidor anfitrião (estado dos serviços), programada ou em curso, quer o servidor responda quer não;
nullse não existir -
statusstringscheduled: programada;in_progress: em curso -
kindstringworks: manutenção, melhoria ou reinício;incident: incidente, perturbação, lentidão ou ataque -
starts_atstring (date-time) -
expected_endstring (date-time)Fim previsto; sempre
nullpara um incidente -
os_templatestring -
commercial_namestring -
ipv4string -
ipv6string -
additional_ipsstring[] -
datacenterobject -
codestring -
citystring -
countrystring -
zonestring -
purchased_atstring (date-time) -
expires_atstring (date-time) -
enabledbooleanfalse: serviço desativado -
expiredbooleantrue: serviço expirado -
commentstringComentário introduzido no painel
-
metaobjectobrigatórioPaginação. As listas não paginadas devolvem tudo e
metareflete o número devolvido. -
pageinteger (int64)Página devolvida
-
per_pageinteger (int64)Tamanho da página
-
totalinteger (int64)Número total de elementos
-
total_pagesinteger (int64)Número total de páginas
400
Parâmetros inválidos: validation_failed — status fora da lista.
validation_failed — status fora da lista.{
"type": "https://docs.lws.fr/kvm/errors/validation-failed",
"title": "Paramètres invalides",
"status": 400,
"code": "validation_failed",
"detail": "Paramètre « status » invalide.",
"request_id": "3f9a1c07b2e45d18",
"errors": {
"status": "Valeurs acceptées : running, stopped, unavailable, maintenance."
}
}
Campos da resposta 18
-
typestring (uri)obrigatório -
titlestringobrigatórioTítulo curto
-
statusinteger (int64)obrigatórioEstado HTTP
-
codestringobrigatórioCódigo de máquina estável (ver «Erros» em Primeiros passos)
-
detailstringobrigatórioMensagem detalhada
-
request_idstringobrigatórioIdentificador do pedido, a comunicar ao suporte
-
errorsobjectvalidation_failed: mensagem por parâmetro incorreto -
required_levelstringinsufficient_scope: nível exigido pela operação -
task_idstringtask_already_running: tarefa em curso neste VPS -
familystringrate_limited: família de quota esgotada -
limitinteger (int64)rate_limited: limite horário da família -
retry_afterinteger (int64)rate_limited: segundos a aguardar -
lockstringserver_locked: bloqueio aplicado pelo hipervisor (backup,snapshot,suspended…) -
reasonstringserver_locked:operation_in_progress, há uma operação em curso, tente novamente apósRetry-After;suspended, o VPS está em hibernação, inicie-o primeiro;support_notified, bloqueio anómalo, a equipa LWS foi avisada e está a intervir -
maintenanceobjectserver_maintenance: natureza da intervenção, início e fim previsto (nullpara um incidente) -
kindstring -
started_atstring (date-time) -
expected_endstring (date-time)
401
Autenticação recusada: invalid_token — cabeçalho Authorization ausente ou mal formado, ou chave desconhecida; access_disabled — acesso à API cortado para esta conta, ou serviço de API momentaneamente suspenso pela LWS.
invalid_token — cabeçalho Authorization ausente ou mal formado, ou chave desconhecida; access_disabled — acesso à API cortado para esta conta, ou serviço de API momentaneamente suspenso pela LWS.cabeçalho Authorization ausente ou mal formado, ou chave desconhecida
{
"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"
}
acesso à API cortado para esta conta, ou serviço de API momentaneamente suspenso pela 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"
}
Campos da resposta 18
-
typestring (uri)obrigatório -
titlestringobrigatórioTítulo curto
-
statusinteger (int64)obrigatórioEstado HTTP
-
codestringobrigatórioCódigo de máquina estável (ver «Erros» em Primeiros passos)
-
detailstringobrigatórioMensagem detalhada
-
request_idstringobrigatórioIdentificador do pedido, a comunicar ao suporte
-
errorsobjectvalidation_failed: mensagem por parâmetro incorreto -
required_levelstringinsufficient_scope: nível exigido pela operação -
task_idstringtask_already_running: tarefa em curso neste VPS -
familystringrate_limited: família de quota esgotada -
limitinteger (int64)rate_limited: limite horário da família -
retry_afterinteger (int64)rate_limited: segundos a aguardar -
lockstringserver_locked: bloqueio aplicado pelo hipervisor (backup,snapshot,suspended…) -
reasonstringserver_locked:operation_in_progress, há uma operação em curso, tente novamente apósRetry-After;suspended, o VPS está em hibernação, inicie-o primeiro;support_notified, bloqueio anómalo, a equipa LWS foi avisada e está a intervir -
maintenanceobjectserver_maintenance: natureza da intervenção, início e fim previsto (nullpara um incidente) -
kindstring -
started_atstring (date-time) -
expected_endstring (date-time)
403
Acesso recusado: ip_not_allowed — endereço de chamada não autorizado.
ip_not_allowed — endereço de chamada não autorizado.{
"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"
}
Campos da resposta 18
-
typestring (uri)obrigatório -
titlestringobrigatórioTítulo curto
-
statusinteger (int64)obrigatórioEstado HTTP
-
codestringobrigatórioCódigo de máquina estável (ver «Erros» em Primeiros passos)
-
detailstringobrigatórioMensagem detalhada
-
request_idstringobrigatórioIdentificador do pedido, a comunicar ao suporte
-
errorsobjectvalidation_failed: mensagem por parâmetro incorreto -
required_levelstringinsufficient_scope: nível exigido pela operação -
task_idstringtask_already_running: tarefa em curso neste VPS -
familystringrate_limited: família de quota esgotada -
limitinteger (int64)rate_limited: limite horário da família -
retry_afterinteger (int64)rate_limited: segundos a aguardar -
lockstringserver_locked: bloqueio aplicado pelo hipervisor (backup,snapshot,suspended…) -
reasonstringserver_locked:operation_in_progress, há uma operação em curso, tente novamente apósRetry-After;suspended, o VPS está em hibernação, inicie-o primeiro;support_notified, bloqueio anómalo, a equipa LWS foi avisada e está a intervir -
maintenanceobjectserver_maintenance: natureza da intervenção, início e fim previsto (nullpara um incidente) -
kindstring -
started_atstring (date-time) -
expected_endstring (date-time)
429
Quota excedida: rate_limited — quota horária da família esgotada.
rate_limited — quota horária da família esgotada.{
"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
}
Campos da resposta 18
-
typestring (uri)obrigatório -
titlestringobrigatórioTítulo curto
-
statusinteger (int64)obrigatórioEstado HTTP
-
codestringobrigatórioCódigo de máquina estável (ver «Erros» em Primeiros passos)
-
detailstringobrigatórioMensagem detalhada
-
request_idstringobrigatórioIdentificador do pedido, a comunicar ao suporte
-
errorsobjectvalidation_failed: mensagem por parâmetro incorreto -
required_levelstringinsufficient_scope: nível exigido pela operação -
task_idstringtask_already_running: tarefa em curso neste VPS -
familystringrate_limited: família de quota esgotada -
limitinteger (int64)rate_limited: limite horário da família -
retry_afterinteger (int64)rate_limited: segundos a aguardar -
lockstringserver_locked: bloqueio aplicado pelo hipervisor (backup,snapshot,suspended…) -
reasonstringserver_locked:operation_in_progress, há uma operação em curso, tente novamente apósRetry-After;suspended, o VPS está em hibernação, inicie-o primeiro;support_notified, bloqueio anómalo, a equipa LWS foi avisada e está a intervir -
maintenanceobjectserver_maintenance: natureza da intervenção, início e fim previsto (nullpara um incidente) -
kindstring -
started_atstring (date-time) -
expected_endstring (date-time)
502
Dependência inacessível: upstream_unavailable — inventário dos VPS momentaneamente indisponível.
upstream_unavailable — inventário dos VPS momentaneamente indisponível.{
"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"
}
Campos da resposta 18
-
typestring (uri)obrigatório -
titlestringobrigatórioTítulo curto
-
statusinteger (int64)obrigatórioEstado HTTP
-
codestringobrigatórioCódigo de máquina estável (ver «Erros» em Primeiros passos)
-
detailstringobrigatórioMensagem detalhada
-
request_idstringobrigatórioIdentificador do pedido, a comunicar ao suporte
-
errorsobjectvalidation_failed: mensagem por parâmetro incorreto -
required_levelstringinsufficient_scope: nível exigido pela operação -
task_idstringtask_already_running: tarefa em curso neste VPS -
familystringrate_limited: família de quota esgotada -
limitinteger (int64)rate_limited: limite horário da família -
retry_afterinteger (int64)rate_limited: segundos a aguardar -
lockstringserver_locked: bloqueio aplicado pelo hipervisor (backup,snapshot,suspended…) -
reasonstringserver_locked:operation_in_progress, há uma operação em curso, tente novamente apósRetry-After;suspended, o VPS está em hibernação, inicie-o primeiro;support_notified, bloqueio anómalo, a equipa LWS foi avisada e está a intervir -
maintenanceobjectserver_maintenance: natureza da intervenção, início e fim previsto (nullpara um incidente) -
kindstring -
started_atstring (date-time) -
expected_endstring (date-time)