# Zapini API — Conversaciones

**Versión:** 1.2.0
**Base URL:** `https://zapini.app/api/v1`

---

## Autenticación

Todos los endpoints requieren un Bearer Token:

```
Authorization: Bearer {your_token}
Accept: application/json
Content-Type: application/json
```

Genera tokens de API en el panel admin en **API Docs → Gestionar Tokens**.

---

## Conversaciones

### GET /conversations

Listar conversaciones.

**Parámetros de Consulta:**

| Campo | Tipo | Descripción |
|-------|------|-------------|
| instance_id | string | UUID de instancia |
| unread | boolean | Solo conversaciones con mensajes no leídos |
| search | string | Buscar por nombre o número |
| is_group | boolean | Filtrar grupos o individuos |
| per_page | integer | Elementos por página |

---

### GET /conversations/archived

Listar conversaciones archivadas.

---

### GET /conversations/{uuid}

Retorna detalles de la conversación.

---

### GET /conversations/{uuid}/messages

Listar mensajes de una conversación.

**Parámetros de Consulta:**

| Campo | Tipo | Descripción |
|-------|------|-------------|
| from | datetime | Fecha de inicio |
| to | datetime | Fecha de fin |
| before_id | integer | Mensajes antes de este ID (para scroll infinito) |
| after_id | integer | Mensajes después de este ID |
| limit | integer | Límite de mensajes (por defecto: 50) |

---

### POST /conversations/{uuid}/mark-read

Marcar conversación como leída (resetar contador de no leídos).

---

### POST /conversations/{uuid}/archive

Archivar la conversación.

---

### POST /conversations/{uuid}/unarchive

Desarchivar la conversación.

---

### DELETE /conversations/{uuid}

Eliminar conversación y todos sus mensajes.

---

*Generado por Zapini — https://zapini.app*
