Endpoints - Grupo de produtos
1. Exemplo do json:
[
{
"codigo": 2,
"descricao": "Herbicidas",
"aceita_saldo_negativo": "S",
"desconto_maximo": 5,
"codigo_externo": "20",
"ativo": "S"
}
]
Campos:
codigo: Código do registro no banco de dados do CRM
descricao: Descrição do grupo;
aceita_saldo_negativo: Define se os produtos do grupo aceitam saldo negativo no pedido (S para sim e N para não)
desconto_maximo: Valor máximo de desconto que os produtos do grupo aceitam
ativo: Campo para indicar se a o grupo está ativa (S) ou inativa (N)
Todos os endpoints, com exceção do deletar, retornam o json nesse formato.
2. Endpoints
2.1 - Buscar Grupo pelo código
Endpoint: /produto-grupo
Tipo: get
Parâmetros:
codigoInterno: Tipo: Inteiro. Código do grupo no banco de dados do CRM.
codigoExterno: Tipo: String. Código do grupo no banco de dados do sistema integrado
Validações: É necessário informar pelo menos um dos parâmetros. Caso informado os dois o sistema prioriza o código externo.
Resposta: Status 200 - Retorna o grupo no formato documentado na sessão Exemplo do json
2.2 - Buscar todas os grupos
Endpoint: /produto-grupo/todos
Tipo: get
Resposta: Status 200 - Retorna a lista dos grupos no formato documentado na sessão Exemplo do json
2.3 - Cadastrar ou editar grupo
Endpoint: /produto-grupo
Tipo: post
Notas:
Informe no corpo da requisição o json conforme exemplo na sessão 1.
Para cadastrar um novo gruponão informe o campo “codigo”;
Para editar um grupo já existente informe o campo “codigo” com o código do grupo que deseja editar;
Serão permitidos o cadastro/edição de até 20 itens por vez.
Resposta: Status 200 - Retorna o grupo cadastrada, no formato documentado na sessão Exemplo do json
2.4 - Inativar um grupo
Não é possível deletar um grupo, apenas inativar, pois a grupo pode ter vinculo com produtos. Nesse caso, o grupo continua no banco de dados porém com o status inativo.
Endpoint: /produto-grupo
Tipo: delete
Parâmetros:
codigoInterno: Tipo: Inteiro. Código do grupo no banco de dados do CRM.
codigoExterno: Tipo: String. Código do grupo no banco de dados do sistema integrado, caso existir.
Resposta: Status 200 - Mensagem: Registro inativado com sucesso.
2.5 - Retornar os metadados do grupo
Endpoint: /produto-grupo/metadados
Tipo: get
Descrição: Retorna os campos do json, com as informações de tipo, tamanho máximo, se o campo é requerido, filtrável e/ou ordenável
Resposta: Status 200 - Retorna um json com as informações dos campos do grupo
2.6 - Pesquisar
Endpoint: /produto-grupo/pesquisa
Tipo: post
Notas:
Esse endpoint retorna os grupos baseados nos filtros e na ordenação informados;
Exemplo do corpo da requisição:
{ "pagina": 1, "quantidadeRegistros": 5, "filtros": [ { "campo": "descricao", "comparacao": "CONTEM", "valor": "FUNGICIDA" } ], "ordenacao": [ { "campo": "descricao", "ordenacao": "ASC" } ] }
Nesse exemplo, estamos filtrando todas os grupos cuja descrição possua o texto “FUNGICIDA”, também estamos ordenando os registros pela descrição de forma ascendente.