# Retornar os produtos por filtro

Permite listar os produtos cadastrados, com suporte a filtros como página, tamanho, busca por nome, sku ou ean, status ("ativo", "inativo") e ordenação.

Endpoint: GET /v1/produtos
Version: v1
Security: BearerAuth

## Query parameters:

  - `pagina` (integer)
    Página

  - `tamanho_pagina` (integer)
    Tamanho da página
    Enum: 10, 20, 50, 100, 200, 500, 1000

  - `campo_ordenacao` (string)
    Campos de ordenação
    Enum: "NOME", "CODIGO", "VALOR_VENDA"

  - `direcao_ordenacao` (string)
    Direção de ordenação
    Enum: "ASC", "DESC"

  - `busca` (string)
    Busca textual pelo nome, ean ou sku do produto

  - `status` (string)
    Status do produto
    Enum: "ATIVO", "INATIVO"

  - `integracao_ecommerce_ativo` (boolean)
    Produtos com integração ativa

  - `produtos_kit_ativo` (boolean)
    Filtrar com kits de produto

  - `valor_venda_inicial` (number)
    Intervalo inicial do valor de venda

  - `valor_venda_final` (number)
    Intervalo final do valor de venda

  - `sku` (string)
    SKU do produto para filtro exato

  - `data_alteracao_de` (string)
    Data de alteração de (ISO 8601, São Paulo/GMT-3)

  - `data_alteracao_ate` (string)
    Data de alteração até (ISO 8601, São Paulo/GMT-3)

## Response 200 fields (application/json):

  - `items` (array)
    Lista de itens do resumo de produtos

  - `items.codigo` (string)
    Código do produto
    Example: "PROD01"

  - `items.contagem_agregacao` (integer)
    Contagem de agregação do produto
    Example: 1

  - `items.custo_medio` (number)
    Custo médio do produto
    Example: 50

  - `items.ean` (string)
    EAN do produto
    Example: "7891234567893"

  - `items.estoque_maximo` (number)
    Estoque máximo do produto
    Example: 1000

  - `items.estoque_minimo` (number)
    Estoque mínimo do produto
    Example: 10

  - `items.id` (string)
    Id do produto
    Example: "0d4d34e3-5a1e-4d8b-8ed6-e0874ef1ccb8"

  - `items.id_legado` (integer)
    Id legado do produto
    Example: 37561

  - `items.integracao_ecommerce_ativada` (boolean)
    Indica se a integração com ecommerce está ativada

  - `items.movido` (boolean)
    Indica se o produto foi movido
    Example: true

  - `items.nivel_estoque` (string)
    Nível de estoque do produto
    Enum: "MINIMO", "MAXIMO", "PADRAO"

  - `items.nome` (string)
    Nome do produto
    Example: "Produto 01"

  - `items.produtos_variacao` (array)
    Lista de variações do produto

  - `items.produtos_variacao.aggregationCount` (integer)
    Contagem de agregação do produto na variação
    Example: 1

  - `items.produtos_variacao.codigo` (string)
    Código do produto na variação
    Example: "PRODV01"

  - `items.produtos_variacao.custo_medio` (number)
    Custo médio do produto na variação
    Example: 50

  - `items.produtos_variacao.ean` (string)
    EAN do produto na variação
    Example: "7891234567893"

  - `items.produtos_variacao.estoque_maximo` (number)
    Estoque máximo do produto na variação
    Example: 100

  - `items.produtos_variacao.estoque_minimo` (number)
    Estoque mínimo do produto na variação
    Example: 10

  - `items.produtos_variacao.id` (string)
    Id do produto na variação
    Example: "4680e564-b995-4e05-8fec-b8f181497e93"

  - `items.produtos_variacao.id_legado` (integer)
    Id legado do produto na variação
    Example: 76956

  - `items.produtos_variacao.id_produto_pai_variacao` (string)
    Id do produto pai da variação
    Example: "9947a369-096e-4332-8e67-0a9765959e50"

  - `items.produtos_variacao.integracao_ecommerce_ativada` (boolean)
    Indica se a integração com ecommerce está ativada para o produto na variação
    Example: true

  - `items.produtos_variacao.movido` (boolean)
    Indica se o produto na variação foi movido

  - `items.produtos_variacao.nivel_estoque` (string)
    Nível de estoque do produto na variação
    Enum: "MINIMO", "MAXIMO", "PADRAO"

  - `items.produtos_variacao.nome` (string)
    Nome do produto na variação
    Example: "Produto 01 com variação"

  - `items.produtos_variacao.saldo` (number)
    Saldo do produto na variação
    Example: 100

  - `items.produtos_variacao.status` (string)
    Status do produto na variação
    Enum: "ATIVO", "INATIVO"

  - `items.produtos_variacao.tipo` (string)
    Tipo do produto na variação
    Enum: "PRODUTO", "KIT_PRODUTO", "VARIACAO_PRODUTO"

  - `items.produtos_variacao.valor_venda` (number)
    Valor de venda do produto na variação
    Example: 150

  - `items.saldo` (number)
    Saldo do produto
    Example: 1000

  - `items.status` (string)
    Status do produto
    Enum: "ATIVO", "INATIVO"

  - `items.tipo` (string)
    Tipo do produto
    Example: "PRODUTO"

  - `items.ultima_atualizacao` (string)
    Data da última atualização do produto
    Example: "2025-07-10T15:05:08.433885Z"

  - `items.valor_venda` (number)
    Valor de venda do produto
    Example: 150

  - `totalItems` (integer)
    Total de itens encontrados
    Example: 10

## Response 400 fields (application/json):

  - `error` (string)
    Mensagem de erro
    Example: "Mensagem de erro detalhada"

## Response 500 fields (application/json):

  - `error` (string)
    Mensagem de erro
    Example: "Mensagem de erro detalhada"


