Ir al contenido

Responder al cliente desde el panel

POST
/tickets/{ticketId}/messages
curl --request POST \
--url https://api.matiasimpulso.com/tickets/1/messages \
--header 'Authorization: Bearer <token>' \
--header 'Content-Type: application/json' \
--data '{ "body": "example", "isPrivate": false, "hiddenFromAi": false, "quotedMsgId": "example" }'

Envía el texto del asesor por el canal del ticket (WhatsApp, WhatsApp Business, Messenger o Instagram) con autoría agent_manual, o guarda una nota interna. Una nota con hiddenFromAi=true no llega a ningún agente IA (SEC2-27). Un mensaje enviado pasa el ticket a atención humana (la IA se calla).

ticketId
required
number
Media type application/json
object
body
required

Texto del asesor. Se envía por el canal del ticket.

string
<= 4096 characters
isPrivate

Nota interna: se guarda en el hilo del ticket y no se envía al cliente.

boolean
hiddenFromAi

Solo con isPrivate=true: «no compartir con la IA». La nota no entra en el prompt de ningún agente ni en sus resúmenes (SEC2-27).

boolean
quotedMsgId

ID o wid del mensaje citado cuando el asesor responde a un mensaje específico.

string
<= 255 characters

Mensaje enviado (sendState=sent) o nota guardada

Cuerpo inválido, o hiddenFromAi sin isPrivate

ERR_TICKET_NOT_ALLOWED: el asesor no puede ver el ticket

Ticket inexistente o de otra empresa

Code=ticket_not_open: el ticket no está abierto

Code=channel_window_closed (ventana de 24 h cerrada), message_too_long, group_not_supported o channel_unavailable

Code=channel_send_failed: el canal rechazó el envío