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

Status da thread

Marca uma conversa como aberta, resolvida ou arquivada.

Use esta rota para o cliente encerrar um assunto ("Marcar como resolvida"), arquivá-lo ou reabri-lo. A mudança vale para os dois lados da conversa.

Pontos principais
  • A rota recebe palavras (open, resolved, archived) e a thread devolve letras (A, R, C) no campo status.
  • Qualquer participante pode mudar para qualquer um dos três valores, em qualquer ordem. Não há fluxo obrigatório.
  • Mudar o status não apaga nem bloqueia mensagens: dá para continuar respondendo.
open (A)→resolved (R)→archived (C)
PATCH/api/v1/storefront/messages/threads/{id}/statusCliente

Mudar o status da thread

Parâmetros de caminho

iduuidobrigatório
Id da thread.

Corpo da requisição

statusstringobrigatório
openresolvedarchived
Novo estado: open grava A, resolved grava R e archived grava C.

Exemplo de requisição

bash
curl -X PATCH "$BASE_URL/api/v1/storefront/messages/threads/$THREAD_ID/status" \
  -H "Authorization: Bearer $TOKEN" \
  -H "Content-Type: application/json" \
  -d '{"status":"resolved"}'

Resposta

200Status atualizado
json
{
  "id": "3f0d6c0e-2a8b-4a40-9f69-4a0f7d1e6a77",
  "subject": "Dúvida sobre o pedido PEDIDO-20261010-0004",
  "status": "R",
  "customer_user_id": "f12f30a9-cbec-40ba-98f1-b7fa8f2e8e10",
  "vendor_id": "94bd7e9a-fdad-4d01-8fc2-ba9d677d8b36",
  "vendor_name": "Casa do Café",
  "customer_name": "Maria Souza",
  "last_message_preview": "Seu pedido sai amanhã.",
  "last_message_at": "2026-10-11T18:30:00Z",
  "unread_count": 0,
  "created_at": "2026-10-11T17:00:00Z",
  "updated_at": "2026-10-11T19:20:00Z",
  "messages": []
}

A resposta é a thread completa, com os mesmos campos de Ler a thread na forma sem paginação (o vetor messages traz a conversa inteira).

Erros

StatusQuandoCorpo
400id não é UUID.{"error":"invalid id","detail":"id must be a valid UUID"}
400JSON inválido.{"error":"invalid request body","detail":"..."}
400status fora dos três valores.{"error":"status must be one of: open, resolved, archived"}
401Sem token, ou token inválido.{"error":"missing authorization header"}
403A thread não é do cliente (ou não existe).{"error":"you are not a participant of this thread"}
404A thread deixou de existir durante a operação.{"error":"thread not found"}
Não envie a letra

{"status":"R"} é rejeitado com 400. A rota só aceita os nomes em inglês. Ao exibir o estado, converta a letra devolvida para o rótulo da sua tela.

Veja também

  • Responder na thread
  • Listar e buscar threads
  • Ler thread e contexto
Anterior
Entregue e lida
Próxima
Digitando e presença
Nesta página
  • Exemplo de requisição
  • Resposta
  • Erros
  • Veja também