Responder al cliente desde el panel
const url = 'https://api.matiasimpulso.com/tickets/1/messages';const options = { method: 'POST', headers: {Authorization: 'Bearer <token>', 'Content-Type': 'application/json'}, body: '{"body":"example","isPrivate":false,"hiddenFromAi":false,"quotedMsgId":"example"}'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}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).
Authorizations
Sección titulada « Authorizations »Parameters
Sección titulada « Parameters »Path Parameters
Sección titulada « Path Parameters »Request Bodyrequired
Sección titulada « Request Bodyrequired »object
Texto del asesor. Se envía por el canal del ticket.
Nota interna: se guarda en el hilo del ticket y no se envía al cliente.
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).
ID o wid del mensaje citado cuando el asesor responde a un mensaje específico.
Responses
Sección titulada « Responses »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