VenddorDocumentação API
API atualAPI legada
Guia rápidoReferência completa
Carregando índice…
API atual/Referência completa

Mensagens do cliente

Como o cliente conversa com a loja ou com um seller dentro da plataforma: conversas, respostas e confirmações de leitura.

A central de mensagens é o canal de conversa interno entre o cliente e a loja, ou entre o cliente e um seller (lojista) do marketplace. Cada conversa é uma thread (um assunto com várias mensagens). Ela pode ser solta ("Fale com a loja") ou ligada a um objeto, como um pedido ou um produto, para que quem atende veja o contexto.

Estas rotas atendem o cliente logado. As mesmas rotas existem para o painel do administrador e do seller, com outra visão dos mesmos dados.

Pontos principais
  • Todas as rotas exigem token. Sem token: 401. O cliente só enxerga as threads dele; ler ou escrever em thread alheia dá 403.
  • Criar uma thread já envia a primeira mensagem (body). Não há rota para apagar thread ou mensagem.
  • status da thread sai como uma letra (A aberta, R resolvida, C arquivada), mas a rota de mudança de status recebe palavras (open, resolved, archived).
  • Sem vendor_id, a thread é uma "thread da loja", endereçada ao administrador. Com vendor_id, vai para aquele seller.
  • Todos os ids são UUID. Um id mal formado devolve 400 invalid id.

Como funciona

  1. Achar ou criar a conversa
    Antes de abrir uma nova thread, procure uma existente para o mesmo seller e objeto com Buscar thread. Se não houver (404), crie.
  2. Conversar
    Leia a thread e responda.
  3. Confirmar leitura
    Ao exibir as mensagens, avise a plataforma com entregue e lida para o outro lado ver os "tiques".
  4. Encerrar
    Marque como resolvida ou arquivada em Status da thread.
status (saída)Valor de entrada na rota de statusSignificado
AopenAberta. Estado inicial de toda thread.
RresolvedResolvida.
CarchivedArquivada.

Conceitos principais

Quem fala em cada mensagem

sender_type diz o papel de quem enviou: customer, vendor ou admin. sender_id é o id do usuário que escreveu.

Objeto ligado à thread

object_type e object_id apontam para o assunto (por exemplo order e o id do pedido, ou product). O contexto resumido desse objeto sai em Ler thread e contexto. Os tipos com contexto são order, product, vendor e user.

Tempo real

O envio de mensagens, leituras e "digitando" também dispara eventos pelo WebSocket da plataforma (new_message, message.read, message.delivered, thread.typing). As rotas REST abaixo continuam sendo a fonte da verdade: ao abrir a tela, leia por REST.

Papéis

Com o token de um seller ou administrador, as mesmas rotas mostram as conversas daquele papel (o administrador vê todas). Este guia descreve o comportamento com token de cliente.

Endpoints

MétodoRotaPara quêAutenticação
GET/api/v1/storefront/messages/threadsLista as threads do cliente.Cliente
GET/api/v1/storefront/messages/threads/findAcha a thread de um seller e objeto.Cliente
GET/api/v1/storefront/messages/unread-countConta mensagens não lidas.Cliente
POST/api/v1/storefront/messages/threadsAbre uma thread com a primeira mensagem.Cliente
GET/api/v1/storefront/messages/threads/{id}Lê a thread com as mensagens.Cliente
GET/api/v1/storefront/messages/threads/{id}/contextLê o contexto do objeto ligado.Cliente
POST/api/v1/storefront/messages/threads/{id}/replyEnvia uma mensagem na thread.Cliente
PATCH/api/v1/storefront/messages/threads/{id}/readMarca como lidas.Cliente
PATCH/api/v1/storefront/messages/threads/{id}/deliveredMarca como entregues.Cliente
PATCH/api/v1/storefront/messages/threads/{id}/statusMuda o status da thread.Cliente
POST/api/v1/storefront/messages/threads/{id}/typingAvisa que está digitando.Cliente
GET/api/v1/storefront/messages/threads/{id}/presenceDiz quem está online.Cliente

Erros comuns

  • Ler o status como palavra. A resposta traz A, R ou C; só a escrita aceita open, resolved, archived.
  • Ordem diferente em duas leituras. A leitura sem paginação traz as mensagens da mais antiga para a mais nova; com page ou per_page vem da mais nova para a mais antiga.
  • Enviar um object_id que não existe ou não é do cliente. A criação não valida o objeto: a thread é criada normalmente e o contexto vem vazio (context: null) se o objeto não for achado. Envie só objetos que o cliente realmente possui.
  • Mandar {id} de outra coisa. O {id} é sempre o id da thread, nunca o do seller nem o do pedido.
  • Enviar mensagem vazia. É preciso body ou ao menos um anexo.
  • Achar que typing grava algo. Ele só avisa o outro lado e responde 204.

Próximos passos

Listar e buscar threads
A caixa de entrada do cliente.
Abrir thread
Comece uma conversa.
Responder
Envie mensagens e anexos.
Autenticação
Como obter o token do cliente.
Anterior
Voucher relâmpago
Próxima
Listar e buscar threads
Nesta página
  • Como funciona
  • Conceitos principais
  • Quem fala em cada mensagem
  • Objeto ligado à thread
  • Tempo real
  • Papéis
  • Endpoints
  • Erros comuns
  • Próximos passos