Municípios
Municípios brasileiros e seus códigos de 7 dígitos do IBGE.
Listar
- JavaScript, biblioteca
- Python, biblioteca
- Go, biblioteca4 casos falham
- Ruby, biblioteca4 casos falham
- Rust, biblioteca
- .NET, biblioteca4 casos falham
- Erlang, biblioteca
Retorna os municípios publicados pelo IBGE, ordenados por nome (ordenação pt-BR). Retorna todos eles ou os de um estado.
- Cada item tem o código IBGE de 7 dígitos, o nome e a sigla da UF.
- A comparação de
stateCodeignora maiúsculas e minúsculas e espaços nas pontas:"sp"e" SP "retornam os 645 municípios de São Paulo, como"SP". A 2.4.0 diferenciava maiúsculas de minúsculas e retornava uma lista vazia para"sp". - Só a omissão de
stateCoderetorna a lista completa. Um código vazio ou desconhecido retorna uma lista vazia. - Cada chamada retorna um array novo com objetos novos.
- O JavaScript ainda mantém
getCities(state), obsoleta, que retorna só os nomes. Ela lê qualquer argumento avaliado como falso (falsy) como a lista completa, enquantogetMunicipalitiesretorna lista vazia paranulle string vazia.
| Parâmetro | Tipo | Obrigatório |
|---|---|---|
stateCode | StateCode | não |
| retorna | Municipality[] |
Retorna os municípios brasileiros publicados pelo IBGE: todos os municípios, ou só os de um estado quando stateCode é informado.
- Cada município (
Municipality) é{ code, name, stateCode }, ondecodeé o código IBGE de 7 dígitos. Ordenados por nome no locale "pt-BR". - Só um
stateCodeomitido (ouundefined) pede a lista completa:nulle''retornam[]. stateCodeignora maiúsculas/minúsculas e espaços nas pontas:'sp'retorna os municípios de São Paulo, como'SP'(até a 2.4.0 retornava[]).- Embute todos os 5571 municípios, os mesmos códigos da Divisão Territorial Brasileira 2025 do IBGE (data base 31/12/2025). Veja Tamanho do bundle para carregá-lo sob demanda via
@brazilian-utils/brazilian-utils/get-municipalities.
import { getMunicipalities } from '@brazilian-utils/brazilian-utils';
// Retorna todos os municípios brasileiros (ordenados por nome).
getMunicipalities();
// [
// { code: '5200050', name: 'Abadia de Goiás', stateCode: 'GO' },
// { code: '3100104', name: 'Abadia dos Dourados', stateCode: 'MG' },
// { code: '5200100', name: 'Abadiânia', stateCode: 'GO' },
// { code: '3100203', name: 'Abaeté', stateCode: 'MG' },
// { code: '1500107', name: 'Abaetetuba', stateCode: 'PA' },
// ... mais 5566 itens
// ]
// Retorna todos os municípios do estado de São Paulo.
getMunicipalities('SP');
// [
// { code: '3500105', name: 'Adamantina', stateCode: 'SP' },
// { code: '3500204', name: 'Adolfo', stateCode: 'SP' },
// { code: '3500303', name: 'Aguaí', stateCode: 'SP' },
// { code: '3500402', name: 'Águas da Prata', stateCode: 'SP' },
// { code: '3500501', name: 'Águas de Lindóia', stateCode: 'SP' },
// ... mais 640 itens
// ]
getMunicipalities('ZZ'); // []Fonte: IBGE Localidades
Código: brazilian-utils/javascriptTeste com JavaScript getMunicipalities
Casos de teste compartilhados (10) e o resultado em cada biblioteca municipality.list
Get by code
- JavaScript, biblioteca
- Python, biblioteca
- Go, biblioteca
- Ruby, biblioteca2 casos falham
- Rust, biblioteca
- .NET, biblioteca
- Erlang, biblioteca
Consulta um município pelo código IBGE de 7 dígitos.
codepode ser uma string ou um inteiro não negativo.- De uma string, todo caractere que não é dígito é removido antes, como na 2.4.0:
"355-030-8"e"3550308 SP"encontram São Paulo. - Um número negativo ou fracionário não é lido como código e retorna
null. - O resultado tem o código, o nome e a sigla da UF. Cada chamada retorna um objeto novo.
- Retorna
nullquando os dígitos não são 7 ou não correspondem a nenhum município. - O JavaScript ainda mantém
getMunicipality({ code }), obsoleta, que retorna uma Promise de um par[name, stateCode](ounull) em vez do objeto.
| Parâmetro | Tipo | Obrigatório |
|---|---|---|
code | string | number | sim |
| retorna | Municipality | null |
Busca um município brasileiro pelo código IBGE de 7 dígitos.
- Aceita o código como string ou número inteiro não negativo, com todo caractere que não é dígito removido da string.
- Retorna
{ code, name, stateCode }(Municipality), ounullquando o código não tem 7 dígitos ou não corresponde a nenhum município.
import { getMunicipalityByCode } from '@brazilian-utils/brazilian-utils';
getMunicipalityByCode('3550308');
// { code: '3550308', name: 'São Paulo', stateCode: 'SP' }
getMunicipalityByCode(3550308);
// { code: '3550308', name: 'São Paulo', stateCode: 'SP' }
getMunicipalityByCode('0000000'); // null (código desconhecido)
getMunicipalityByCode('123'); // null (não tem 7 dígitos)Fonte: IBGE Localidades
Código: brazilian-utils/javascriptTeste com JavaScript getMunicipalityByCode
Casos de teste compartilhados (12) e o resultado em cada biblioteca municipality.getByCode
Get code by name
- JavaScript, biblioteca
- Python, biblioteca
- Go, biblioteca
- Ruby, biblioteca
- Rust, biblioteca
- .NET, biblioteca
- Erlang, biblioteca
Retorna o código IBGE de 7 dígitos de um município, dados o nome e o código do estado.
- Recebe um objeto com
municipalityNameestateCode, os dois obrigatórios. O mesmo nome pode pertencer a municípios de estados diferentes (Bom Jesusexiste em PI, RS e outros estados), então o estado é obrigatório. - O nome ignora acentos, cedilha e diferença entre maiúsculas e minúsculas (
ßé lido comoSS). Sequências de espaços em branco viram um espaço e os espaços das pontas são removidos, mas um nome escrito sem um espaço que o nome do IBGE tem não casa (saopaulo). O hífen do nome é mantido. stateCodeignora maiúsculas e minúsculas e os espaços das pontas, como toda função que recebe um estado.- Retorna o código como string. Retorna
nullquando o código do estado não é um estado, quando nenhum município desse estado tem esse nome, quando o nome não é string ou está vazio, e quando os parâmetros estão ausentes ou malformados. - A função JavaScript é síncrona e offline: lê a tabela embutida de 5.571 municípios, a mesma de
municipality.getByCode. A função Python de mesmo nome (get_code_by_municipality_name(municipality_name, uf)) consulta a API do IBGE pela rede. - O JavaScript ainda mantém
getMunicipality({ municipalityName, uf }), obsoleta, que responde da mesma forma e retorna uma Promise.
| Parâmetro | Tipo | Obrigatório |
|---|---|---|
params | GetCodeByMunicipalityNameParams | sim |
params.municipalityName | string | sim |
params.stateCode | string | sim |
| retorna | string | null |
Busca o código IBGE de 7 dígitos de um município brasileiro pelo nome e pela sigla do estado. É a versão offline e síncrona do get_code_by_municipality_name da biblioteca Python, que consulta a API do IBGE pela rede.
- O nome ignora acentos, cedilha e maiúsculas/minúsculas. Sequências de espaços viram um só e os espaços em volta são removidos, mas um nome escrito sem um espaço que o nome do IBGE tem não é encontrado (
'saopaulo'). - Recebe um único objeto,
{ municipalityName, stateCode }(GetCodeByMunicipalityNameParams), com os dois campos obrigatórios. A sigla do estado ignora maiúsculas/minúsculas e espaços em volta, como em todo util que recebe UF. Ela é obrigatória, porque o mesmo nome pode ser de municípios de estados diferentes ('Bom Jesus'existe no PI, no RS e em outros estados). - Retorna o código como string, ou
nullquando a sigla não é de um estado ou nenhum município daquele estado tem esse nome. - Embute os 5571 municípios, a mesma tabela de
getMunicipalityByCode. Veja Tamanho do bundle para carregá-la sob demanda via@brazilian-utils/brazilian-utils/get-code-by-municipality-name.
import { getCodeByMunicipalityName } from '@brazilian-utils/brazilian-utils';
getCodeByMunicipalityName({ municipalityName: 'Conceição do Coité', stateCode: 'Ba' }); // '2908408'
getCodeByMunicipalityName({ municipalityName: 'sao paulo', stateCode: 'sp' }); // '3550308'
getCodeByMunicipalityName({ municipalityName: 'Bom Jesus', stateCode: 'RS' }); // '4302303'
getCodeByMunicipalityName({ municipalityName: 'São Paulo', stateCode: 'RJ' }); // null (não há São Paulo no Rio de Janeiro)
getCodeByMunicipalityName({ municipalityName: 'Município Inexistente', stateCode: 'RS' }); // nullFonte: IBGE Localidades
Código: brazilian-utils/javascriptTeste com JavaScript getCodeByMunicipalityName
Casos de teste compartilhados (23) e o resultado em cada biblioteca municipality.getCodeByName
List by area code
- JavaScript, biblioteca
- Python, biblioteca
- Go, biblioteca
- Ruby, biblioteca
- Rust, biblioteca
- .NET, biblioteca
- Erlang, biblioteca
Retorna os municípios que discam um DDD (o Código Nacional do Plano Geral de Numeração).
areaCodeé lido como emareaCode.getInfo: uma string da qual todo caractere que não é dígito é removido ("(61)"funciona), ou um inteiro não negativo.- Retorna uma lista vazia para um DDD fora dos 67 em uso e para um número negativo ou fracionário.
- Ordem: primeiro os municípios do estado sede do DDD, depois os dos outros estados de
AreaCodeInfo.stateCodes. Dentro de cada estado, por nome (ordenação pt-BR). - Quatro DDDs cruzam uma divisa: o 61 também atende 12 municípios de Goiás, o 42 atende Porto União (SC), o 47 atende Rio Negro (PR) e o 49 atende Barracão (PR).
- Cada item tem o código IBGE de 7 dígitos, o nome e a sigla da UF. Cada chamada retorna um array novo com objetos novos.
| Parâmetro | Tipo | Obrigatório |
|---|---|---|
areaCode | string | number | sim |
| retorna | Municipality[] |
Lista os municípios brasileiros que usam um DDD (código de área), segundo a tabela da Anatel dos Códigos Nacionais em vigor.
- Aceita o DDD como o
getAreaCodeInfo: string (com todo caractere que não é dígito removido) ou número inteiro não negativo. - Retorna um array de
{ code, name, stateCode }(Municipality): primeiro os municípios do estado sede, depois os do outro estado em que o DDD entra, cada estado em ordem alfabética. Retorna[]quando o DDD não está em uso.
import { getMunicipalitiesByAreaCode } from '@brazilian-utils/brazilian-utils';
getMunicipalitiesByAreaCode(68).length; // 22 (todos os municípios do Acre)
getMunicipalitiesByAreaCode('(61)').length; // 13 (Brasília e 12 municípios de Goiás)
getMunicipalitiesByAreaCode('47').at(-1); // { code: '4122305', name: 'Rio Negro', stateCode: 'PR' }
getMunicipalitiesByAreaCode('20'); // []Fonte: Resolução Anatel nº 749/2022, Códigos Nacionais da Anatel, tabela da Anatel dos Códigos Nacionais por município (21/09/2026).
Código: brazilian-utils/javascriptTeste com JavaScript getMunicipalitiesByAreaCode
Casos de teste compartilhados (9) e o resultado em cada biblioteca municipality.listByAreaCode
Guias
- Estado e cidadeEscolha um estado e as cidades dele carregam sob demanda, com Brazilian Utils em React, Angular, Vue e JavaScript puro.
- Guia de migração: v1 para v2Como migrar um projeto do Brazilian Utils v1.x para a v2: os exports renomeados, os aliases descontinuados que ainda funcionam e um checklist para seguir.
Fontes oficiais
- servicodados.ibge.gov.br/api/docs/…/localidades
- geoftp.ibge.gov.br/organizacao_do_territorio/estrutura_territorial/…/DTB_2025.zip
- informacoes.anatel.gov.br/paineis/areas-tarifarias/…/codigos-nacionais
- anatel.gov.br/dadosabertos/paineis_de_dados/…/pgcn.zip
Veja também Estados (UF), CEP, DDD
Atualizado em
