Skip to main content
The Verifier API is a specialized type of graph completion that evaluates traces against rubric criteria and returns structured reviews plus aggregate rewards. It uses the same graph execution infrastructure as policy graphs but focuses on evaluation rather than generation.

Endpoint

Endpoint: POST /api/graphs/verifiers/completions Authentication: Bearer token via Authorization header

Request (rubric evaluation)

{
  "job_id": "zero_shot_verifier_rubric_single",
  "trace": {
    "schema_version": "3.0",
    "event_history": [],
    "markov_blanket_message_history": [],
    "metadata": {}
  },
  "rubric": {
    "event": [
      { "id": "legality", "weight": 1.0, "description": "Actions are legal" }
    ],
    "outcome": [
      { "id": "task_completion", "weight": 1.0, "description": "Task is completed" }
    ]
  },
  "options": {
    "event": true,
    "outcome": true,
    "provider": "openai",
    "model": "gpt-4.1-mini"
  }
}
Notes:
  • trace is a v3 trace. In eval jobs and prompt optimization, traces can be automatically hydrated from the interceptor store.
  • rubric is the verifier rubric payload shape (event/outcome criteria lists).

Response

{
  "event_reviews": [],
  "outcome_review": {
    "total": 0.8,
    "reasoning": "..."
  },
  "event_totals": [],
  "normalized_event_rewards": [],
  "metadata": {}
}

Using with eval jobs

If you enable verifier evaluation in an eval job:
  • Traces are automatically hydrated (from interceptor correlation IDs)
  • The trace is evaluated against a rubric advertised by the task app via GET /inforubrics
  • Task app reward (outcome_reward) and verifier reward are fused into a single final reward (per your configured weights)