Ir para o conteúdo

Regras de Negócio — Parâmetro aproximado

Descrição

O parâmetro aproximado permite buscar endereços com numeração próxima à informada no parâmetro q.
Por padrão (aproximado=false), a busca tentará encontrar o número exato fornecido no parâmetro q.


Regras

  1. q é obrigatório para uso de aproximado=true.
  2. q deve conter logradouro e número (ex.: afonso pena 1210).
  3. Se aproximado=true e q não atender o formato mínimo, retorna HTTP 400:
    {
      "message": "Para busca aproximada, preencha 'q' com logradouro e número (ex.: 'afonso pena 1210')."
    }
    
  4. Funciona apenas quando q está válido; caso contrário, não realiza busca aproximada.
  5. Filtros paridade, numero_min e numero_max só têm efeito com aproximado=true.

Parâmetros relacionados

Nome Tipo Descrição
paridade boolean Filtra resultados pela mesma paridade do número de q.
numero_min long Limite mínimo de numeração para busca aproximada.
numero_max long Limite máximo de numeração para busca aproximada.
numero integer Filtro exato. Pode zerar resultados se não existir na base.

Exemplos

Busca aproximada simples

GET /endereco?q=afonso%20pena%201210&aproximado=true

Com intervalo

GET /endereco?q=afonso%20pena%201200&aproximado=true&numero_min=1100&numero_max=1300

Com paridade

GET /endereco?q=afonso%20pena%201210&aproximado=true&paridade=true

Erro por q inválido

GET /endereco?q=afonso%20pena&aproximado=true
Resposta:
{
  "message": "Para busca aproximada, preencha 'q' com logradouro e número (ex.: 'afonso pena 1210')."
}

Resultado vazio por filtro exato

GET /endereco?q=afonso%20pena%201210&aproximado=true&numero=1210
Se 1210 não existir, nenhum resultado será retornado.


Boas práticas

  • Sempre preencher q com logradouro e número para aproximado=true.
  • Usar numero_min e numero_max para limitar resultados.
  • Evitar usar numero junto com busca aproximada, pois pode zerar resultados.