> ## Documentation Index
> Fetch the complete documentation index at: https://docs.ryzeapi.cloud/llms.txt
> Use this file to discover all available pages before exploring further.

# Desloguear instancia

> Fuerza un logout de WhatsApp y desconecta el dispositivo, manteniendo el registro de la instancia

**Auth:** `TokenAccount` o `TokenInstance` • **Rate-limit:** `Global` (100/min) • **Idempotente:** sí

## Descripción

Desvincula el dispositivo de WhatsApp (equivalente a hacer clic en "Cerrar sesión" en WhatsApp Web) y cierra el websocket. El registro de la instancia **no** se elimina, el token sigue siendo válido para un futuro [`connect`](/es/api/instance/connect) (con un nuevo QR).

## Ejemplo

Envía un `DELETE` al path de logout para desvincular el dispositivo de WhatsApp y cerrar el WebSocket. El registro de la instancia se preserva, por lo que el mismo `token` puede reutilizarse en una futura llamada a `connect`.

<CodeGroup>
  ```bash cURL theme={null}
  curl -X DELETE "https://ryzeapi.cloud/api/instance/logout/my-instance" \
    -H "token: $Token_Instance"
  ```

  ```javascript JavaScript theme={null}
  await fetch("https://ryzeapi.cloud/api/instance/logout/my-instance", {
    method: "DELETE",
    headers: {
      "token": process.env.Token_Instance
    }
  });
  ```

  ```python Python theme={null}
  import os, requests

  requests.delete(
      "https://ryzeapi.cloud/api/instance/logout/my-instance",
      headers={
          "token": os.environ["Token_Instance"]
      }
  )
  ```

  ```go Go theme={null}
  package main

  import (
      "net/http"
      "os"
  )

  func main() {
      req, _ := http.NewRequest("DELETE", "https://ryzeapi.cloud/api/instance/logout/my-instance", nil)
      req.Header.Set("token", os.Getenv("Token_Instance"))
      http.DefaultClient.Do(req)
  }
  ```
</CodeGroup>

## Respuesta exitosa

```json 200 OK theme={null}
{
  "success": true,
  "message": "Instance logged out",
  "instance": {
    "status": "loggedout"
  }
}
```

## Parámetros de ruta

<ParamField path="instance" type="string" required>
  Nombre de la instancia.
</ParamField>

## Cabeceras

<ParamField header="token" type="string" required>
  TokenAccount o TokenInstance.
</ParamField>

## Errores

| HTTP | `error.message`                         | Cuándo                     |
| :--: | --------------------------------------- | -------------------------- |
|  401 | `Invalid token`                         | Token faltante o inválido. |
|  404 | `Instance not found`                    | Nombre no existe.          |
|  429 | `Rate limit exceeded. Try again later.` | Más de 100 req/min.        |
|  500 | `Failed to logout instance`             | Falla interna.             |

```json theme={null}
{
  "success": false,
  "error": {
    "message": "Instance not found"
  }
}
```

## Notas

<Note>
  Después del logout, **`reconnect` ya no funciona**, la sesión whatsmeow se elimina. Usa [`connect`](/es/api/instance/connect) para generar un nuevo QR.
</Note>

<Warning>
  Esto **no** elimina el registro de la instancia. Para eliminarlo completamente (incluyendo settings, webhooks y datos), usa [`DELETE /api/instance/delete/:instance`](/es/api/instance/delete).
</Warning>

## Siguiente

<CardGroup cols={2}>
  <Card title="Conectar de nuevo" icon="qrcode" href="/es/api/instance/connect">
    Genera un nuevo QR para vincular otro dispositivo.
  </Card>

  <Card title="Eliminar instancia" icon="trash" href="/es/api/instance/delete">
    Para eliminar todo permanentemente.
  </Card>
</CardGroup>
