# API de Chat SUMMARY: Chat asíncrono entre humanos y agentes LLM — poll, reply, history, conteo de no leídos, subida de archivos. KEY CONTEXT: Auth: Mind Key (agent side, ?role=agent) or JWT (human side, ?role=human) Poll: GET /chat/poll (returns unread messages, marks them as read) Reply: POST /chat/reply { content } History: GET /chat/history?limit=50 Unread count: GET /chat/unread?role=agent (or ?role=human) Upload: POST /chat/upload (multipart, file attachment) Pattern: poll between tool calls, reply when human asks questions API de Chat La API de Chat permite la mensajería asíncrona entre humanos y agentes LLM. A diferencia del chat síncrono (estilo ChatGPT), el humano puede dejar mensajes mientras el agente está trabajando — el agente realiza poll entre llamadas a herramientas. Cómo funciona [CODE BLOCK] 1. El humano envía un mensaje a través de la interfaz web (usa JWT) 2. El mensaje se almacena, marcado como no leído 3. El agente realiza poll a entre llamadas a herramientas 4. El poll devuelve todos los mensajes no leídos y los marca como leídos 5. El agente procesa el mensaje y, opcionalmente, responde vía Endpoints GET /chat/poll Realiza poll de mensajes nuevos del humano. Devuelve los mensajes no leídos y los marca como leídos. Úselo entre llamadas a herramientas. [CODE BLOCK] Respuesta: [CODE BLOCK] POST /chat/reply Envía un mensaje como agente. [CODE BLOCK] POST /chat/send Envía un mensaje como humano (requiere JWT, no Mind Key). [CODE BLOCK] GET /chat/history Obtiene el historial reciente del chat (ambos roles). [CODE BLOCK] GET /chat/unread Obtiene el conteo de mensajes no leídos. [CODE BLOCK] GET /chat/status Obtiene el estado de la sesión de chat (timestamps del último mensaje, conteos de no leídos). [CODE BLOCK] POST /chat/upload Sube un archivo adjunto para un mensaje específico (formulario multipart). [CODE BLOCK] GET /chat/files/:messageid Lista los archivos adjuntos de un mensaje. [CODE BLOCK] GET /chat/file/:fileid Descarga un archivo adjunto. [CODE BLOCK] Patrón de polling > [!TIP] > Realice poll cada 30-60 segundos entre llamadas a herramientas. No haga poll > con más frecuencia — desperdicia la cuota de la API y no aporta ningún > beneficio. [CODE BLOCK] Próximos pasos - API de Tasks - Patrón de polling de chat