# Estado de los canales

Antes de mandar algo por un canal conviene saber si ese canal está conectado y sano. `GET /workspaces/{workspaceId}/channels/status` te lo dice para los cuatro tipos —WhatsApp, Instagram, Messenger y correo— en una sola llamada.

> Scope `channels:read`. No consume Energía. **No devuelve credenciales**: ni tokens, ni PIN, ni la ruta del webhook. Conectar, reconectar y desconectar un canal se hace desde el panel de Meteor.

```ts
import { Met } from '@meteor.ia/sdk';

const met = new Met(process.env.MET_KEY!, { workspaceId: 42 });
const { data } = await met.channels.status();

for (const canal of data) {
  console.log(canal.type, canal.connected, canal.health, canal.reason);
  for (const cuenta of canal.accounts) console.log('  ', cuenta.display, cuenta.health);
}
```

Siempre llegan los cuatro tipos, en el mismo orden, conectados o no.

## Qué dice cada campo

| Campo | Qué significa |
|---|---|
| `connected` | El canal está conectado en tu workspace. |
| `channel_id` | El `id` del canal para el resto de operaciones (`GET /channels/{channelId}/config`, los envíos de WhatsApp). `null` si nunca se conectó. |
| `accounts[]` | Cada número de WhatsApp, cuenta de Instagram, Página de Facebook o casilla de correo, con `display` (lo que ve tu cliente), `is_active` y su propia salud. |
| `health` | `ok`, `attention`, `disconnected` o `not_connected`. Es la peor salud entre sus cuentas activas. |
| `reason` | Por qué no está `ok` (abajo). |
| `last_synced_at` | Cuándo Meteor sincronizó esa cuenta con el proveedor por última vez. |

## Los motivos

| `reason` | Qué hacer |
|---|---|
| `line_not_operational` | El número de WhatsApp no terminó de verificarse o registrarse. Termina el alta desde el panel. |
| `quality_low` | Meta calificó en rojo la calidad del número. Baja el volumen de plantillas de marketing. |
| `authorization_expiring` | El permiso de la cuenta vence en menos de 7 días. Reconéctala desde el panel. |
| `authorization_expired` | El permiso venció: lo que entra por esa cuenta ya no llega. Reconéctala desde el panel. |
| `account_inactive` | La cuenta está apagada en el panel; no cuenta para la salud del canal. |
| `no_accounts` | El canal está conectado pero no tiene ninguna cuenta activa. |

Si una cuenta se cae y las demás siguen sanas, el canal queda en `attention`: sigue respondiendo por las otras. Solo está `disconnected` cuando se cayeron todas.

## Lo que no hace

La salud sale de lo último que Meteor sincronizó, no de una consulta a Meta en el momento: llamarla en bucle no te da información más fresca. Para diagnosticar un canal en detalle —qué flujo atiende cada línea, qué Met responde— usa [`GET /channels/{channelId}/config`](../reference.html).
