A estrutura RAS (Registro de Atendimento Simplificado) é baseada em um conjunto mínimo de informações em saúde coletadas pelos Sistemas PEC e CDS, e deverá ser adotada como processo padrão para transmissão dos dados ao Sistema de Informação em Saúde para a Atenção Básica (SISAB).
Este pacote oferece duas funcionalidades principais:
- Exportação de fichas CDS/RAS — Geração de arquivos Thrift para envio ao e-SUS APS (funcionalidade original)
- Acesso a dados do SISAB — Consulta à API REST pública do SISAB para obter indicadores de cobertura da Atenção Primária à Saúde
Coloque no composer.json:
"denissonleal/ras": "v0.5.x"depois rode o composer update
- PHP >= 5.6
- Extensão cURL habilitada
- Extensão JSON habilitada
- Conexão com a internet (para acesso à API do SISAB)
O módulo SISAB permite consultar dados públicos de cobertura da Atenção Primária à Saúde diretamente da API REST do Ministério da Saúde (relatorioaps.saude.gov.br).
| Tipo | Descrição | Disponibilidade |
|---|---|---|
aps |
Cobertura da Atenção Primária à Saúde (eSF, eAP, eSFR, eCR, eAPP) | 2019–atual |
ab |
Cobertura da Atenção Básica (histórico) | 2007–2020 |
sb |
Cobertura de Saúde Bucal | 2024–atual |
acs |
Cobertura de Agentes Comunitários de Saúde | 2007–atual |
pns |
Cobertura PNS (Pesquisa Nacional de Saúde) | 2020–2023 |
| Nível | Descrição |
|---|---|
BRASIL |
Total nacional |
REGIAO |
5 macrorregiões |
UF |
27 Unidades Federativas |
MUNICIPIO |
~5.570 municípios |
<?php
require_once 'vendor/autoload.php';
use Sisab\SisabClient;
use Sisab\SisabHelper;
use Sisab\SisabException;
// Inicializar o cliente
$client = new SisabClient();
// Cobertura APS por UF em janeiro/2024
$dados = $client->getCoberturaAps('UF', '202401', '202401');
foreach ($dados as $uf) {
echo $uf['sgUf'] . ': ' . $uf['qtCobertura'] . '%' . PHP_EOL;
}$helper = new SisabHelper();
// Cobertura APS nacional
$nacional = $helper->coberturaApsNacional(2024, 1);
// Cobertura APS por estado
$sp = $helper->coberturaApsPorEstado('SP', 2024, 1);
// Todos os municípios de MG
$municipios = $helper->coberturaApsMunicipios('MG', 2024, 6);
// Cobertura por região
$regioes = $helper->coberturaApsPorRegiao(2024, 1);
// Comparar todos os estados (ordenado por cobertura)
$ranking = $helper->compararCoberturaApsEstados(2024, 1);
// Buscar município específico por código IBGE
$saoPaulo = $helper->coberturaApsMunicipio('355030', 2024, 1);
// Tendência anual
$tendencia = $helper->tendenciaApsAnual('BRASIL', 2024);| Método | Descrição |
|---|---|
getCoberturaAps($nivel, $compInicio, $compFim, $codigoUf) |
Cobertura APS (2019+) |
getCoberturaAb($nivel, $compInicio, $compFim, $codigoUf) |
Cobertura AB histórica (2007-2020) |
getCoberturaSaudeBucal($nivel, $compInicio, $compFim, $codigoUf) |
Cobertura Saúde Bucal (2024+) |
getCoberturaAcs($nivel, $compInicio, $compFim, $codigoUf) |
Cobertura ACS (2007+) |
getCoberturaPns($nivel, $compInicio, $compFim, $codigoUf) |
Cobertura PNS (2020-2023) |
getUfMap() |
Mapeamento sigla UF → código IBGE |
ufParaCodigo($sigla) |
Converte sigla UF para código IBGE |
getTiposRelatorio() |
Lista tipos de relatório disponíveis |
getNiveisGeograficos() |
Lista níveis geográficos disponíveis |
As competências seguem o formato YYYYMM (ano com 4 dígitos + mês com 2 dígitos):
// Janeiro de 2024
$compInicio = '202401';
$compFim = '202401';
// Ano inteiro de 2023
$compInicio = '202301';
$compFim = '202312';use Sisab\SisabException;
try {
$dados = $client->getCoberturaAps('UF', '202401', '202401');
} catch (SisabException $e) {
echo 'Erro SISAB: ' . $e->getMessage();
}| Variável | Descrição |
|---|---|
nuComp |
Competência (MM/YYYY) |
sgUf |
Sigla da UF |
noUfAcentuado |
Nome da UF com acentos |
qtPopulacao |
População |
qtEsf |
Quantidade equipes eSF |
qtEap30 |
Quantidade equipes eAP 30h |
qtEap20 |
Quantidade equipes eAP 20h |
qtCobertura |
Cobertura (%) |
coMunicipioIbge |
Código IBGE do município (nível MUNICIPIO) |
noMunicipioAcentuado |
Nome do município com acentos (nível MUNICIPIO) |
Para a lista completa de variáveis de cada endpoint, consulte Sisab\SisabConstants.
ras/
├── composer.json
├── index.php
├── src/
│ ├── sisab/ # Módulo de acesso a dados do SISAB
│ │ ├── SisabClient.php # Cliente principal da API REST
│ │ ├── SisabConstants.php # Constantes e metadados
│ │ ├── SisabException.php # Classe de exceção
│ │ └── SisabHelper.php # Métodos auxiliares e atalhos
│ ├── cds/ # Fichas CDS (Thrift)
│ ├── transport/ # Transporte de dados (Thrift)
│ └── thrift/ # Biblioteca Apache Thrift
├── examples/
│ └── sisab_exemplo.php # Exemplo completo de uso
└── test_sisab.php # Testes automatizados
A API pública do SISAB está disponível em:
https://relatorioaps-prd.saude.gov.br
| Endpoint | Descrição |
|---|---|
/cobertura/aps |
Cobertura APS |
/cobertura/ab |
Cobertura AB (histórico) |
/cobertura/sb/v2 |
Cobertura Saúde Bucal |
/cobertura/acs |
Cobertura ACS |
/cobertura/pns |
Cobertura PNS |
| Parâmetro | Descrição | Valores |
|---|---|---|
unidadeGeografica |
Nível geográfico | BRASIL, REGIAO, UF, MUNICIPIO |
nuCompInicio |
Competência inicial | YYYYMM |
nuCompFim |
Competência final | YYYYMM |
coUf |
Código IBGE da UF (opcional) | 11–53 |
https://relatorioaps-prd.saude.gov.br/cobertura/aps?unidadeGeografica=UF&nuCompInicio=202401&nuCompFim=202401
MIT