API do Demander - Produtos
Este artigo faz parte da documentação da API de Integração REST.
Documentação para consultar, inserir, atualizar e excluir produtos.
Consulta
Seção intitulada “Consulta”Lista os produtos da empresa. Sem filtro, considera dataAlteracao dos últimos 6 meses.
Rota: {host}/public/v1/produtos?pagina={pagina}&limite={limite}&filtroDataAlteracao={data}&operadorFiltro={operador}Método: GETRetorno:
{ "produtos": [ { "codigo": "PROD-001", "codGrupoProduto": "1", "codMarca": 10, "descricao": "Produto Teste", "saldoEstoque": 100, "unidadeVenda": "UN", "precoVenda": 10.5, "permiteDesconto": 1, "codTamanho": null, "aliquotaICMSST": null, "bcICMSST": null, "aliquotaIPI": null, "bcIPI": null, "mva": null, "campoLivre1": null, "campoLivre2": null, "campoLivre3": null, "ativo": 1, "qtdeMinimaPorPedido": 1, "referencia": "REF-001", "controlePorLote": 0, "codNCM": null, "precoPauta": null, "observacao": null, "observacaoLojaVirtual": null, "dataEstoque": null, "segmentosRelacionados": null, "codProdutoPrincipal": null, "descProdutoPrincipal": null, "codSegmentoGrade": null, "codTipoGradeVariacao1": null, "codTipoGradeVariacao2": null, "codTipoGradeVariacao3": null, "codTipoGradeVariacao4": null, "codigoBarras": "7891234567890", "codigoBarrasEmbalagem": null, "ordemSeparacao": null, "qtdePorPallet": null, "jsonCamposAuxiliares": null, "dataAlteracao": "2026-07-27 14:00:00" } ]}Inserir ou atualizar
Seção intitulada “Inserir ou atualizar”POST upsert pela chave codigo.
Rota: {host}/public/v1/produtosMétodo: POSTBody: json| Propriedade | Tipo | Tamanho | Obrigatório | Descrição |
|---|---|---|---|---|
| codigo | string | 30 | ✓ | Código do produto. Identificador único usado para inserir ou atualizar (upsert). |
| descricao | string | 300 | ✓ | Descrição do produto. |
| codGrupoProduto | string | 30 | Código do grupo de produto. | |
| codMarca | int | Código da marca. | ||
| saldoEstoque | decimal | Saldo de estoque. Padrão na inclusão: 0. |
||
| unidadeVenda | string | 5 | Unidade de venda. Valores com mais de 5 caracteres são truncados. | |
| precoVenda | decimal | Preço de venda. | ||
| permiteDesconto | int | Valores: 0 ou 1. Padrão na inclusão: 1. |
||
| codTamanho | string | 50 | Código do tamanho. | |
| aliquotaICMSST | decimal | Alíquota de ICMS ST. | ||
| bcICMSST | decimal | Base de cálculo do ICMS ST. | ||
| aliquotaIPI | decimal | Alíquota de IPI. | ||
| bcIPI | decimal | Base de cálculo do IPI. | ||
| mva | decimal | MVA. | ||
| campoLivre1 | string | 500 | Campo livre 1. | |
| campoLivre2 | string | 500 | Campo livre 2. | |
| campoLivre3 | string | 5000 | Campo livre 3. | |
| ativo | int | Valores: 0 ou 1. Padrão na inclusão: 1. |
||
| qtdeMinimaPorPedido | decimal | Quantidade mínima por pedido. Padrão na inclusão: 1. |
||
| referencia | string | 50 | Referência do produto. | |
| controlePorLote | int | Valores: 0 ou 1. Padrão na inclusão: 0. |
||
| codNCM | string | 50 | Código NCM. | |
| precoPauta | decimal | Preço de pauta. | ||
| observacao | string | 5000 | Observação do produto. | |
| observacaoLojaVirtual | string | Observação para a loja virtual. | ||
| dataEstoque | date | Data do estoque. Formato Y-m-d. |
||
| segmentosRelacionados | string | 500 | Segmentos relacionados. Só atualiza quando enviado preenchido. | |
| codProdutoPrincipal | string | 30 | Código do produto principal (grade). | |
| descProdutoPrincipal | string | 100 | Descrição do produto principal (grade). | |
| codSegmentoGrade | string | 50 | Código do segmento de grade. | |
| codTipoGradeVariacao1 | string | 50 | Código do tipo de variação 1 da grade. | |
| codTipoGradeVariacao2 | string | 50 | Código do tipo de variação 2 da grade. | |
| codTipoGradeVariacao3 | string | 50 | Código do tipo de variação 3 da grade. | |
| codTipoGradeVariacao4 | string | 50 | Código do tipo de variação 4 da grade. | |
| codigoBarras | string | 20 | Código de barras. | |
| codigoBarrasEmbalagem | string | 20 | Código de barras da embalagem. | |
| ordemSeparacao | string | 50 | Ordem de separação. | |
| qtdePorPallet | decimal | Quantidade por pallet. | ||
| jsonCamposAuxiliares | string | JSON com campos auxiliares. |
Body:
{ "codigo": "PROD-001", "descricao": "Produto Teste", "codGrupoProduto": "1", "unidadeVenda": "UN", "precoVenda": 10.5, "saldoEstoque": 100, "ativo": 1, "permiteDesconto": 1, "referencia": "REF-001", "codigoBarras": "7891234567890"}Retorno:
{ "codigo": "PROD-001", "codGrupoProduto": "1", "codMarca": null, "descricao": "Produto Teste", "saldoEstoque": 100, "unidadeVenda": "UN", "precoVenda": 10.5, "permiteDesconto": 1, "codTamanho": null, "aliquotaICMSST": null, "bcICMSST": null, "aliquotaIPI": null, "bcIPI": null, "mva": null, "campoLivre1": null, "campoLivre2": null, "campoLivre3": null, "ativo": 1, "qtdeMinimaPorPedido": 1, "referencia": "REF-001", "controlePorLote": 0, "codNCM": null, "precoPauta": null, "observacao": null, "observacaoLojaVirtual": null, "dataEstoque": null, "segmentosRelacionados": null, "codProdutoPrincipal": null, "descProdutoPrincipal": null, "codSegmentoGrade": null, "codTipoGradeVariacao1": null, "codTipoGradeVariacao2": null, "codTipoGradeVariacao3": null, "codTipoGradeVariacao4": null, "codigoBarras": "7891234567890", "codigoBarrasEmbalagem": null, "ordemSeparacao": null, "qtdePorPallet": null, "jsonCamposAuxiliares": null, "dataAlteracao": "2026-07-27 14:00:00"}Excluir
Seção intitulada “Excluir”Remove o produto.
Rota: {host}/public/v1/produtos?codigo={codigo}Método: DELETERetorno:
{ "mensagem": "Registro excluído com sucesso."}