# Retornar os contratos por filtro

Permite consultar contratos existentes, com suporte a filtros que facilitam a busca e a gestão dos contratos criados (ex. por cliente, data, status, entre outros).

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

## Query parameters:

  - `pagina` (number)
    Página
    Example: 1

  - `tamanho_pagina` (number)
    Tamanho da página (máximo 50)
    Example: 10

  - `campo_ordenado_ascendente` (string)
    Campo para ordenação ascendente. Se informado ele desconsidera o valor do campo_ordenado_descendente.
    Enum: "DATA_INICIO", "DATA_FIM"

  - `campo_ordenado_descendente` (string)
    Campo para ordenação descendente. Se este campo for utilizado, o campo campo_ordenado_ascendente  não deverá ser informado.
    Enum: "DATA_INICIO", "DATA_FIM"

  - `busca_textual` (string)
    Busca textual por nome
    Example: "Contrato 1"

  - `cliente_id` (string)
    id do cliente

  - `data_inicio` (string, required)
    Data inicio do intervalo de busca
    Example: "2026-08-15"

  - `data_fim` (string, required)
    Data fim do intervalo de busca
    Example: "2027-08-15"

## Response 200 fields (application/json):

  - `itens_totais` (integer)
    Example: 6

  - `items` (array)

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

  - `items.cliente` (object)

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

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

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

  - `items.proximo_vencimento` (string)
    Data do próximo vencimento
    Example: "2026-08-15"

  - `items.data_inicio` (string)
    Data de início
    Example: "2026-08-15"

  - `items.numero` (integer)
    Número do contrato
    Example: 1014


## Response 400 fields

## Response 401 fields

## Response 429 fields

## Response 500 fields
