Documentación de la API El alojamiento web accesible para todos Visitar LWS

Listar las tareas

GET /api/v1/tasks

operationIdgetTasks

Nivel requerido
Solo lectura
Cuota
lectura, 3600 llamadas por hora

Tareas de la cuenta, de la más reciente a la más antigua, de todos los canales. Las tareas terminadas se conservan.

Solo se devuelven las tareas de los VPS cubiertos por la clave. Un filtro fuera de la lista o una fecha ilegible se rechaza, nunca se ignora.

Parámetros de consulta

page integer opcional

Página solicitada. Un valor inferior a 1 se convierte en 1.

como mínimo 1

per_page integer opcional

Tamaño de página. Un valor superior a 100 se convierte en 100; un valor nulo, negativo o no numérico, en 25.

como máximo 100 como mínimo 1

status string opcional

Estado de la tarea.

uno de: pending, succeeded, failed

vmid string opcional

Limitar a un VPS.

Ejemplo: 116807

action string opcional

Tipo de tarea.

uno de: server.start, server.stop, server.shutdown, server.reboot, server.reset, server.rebuild, server.enable_rescue, server.disable_rescue, server.reboot_rescue, snapshot.create, snapshot.delete, snapshot.rollback, backup.create, backup.restore, iso.mount, iso.unmount, firewall.sync, firewall.unblock_port_25

since string (date-time) opcional

Fecha ISO 8601: solo se devuelven las tareas posteriores.

Ejemplo: 2026-08-01T00:00:00+02:00

Respuestas

200

Una página de tareas

{
  "data": [
    {
      "id": "tsk_000002e1",
      "status": "succeeded",
      "action": "server.rebuild",
      "vmid": "107596",
      "description": "Réinstallation du serveur VPS-107596 avec le template Forgejo",
      "created_at": "2026-08-18T12:00:23+02:00",
      "finished_at": "2026-08-18T12:08:01+02:00"
    },
    {
      "id": "tsk_000002d5",
      "status": "pending",
      "action": "snapshot.create",
      "vmid": "107596",
      "description": "Création d'un snapshot du serveur VPS-107596",
      "created_at": "2026-08-18T12:31:02+02:00",
      "finished_at": null
    }
  ],
  "meta": {
    "page": 1,
    "per_page": 25,
    "total": 327,
    "total_pages": 14
  }
}
Campos de la respuesta 13
  • data object[]
    obligatorio
  • id string

    Identificador opaco

    Ejemplo: tsk_000002e1

  • status string

    unknown indicaría un estado que la API no sabe nombrar

    uno de: pending, succeeded, failed, unknown

  • action string

    Tipo de tarea

    uno de: server.start, server.stop, server.shutdown, server.reboot, server.reset, server.rebuild, server.enable_rescue, server.disable_rescue, server.reboot_rescue, snapshot.create, snapshot.delete, snapshot.rollback, backup.create, backup.restore, iso.mount, iso.unmount, firewall.sync, firewall.unblock_port_25 TaskAction

  • vmid string
  • description string
  • created_at string (date-time)
  • finished_at string (date-time)

    null mientras la tarea está en ejecución

  • meta object

    Paginación. Las listas no paginadas lo devuelven todo y meta refleja el número devuelto.

    PaginationMeta

    obligatorio
  • page integer (int64)

    Página devuelta

    Ejemplo: 1

  • per_page integer (int64)

    Tamaño de página

    Ejemplo: 25

  • total integer (int64)

    Número total de elementos

    Ejemplo: 887

  • total_pages integer (int64)

    Número total de páginas

    Ejemplo: 36

400

Parámetros no válidos: validation_failed — status o action fuera de la lista, o since ilegible.

{
  "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 : pending, succeeded, failed."
  }
}
Campos de la respuesta 18
  • type string (uri)

    Ejemplo: https://docs.lws.fr/kvm/errors/vm-not-found

    obligatorio
  • title string

    Título breve

    Ejemplo: VPS introuvable

    obligatorio
  • status integer (int64)

    Estado HTTP

    Ejemplo: 404

    obligatorio
  • code string

    Código de máquina estable (véase «Errores» en Primeros pasos)

    Ejemplo: vm_not_found

    obligatorio
  • detail string

    Mensaje detallado

    Ejemplo: Aucun VPS 999999 sur ce compte.

    obligatorio
  • request_id string

    Identificador de la petición, que debe facilitarse al soporte

    Ejemplo: 3f9a1c07b2e45d18

    obligatorio
  • errors object

    validation_failed: mensaje por parámetro erróneo

  • required_level string

    insufficient_scope: nivel exigido por la operación

    uno de: read, exploitation, full

  • task_id string

    task_already_running: tarea en curso en este VPS

    Ejemplo: tsk_000002d5

  • family string

    rate_limited: familia de cuota agotada

    uno de: read, mutation, heavy

  • limit integer (int64)

    rate_limited: límite por hora de la familia

  • retry_after integer (int64)

    rate_limited: segundos de espera

  • lock string

    server_locked: bloqueo establecido por el hipervisor (backup, snapshot, suspended…)

    Ejemplo: snapshot

  • reason string

    server_locked: operation_in_progress, hay una operación en curso, vuelva a intentarlo tras Retry-After; suspended, el VPS está en hibernación, arránquelo primero; support_notified, bloqueo anómalo, el equipo de LWS ha sido avisado y está interviniendo

    uno de: operation_in_progress, suspended, support_notified

  • maintenance object

    server_maintenance: naturaleza de la intervención, inicio y fin previsto (null para una incidencia)

  • kind string

    uno de: works, incident

  • started_at string (date-time)
  • expected_end string (date-time)
401

Autenticación rechazada: invalid_token — encabezado Authorization ausente o mal formado, o clave desconocida; access_disabled — acceso a la API cortado para esta cuenta, o servicio de API cortado momentáneamente por LWS.

encabezado Authorization ausente o mal formado, o clave desconocida

{
  "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"
}

acceso a la API cortado para esta cuenta, o servicio de API cortado momentáneamente por 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 de la respuesta 18
  • type string (uri)

    Ejemplo: https://docs.lws.fr/kvm/errors/vm-not-found

    obligatorio
  • title string

    Título breve

    Ejemplo: VPS introuvable

    obligatorio
  • status integer (int64)

    Estado HTTP

    Ejemplo: 404

    obligatorio
  • code string

    Código de máquina estable (véase «Errores» en Primeros pasos)

    Ejemplo: vm_not_found

    obligatorio
  • detail string

    Mensaje detallado

    Ejemplo: Aucun VPS 999999 sur ce compte.

    obligatorio
  • request_id string

    Identificador de la petición, que debe facilitarse al soporte

    Ejemplo: 3f9a1c07b2e45d18

    obligatorio
  • errors object

    validation_failed: mensaje por parámetro erróneo

  • required_level string

    insufficient_scope: nivel exigido por la operación

    uno de: read, exploitation, full

  • task_id string

    task_already_running: tarea en curso en este VPS

    Ejemplo: tsk_000002d5

  • family string

    rate_limited: familia de cuota agotada

    uno de: read, mutation, heavy

  • limit integer (int64)

    rate_limited: límite por hora de la familia

  • retry_after integer (int64)

    rate_limited: segundos de espera

  • lock string

    server_locked: bloqueo establecido por el hipervisor (backup, snapshot, suspended…)

    Ejemplo: snapshot

  • reason string

    server_locked: operation_in_progress, hay una operación en curso, vuelva a intentarlo tras Retry-After; suspended, el VPS está en hibernación, arránquelo primero; support_notified, bloqueo anómalo, el equipo de LWS ha sido avisado y está interviniendo

    uno de: operation_in_progress, suspended, support_notified

  • maintenance object

    server_maintenance: naturaleza de la intervención, inicio y fin previsto (null para una incidencia)

  • kind string

    uno de: works, incident

  • started_at string (date-time)
  • expected_end string (date-time)
403

Acceso denegado: ip_not_allowed — dirección de origen no autorizada.

{
  "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 de la respuesta 18
  • type string (uri)

    Ejemplo: https://docs.lws.fr/kvm/errors/vm-not-found

    obligatorio
  • title string

    Título breve

    Ejemplo: VPS introuvable

    obligatorio
  • status integer (int64)

    Estado HTTP

    Ejemplo: 404

    obligatorio
  • code string

    Código de máquina estable (véase «Errores» en Primeros pasos)

    Ejemplo: vm_not_found

    obligatorio
  • detail string

    Mensaje detallado

    Ejemplo: Aucun VPS 999999 sur ce compte.

    obligatorio
  • request_id string

    Identificador de la petición, que debe facilitarse al soporte

    Ejemplo: 3f9a1c07b2e45d18

    obligatorio
  • errors object

    validation_failed: mensaje por parámetro erróneo

  • required_level string

    insufficient_scope: nivel exigido por la operación

    uno de: read, exploitation, full

  • task_id string

    task_already_running: tarea en curso en este VPS

    Ejemplo: tsk_000002d5

  • family string

    rate_limited: familia de cuota agotada

    uno de: read, mutation, heavy

  • limit integer (int64)

    rate_limited: límite por hora de la familia

  • retry_after integer (int64)

    rate_limited: segundos de espera

  • lock string

    server_locked: bloqueo establecido por el hipervisor (backup, snapshot, suspended…)

    Ejemplo: snapshot

  • reason string

    server_locked: operation_in_progress, hay una operación en curso, vuelva a intentarlo tras Retry-After; suspended, el VPS está en hibernación, arránquelo primero; support_notified, bloqueo anómalo, el equipo de LWS ha sido avisado y está interviniendo

    uno de: operation_in_progress, suspended, support_notified

  • maintenance object

    server_maintenance: naturaleza de la intervención, inicio y fin previsto (null para una incidencia)

  • kind string

    uno de: works, incident

  • started_at string (date-time)
  • expected_end string (date-time)
429

Cuota superada: rate_limited — cuota por hora de la familia agotada.

{
  "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 de la respuesta 18
  • type string (uri)

    Ejemplo: https://docs.lws.fr/kvm/errors/vm-not-found

    obligatorio
  • title string

    Título breve

    Ejemplo: VPS introuvable

    obligatorio
  • status integer (int64)

    Estado HTTP

    Ejemplo: 404

    obligatorio
  • code string

    Código de máquina estable (véase «Errores» en Primeros pasos)

    Ejemplo: vm_not_found

    obligatorio
  • detail string

    Mensaje detallado

    Ejemplo: Aucun VPS 999999 sur ce compte.

    obligatorio
  • request_id string

    Identificador de la petición, que debe facilitarse al soporte

    Ejemplo: 3f9a1c07b2e45d18

    obligatorio
  • errors object

    validation_failed: mensaje por parámetro erróneo

  • required_level string

    insufficient_scope: nivel exigido por la operación

    uno de: read, exploitation, full

  • task_id string

    task_already_running: tarea en curso en este VPS

    Ejemplo: tsk_000002d5

  • family string

    rate_limited: familia de cuota agotada

    uno de: read, mutation, heavy

  • limit integer (int64)

    rate_limited: límite por hora de la familia

  • retry_after integer (int64)

    rate_limited: segundos de espera

  • lock string

    server_locked: bloqueo establecido por el hipervisor (backup, snapshot, suspended…)

    Ejemplo: snapshot

  • reason string

    server_locked: operation_in_progress, hay una operación en curso, vuelva a intentarlo tras Retry-After; suspended, el VPS está en hibernación, arránquelo primero; support_notified, bloqueo anómalo, el equipo de LWS ha sido avisado y está interviniendo

    uno de: operation_in_progress, suspended, support_notified

  • maintenance object

    server_maintenance: naturaleza de la intervención, inicio y fin previsto (null para una incidencia)

  • kind string

    uno de: works, incident

  • started_at string (date-time)
  • expected_end string (date-time)
502

Dependencia inaccesible: upstream_unavailable — inventario de VPS momentáneamente no disponible.

{
  "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 de la respuesta 18
  • type string (uri)

    Ejemplo: https://docs.lws.fr/kvm/errors/vm-not-found

    obligatorio
  • title string

    Título breve

    Ejemplo: VPS introuvable

    obligatorio
  • status integer (int64)

    Estado HTTP

    Ejemplo: 404

    obligatorio
  • code string

    Código de máquina estable (véase «Errores» en Primeros pasos)

    Ejemplo: vm_not_found

    obligatorio
  • detail string

    Mensaje detallado

    Ejemplo: Aucun VPS 999999 sur ce compte.

    obligatorio
  • request_id string

    Identificador de la petición, que debe facilitarse al soporte

    Ejemplo: 3f9a1c07b2e45d18

    obligatorio
  • errors object

    validation_failed: mensaje por parámetro erróneo

  • required_level string

    insufficient_scope: nivel exigido por la operación

    uno de: read, exploitation, full

  • task_id string

    task_already_running: tarea en curso en este VPS

    Ejemplo: tsk_000002d5

  • family string

    rate_limited: familia de cuota agotada

    uno de: read, mutation, heavy

  • limit integer (int64)

    rate_limited: límite por hora de la familia

  • retry_after integer (int64)

    rate_limited: segundos de espera

  • lock string

    server_locked: bloqueo establecido por el hipervisor (backup, snapshot, suspended…)

    Ejemplo: snapshot

  • reason string

    server_locked: operation_in_progress, hay una operación en curso, vuelva a intentarlo tras Retry-After; suspended, el VPS está en hibernación, arránquelo primero; support_notified, bloqueo anómalo, el equipo de LWS ha sido avisado y está interviniendo

    uno de: operation_in_progress, suspended, support_notified

  • maintenance object

    server_maintenance: naturaleza de la intervención, inicio y fin previsto (null para una incidencia)

  • kind string

    uno de: works, incident

  • started_at string (date-time)
  • expected_end string (date-time)
Mostrar los ejemplos de código y la consola de pruebas
GET /tasks
LWS_API_KEY='…'curl -X GET \  "https://panelkvm.lwspanel.com/api/v1/tasks" \  -H "Authorization: Bearer $LWS_API_KEY"
$lwsApiKey = '…';$ch = curl_init("https://panelkvm.lwspanel.com/api/v1/tasks");curl_setopt($ch, CURLOPT_CUSTOMREQUEST, "GET");curl_setopt($ch, CURLOPT_RETURNTRANSFER, true);curl_setopt($ch, CURLOPT_HTTPHEADER, [    "Authorization: Bearer " . $lwsApiKey,]);$res = json_decode(curl_exec($ch), true);
import requestsLWS_API_KEY = "…"res = requests.get(    "https://panelkvm.lwspanel.com/api/v1/tasks",    headers={        "Authorization": "Bearer " + LWS_API_KEY,    },)print(res.json())
const LWS_API_KEY = "…";const res = await fetch("https://panelkvm.lwspanel.com/api/v1/tasks", {  method: "GET",  headers: {    "Authorization": "Bearer " + LWS_API_KEY,  },});const data = await res.json();
lwsApiKey := "…"req, _ := http.NewRequest("GET",    "https://panelkvm.lwspanel.com/api/v1/tasks", nil)req.Header.Set("Authorization", "Bearer "+lwsApiKey)resp, err := http.DefaultClient.Do(req)