A entidade Variações permite gerenciar as variações e os itens de variações de produtos no Mercos. Tamanhos, cores e materiais são exemplos de variações enquanto "G", "Azul" e "Carvalho" são exemplos de itens de variações.
Atrelar essas variações a um produto é o que o torna um produto grade.
Temos limites nessas entidades, que podem ser ajustados, de acordo com a necessidade:
- Limite de variações associadas ao produto: 3
- Limite de variações: 25
- Limite de itens nas variações: 300
Estrutura da Resposta (GET)
A estrutura da resposta trará sempre a variação com seus Itens de variação atrelados em uma lista.
| Campo | Tipo | Descrição |
|---|---|---|
| id | Integer | Identificador único da Variação |
| nome | String: 20 | Nome da Variação |
| ordem | Integer | Ordem da Variação |
| excluido | Boolean | Indica se Variação está excluída. |
| ultima_alteracao | DateTime | Data e hora da última modificação desta Variação no Mercos. |
| itens_variacao | List | Lista de Itens de Variação associados a esta Variação. |
Estrutura de Retorno do Item de Variacão
| Campo | Tipo | Descrição |
|---|---|---|
| id | Integer | Identificador único do Item de Variação |
| nome | String: 20 | Nome do Item de Variação |
| excluido | Boolean | Indica se a Variação está excluída. |
| ultima_alteracao | String | Data e hora da última modificação do Item de Variação no Mercos. |
| cor | String: 6 | Código da cor no formato hexadecimal. |
Parâmetros de Envio - Cadastrar Variação (POST):
| Campo | Tipo | Descrição |
|---|---|---|
| nome (obrigatório) | String: 20 | Nome da Variação |
| ordem (obrigatório) | Integer | Ordem da Variação |
| itens_variacao | List | Lista de Itens de Variação associados a esta Variação. |
Parâmetros de Envio - Cadastrar Item de Variação (POST):
| Campo | Tipo | Descrição |
|---|---|---|
| nome (obrigatório) | String: 20 | Nome do Item de Variação |
| cor | String: 6 | Código da cor no formato hexadecimal. |
| imagem_url | String | URL pública da imagem do Item de Variação. |
| imagem_base64 | String | Imagem do Item de Variação em base64. |
Parâmetros do JSON de Atualização da Variação (PUT):
O método PUT da Variação permite também inserir e/ou alterar Itens de Variação pertencentes à Variação. Para isso, basta informar o campo itens_variacao no JSON de atualização, com os ids dos Itens de Variação que deseja atualizar.
Importante:
- Não é possível excluir uma Variação associada a algum produto.
- A ordem de retorno dos IDs cadastrados obedece à ordem enviada.
| Campo | Tipo | Descrição |
|---|---|---|
| nome | String: 20 | Nome da Variação |
| ordem | Integer | Ordem da Variação |
| excluido | Boolean | Indica se Variação será excluída. |
| itens_variacao | List | Lista de Itens de Variação associados a esta Variação. |
Parâmetros de Envio - Alterar Item de Variação (PUT):
Não é possível trocar o nome de um Item de Variação nem excluir um Item de Variação associado a algum produto.
A ordem de retorno dos IDs cadastrados e/ou alterados obedece à ordem enviada.
| Campo | Tipo | Descrição |
|---|---|---|
| ordem | Integer | Ordem do Item de Variação |
| excluido | Boolean | Indica se o Item de Variação será excluído. |
| cor | String: 6 | Código da cor no formato hexadecimal. |
| imagem_url | String | URL pública da imagem do Item de Variação. |
| imagem_base64 | String | Imagem do Item de Variação em base64. |
Estrutura de Resposta do PUT e POST
Sucesso
Caso a requisição seja um sucesso a resposta retornará o id da Variação ou Item de Variação criado e/ou atualizado, no Body da requisição.
Esses ids podem ser utilizados para consultar a Variação ou Item de Variação criado e/ou atualizado.
Exemplo:
{
"id": 123,
"itens_variacoes": [{
"id": 456
}]
}
Erro
Caso a requisição encontre um ou mais erros, eles serão retornados informado campo e o tipo de erro, no Body da requisição.
Exemplo:
{
"mensagem": "Ocorreram erros de validação",
"erros": [
[
"nome",
"Atributo obrigatório não informado"
]
],
"url": "/api/v1/variacoes"
}
