cid.api.br
⚠ Atenção: Dados de referência. Consulte sempre a fonte oficial: OMS (CID-11) · DATASUS (CID-10)

API

Os mesmos dados que alimentam este site estão disponíveis como JSON estático. Sem token, sem rate limit, sem cadastro.

Endpoints

URL Tamanho Conteúdo
https://cid.api.br/cid10.json 5160 KB 14.496 registros CID-10 (DATASUS)
https://cid.api.br/cid11.json 6531 KB 30.306 registros CID-11 PT-BR (OMS)
https://cid.api.br/inss.json 18 KB 152 códigos CID-10 × INSS (carência, IRPF, NTEP)

Exemplos

# Baixar catálogo CID-10
curl -L https://cid.api.br/cid10.json -o cid10.json

# Filtrar categorias com jq
jq '[.[] | select(.tipo=="categoria")]' cid10.json

# Verificar mapeamento INSS de B20
curl -s https://cid.api.br/inss.json | jq '.porCodigo.B20'

JavaScript

const cid10 = await fetch('https://cid.api.br/cid10.json').then(r => r.json());
const inss  = await fetch('https://cid.api.br/inss.json').then(r => r.json());

const b20 = cid10.find(r => r.codigo === 'B20');
console.log(b20.descricao, inss.porCodigo[b20.codigo]);

Tipos (TypeScript)

// CID-10
type CID10Record = {
  codigo: string;        // "A00.1"
  descricao: string;
  capitulo: string;      // "I" (romano)
  capituloDesc: string;
  grupo: string;         // "A00-A09"
  grupoDesc: string;
  categoria: string;     // "A00"
  categoriaDesc: string;
  tipo: "categoria" | "subcategoria";
};

// CID-11
type CID11Record = {
  codigo: string;              // "1A00"
  descricao: string;           // PT-BR
  bloco: string;               // BlockId, ex "BlockL1-1A0"
  blocoDesc: string;
  capitulo: string;            // "01"
  capituloDesc: string;
  tipo: "categoria" | "extensao";
  cid10Equivalente?: string;   // "B20" quando OMS expõe
};

// INSS
type INSSDataset = {
  porCodigo: Record<string, {
    carencia?: { fonte: string };
    irpf?:     { fonte: string };
    ntep?:     { fonte: string; cnaes: { codigo: string; descricao: string }[] };
  }>;
  totais: { carencia: number; irpf: number; ntep: number };
  versao: string;   // "YYYY-MM-DD"
};

Limites & licença

  • Sem autenticação, sem rate limit prático (CDN Firebase).
  • JSON cacheado 1h (Cache-Control: max-age=3600).
  • Dados públicos (DATASUS, OMS, leis brasileiras) — domínio público / governamental.
  • Pedido educado: cite cid.api.br quando publicar em produção.

Como os dados são extraídos →