Obter um lote

Retorna o resumo de um lote de negociações com as contagens agregadas de itens por status.

GEThttps://external-api.arbitralis.com.br/api/external/v1/extrajudicial/negotiations/batches/{id}
AutenticaçãoX-API-KEYSíncrono — a resposta já traz o resultado

Retorna o resumo de um lote de negociações: título, status e contagens agregadas por situação dos itens. É o endpoint de acompanhamento depois de criar um lote ou enviar uma planilha.

Parâmetros de rota
iduuidobrigatório

Identificador do lote.

Status do lote

StatusSignificado
PENDINGAguardando confirmação. Chame Confirmar lote
VALIDATINGPlanilha em leitura e validação
PROCESSINGAgentes em execução nos itens válidos
COMPLETEDProcessamento concluído
FAILEDFalha no processamento
CANCELEDLote cancelado

Contagens

CampoSignificado
totalTotal de itens no lote
pendingAguardando processamento
validPassaram na validação
processingSendo processados agora
existingIgnorados — já existe negociação ativa para a contraparte
conflictConflito de telefone — outra negociação ativa usa o mesmo número
errorFalharam na validação ou no processamento

existing e conflict não são erros

Esses dois números refletem a proteção contra abordagem duplicada: a contraparte já está em uma negociação ativa. Não é falha da sua integração — é o comportamento esperado de idempotência. Ver Idempotência.

Acompanhando o processamento

Polling até concluir
const TERMINAIS = ['COMPLETED', 'FAILED', 'CANCELED'];

async function aguardarConclusao(batchId, apiKey, maxTentativas = 30) {
  const base = 'https://external-api.arbitralis.com.br/api/external/v1';

  for (let tentativa = 0; tentativa < maxTentativas; tentativa += 1) {
    const response = await fetch(`${base}/extrajudicial/negotiations/batches/${batchId}`, {
      headers: { 'X-API-KEY': apiKey },
    });

    const { data } = await response.json();

    if (TERMINAIS.includes(data.status)) {
      return data;
    }

    await new Promise((resolve) => setTimeout(resolve, 15_000));
  }

  throw new Error(`Lote ${batchId} não concluiu no tempo esperado`);
}

Espace as verificações

Um lote grande leva minutos para processar. Verificar a cada 15 ou 30 segundos é suficiente e preserva o seu limite de 60 requisições por minuto.

Erros

CódigoCausa
401API key ausente, inválida ou inativa
404Lote não encontrado neste workspace
429Limite de requisições excedido
Requisição
curl -X GET "https://external-api.arbitralis.com.br/api/external/v1/extrajudicial/negotiations/batches/1a2b3c4d-5e6f-7a8b-9c0d-1e2f3a4b5c6d" \
  -H "X-API-KEY: arb_live_SUA_CHAVE"
Resposta
{
  "success": true,
  "data": {
    "batchId": "1a2b3c4d-5e6f-7a8b-9c0d-1e2f3a4b5c6d",
    "title": "Campanha agosto/2026",
    "status": "PROCESSING",
    "totals": {
      "total": 250,
      "pending": 0,
      "valid": 231,
      "processing": 12,
      "existing": 8,
      "conflict": 3,
      "error": 8
    },
    "createdAt": "2026-08-07T14:32:10.000Z",
    "updatedAt": "2026-08-07T15:10:44.000Z"
  }
}