Mensagens
Envie e receba mensagens dentro de conversas. Suporta texto, anexos, cards interativos e diferentes tipos de conteudo.
GET
/api/v1/accounts/{account_id}/conversations/{conversation_id}/messagesRetorna as mensagens de uma conversa, ordenadas cronologicamente.
Parametros
| Nome | Tipo | Obrigatorio | Descricao |
|---|---|---|---|
account_id(path) | integer | Sim | ID numerico da conta |
conversation_id(path) | integer | Sim | ID numerico da conversa |
curl -s "https://chat.seudominio.com/api/v1/accounts/1/conversations/123/messages" \
-H "api_access_token: YOUR_TOKEN" | jq .200Lista de mensagens
json
{
"payload": [
{
"id": 1001,
"content": "Ola, preciso de ajuda!",
"message_type": 0,
"content_type": "text",
"sender": {
"id": 456,
"name": "Joao Silva",
"type": "contact"
},
"conversation_id": 123,
"created_at": 1708000000
},
{
"id": 1002,
"content": "Claro! Como posso ajudar?",
"message_type": 1,
"content_type": "text",
"sender": {
"id": 1,
"name": "Agente 1",
"type": "user"
},
"conversation_id": 123,
"created_at": 1708000060
}
]
}POST
/api/v1/accounts/{account_id}/conversations/{conversation_id}/messagesEnvia uma nova mensagem em uma conversa. Pode ser texto, nota interna ou mensagem com anexo.
Parametros
| Nome | Tipo | Obrigatorio | Descricao |
|---|---|---|---|
account_id(path) | integer | Sim | ID numerico da conta |
conversation_id(path) | integer | Sim | ID numerico da conversa |
Body
| Nome | Tipo | Obrigatorio | Descricao |
|---|---|---|---|
content | string | Sim | Texto da mensagem |
message_type | string | Nao | Tipo: outgoing (padrao), incoming, activity |
private | boolean | Nao | true para nota interna (nao visivel ao contato) |
content_type | string | Nao | Tipo de conteudo: text, input_select, cards, form, article |
content_attributes | object | Nao | Atributos extras para conteudos interativos |
file | file | Nao | Arquivo anexo (multipart/form-data) |
curl -X POST "https://chat.seudominio.com/api/v1/accounts/1/conversations/123/messages" \
-H "api_access_token: YOUR_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"content": "Sua solicitacao foi registrada com o numero #4567.",
"message_type": "outgoing"
}'200Mensagem criada
json
{
"id": 1003,
"content": "Sua solicitacao foi registrada com o numero #4567.",
"message_type": 1,
"content_type": "text",
"private": false,
"conversation_id": 123,
"created_at": 1708000120
}DELETE
/api/v1/accounts/{account_id}/conversations/{conversation_id}/messages/{message_id}Remove uma mensagem de uma conversa.
Parametros
| Nome | Tipo | Obrigatorio | Descricao |
|---|---|---|---|
account_id(path) | integer | Sim | ID numerico da conta |
conversation_id(path) | integer | Sim | ID numerico da conversa |
message_id(path) | integer | Sim | ID numerico da mensagem |
bash
curl -X DELETE "https://chat.seudominio.com/api/v1/accounts/1/conversations/123/messages/1003" \
-H "api_access_token: YOUR_TOKEN"200Mensagem deletada com sucesso
Tipos de Conteudo
Alem de texto simples, mensagens suportam conteudos interativos:
| Tipo | Descricao |
|---|---|
text | Mensagem de texto simples |
input_select | Menu de opcoes para o contato selecionar |
cards | Carrossel de cards com titulo, descricao e acoes |
form | Formulario interativo para coleta de dados |
article | Artigo da central de ajuda |
Enviando Anexos
Para enviar arquivos, use multipart/form-data no lugar de JSON:
bash
curl -X POST "https://chat.seudominio.com/api/v1/accounts/1/conversations/123/messages" \
-H "api_access_token: YOUR_TOKEN" \
-F "content=Segue o documento solicitado" \
-F "message_type=outgoing" \
-F "file[]=@/path/to/documento.pdf"Formatos suportados
Imagens (PNG, JPG, GIF, WebP), documentos (PDF, DOC, XLS), audio e video. Tamanho maximo: 40MB por arquivo.