Brazilian municipalities socioeconomic and geospatial data.
Dados socioeconômicos e geoespaciais de municípios brasileiros.
Installation / Instalação
npm install infomance
Quick Start / Início Rápido
import { InfomanceClient } from 'infomance';
const client = new InfomanceClient({
apiKey: 'your-api-key',
});
const saopaulo = await client.getMunicipality('3550308');
console.log(saopaulo);
const municipalities = await client.listMunicipalities({ state: 'SP', limit: 10 });
console.log(municipalities.items);
const consolidated = await client.getConsolidatedCity('3550308');
console.log(consolidated);
API Reference
Indicators
const municipalities = await client.listMunicipalities({
state: 'SP',
limit: 100
});
const municipality = await client.getMunicipality('3550308');
const economic = await client.getMunicipalityEconomic('3550308');
const infra = await client.getMunicipalityInfrastructure('3550308');
const pibRanking = await client.getIndicatorsRanking('pib', {
limit: 10,
state: 'SP'
});
COMEX (Agricultural Exports)
const overview = await client.getComexOverview();
const exports = await client.getComexMunicipality('3550308');
const timeseries = await client.getComexMunicipalityTimeseries('3550308');
const products = await client.getComexProducts({ limit: 20 });
const ranking = await client.getComexRanking('value_usd', { limit: 10 });
SICOR (Rural Credit)
const overview = await client.getSicorOverview();
const spData = await client.getSicorState('SP');
const byFinalidade = await client.getSicorByFinalidade();
const byAtividade = await client.getSicorByAtividade();
Health (CNES)
const establishments = await client.listHealthEstablishments({
state: 'SP',
type: 'hospital',
limit: 50
});
const hospital = await client.getHealthEstablishment('2077485');
const healthStats = await client.getMunicipalityHealthStats('3550308');
const results = await client.searchHealthEstablishments('einstein');
Education (INEP)
const schools = await client.listSchools({
state: 'SP',
network: 'municipal'
});
const idebRanking = await client.getIDEBRanking({ limit: 20 });
const education = await client.getMunicipalityEducation('3550308');
Security
const crimeStats = await client.listCrimeStats({ state: 'SP', year: 2023 });
const overview = await client.getSecurityOverview();
const cityCrimes = await client.getMunicipalityCrimeStats('sao_paulo');
AGRO (Agriculture)
const municipalities = await client.listAgroMunicipalities({ state: 'MT' });
const agro = await client.getAgroMunicipality('5103403');
const landUse = await client.getAgroLandUse('5103403');
const emissions = await client.getAgroEmissions('5103403');
POIs (Points of Interest)
const pois = await client.searchPOIs({
city: 'sao_paulo',
category: 'restaurant',
limit: 20
});
const nearby = await client.searchNearbyPOIs(-23.55, -46.63, 1000, {
category: 'bank'
});
const stats = await client.getCityPOIStats('sao_paulo');
Consolidated
Get all data about a city in a single call:
const city = await client.getConsolidatedCity('3550308');
console.log(city.indicators);
console.log(city.health);
console.log(city.education);
console.log(city.security);
console.log(city.employment);
console.log(city.agro);
Export to CSV/Excel
const csv = await client.exportToCSV('/api/v1/indicators/municipalities', {
state: 'SP',
limit: 100
});
const excel = await client.exportToExcel('/api/v1/comex/products', {
year: 2024
});
Error Handling
import { InfomanceClient, InfomanceError } from 'infomance';
try {
const data = await client.getMunicipality('invalid-code');
} catch (error) {
if (error instanceof InfomanceError) {
console.error(`API Error ${error.status}: ${error.message}`);
} else {
console.error('Network error:', error);
}
}
Configuration
const client = new InfomanceClient({
apiKey: 'your-api-key',
baseUrl: 'https://api.infomance.com.br',
timeout: 30000,
});
TypeScript Support
The SDK is fully typed. All response types are exported:
import {
Municipality,
MunicipalityIndicators,
HealthEstablishment,
School,
POI,
} from 'infomance';
Security / Segurança
Credential Storage / Armazenamento de Credenciais
Never hardcode your API key in source code. Use environment variables:
Nunca hardcode sua API key no código. Use variáveis de ambiente:
import { InfomanceClient } from 'infomance';
const apiKey = process.env.INFOMANCE_API_KEY;
if (!apiKey) {
throw new Error('INFOMANCE_API_KEY not set');
}
const client = new InfomanceClient({ apiKey });
Secure Logging / Logging Seguro
The SDK never logs your API key. When using the logger option, only the following is logged:
O SDK nunca loga sua API key. Ao usar a opção logger, apenas o seguinte é logado:
- HTTP method and URL / Método HTTP e URL
- Response status code and timing / Status code e tempo de resposta
- Error messages (without credentials) / Mensagens de erro (sem credenciais)
const client = new InfomanceClient({
apiKey: process.env.INFOMANCE_API_KEY!,
logger: console,
});
TLS/SSL
All connections use HTTPS with TLS certificate verification. The SDK does not provide an option to disable SSL verification.
Todas as conexões usam HTTPS com verificação de certificado TLS. O SDK não oferece opção para desabilitar a verificação SSL.
Rate Limits
| Free | 1,000 |
| Starter | 10,000 |
| Professional | 50,000 |
| Business | 200,000 |
Documentation
Support