Responder avaliações
Publica, substitui ou apaga a resposta pública do seller a uma avaliação de produto.
A resposta aparece abaixo da avaliação, na página do produto, com o nome do seller. Há no máximo uma por avaliação.
Responder
/api/v1/vendor/reviews/{id}/replySellerPublica ou substitui a resposta
Se já existir resposta, ela é substituída (o replied_at é renovado) e o status continua 201. O texto é limpo de HTML. Dispara o evento review.vendor_replied.
Cabeçalhos
AuthorizationstringobrigatórioBearer $TOKEN. Token de acesso do usuário seller. Veja Tokens.Parâmetros de caminho
iduuidobrigatórioId da avaliação.
Corpo da requisição
reply_textstringobrigatórioTexto da resposta. Obrigatório, não vazio.
Exemplo de requisição
bash
curl -X POST "$BASE_URL/api/v1/vendor/reviews/7f0c2b1e-5a43-4d8e-9a67-3c1d2e4f5a60/reply" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{
"reply_text": "Obrigado pelo carinho, Maria!"
}'201Resposta publicada
json
{
"id": "5c4b3a29-1807-4f6e-9d8c-7b6a59483726",
"review_id": "7f0c2b1e-5a43-4d8e-9a67-3c1d2e4f5a60",
"vendor_id": "94bd7e9a-fdad-4d01-8fc2-ba9d677d8b36",
"reply_text": "Obrigado pelo carinho, Maria!",
"replied_at": "2026-10-11T13:00:00Z",
"vendor_name": "Loja Seller Teste"
}Campos da resposta
iduuidId da resposta.
review_iduuidAvaliação respondida.
vendor_iduuidSeller.
vendor_namestringNome do seller. Ausente se vazio.
reply_textstringTexto publicado.
replied_atstringQuando foi publicada ou atualizada.
Apagar resposta
/api/v1/vendor/reviews/{id}/replySellerApaga a resposta do seller
Apaga a resposta que o seu seller deu a essa avaliação. A avaliação em si não muda.
Cabeçalhos
AuthorizationstringobrigatórioBearer $TOKEN. Token de acesso do usuário seller. Veja Tokens.Parâmetros de caminho
iduuidobrigatórioId da avaliação.
Exemplo de requisição
bash
curl -X DELETE "$BASE_URL/api/v1/vendor/reviews/7f0c2b1e-5a43-4d8e-9a67-3c1d2e4f5a60/reply" \
-H "Authorization: Bearer $TOKEN"200Resposta apagada
json
{
"message": "reply deleted"
}Erros
| 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"} |
| 403 | O módulo de avaliações (product-reviews) está desligado nesta loja. | {"error":"module_disabled","module":"product-reviews"} |
| 403 | O usuário não está vinculado a um seller. | {"error":"user is not a vendor"} |
| 403 | A avaliação é de um produto de outro seller (ou não existe). | {"error":"review is not on your product"} |
| 400 | reply_text vazio ou JSON inválido. | {"error":"reply text is required"} |
| 403 | O administrador desligou as respostas de seller. | {"error":"vendor replies are disabled by admin"} |
| 500 | Apagar uma resposta que não existe, ou falha ao gravar. | {"error":"failed to delete reply","detail":"vendor reply not found"} |