Exato - Candidate Score

Candidate Score - Evaluate Many Candidates Against One Position

Scores N already-extracted candidates against one already-extracted job position. The response is 200 even when individual items fail: read completed, pending and invalid, whose lengths always sum to the number of items sent. A sync call returns at max_wait_seconds with whatever finished, and a pending item then carries a NULL uid - retry it (the abandoned run keeps going and its result is cached for 30 days, so the retry is a cache hit). An async call returns at once with a real uid per item, polled with exec_mode=result. PDF: one report per item at d.exa.to/{uid}.pdf while render_html is on (the default here). It is produced AFTER the response, so allow a few seconds on a sync call; on an async call it already exists once the poll reports that item complete. While a render is still in flight the PDF endpoint answers success_with_remarks rather than the bytes.

post/candidate-score/evaluate-candidates

Request

  • Base URL: https://api.exato.digital
  • URL: https://api.exato.digital/candidate-score/evaluate-candidates
  • Auth: API key in header token

Query parameters

test_modeboolean

Modo Teste (retorna dados simulados)

lightweightboolean

Modo Lightweight (uso interno)

Request body application/x-www-form-urlencoded

jd_extraction_jsonstring required

JD extraction JSON (SUB 19104 output). Required.

jd_embeddingnumber[]

JD document embedding (optional; skips one recompute per item)

jd_embedder_tagstring

Embedder tag for jd_embedding

include_job_in_reportboolean

Include one job-position page after report page 1 (default false).

jd_posting_textstring

Original job-posting text for the opt-in job page (optional, max 20,000 characters).

precision_presetstring

Turbo | Fast | Balanced | Precise | Maximum | Bulk | BulkSelfHosted | BulkGlobal | BulkFast | BalancedGoogle | Express. Express is an opt-in latency tier: fastest, costs more per call, and trades scoring accuracy for speed. Applies to every item. Omit to get the channel default (BalancedGoogle over REST).

scoring_providerstring

Auto | Gpt54Mini | Sonnet. Applies to every item.

render_htmlboolean

Render each item's HTML report, which is what the PDF at d.exa.to/{uid}.pdf is made from (default TRUE on this route).

pre_filter_enabledboolean

Per-request switch for the pre-filter gate on every item. Default ON: null defers to enabled; false = explicit opt-out (always LLM-score). A caller whose candidates already came out of the ranking has already run this gate.

include_interview_checklistboolean

Include the interview checklist on every item (default false). Adds ~3.8s and one provider call per item.

include_candidate_feedback_letterboolean

Include the feedback letter on every item (default false). Adds ~2.0s and one provider call per item.

inconsistency_detection_enabledboolean

Run inconsistency detection on every item (default false). Rule engine, no LLM call.

max_wait_secondsinteger

Seconds to wait before returning partial results (sync calls only). Default 25, range 1-120.

Response

Success

ApiResultType'Success' | 'SuccessWithRemarks' | 'InvalidInput' | 'DataUnavailable' | 'NotFound' | 'InvalidParameters' | 'UnsupportedCombination' | 'RemoteUnavailable' | 'Timeout' | 'RetryLimitReached' | 'RemoteError' | 'InProgress' | 'InsufficientCredits' | 'ConcurrentLimitReached' | 'TransactionUnavailable' | 'AccessDenied' | 'TransactionCancelled' | 'Created' | 'Updated' | 'Deleted' | 'InternalError' | 'ValidationFailed' | 'Conflict' | 'ResourceLocked' | 'PendingApproval' | 'Approved' | 'Rejected' | 'Cancelled' | 'Paused' | 'Resumed'

Novo tipo de resultado unificado para queries e operações administrativas. Substitui TransactionResultType com melhor semântica.

BalanceInBrlnumber double

Saldo atual em BRL.

BalanceInCreditsinteger

Saldo atual em créditos.

DataSourceCategorystring

Categoria da fonte de dados

Datestring date-time

Data da transação.

ElapsedTimeInMillisecondsinteger

Tempo de execução (em milisegundos).

ExecutedDataSourceNamestring

Nome de exibição do tipo de consulta que realmente executou.

ExecutedDataSourceTypeIdinteger

Id do tipo de consulta que realmente executou (o gravado na transação), que pode diferir do tipo pedido quando a rota é genérica por UF ou quando um master delega a uma sub-consulta.

HasOriginalFilesboolean

Indica que a transação carrega arquivos originais da fonte (a certidão emitida, por exemplo) para download em OriginalFilesUrl. Falso não significa que a URL não exista: ela é montada sempre.

HasPdfboolean

Indica que existe PDF de comprovante do resultado.

Messagestring

Mensagem.

OriginalFilesUrlstring

Url para download dos arquivos originais da transação (quando disponíveis).

OutdatedResultboolean

Indica que o resultado é datado.

PdfUrlstring

Url para download do arquivo de comprovante em PDF da transação (quando disponível).

ResultSubtypestring

Subtipo específico do resultado para fornecer contexto adicional (ex: 'duplicate_name', 'invalid_cpf').

ResultTypeCodeinteger

Código numérico do resultado (compatível com TransactionResultTypeCode mas extensível).

TotalCostnumber double

Internal use only.

TotalCostInCreditsinteger

Custo total da transação em créditos.

TransactionResultType'Success' | 'SuccessWithRemarks' | 'InvalidInputData' | 'UnavailableData' | 'EntityNotFound' | 'InvalidParameters' | 'ParametersNotSupported' | 'RemoteSystemUnavailable' | 'Timeout' | 'AttemptsLimitReached' | 'RemoteSystemError' | 'AsyncExecutionInProgress' | 'AwaitingExecution' | 'BirthDateRequired' | 'InsufficientBalance' | 'SimultaneousTransactionsLimitReached' | 'TransactionUnavailable' | 'AccessDenied' | 'TransactionCancelled' | 'InternalError'
<table class="transaction"><thead><tr><th>TransactionResultType Code</th><th>TransactionResultType</th><th>Definitivo</th><th>Faturavel</th><th>Erro</th></tr></thead><tbody><tr><td>1</td><td>Sucesso</td><td>Verdadeiro</td><td>Verdadeiro</td><td>Falso</td></tr><tr><td>2</td><td>Sucesso parcial ou com observações</td><td>Verdadeiro</td><td>Verdadeiro</td><td>Falso</td></tr><tr><td>3</td><td>Entrada ou documento inválido</td><td>Verdadeiro</td><td>Falso</td><td>Verdadeiro</td></tr><tr><td>4</td><td>Dados não disponíveis</td><td>Verdadeiro (no dia)</td><td>Falso</td><td>Falso</td></tr><tr><td>5</td><td>Entidade ou documento inexistente/não encontrado</td><td>Verdadeiro</td><td>Verdadeiro</td><td>Falso</td></tr><tr><td>6</td><td>Parâmetros de entrada inválidos</td><td>Verdadeiro</td><td>Falso</td><td>Verdadeiro</td></tr><tr><td>7</td><td>Combinação de parâmetros não suportados</td><td>Verdadeiro</td><td>Falso</td><td>Verdadeiro</td></tr><tr><td>8</td><td>Fonte de dados ou sistema remoto indisponível</td><td>Falso</td><td>Falso</td><td>Verdadeiro</td></tr><tr><td>9</td><td>Limite de tempo esgotado</td><td>Falso</td><td>Falso</td><td>Verdadeiro</td></tr><tr><td>10</td><td>Limite de tentativas atingido</td><td>Falso</td><td>Falso</td><td>Verdadeiro</td></tr><tr><td>11</td><td>Erro na fonte de dados ou sistema remoto</td><td>Falso</td><td>Falso</td><td>Verdadeiro</td></tr><tr><td>12</td><td>Transação em execução</td><td>Falso</td><td>Falso</td><td>Falso</td></tr><tr><td>101</td><td>Saldo em créditos insuficiente, entre em contato</td><td>Falso</td><td>Falso</td><td>Verdadeiro</td></tr><tr><td>102</td><td>Limite de transações simultâneas atingido, entre em contato</td><td>Falso</td><td>Falso</td><td>Verdadeiro</td></tr><tr><td>103</td><td>Transação não disponível, entre em contato</td><td>Falso</td><td>Falso</td><td>Verdadeiro</td></tr><tr><td>104</td><td>Credenciais inválidas ou acesso negado, entre em contato</td><td>Falso</td><td>Falso</td><td>Verdadeiro</td></tr><tr><td>105</td><td>Transação cancelada, entre em contato</td><td>Falso</td><td>Falso</td><td>Verdadeiro</td></tr><tr><td>255*</td><td>Erro interno não esperado, entre em contato</td><td>Verdadeiro (no dia)</td><td>Falso</td><td>Verdadeiro</td></tr><tr><td>* Consulta em manutenção, tente refazer mais tarde ou entre em contato com a Exato para notificação do problema</td></tr></tbody></table>
TransactionResultTypeCodeinteger

Código do tipo de resultado da transação.

UniqueIdentifierstring

Identificador único da transação. Recomendado armazenar para controle e depuração.

Changes

No operation changes recorded.