# Retornar orçamentos por filtros

Recupera a lista de orçamentos com base nos filtros informados.

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

## Query parameters:

  - `pagina` (integer)
    Número da página

  - `tamanho_pagina` (integer)
    Tamanho da página

  - `campo_ordenado_ascendente` (string)
    Campo para ordenação ascendente. Se informado ele desconsidera o valor do campo_ordenado_descendente. É possível ordenar pela data da venda (DATA), pelo número da venda (NUMERO) ou pelo nome do cliente (CLIENTE)
    Enum: "DATA", "NUMERO", "CLIENTE"

  - `campo_ordenado_descendente` (string)
    Campo para ordenação descendente. Se este campo for utilizado, o campo campo_ordenado_ascendente não deverá ser informado. É possível ordenar pela data da venda (DATA), pelo número da venda (NUMERO) ou pelo nome do cliente (CLIENTE)
    Enum: "DATA", "NUMERO", "CLIENTE"

  - `termo_busca` (string)
    Termo de busca

  - `data_inicio` (string)
    Data inicial (formato: YYYY-MM-DD)

  - `data_fim` (string)
    Data final (formato: YYYY-MM-DD)

  - `data_criacao_de` (string)
    Data de criação inicial (formato: YYYY-MM-DD)

  - `data_criacao_ate` (string)
    Data de criação final (formato: YYYY-MM-DD)

  - `data_alteracao_de` (string)
    Data de alteração inicial (formato: YYYY-MM-DDThh:mm:ss)

  - `data_alteracao_ate` (string)
    Data de alteração final (formato: YYYY-MM-DDThh:mm:ss)

  - `ids_vendedores` (array)
    IDs dos vendedores (UUID)

  - `ids_clientes` (array)
    IDs dos clientes (UUID)

  - `ids_natureza_operacao` (array)
    IDs das naturezas de operação (UUID)

  - `ids_categorias` (array)
    IDs das categorias (UUID)

  - `ids_produtos` (array)
    IDs dos produtos (UUID)

  - `situacoes` (array)
    Situações dos orçamentos
    Enum: "ORCAMENTO", "ORCAMENTO_ACEITO", "ORCAMENTO_RECUSADO"

  - `origens` (array)
    Origens dos orçamentos

  - `numeros` (array)
    Números dos orçamentos

  - `ids_legado_donos` (array)
    IDs legados dos donos

  - `ids_legado_clientes` (array)
    IDs legados dos clientes

  - `ids_legado_produtos` (array)
    IDs legados dos produtos

## Response 200 fields (application/json):

  - `itens` (array)
    Lista de orçamentos

  - `itens.cliente` (object)
    Cliente

  - `itens.cliente.email` (string)
    Email do cliente
    Example: "exemplo@email.com"

  - `itens.cliente.id` (string)
    id do cliente
    Example: "123e4567-e89b-12d3-a456-426614174000"

  - `itens.cliente.nome` (string)
    Nome do cliente
    Example: "João da Silva"

  - `itens.data_alteracao` (string)
    Data de alteração do orçamento (ISO 8601, São Paulo/GMT-3)
    Example: "2025-10-17T02:00:08.841"

  - `itens.data_criacao` (string)
    Data de criação do orçamento
    Example: "2025-05-16T17:51:04.63"

  - `itens.data_orcamento` (string)
    Data do orçamento
    Example: "2023-12-31"

  - `itens.id` (string)
    id do orçamento
    Example: "123e4567-e89b-12d3-a456-426614174000"

  - `itens.id_contrato` (string)
    id do contrato
    Example: "123e4567-e89b-12d3-a456-426614174000"

  - `itens.itens` (string)
    Categoria dos itens incluídos no orçamento (PRODUTO, SERVICO, ou PRODUTO_E_SERVICO)
    Enum: "PRODUTO", "SERVICO", "PRODUTO_E_SERVICO"

  - `itens.numero` (integer)
    Número do orçamento
    Example: 1001

  - `itens.origem` (string)
    Origem do orçamento
    Example: "NFE"

  - `itens.situacao` (string)
    Situação do orçamento
    Enum: "ORCAMENTO", "ORCAMENTO_ACEITO", "ORCAMENTO_RECUSADO"

  - `itens.total` (number)
    Total do orçamento
    Example: 1000

  - `itens.versao` (integer)
    Versão do orçamento
    Example: 1

  - `total_itens` (integer)
    Total de itens
    Example: 10

## Response 400 fields (application/json):

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


