Skip to main content
GET
/
api
/
v1
/
bureau
/
runs
/
{run_id}
Obter status de um run
curl --request GET \
  --url https://admin.kycert.com.br/api/v1/bureau/runs/{run_id} \
  --header 'x-api-key: <api-key>'
{ "run_id": "550e8400-e29b-41d4-a716-446655440000", "status": "completed", "decision": "approved", "operative_decision": null, "risk_band": "baixo", "external_id": "cust_abc123", "metadata": { "channel": "app_mobile" }, "created_at": "2026-06-12T14:00:00Z", "completed_at": "2026-06-12T14:00:18Z", "livemode": true }

Authorizations

x-api-key
string
header
required

API key no header x-api-key (recomendado)

Headers

x-kycert-api-version
string
Example:

"2026-06-03"

Path Parameters

run_id
string<uuid>
required

ID do run retornado pelo POST /runs

Response

Run finalizado — resultado disponível

run_id
string<uuid>
status
enum<string>

Status atual do run:

  • queued / pending / running — em processamento
  • completed — finalizado com resultado
  • blocked — bloqueado por regra crítica
  • pending_review — aguardando análise manual do compliance officer
  • partial — resultado parcial (algumas fontes falharam)
  • failed — falha técnica — reenvie o run
Available options:
queued,
pending,
running,
completed,
blocked,
pending_review,
partial,
failed
decision
enum<string> | null

Decisão do bureau:

  • approved — aprovado para prosseguir
  • rejected — bloqueado por regra crítica (run com status blocked)
  • review — requer análise manual do compliance officer
  • null — run ainda em andamento ou com falha técnica
Available options:
approved,
rejected,
review
operative_decision
enum<string> | null

Decisão operacional — difere de decision apenas quando fontes tier-1 falharam (ex: Receita Federal offline). Nesses casos, decision pode ser review mas operative_decision indica o que o engine decidiu com base nas fontes disponíveis.

Valores possíveis: approved, rejected, review, null.

Quando operative_decision é null: o template não configurou decisão operacional separada — tratar decision como definitivo.

Regra do integrador: sempre checar operative_decision antes de liberar uma operação. Se operative_decision for rejected, bloquear independente do valor de decision.

Available options:
approved,
rejected,
review
risk_band
enum<string> | null

Classificação de risco calculada pelo engine:

  • baixo — risco baixo, sem apontamentos relevantes
  • medio — risco médio, apontamentos de pendência identificados
  • alto — risco alto, apontamentos críticos identificados
  • null — run ainda não concluído
Available options:
baixo,
medio,
alto
external_id
string | null
metadata
object
created_at
string<date-time>
completed_at
string<date-time> | null
livemode
boolean