> For the complete documentation index, see [llms.txt](https://changelog.maino.com.br/llms.txt). Markdown versions of documentation pages are available by appending `.md` to page URLs; this page is available as [Markdown](https://changelog.maino.com.br/api-reference-maino/08.-controle-de-estoque.md).

# 08. 📊 Controle de Estoque

**Consulta de produtos e posições de estoque** Consulta de produtos cadastrados e histórico de posições de estoque. **Funcionalidades:**

* Listagem de produtos cadastrados
* Consulta de posição histórica de estoque
* Geração de relatórios em Excel
* Filtros por código, descrição, NCM e status

## Consulta posição histórica de estoques por produto

> \*\*Consulta posição histórica de estoques por produto\*\*\
> \
> Retorna a evolução da posição de estoque de produtos em um período específico.\
> Os dados são agrupados por produto e apresentam a quantidade disponível\
> para cada dia do período informado.\
> \
> \*\*Funcionalidades:\*\*\
> \- Histórico diário de posições de estoque\
> \- Agrupamento por produto (código e descrição)\
> \- Filtro por período de datas\
> \- Rastreamento de movimentações ao longo do tempo\
> \
> \*\*Estrutura dos dados:\*\*\
> \- Cada produto contém seu código e descrição\
> \- Array de posições diárias com data e quantidade\
> \- Quantidade representa o estoque disponível no final do dia\
> \
> \*\*Uso típico:\*\*\
> \- Análise de evolução de estoque\
> \- Relatórios gerenciais de movimentação\
> \- Auditoria de posições históricas\
> \- Gráficos de tendência de estoque

```json
{"openapi":"3.0.1","info":{"title":"Mainô API","version":"v2.0"},"tags":[{"name":"08. 📊 Controle de Estoque","description":"**Consulta de produtos e posições de estoque**\nConsulta de produtos cadastrados e histórico de posições de estoque.\n**Funcionalidades:**\n- Listagem de produtos cadastrados\n- Consulta de posição histórica de estoque\n- Geração de relatórios em Excel\n- Filtros por código, descrição, NCM e status"}],"servers":[{"url":"https://api.maino.com.br/api/v2","description":"Servidor de Produção"}],"security":[{"Bearer":[]}],"components":{"securitySchemes":{"Bearer":{"type":"http","scheme":"bearer","bearerFormat":"JWT","description":"**Token JWT de Autenticação**\nToken obtido através do endpoint `/authentication`.\n**Formato:** `Bearer {seu_token_jwt}`\n**Exemplo:** `Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...`\n**Validade:** Sem expiração"}}},"paths":{"/posicao_estoques":{"get":{"summary":"Consulta posição histórica de estoques por produto","tags":["08. 📊 Controle de Estoque"],"description":"**Consulta posição histórica de estoques por produto**\n\nRetorna a evolução da posição de estoque de produtos em um período específico.\nOs dados são agrupados por produto e apresentam a quantidade disponível\npara cada dia do período informado.\n\n**Funcionalidades:**\n- Histórico diário de posições de estoque\n- Agrupamento por produto (código e descrição)\n- Filtro por período de datas\n- Rastreamento de movimentações ao longo do tempo\n\n**Estrutura dos dados:**\n- Cada produto contém seu código e descrição\n- Array de posições diárias com data e quantidade\n- Quantidade representa o estoque disponível no final do dia\n\n**Uso típico:**\n- Análise de evolução de estoque\n- Relatórios gerenciais de movimentação\n- Auditoria de posições históricas\n- Gráficos de tendência de estoque","parameters":[{"name":"data_inicio","in":"query","schema":{"type":"string","format":"date"},"required":false,"description":"Data inicial do período para consulta (formato YYYY-MM-DD)"},{"name":"data_fim","in":"query","schema":{"type":"string","format":"date"},"required":false,"description":"Data final do período para consulta (formato YYYY-MM-DD)"},{"name":"page","in":"query","schema":{"type":"integer","minimum":1},"description":"Número da página para paginação (padrão: 1)","required":false}],"responses":{"200":{"description":"Posições históricas de estoque","content":{"Histórico com dados":{},"Período sem dados":{},"application/json":{"schema":{"type":"object","properties":{"data":{"type":"array","description":"Lista dos produtos com suas posições históricas","items":{"type":"object","properties":{"codigo_produto":{"type":"string","description":"Código do produto"},"codigo_descricao":{"type":"string","description":"Descrição do produto"},"posicao_estoques":{"type":"array","description":"Posições diárias de estoque no período","items":{"type":"object","properties":{"data_posicao_estoque":{"type":"string","format":"date","description":"Data da posição de estoque"},"quantidade_produto":{"type":"number","format":"float","description":"Quantidade disponível no final do dia","nullable":true}},"required":["data_posicao_estoque","quantidade_produto"]}}},"required":["codigo_produto","codigo_descricao","posicao_estoques"]}}},"required":["data"]}}}},"401":{"description":"Não autorizado","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string","description":"Erro de autenticação"}}}}}}}}}}}
```

## Lista produtos

> \*\*Lista completa de produtos com informações de estoque e preços\*\*\
> \
> Retorna todos os produtos cadastrados para o usuário autenticado, incluindo:\
> \- Informações básicas (código, descrição, categoria)\
> \- Dados de estoque atual e movimentações\
> \- Preços de custo e venda configurados\
> \- Classificação fiscal (NCM) e unidades de medida\
> \- Informações de e-commerce\
> \- Imagens e tags\
> \
> \*\*Recursos de filtragem:\*\*\
> \- Status (ativo/inativo)\
> \- Produtos zerados ou com estoque\
> \- Busca por código ou descrição\
> \- Filtragem por NCM ou unidade de medida\
> \- Paginação (padrão: 100 itens por página)

```json
{"openapi":"3.0.1","info":{"title":"Mainô API","version":"v2.0"},"tags":[{"name":"08. 📊 Controle de Estoque","description":"**Consulta de produtos e posições de estoque**\nConsulta de produtos cadastrados e histórico de posições de estoque.\n**Funcionalidades:**\n- Listagem de produtos cadastrados\n- Consulta de posição histórica de estoque\n- Geração de relatórios em Excel\n- Filtros por código, descrição, NCM e status"}],"servers":[{"url":"https://api.maino.com.br/api/v2","description":"Servidor de Produção"}],"security":[{"Bearer":[]}],"components":{"securitySchemes":{"Bearer":{"type":"http","scheme":"bearer","bearerFormat":"JWT","description":"**Token JWT de Autenticação**\nToken obtido através do endpoint `/authentication`.\n**Formato:** `Bearer {seu_token_jwt}`\n**Exemplo:** `Bearer eyJhbGciOiJIUzI1NiIsInR5cCI6IkpXVCJ9...`\n**Validade:** Sem expiração"}}},"paths":{"/produtos":{"get":{"summary":"Lista produtos","tags":["08. 📊 Controle de Estoque"],"description":"**Lista completa de produtos com informações de estoque e preços**\n\nRetorna todos os produtos cadastrados para o usuário autenticado, incluindo:\n- Informações básicas (código, descrição, categoria)\n- Dados de estoque atual e movimentações\n- Preços de custo e venda configurados\n- Classificação fiscal (NCM) e unidades de medida\n- Informações de e-commerce\n- Imagens e tags\n\n**Recursos de filtragem:**\n- Status (ativo/inativo)\n- Produtos zerados ou com estoque\n- Busca por código ou descrição\n- Filtragem por NCM ou unidade de medida\n- Paginação (padrão: 100 itens por página)","parameters":[{"name":"ativos","in":"query","description":"Filtrar apenas produtos ativos (true) ou incluir inativos (false)","required":false,"schema":{"type":"boolean"}},{"name":"zerados","in":"query","description":"Incluir produtos com estoque zerado na listagem","required":false,"schema":{"type":"boolean"}},{"name":"codigo","in":"query","description":"Busca parcial por código do produto (case-insensitive)","required":false,"schema":{"type":"string"}},{"name":"descricao","in":"query","description":"Busca parcial por descrição do produto (case-insensitive)","required":false,"schema":{"type":"string"}},{"name":"unidade_de_medida","in":"query","description":"Filtrar por sigla da unidade de medida","required":false,"schema":{"type":"string"}},{"name":"ncm","in":"query","description":"Filtrar por código NCM (classificação fiscal)","required":false,"schema":{"type":"string"}},{"name":"ultima_modificacao","in":"query","schema":{"type":"string","format":"datetime"},"description":"Filtrar produtos modificados a partir desta data/hora","required":false},{"name":"page","in":"query","schema":{"type":"integer","minimum":1},"description":"Número da página para paginação (padrão: 1)","required":false}],"responses":{"200":{"description":"Lista de produtos retornada com sucesso","content":{"Lista de produtos":{},"application/json":{"schema":{"type":"object","properties":{"produtos":{"type":"array","description":"Array de produtos com informações completas","items":{"type":"object","properties":{"id":{"type":"integer","description":"ID do produto"},"codigo":{"type":"string","description":"Código do produto"},"descricao":{"type":"string","description":"Descrição do produto"},"informacoes_complementares":{"type":"string","nullable":true,"description":"Informações complementares"},"principal_modelo_ecommerce":{"type":"boolean","description":"Se é modelo principal no e-commerce"},"codigo_ecommerce":{"type":"string","nullable":true,"description":"Código no e-commerce"},"titulo_ecommerce":{"type":"string","nullable":true,"description":"Título no e-commerce"},"descricao_ecommerce":{"type":"string","nullable":true,"description":"Descrição no e-commerce"},"marca":{"type":"string","nullable":true,"description":"Marca do produto"},"modelo":{"type":"string","nullable":true,"description":"Modelo do produto"},"nome_fabricante":{"type":"string","nullable":true,"description":"Nome do fabricante"},"observacao_interna":{"type":"string","nullable":true,"description":"Observação interna"},"peso_liquido":{"type":"number","format":"float","nullable":true,"description":"Peso líquido total"},"peso_liquido_unitario":{"type":"number","format":"float","nullable":true,"description":"Peso líquido unitário"},"peso_bruto":{"type":"number","format":"float","nullable":true,"description":"Peso bruto total"},"peso_bruto_unitario":{"type":"number","format":"float","nullable":true,"description":"Peso bruto unitário"},"pu":{"type":"number","format":"float","description":"Preço unitário de entrada"},"pu_saida":{"type":"number","format":"float","description":"Preço unitário de saída"},"pu_saida_com_ipi":{"type":"number","format":"float","description":"Preço de saída com IPI"},"valor_ipi":{"type":"number","format":"float","description":"Valor do IPI"},"aliquota_ipi":{"type":"number","format":"float","description":"Alíquota do IPI (%)"},"composicao_de_preco_de_venda":{"type":"boolean","description":"Se usa composição de preço de venda"},"qtde":{"type":"number","format":"float","description":"Quantidade em estoque"},"qtde_comprometida":{"type":"number","format":"float","description":"Quantidade comprometida"},"qtde_armazenada":{"type":"number","format":"float","description":"Quantidade armazenada"},"gtin":{"type":"string","nullable":true,"description":"Código de barras GTIN"},"codigo_de_barras_interno":{"type":"string","nullable":true,"description":"Código de barras interno"},"ncm":{"type":"string","nullable":true,"description":"Código NCM"},"unidade_de_medida":{"type":"string","nullable":true,"description":"Sigla da unidade de medida"},"ativo":{"type":"boolean","description":"Se o produto está ativo"},"ultima_modificacao":{"type":"string","format":"datetime","description":"Data/hora da última modificação"},"tags":{"type":"array","items":{"type":"string"},"description":"Lista de tags do produto"},"altura":{"type":"number","format":"float","nullable":true,"description":"Altura"},"comprimento":{"type":"number","format":"float","nullable":true,"description":"Comprimento"},"largura":{"type":"number","format":"float","nullable":true,"description":"Largura"},"imagem_principal":{"type":"string","nullable":true,"description":"URL da imagem principal"},"imagens":{"type":"array","description":"Lista de imagens do produto","items":{"type":"object","properties":{"id":{"type":"integer","description":"ID da imagem"},"url":{"type":"string","description":"URL da imagem"},"principal":{"type":"boolean","description":"Se é a imagem principal"}}}},"categoria":{"type":"object","nullable":true,"description":"Categoria do produto","properties":{"id":{"type":"integer","description":"ID da categoria"},"nome":{"type":"string","description":"Nome da categoria"}}},"subcategoria":{"type":"object","nullable":true,"description":"Subcategoria do produto","properties":{"id":{"type":"integer","description":"ID da subcategoria"},"nome":{"type":"string","description":"Nome da subcategoria"},"nome_com_categoria":{"type":"string","description":"Nome completo com categoria"}}},"propriedades":{"type":"array","description":"Propriedades customizadas do produto","items":{"type":"object","properties":{"propriedade":{"type":"string","description":"Nome da propriedade"},"valor":{"type":"string","description":"Valor da propriedade"}}}},"tabelas_de_vendas":{"type":"array","description":"Tabelas de vendas com preços calculados","items":{"type":"object","properties":{"codigo":{"type":"string","description":"Código da tabela"},"descricao":{"type":"string","description":"Descrição da tabela"},"pu_calculado":{"type":"number","format":"float","description":"Preço calculado"}}}}},"required":["id","codigo","descricao"]}},"pagination":{"type":"object","description":"Informações de paginação","properties":{"total":{"type":"integer","description":"Total de registros"},"previous_page":{"type":"string","nullable":true,"description":"URL da página anterior"},"next_page":{"type":"string","nullable":true,"description":"URL da próxima página"}}}},"required":["produtos","pagination"]}}}},"401":{"description":"Não autorizado","content":{"application/json":{"schema":{"type":"object","properties":{"error":{"type":"string","description":"Mensagem de erro"}}}}}}}}}}}
```


---

# Agent Instructions
This documentation is published with GitBook. GitBook is the documentation platform designed so that both humans and AI agents can read, navigate, and reason over technical content effectively. Learn more at gitbook.com.

## Querying This Documentation
If you need additional information that is not directly available in this page, you can query the documentation dynamically by asking a question.

Perform an HTTP GET request on the current page URL with the `ask` query parameter, and the optional `goal` query parameter:

```
GET https://changelog.maino.com.br/api-reference-maino/08.-controle-de-estoque.md?ask=<question>&goal=<endgoal>
```

`ask` is the immediate question: it should be specific, self-contained, and written in natural language.
`goal` is optional and describes the broader end goal you are ultimately trying to accomplish on behalf of the user. GitBook uses it to tailor the answer towards what is most useful for that goal.

The response will contain a direct answer to the question and relevant excerpts and sources from the documentation.

Use this mechanism when the answer is not explicitly present in the current page, you need clarification or additional context, or you want to retrieve related documentation sections.
