FiscalAPI
Monitor SEFAZ

Status das SEFAZs

Consulte o status da SEFAZ de cada estado para NF-e, NFC-e e CT-e.

GET /api/v1/sefaz/status

Retorna o status dos serviços de autorização da SEFAZ por estado, para NF-e, NFC-e e CT-e. Cada resposta reflete uma leitura feita há no máximo 2 minutos; o horário dela vem em timestamp.

Útil para verificar se uma SEFAZ está operando normalmente antes de enviar documentos fiscais, ou para exibir um painel de status no seu sistema.

Autenticação

Envie sua chave no header X-API-Key. Veja Autenticação para detalhes.

Parâmetros de consulta

NomeTipoObrigatórioPadrãoDescrição
docstringNãonfeTipo de documento fiscal: nfe, nfce ou cte.

Exemplos de código

curl -X GET "https://api.fiscalapi.com.br/api/v1/sefaz/status?doc=nfe" \
  -H "X-API-Key: fapi_sua_chave_aqui"
const response = await fetch(
  "https://api.fiscalapi.com.br/api/v1/sefaz/status?doc=nfe",
  { headers: { "X-API-Key": "fapi_sua_chave_aqui" } }
);
const data = await response.json();

// Filtrar estados com problema
const problemas = data.states.filter(s => s.status_code > 1);
console.log(`${problemas.length} estados com problema`);
import requests

response = requests.get(
    "https://api.fiscalapi.com.br/api/v1/sefaz/status",
    headers={"X-API-Key": "fapi_sua_chave_aqui"},
    params={"doc": "nfe"},
)
data = response.json()

# Filtrar estados com problema
problemas = [s for s in data["states"] if s["status_code"] > 1]
print(f"{len(problemas)} estados com problema")
$response = Http::withHeaders([
    'X-API-Key' => 'fapi_sua_chave_aqui',
])->get('https://api.fiscalapi.com.br/api/v1/sefaz/status', [
    'doc' => 'nfe',
]);
$data = $response->json();

// Filtrar estados com problema
$problemas = array_filter($data['states'], fn($s) => $s['status_code'] > 1);
var client = new HttpClient();
client.DefaultRequestHeaders.Add("X-API-Key", "fapi_sua_chave_aqui");
var response = await client.GetAsync(
    "https://api.fiscalapi.com.br/api/v1/sefaz/status?doc=nfe"
);
var json = await response.Content.ReadAsStringAsync();

Resposta

Campos de nível superior

CampoTipoDescrição
docstringTipo de documento consultado: nfe, nfce ou cte.
timestampstringMomento da leitura, em ISO 8601 (UTC).
statesarrayLista com o status de cada estado (27 itens).

Campos de cada estado (states[])

CampoTipoDescrição
ufstringSigla do estado (ex: SP, MT, RJ).
status_codeintegerCódigo numérico do status (0 a 5).
statusstringDescrição legível do status.
status_avgnumberMédia dos códigos de status no período (de 1 a 5; 0.0 na UF sem leitura). O status_code é esse valor arredondado.

Códigos de status

CódigoStatusDescrição
0Indisponivel (sem acento, como a API devolve)Sem leitura para esta UF no momento da coleta. Estado transitório, costuma normalizar no ciclo seguinte.
1NormalSEFAZ respondendo dentro do esperado.
2LentoRespostas mais lentas que o normal.
3Muito lentoRespostas muito lentas.
4ErroSEFAZ retornando erro.
5TimeoutSEFAZ não respondeu dentro do tempo limite.

Exemplo de resposta

{
  "doc": "nfe",
  "timestamp": "2026-04-06T15:30:00.000000+00:00",
  "states": [
    {
      "uf": "AC",
      "status_code": 2,
      "status": "Lento",
      "status_avg": 2.1834
    },
    {
      "uf": "AL",
      "status_code": 1,
      "status": "Normal",
      "status_avg": 1.0712
    },
    {
      "uf": "AM",
      "status_code": 1,
      "status": "Normal",
      "status_avg": 1.1234
    },
    {
      "uf": "SP",
      "status_code": 1,
      "status": "Normal",
      "status_avg": 1.0521
    }
  ]
}

A resposta sempre inclui as 27 UFs brasileiras (26 estados + DF), ordenadas alfabeticamente pela sigla. Quando uma UF fica sem leitura, ela vem com status_code: 0 ("status": "Indisponivel") em vez de ser omitida.

Casos de uso

  • Painel de status: Exiba um dashboard com o status de cada SEFAZ para sua equipe fiscal.
  • Verificação pré-envio: Antes de transmitir um lote de NF-e, verifique se a SEFAZ do estado está operando normalmente.
  • Alertas automáticos: Configure alertas quando um estado muda de Normal para Lento, Erro ou Timeout.
  • Decisão de contingência: Use o status para decidir automaticamente quando ativar o modo de contingência (SVC-AN/SVC-RS).

Códigos de erro

CódigoHTTP StatusDescrição
MONITOR_INDISPONIVEL502Não foi possível consultar o status das SEFAZs no momento.
Erro de validação (detail)422O parâmetro doc deve ser nfe, nfce ou cte.

Planos e preços

Esta pagina foi util?

On this page