ViaCep
Brazilian CEP (zip code) lookups, instantly
Resolve a Brazilian CEP into street, neighbourhood, city, state and region plus IBGE and DDD codes. A long-standing, widely used free endpoint for Brazilian address data.
GET https://viacep.com.br/ws/01001000/json/
{
"cep": "01001-000",
"logradouro": "Praça da Sé",
"bairro": "Sé",
"localidade": "São Paulo",
"uf": "SP",
"estado": "São Paulo",
"ibge": "3550308",
"ddd": "11"
}curl "https://viacep.com.br/ws/01001000/json/"const res = await fetch("https://viacep.com.br/ws/01001000/json/");
const data = await res.json();
console.log(data);import requests
res = requests.get("https://viacep.com.br/ws/01001000/json/")
print(res.json())/ws/01001000/json/PROBEDBrazilian CEP (zip code) lookups, instantly
/wsWs — documented GET route.
/ws/1Ws details by ID (example: 1).
/ws?limit=10Ws — documented GET route.
/ws/search?q=testSearch by query parameters.
We probe a documented GET and expect 2xx JSON — full uptime and health score. Export includes every documented route below.
Stable. No schema drift observed since monitoring began — the response shape has not changed under our checks.
ViaCep: common questions
Is ViaCep free to use?
Yes — ViaCep is a free geo & maps API. Free tier: Free — limits not published. Whether the free tier allows commercial use is unclear — check the provider docs.
Does ViaCep need an API key?
No — ViaCep needs no API key or signup. You can call it straight away; rate limits still apply (Unpublished).
Can I call ViaCep from the browser?
Yes — ViaCep returns CORS headers over HTTPS, so front-end code can fetch it directly with no backend proxy. Use the fetch snippet on this page, or hit "Run live" to try it now.
Is ViaCep up right now?
As of our last scheduled check, ViaCep is unmonitored. We re-probe it every sweep — the status badge and uptime chart above always show the latest.