Referência completa da API Review V2. Todos os endpoints requerem autenticação JWT e retornam JSON.Base URL:https://merchant-api.ifood.com.br/review/v2.0
Overview
Método
Endpoint
Descrição
GET
/merchants/{id}/reviews
Lista avaliações com filtros e paginação
GET
/merchants/{id}/reviews/{reviewId}
Obtém detalhes de uma avaliação
POST
/merchants/{id}/reviews/{reviewId}/answers
Responde uma avaliação
GET
/merchants/{id}/summary
Consulta estatísticas e média de notas
Autenticação
Todos os endpoints requerem token OAuth 2.0 no header Authorization:
GET/merchants/{merchantId}/reviews/{reviewId}Retorna informações completas de uma avaliação, incluindo questionário respondido e histórico de respostas.
Parâmetros da requisição
Path:
merchantId (required) - ID da loja (UUID)
reviewId (required) - ID da avaliação (UUID)
Exemplo cURL
curl -X GET "https://merchant-api.ifood.com.br/review/v2.0/merchants/550e8400-e29b-41d4-a716-446655440000/reviews/a26c8718-b1f5-44a0-8f06-ecc71ddfcd5a" \ -H "Authorization: Bearer {JWT_TOKEN}"
POST/merchants/{merchantId}/reviews/{reviewId}/answersCria uma resposta para uma avaliação. Apenas reviews com status: NOT_REPLIED aceitam respostas.
Você tem 5 dias para responder uma avaliação. Após esse prazo, a avaliação é publicada automaticamente. Respostas podem ser editadas em até 10 minutos após envio.
Parâmetros da requisição
Path:
merchantId (required) - ID da loja (UUID)
reviewId (required) - ID da avaliação (UUID)
Body:
{"text": "Obrigado pelo feedback! Vamos melhorar."}
Campo
Tipo
Obrigatório
Restrições
Descrição
text
string
Sim
10-300 caracteres
Texto da resposta. Sem xingamentos, dados pessoais do cliente, links ou promoções não autorizadas. Veja validação de respostas
# Enviar novo POST com texto atualizado na mesma rotacurl -X POST "https://merchant-api.ifood.com.br/review/v2.0/merchants/550e8400-e29b-41d4-a716-446655440000/reviews/a26c8718-b1f5-44a0-8f06-ecc71ddfcd5a/answers" \ -H "Authorization: Bearer {JWT_TOKEN}" \ -H "Content-Type: application/json" \ -d '{ "text": "Texto atualizado da resposta" }'
Resposta (201 Created)
{"createdAt": "2021-04-07T15:30:00.000000Z","reviewId": "a26c8718-b1f5-44a0-8f06-ecc71ddfcd5a","text": "Obrigado pelo feedback! Vamos melhorar nosso atendimento."}
Obter resumo
GET/merchants/{merchantId}/summaryRetorna estatísticas agregadas: contagem total, contagem válida e nota média.
Parâmetros da requisição
Path:
merchantId (required) - ID da loja (UUID)
Exemplo cURL
curl -X GET "https://merchant-api.ifood.com.br/review/v2.0/merchants/550e8400-e29b-41d4-a716-446655440000/summary" \ -H "Authorization: Bearer {JWT_TOKEN}"
O score é a média aritmética de todas as avaliações válidas.Avaliações são válidas quando:
Status é PUBLISHED (e não DISCARDED ou INVALID)
Criadas nos últimos 3 meses
Visibilidade é PUBLIC (não PRIVATE)
Exemplo prático:
Campo
Valor
Total de avaliações
142 (todas as épocas)
Avaliações válidas
53 (últimos 3 meses + PUBLIC)
Score exibido
4.3 (média das 53 válidas)
Avaliações antigas (> 3 meses) continuam no histórico mas não afetam o score. Avaliações privadas (PRIVATE) são visíveis para você mas não contam na nota pública.
Rate limiting
Todos os endpoints de Reviews respeitam os mesmos limites de requisição. Consulte a documentação de rate limit para detalhes sobre como lidar com erro 429.
Endpoint
Limite
GET /merchants/{merchantId}/reviews
2000 req/min
GET /merchants/{merchantId}/reviews/{reviewId}
2000 req/min
POST /merchants/{merchantId}/reviews/{reviewId}/answers
Avaliações em status CREATED são processadas automaticamente em alguns minutos. Após triagem, passam para NOT_REPLIED (se requerem resposta) ou PUBLISHED (se não requerem).
Visibility: Quem pode ver a avaliação.
Valor
Quem vê
Afeta score
Caso de uso
PUBLIC
Todos (página da loja)
Sim
Padrão - visível publicamente
PRIVATE
Você + cliente
Não
Feedback confidencial
Version: Indica qual API criou a avaliação.
Valor
Significado
v1
Criada pela API Review V1 (legado)
v2
Criada pela API Review V2 (atual)
O endpoint V2 retorna avaliações de ambas as versões (v1 e v2). Use o campo version para detectar origem.