PATCHEstado da conversa
Marca uma conversa como aberta, resolvida ou arquivada.
Use para tirar da fila as conversas encerradas ("Marcar como resolvida") ou guardá-las ("Arquivar"), e para reabrir. A mudança vale para os dois lados: o administrador vê o mesmo estado. Nenhuma mensagem é apagada.
/api/v1/vendor/messages/threads/{id}/statusSellerAltera o estado da conversa
Cabeçalhos
AuthorizationstringobrigatórioBearer $TOKEN. Token de acesso do usuário seller. Veja Tokens.Parâmetros de caminho
iduuidobrigatórioId da conversa.
Corpo da requisição
statusstringobrigatórioopenresolvedarchivedNovo estado, em palavra:
open (letra A), resolved (R) ou archived (C).Exemplo de requisição
bash
curl -X PATCH "$BASE_URL/api/v1/vendor/messages/threads/7f0c2b1e-5a43-4d8e-9a67-3c1d2e4f5a60/status" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"status": "resolved"
}'Resposta
200Conversa atualizada
json
{
"id": "7f0c2b1e-5a43-4d8e-9a67-3c1d2e4f5a60",
"subject": "Dúvida sobre prazo de entrega",
"status": "R",
"object_type": "order",
"object_id": "b3a1c9d2-8e47-4f10-a2b5-6d7e8f901234",
"object_name": "PEDIDO-20261010-0004",
"customer_user_id": "3093f506-d6af-4c27-9ef6-c245e8e602f9",
"vendor_id": "94bd7e9a-fdad-4d01-8fc2-ba9d677d8b36",
"vendor_name": "Loja Seller Teste",
"customer_name": "Maria Souza",
"last_message_preview": "Quando meu pedido chega?",
"last_message_at": "2026-10-10T14:32:10Z",
"created_at": "2026-10-10T14:30:00Z",
"updated_at": "2026-10-10T14:32:10Z",
"messages": [
{
"id": "d2f4a6b8-1c3e-4a5b-8c7d-9e0f1a2b3c4d",
"thread_id": "7f0c2b1e-5a43-4d8e-9a67-3c1d2e4f5a60",
"sender_id": "3093f506-d6af-4c27-9ef6-c245e8e602f9",
"sender_type": "customer",
"body": "Quando meu pedido chega?",
"attachments": [],
"is_read": false,
"created_at": "2026-10-10T14:32:10Z"
}
]
}Campos da resposta
...objectErros
| Status | Quando | Corpo de exemplo |
|---|---|---|
| 401 | Token ausente, inválido ou expirado. | {"error":"missing authorization header"} |
| 403 | O token não é de um usuário seller (por exemplo, é de administrador). | {"error":"insufficient permissions"} |
| 400 | O {id} do caminho não é um UUID. | {"error":"invalid id","detail":"id must be a valid UUID"} |
| 403 | A conversa não existe ou não pertence ao seller. A API não distingue os dois casos. | {"error":"you are not a participant of this thread"} |
| 400 | status diferente de open, resolved e archived, ou JSON inválido. | {"error":"status must be one of: open, resolved, archived"} |
| 404 | A conversa deixou de existir entre a checagem e a gravação. | {"error":"thread not found"} |