api-br-wrapper
Version:
**API-BR-Wrapper** é uma biblioteca Node.js para facilitar o acesso a diversas **APIs públicas brasileiras**. Com ela, você pode integrar informações como dados do IBGE, consulta de CNPJs na Receita Federal, rastreio de encomendas nos Correios e muito mai
44 lines (36 loc) • 1.35 kB
text/typescript
import axios from "axios";
import { CityData } from "./interfaces/CityData";
import { StateData } from "./interfaces/StateData";
import { RegionData } from "./interfaces/RegionData";
import dotenv from 'dotenv';
dotenv.config();
const IBGE_BASE_URL = process.env.IBGE_BASE_URL;
const IBGE = {
async getPopulationByCity(cityCode: number): Promise<CityData> {
try {
const response = await axios.get<CityData>(
`${IBGE_BASE_URL}/localidades/municipios/${cityCode}`
);
return response.data;
} catch (error: any) {
throw new Error(`Erro ao acessar os dados do IBGE: ${error.message}`);
}
},
async getStates(): Promise<StateData[]> {
const response = await axios.get(`${IBGE_BASE_URL}/localidades/estados`);
return response.data;
},
async getCitiesByState(stateId: number): Promise<CityData[]> {
const response = await axios.get(`${IBGE_BASE_URL}/localidades/estados/${stateId}/municipios`);
return response.data;
},
async getRegions(): Promise<RegionData[]> {
try {
const response = await axios.get<RegionData[]>(`${IBGE_BASE_URL}/localidades/regioes`);
return response.data;
} catch (error: any) {
throw new Error(`Erro ao obter a lista de regiões: ${error.message}`);
}
},
};
export default IBGE;