← SeleAPIs

API de CEP

Consulta de endereco por CEP com fallback automatico entre dois provedores publicos.

GET /cep/{cep}

Experimente

Exemplos:
Ver resposta JSON crua

        

Como funciona (fallback)

  1. Sanitiza a entrada: remove tudo que nao for digito e valida 8 digitos. Sem isso, nem chama as APIs.
  2. Tenta o ViaCEP. Sucesso → devolve.
  3. Qualquer falha do ViaCEP (rede, timeout, HTTP ≠ 200, corpo { "erro": true }, JSON invalido) → tenta a BrasilAPI.
  4. Se os dois falharem → encontrado: false (sem lancar erro).

Parametros

NomeOndeDescricao
ceprota CEP com ou sem mascara (13208056 ou 13208-056). So os digitos importam.

Modelo de saida

CampoTipoDescricao
encontradoboolfalse quando os dois provedores falharam ou o CEP e invalido.
cepstringNormalizado, sempre com mascara 00000-000.
logradourostringRua/avenida.
complementostringSo ViaCEP; vazio quando vem da BrasilAPI.
bairrostringBairro.
cidadestringMunicipio.
ufstringEstado (2 letras).
ibgestringCodigo IBGE; vazio quando vem da BrasilAPI.
latitudestring?So BrasilAPI v2, quando disponivel.
longitudestring?So BrasilAPI v2, quando disponivel.
fontestringviacep | brasilapi | "" (auditoria).

Codigos HTTP

StatusQuandoCorpo
200CEP encontradoModelo com encontrado: true.
404CEP valido mas inexistente nos provedoresModelo neutro com encontrado: false.
400CEP mal formado (nao 8 digitos)Modelo neutro com encontrado: false.

Exemplo

curl https://seleapi.sele.com.br/cep/13208056
{
  "encontrado": true,
  "cep": "13208-056",
  "logradouro": "Rua Exemplo",
  "complemento": "",
  "bairro": "Centro",
  "cidade": "Jundiai",
  "uf": "SP",
  "ibge": "3525904",
  "latitude": "-23.18",
  "longitude": "-46.88",
  "fonte": "viacep"
}

Documentacao OpenAPI (Postman/Insomnia/Scalar): /openapi/v1.json