> ## 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.

# Resumen

> Referencia completa de los endpoints de RyzeAPI, organizados por módulo

Esta es la referencia completa de la API. Los endpoints están organizados en **módulos**, cada uno cubriendo un aspecto específico de WhatsApp.

Si recién estás comenzando, recomendamos leer: [Inicio rápido](/es/guide/quickstart) → [Conceptos](/es/guide/concepts) → [Autenticación](/es/guide/authentication) antes de entrar en un módulo específico.

## Base URL y convenciones

* **Base URL:** `https://ryzeapi.cloud`
* **Prefijo de ruta:** todos los endpoints comienzan con `/api/<module>/...`
* **Sonda de salud:** `/health` (sin prefijo `/api/`)
* **Eventos en tiempo real:** `/ws/:instance` (WebSocket)
* **Content-Type:** `application/json` en todo `POST` / `PUT` / `DELETE` con cuerpo
* **Autenticación:** cabecera `token` en cada ruta (consulta [Autenticación](/es/guide/authentication))
* **Rate limit:** `100 req/min` por defecto; la creación de instancia tiene un límite estricto de `20 req/min`
* **Cuerpo máximo:** 64 MB por solicitud (cubre subidas en base64)

## Módulos

<CardGroup cols={2}>
  <Card title="Instance" icon="server" href="/es/api/instance/overview">
    Crea, conecta, configura y opera tus instancias de WhatsApp.
  </Card>

  <Card title="Messages" icon="message" href="/es/api/messages/overview">
    Texto, media, sticker, ubicación, contacto, reacción, encuesta, carrusel, botones, lista, formulario, PIX y estado.
  </Card>

  <Card title="Chat" icon="comments" href="/es/api/chat/overview">
    Contactos, etiquetas, archivar, fijar, silenciar, presencia, historial, reenviar, editar, eliminar y más.
  </Card>

  <Card title="Groups" icon="users" href="/es/api/groups/overview">
    Crea grupos, gestiona participantes, enlaces de invitación y moderación.
  </Card>

  <Card title="Communities" icon="building" href="/es/api/communities/overview">
    Crea comunidades y vincula subgrupos.
  </Card>

  <Card title="Newsletter" icon="newspaper" href="/es/api/newsletter/overview">
    Crea canales y gestiona suscripciones.
  </Card>

  <Card title="Profile" icon="user" href="/es/api/profile/overview">
    Nombre, foto, mensaje de estado y privacidad de la cuenta de WhatsApp conectada.
  </Card>

  <Card title="Events" icon="webhook" href="/es/api/events/overview">
    Webhooks (con cola persistente + retry) y WebSockets en tiempo real.
  </Card>

  <Card title="WebSocket" icon="plug" href="/es/api/websocket">
    Upgrade `/ws/:instance`, protocolo, heartbeat, reconexión.
  </Card>

  <Card title="Chatwoot" icon="headset" href="/es/api/chatwoot/overview">
    Integración nativa con Chatwoot.
  </Card>

  <Card title="Observability" icon="heart-pulse" href="/es/api/observability/overview">
    `/health`, sonda combinada para orquestadores.
  </Card>
</CardGroup>

## Formato de respuesta

Cada llamada devuelve un JSON con el campo `success` indicando el resultado:

<Tabs>
  <Tab title="Éxito">
    ```json theme={null}
    {
      "success": true,
      "message": "Message sent successfully",
      "status": "sent",
      "data": { "...": "..." }
    }
    ```
  </Tab>

  <Tab title="Error">
    ```json theme={null}
    {
      "success": false,
      "error": {
        "message": "Instance is not connected to WhatsApp"
      }
    }
    ```
  </Tab>
</Tabs>

El envoltorio de error tiene **solo** `success` + `error.message`: no existe un campo numérico `code`. La diferenciación programática usa el **status HTTP** + el texto del mensaje. Consulta [Tipos de error](/es/guide/errors) para ver el catálogo completo de mensajes.

## Identificadores de WhatsApp (JIDs)

| Tipo               | Formato                  | Ejemplo                         |
| ------------------ | ------------------------ | ------------------------------- |
| Privado            | `<phone>@s.whatsapp.net` | `5511999999999@s.whatsapp.net`  |
| Grupo              | `<id>@g.us`              | `120363406289005073@g.us`       |
| Newsletter         | `<id>@newsletter`        | `120363422585881117@newsletter` |
| LID (oculto)       | `<id>@lid`               | `199789077627112@lid`           |
| Broadcast (estado) | `status@broadcast`       | `status@broadcast`              |

La mayoría de los endpoints aceptan un **número plano** (`5511999999999`) y lo convierten internamente. Para números brasileños (con prefijo `55`), la API intenta variaciones con/sin el "9" extra después del código de área.

## Glosario rápido

* **JID**, el identificador único en WhatsApp (contacto, grupo, canal, LID).
* **Cuenta**, tu espacio en RyzeAPI, identificado por el TokenAccount.
* **Instancia**, una conexión activa a un número de WhatsApp.
* **TokenAccount**, token de cuenta; se usa para crear/listar/eliminar instancias y operar cualquier instancia de la cuenta.
* **TokenInstance**, token específico de la instancia; se usa para operaciones diarias de esa instancia.
* **Webhook**, un `POST` que la API hace a tu URL cuando ocurre un evento (con retry exponencial y DLQ).
* **WebSocket**, conexión persistente para recibir eventos en tiempo real.
* **Integración Chatwoot**, función nativa de RyzeAPI que conecta tus instancias con Chatwoot.

## Variables en los ejemplos

La Base URL siempre es `https://ryzeapi.cloud`. Los ejemplos usan estas variables:

| Variable          | Significado                                   |
| ----------------- | --------------------------------------------- |
| `$Token_Account`  | Tu TokenAccount                               |
| `$Token_Instance` | TokenInstance de una instancia específica     |
| `$Instance_Name`  | Nombre de la instancia (p. ej., `myInstance`) |
