Acompanhar status (SSE)

Abre uma conexão Server-Sent Events para receber atualizações de status do lote em tempo real.

GEThttps://external-api.arbitralis.com.br/api/external/v1/notifications/batches/{batchId}/status-stream
AutenticaçãoX-API-KEYAssíncrono — o processamento continua depois da resposta

Abre uma conexão Server-Sent Events (SSE) que entrega as mudanças de status do lote em tempo real. Alternativa ao polling em Obter um lote — e mais econômica, já que uma conexão aberta consome apenas uma requisição do seu limite.

O primeiro evento traz o estado atual do lote; os seguintes chegam a cada mudança.

Parâmetros de rota
batchIduuidobrigatório

Identificador do lote.

Formato do evento

Todos os eventos usam o nome status e trazem o payload em JSON:

Frame SSE
event: status
data: {"loteId":"1a2b…","empresaId":"9f8e…","status":"ENVIANDO","totais":{…},"dataAtualizacao":"2026-08-07T15:02:11.000Z"}
CampoDescrição
loteIdIdentificador do lote
empresaIdEmpresa dona do lote
escritorioIdWorkspace dono do lote
statusStatus atual
totaisContagens de itens por situação
dataAtualizacaoMomento da atualização (ISO 8601)

Headers da conexão

HeaderValor
Content-Typetext/event-stream
Cache-Controlno-cache
Connectionkeep-alive

Boas práticas

  • Encerre a conexão ao receber um status terminal (ENVIADO, FINALIZADO) — conexões abertas indefinidamente consomem recursos dos dois lados.
  • Reconecte com backoff se a conexão cair. Ao reconectar, o primeiro evento traz o estado atual, então você não perde o contexto.
  • Não abra um stream por item — o stream é por lote.

Streaming pode estar indisponível

Se a infraestrutura de streaming estiver fora do ar, o endpoint responde 503. Trate esse caso caindo para o polling em Obter um lote.

Ambientes serverless

Em funções serverless com timeout curto, SSE raramente é a melhor escolha — a conexão morre junto com a função. Prefira polling com intervalo crescente nesses ambientes.

Erros

CódigoCausa
401API key ausente, inválida ou inativa
404Lote não encontrado neste workspace
429Limite de requisições excedido
503Streaming de status temporariamente indisponível
Requisição
curl -N -X GET "https://external-api.arbitralis.com.br/api/external/v1/notifications/batches/1a2b3c4d-5e6f-7a8b-9c0d-1e2f3a4b5c6d/status-stream" \
  -H "X-API-KEY: arb_live_SUA_CHAVE" \
  -H "Accept: text/event-stream"
Resposta
{
  "loteId": "1a2b3c4d-5e6f-7a8b-9c0d-1e2f3a4b5c6d",
  "empresaId": "9f8e7d6c-5b4a-4928-9706-f5e4d3c2b1a0",
  "escritorioId": "2b3c4d5e-6f7a-4b9c-8d1e-2f3a4b5c6d7e",
  "status": "PROCESSANDO",
  "totais": {
    "totalItens": 250,
    "validos": 0,
    "invalidos": 0,
    "enviados": 0,
    "pendentes": 250
  },
  "dataAtualizacao": "2026-08-07T14:32:10.000Z"
}