Introdução

Permite salvar um novo review de um determinado produto. 

Espera-se, além do review, que seja informado qual o produto que está sendo avaliado e qual o cliente que está fazendo a avaliação.

No momento essa API não suporte campos customizados.


Salvar um review

Endpoint: POST /review/

Review    
Estrutura principal do review
Obrigatório?    
Tipo
Rating
Nota dada pelo cliente. Entre 1 e 5.
Sim
int
Date    
Data em que o review foi escrito. Formato: yyyy-MM-ddTHH:mm:ss
Sim
DateTime
Review
Texto do review.
Sim
string
User
Nó do usuário que escreveu a avaliação


Name
Nome completo do cliente
Sim
string
E-mail
E-mail do cliente
Sim    
string
IPAddress
Endereço de IP do cliente que escrever review. Utilizado para detecção de anomalias
Não
string
Product
Nó com dados sobre o produto avaliado


Name
Nome do produto, como aparece na loja
Sim
string
Image
Foto do produto, como na loja
Sim
string
Url
URL completa do produto
Sim
string
ProductId
Id do produto, como aparece na loja
Sim
string
CustomerPhotos
Lista de fotos (links) do cliente com o produto comprado
Não
Lista de string



Exemplo de chamada

{  
  "Rating": 5,
  "Review": "Excelente produto. Adorei a camiseta, vou levar sempre ",
  "Date": "2017-10-05T18:27:10", 
  "User": {    
    "Name": "João Santos",
    "Email": "jsantos5@email.com.br"
  },
  "Product": {
    "ProductId": "8293681",
    "Name": "Camiseta Descolada",
    "Url": "http://demo.yourviews.com.br/camiseta-descolada",
    "Image": "https://cdn.awsli.com.br/600x450/268/268174/produto/8293681/e7397e2505.jpg",
  },
  "CustomerPhotos": ["https://d2taiddx6mfokk.cloudfront.net/imageupload/gacadeb7-b221-4bf2-a8b8-1fb9da3de96d/8bd1b975-4a57-4d81-a219-3fde2b30e34b"]
}


Estrutura de retorno

{
    "HasErrors": false,
    "Element": {
      ...
    },
    "ErrorList": []
}


Para verificar se houve sucesso na inserção do review, verifique o campo "HasErrors". Se o mesmo for "false", então a inclusão foi realizada com sucesso.

Caso tenha ocorrido um ou mais erros, eles serão apresentados em "Error List". 

É importante notar que um cliente só pode avaliar um produto uma vez. Caso tente fazer novamente, é retornado o erro "Review already exists".

O campo "Element" é preenchido com o review da forma como ele foi salvo no Banco de Dados.


Importante:

Todo review salvo requer a aprovação através do painel administrativo.