⭐ Avaliações
📋 Visão Geral
As avaliações são análises e críticas feitas por compradores sobre um produto, serviço ou ferramenta, permitindo relatar experiência, satisfação pessoal e recomendações para outros clientes.
Elas trazem transparência para a decisão de compra e fornecem ao lojista feedbacks valiosos, possibilitando melhorias e ajustes para aumentar a satisfação dos clientes.
🔄 Entidades Relacionadas
No contexto Uappi, as avaliações estão relacionadas a três tipos principais: App, Produto e Canal de Venda.
Apesar das particularidades de cada um, todos compartilham muitas características em relação às avaliações.
🧩 App — Usuário
Um App funciona como um plug-in para a loja, adicionando funcionalidades extras como login social, métodos de pagamento, cálculo de frete, envio de e-mails ou integração com redes sociais.
As avaliações de Apps permitem ao lojista analisar experiências de outros usuários, ajudando a decidir se vale a pena ativar determinada ferramenta no ecossistema da loja.
Nesse contexto, o avaliador é identificado pelo ID do usuário (userId).
🏪 Canal de Venda — Cliente
O canal de venda define como a loja é disponibilizada e acessada pelos clientes, incluindo o domínio e o contexto de operação.
As avaliações nesse contexto refletem a experiência do cliente com a loja, indicando confiabilidade e qualidade do serviço/produtos, além de fornecer feedback direto ao lojista.
O objeto retornado inclui o salesChannelId e o salesChannelDomain associados à avaliação.
📦 Produto — Cliente
Um produto pode ser físico ou digital, incluindo serviços, plataformas ou funcionalidades.
O foco principal é o valor entregue ao usuário.
As avaliações de produtos ajudam outros clientes a tomar decisões mais conscientes, enquanto permitem ao lojista entender satisfação, pontos fortes e melhorias necessárias.
O objeto retornado pode incluir o objeto resumido do produto (product) e as mídias vinculadas (medias), quando solicitados.
🗂️ Estrutura da Avaliação
Todos os tipos de avaliação compartilham um conjunto base de campos, estendido com campos específicos conforme o contexto.
📄 Campos base (todos os tipos)
id— identificador único da avaliaçãoname— nome do avaliadoremail— e-mail do avaliador; omitido nas consultas públicas (publicSearch = true)comment— texto descritivo com o relato da avaliaçãorecommended— indica se o avaliador recomenda o item avaliado (true/false)score— nota atribuída ao item pelo avaliadoractive— indica se a avaliação está ativa e contabilizada na médiamasked— indica se os dados sensíveis do avaliador foram mascaradoscreatedAt— data e hora de cadastro da avaliaçãoupdatedAt— data e hora da última atualização da avaliaçãoproductId— ID do produto avaliadocustomerId— ID do cliente que realizou a avaliaçãomedias— lista de mídias vinculadas à avaliação, ounullquando não solicitada (campo customizadomedias)product— objeto resumido do produto avaliado (SimpleProductDMC), ounullquando não solicitado (campo customizadoproducts)reviewId— ID da avaliação à qual a mídia está vinculadamediaId— ID da mídiaimage— URL da imagem vinculada à avaliaçãocreatedAt— data e hora de cadastro da mídiaproductId— ID do produtobrandId— ID da marca do produto, ounullquando não disponívelbrandName— nome da marca, ounullquando não disponívelmainCategoryId— ID da categoria principal, ounullquando não disponívelmainCategoryName— nome da categoria principal, ounullquando não disponíveltype— tipo do produtosku— SKU do produtoname— nome do produtoactive— indica se o produto está ativourl— URL amigável do produto na lojacomparisonPrice— preço de comparação do produtostock— estoque disponível, ounullquando não disponívelmedias— lista de mídias do produtocombination— lista de combinações do produtocurrentAttributes— lista de atributos atuais do produtorestriction— restrição de acesso ao produto, ounullquando não aplicávelsalesChannelId— ID do canal de venda associado à avaliaçãocustomerId— ID do cliente que realizou a avaliaçãosalesChannelDomain— domínio do canal de vendaappId— ID do App avaliadouserId— ID do usuário que realizou a avaliação- Uma avaliação não pode ser feita mais de uma vez por item (App, produto ou canal de venda)
- Toda avaliação feita por um cliente é cadastrada inicialmente como inativa; a ativação é responsabilidade do lojista (no caso de Apps, apenas o Admin Sources)
- Qualquer ativação ou desativação de avaliação recalcula a nota média do item, considerando ou desconsiderando a avaliação atual
📦 Campos adicionais — Avaliação de Produto
🖼️ Estrutura de Mídia da Avaliação (medias)
Cada item da lista de mídias contém:
🛍️ Estrutura do Produto Resumido (product)
Quando o campo product é retornado, ele contém:
🏪 Campos adicionais — Avaliação de Canal de Venda
🧩 Campos adicionais — Avaliação de App
📌 Regras Gerais
Listagem de Avaliações de Produto
/review/product
Retorna lista paginada de avaliações públicas de produtos
Descrição
Endpoint responsável por retornar uma lista paginada de todas as avaliações de produtos ⭐.
Esta rota é pública, mas realiza uma busca criteriosa, garantindo que apenas avaliações ativas sejam retornadas.
Permite aos clientes consultar experiências de outros usuários e tomar decisões de compra mais informadas.
Parâmetros de Query
Campos Disponíveis (fields)
Especifique apenas os campos necessários para otimizar a performance:
| Campo | Descrição |
|---|---|
| products | Informações resumidas do produto avaliado |
| medias | Retorna url das imagens do item avaliado |
Campos de Condição Disponíveis
| Campo | Tipo | Descrição |
|---|---|---|
| productId | integer | Filtra avaliações por id do produto |
| name | string | Filtra avaliações pelo nome |
| string | Filtra avaliações pelo e-mail de quem avaliou | |
| recommended | boolean | Filtra avaliações por clientes que recomendam ou não o produto (true/false) |
| score | int | Filtra avaliações pela nota (de 0 a 5) |
| createdAt | string | Filtra avaliações baseado na data de cadastro |
Campos de Ordenação Disponíveis
| Campo | Descrição |
|---|---|
| id | Ordena a listagem pelo id da avaliação |
| productId | Ordena a listagem pelo id do produto |
| customerId | Ordena a listagem pelo id do cliente/avaliador |
| name | Ordena a listagem pelo nome da avaliação |
| score | Ordena a listagem pela nota da avaliação |
| createdAt | Ordena a listagem pela data em que a avaliação foi criada |
| updatedAt | Ordena a listagem pela data em que a avaliação foi atualizada |
Exemplo de Requisição
1curl --request GET \2 --url {{MAIN_URL}}/review/product \3 --data '{4 "fields": [5 "products",6 "medias"7 ]8 }'✅ Resposta de Sucesso
1{2 "status": true,3 "data": {4 "registers": [5 {6 "id": 201,7 "productId": 1234,8 "customerId": 567,9 "name": "Maria Silva",10 "email":"",11 "score": 5,12 "comment": "Superou todas as minhas expectativas. Qualidade impecável e entrega rápida.",13 "recommended": true,14 "active": true,15 "masked":true,16 "medias": [17 {18 "reviewId": 1001,19 "mediaId": 1,20 "image": "https://cdn.sua-loja.com.br/reviews/review-photo-1.jpg",21 "createdAt": "2024-09-15 10:15:00"22 }23 ],24 "product": {25 "productId": 1234,26 "brandId": 1,27 "brandName": "TechBrand",28 "mainCategoryId": 123,29 "mainCategoryName": "Smartphones",30 "type": "product",31 "sku": "SMPH001",32 "name": "Smartphone XYZ Pro 128GB",33 "active": true,34 "url": "/smartphone-xyz-pro-128gb",35 "comparisonPrice": 1499.90,36 "stock": 15,37 "medias": [38 {39 "id": 1234,40 "type": "image",41 "title": "Imagem Principal",42 "alternativeText": "Smartphone XYZ Pro vista frontal",43 "file": "https://cdn.loja.com.br/products/smartphone-xyz-pro-01.jpg",44 "originalFile": "https://cdn.loja.com.br/products/smartphone-xyz-pro-01-original.jpg",45 "size": 245680,46 "originalSize": 1567890,47 "width": 800,48 "height": 800,49 "url": "https://cdn.loja.com.br/products/smartphone-xyz-pro-01.jpg"50 }51 ],52 "combination": [],53 "currentAttributes": []54 },55 "createdAt": "2024-09-15 14:30:00",56 "updatedAt": "2024-09-15 14:30:00"57 },58 {59 "id": 202,60 "productId": 1234,61 "customerId": 890,62 "name": "João Oliveira",63 "score": 4,64 "email": "",65 "comment": "Produto de boa qualidade, atende bem às expectativas. Apenas a bateria poderia durar mais.",66 "recommended": true,67 "active": true,68 "masked":true,69 "medias": [70 {71 "reviewId": 1001,72 "mediaId": 1,73 "image": "https://cdn.sua-loja.com.br/reviews/review-photo-1.jpg",74 "createdAt": "2024-09-15 10:15:00"75 }76 ],77 "product": {78 "productId": 1234,79 "brandId": 1,80 "brandName": "TechBrand",81 "mainCategoryId": 123,82 "mainCategoryName": "Smartphones",83 "type": "product",84 "sku": "SMPH001",85 "name": "Smartphone XYZ Pro 128GB",86 "active": true,87 "url": "/smartphone-xyz-pro-128gb",88 "comparisonPrice": 1499.90,89 "stock": 15,90 "medias": [91 {92 "id": 1234,93 "type": "image",94 "title": "Imagem Principal",95 "alternativeText": "Smartphone XYZ Pro vista frontal",96 "file": "https://cdn.loja.com.br/products/smartphone-xyz-pro-01.jpg",97 "originalFile": "https://cdn.loja.com.br/products/smartphone-xyz-pro-01-original.jpg",98 "size": 245680,99 "originalSize": 1567890,100 "width": 800,101 "height": 800,102 "url": "https://cdn.loja.com.br/products/smartphone-xyz-pro-01.jpg"103 }104 ],105 "combination": [],106 "currentAttributes": []107 },108 "createdAt": "2024-09-10 10:15:00",109 "updatedAt": "2024-09-10 10:15:00"110 }111 ],112 "pagination": {113 "limit": 10,114 "offset": 0,115 "pages": 5,116 "registers": 48117 }118 }119}Listagem de Avaliações do Canal de Venda
/review/sales-channel
Retorna lista paginada de avaliações públicas do canal de venda (loja)
Descrição
Endpoint responsável por retornar uma lista paginada de todas as avaliações sobre a loja 🏬.
Esta rota é pública, mas aplica uma busca criteriosa, retornando apenas avaliações ativas e relacionadas à loja atual.
Permite que novos clientes consultem a experiência de outros usuários, contribuindo para a confiança e transparência da loja.
Parâmetros de Query
Campos de Condição Disponíveis
| Campo | Tipo | Descrição |
|---|---|---|
| name | string | Filtra avaliações pelo nome |
| string | Filtra avaliações pelo e-mail de quem avaliou | |
| recommended | boolean | Filtra avaliações por clientes que recomendam ou não a loja (true/false) |
| score | int | Filtra avaliações pela nota (de 0 a 5) |
| createdAt | string | Filtra avaliações baseado na data de cadastro |
Campos de Ordenação Disponíveis
| Campo | Descrição |
|---|---|
| id | Ordena a listagem pelo id da avaliação |
| customerId | Ordena a listagem pelo id do cliente/avaliador |
| name | Ordena a listagem pelo nome da avaliação |
| score | Ordena a listagem pela nota da avaliação |
| createdAt | Ordena a listagem pela data em que a avaliação foi criada |
| updatedAt | Ordena a listagem pela data em que a avaliação foi atualizada |
Exemplo de Requisição
1curl --request GET \2 --url {{MAIN_URL}}/review/sales-channel \✅ Resposta de Sucesso
1{2 "status": true,3 "data": {4 "registers": [5 {6 "id": 301,7 "salesChannelId": 1,8 "customerId": 567,9 "name": "Maria Silva",10 "email":"",11 "score": 5,12 "comment": "Loja confiável, produtos de qualidade e entrega rápida. Recomendo!",13 "recommended": true,14 "masked": true,15 "active": true,16 "salesChannelDomain":"sualoja.com.br",17 "createdAt": "2024-09-20T16:45:00Z",18 "updatedAt": "2024-09-20T16:45:00Z"19 },20 {21 "id": 302,22 "salesChannelId": 1,23 "customerId": 890,24 "name": "João Oliveira",25 "email":"",26 "score": 4,27 "comment": "Boa loja, produtos chegaram conforme descrição. Apenas o prazo de entrega foi um pouco maior que o esperado.",28 "recommended": true,29 "masked":true,30 "active": true,31 "salesChannelDomain":"loja.com.br",32 "createdAt": "2024-09-18T11:20:00Z",33 "updatedAt": "2024-09-18T11:20:00Z"34 }35 ],36 "pagination": {37 "limit": 10,38 "offset": 0,39 "pages": 8,40 "registers": 7841 },42 }43}