Chat
La API de Chat permite que tu aplicación converse directamente con un agente de Platica. Puedes esperar la respuesta en el mismo ciclo HTTP o programar el turno para después.
Sin delay ni scheduleAt, Chat es síncrono y no admite streaming. Con programación, responde
HTTP 202; consulta el chat después de la ejecución. Revisa el formato y la estrategia de reintentos
en Errores y soporte .
Endpoints disponibles
| Método | Endpoint | Descripción |
|---|---|---|
POST | /v1/chat | Iniciar una conversación o enviar el siguiente turno |
GET | /v1/chat | Listar los chats del workspace |
GET | /v1/chat/{id} | Obtener un chat con su historial de mensajes |
Chat frente a Conversaciones
Ambos recursos operan sobre los mismos hilos, pero con responsabilidades distintas:
| Recurso | Rol | Uso |
|---|---|---|
/v1/chat | Hablar como cliente | Enviar texto o adjuntos al agente de inmediato o de forma programada. |
/v1/conversations | Administrar como negocio | Consultar el inbox, asignar owners, cerrar, reabrir y auditar hilos. |
Los chats creados por esta API también aparecen en los listados de Conversaciones . Para cerrar un chat, usa PATCH /v1/conversations/{id} con el status correspondiente.
Chat frente a Mensajes
Aunque ambos recursos intercambian texto, resuelven casos distintos:
| Recurso | Uso |
|---|---|
/v1/chat | Tu aplicación habla con un agente de inmediato o programa el turno. |
/v1/messages | Tu negocio interviene una conversación existente o envía una instrucción al agente. |
Usa Chat para experiencias dentro de tu producto, pruebas de agentes o integraciones backend a backend. Usa Mensajes cuando necesites comunicarte con un cliente a través de un canal conectado o intervenir un chat como negocio.
Ciclo de una conversación
- Inicia el hilo con
agentIdy unmessage, hasta 10attachments, o ambos. - Para programarlo, incluye
delayoscheduleAt. La respuesta HTTP202no contiene mensajes del agente. - Guarda
idyconversationId:ides el documento canónico yconversationIdes el hilochat_*. Después de la hora programada, haz polling conGET /v1/chat/{id}oget_chat; puede responder404hasta que la tarea cree el documento. - Continúa enviando el mismo
conversationId. Si incluyes otroagentId, cambia el agente que responde sin perder el historial. - Administra el hilo desde Conversaciones . Para cerrar una conversación exacta necesitas su
idúnico, no elconversationIddel chat.
Un chat cerrado o expirado conserva su historial y se reactiva automáticamente al recibir otro mensaje con el mismo conversationId. Para iniciar otro hilo, haz un POST /v1/chat sin conversationId.
Cada solicitud nueva genera otro conversationId chat_<uuid>, aunque use el mismo clientId.