Referência da Chat API
Envie a mensagem de um visitante para a IA do seu espaço de trabalho e receba um ticket que pode acompanhar em tempo real. A Chat API está disponível no plano Business; a sua chave API encontra-se em Definições -> Acesso à API.
Autenticação
Cada pedido é autenticado com a chave API do seu espaço de trabalho, enviada no cabeçalho X-API-Key (ou como parâmetro api_key). As chaves têm o aspeto ck_live_.... Trate a chave como uma palavra-passe - qualquer pessoa que a possua pode enviar mensagens debitadas ao seu espaço de trabalho. Rode-a a qualquer momento em Definições -> Acesso à API; a chave anterior deixa de funcionar imediatamente.
Enviar uma mensagem
POST https://chatixy.com/api/v1/chat
curl https://chatixy.com/api/v1/chat \ -H "X-API-Key: ck_live_YOUR_KEY" \ -F "message=How do I reset my password?"
Parâmetros:
message(string) - a mensagem do visitante. Obrigatório a menos que sejam anexadosfiles.ticket_id(string, opcional) - continua uma conversa existente. Omita para iniciar uma nova.visitor_email/visitor_name(string, opcional) - anexa os dados de contacto ao ticket.files(multipart, opcional) - anexos do visitante. Requer um plano com carregamento de ficheiros.
Resposta
A chamada devolve 202 Accepted assim que a mensagem é guardada; a resposta da IA é gerada de forma assíncrona.
{
"status": { "code": 202, "message": "Message received and being processed" },
"data": {
"ticket_id": 1234,
"ticket_number": "T-1234",
"id": "<visitor_hash>",
"processing": true
}
}Devolva data.ticket_id como ticket_id na chamada seguinte para manter a conversa a decorrer. Para receber a resposta da IA, subscreva por WebSocket (ActionCable) o canal identificado por data.id - o mesmo hash do visitante que o widget incorporado utiliza.
Ler conversas
Obtenha os tickets e as respetivas mensagens com a mesma X-API-Key. Cada endpoint de leitura está limitado ao seu espaço de trabalho e disponível no plano Business.
GET /api/v1/chat/tickets- lista os tickets, do mais recente para o mais antigo. Parâmetros de consulta:status,limit(máx. 100),offset. Devolveticketsepagination.GET /api/v1/chat/tickets/:id- um único ticket.GET /api/v1/chat/tickets/:id/messages- as mensagens de um ticket por ordem, cada uma comrole,contenteattachments.
curl https://chatixy.com/api/v1/chat/tickets \ -H "X-API-Key: ck_live_YOUR_KEY"
Limites de taxa e quota
Os pedidos são limitados a cerca de 20 por minuto por chave (e por IP). Cada resposta gerada também consome da mensalidade de mensagens do seu plano; assim que se esgotar, o endpoint devolve um 200 com data.limit_reached: true em vez de gerar uma resposta.
Erros
401- nenhuma chave API fornecida.404- a chave não corresponde a nenhum espaço de trabalho (por ex. após rotação).403plan_upgrade_required- o espaço de trabalho não está no plano Business.403- a subscrição está inativa, ou o pedido veio de um domínio não permitido pelas definições do widget.422- a mensagem está em falta (e não foram anexados ficheiros).
Precisa de ajuda?
Dúvidas sobre a API? Contacte-nos em support@chatixy.com ou através da nossa página de contacto.