Skip to main content
POST
Python

Authorizations

Authorization
string
header
required

API Key authentication. Format: "Bearer YOUR_API_KEY"

Path Parameters

judge_id
string<uuid>
required

Body

application/json

The content to grade. Provide either messages (with the candidate reply in output) or a plain input/output pair — messages and input are mutually exclusive, and at least one of messages/input/output is required.

messages
object[] | null

Chat transcript in the standard role/content shape (the messages sent to your model). Content may be a string or a list of content blocks; inline files ride as base64 data: URIs in file blocks.

input
any | null

Plain input (string or JSON) — alternative to messages.

output
any | null

The candidate output to grade (string or message object).

name
string | null

Name for this interaction (shown to the judge as context).

generation_model
string | null

The model that produced the content (context for the judge — not the judge model).

metadata
object | null

Free-form context shown to the judge (rendered as the interaction's trace metadata).

model_override
string | null

Normally omitted — the judge already pins its grading model, and every evaluation uses it by default. Set this only to deliberately grade with a different judge model for this one call (public judge-model names; append -thinking for extended reasoning).

Response

Verdict produced

id
string<uuid>
judge_id
string<uuid>
judge_version
integer | null

Version number of the judge version that graded this content.

source
enum<string>
Available options:
api,
monitor,
ui
status
enum<string>
Available options:
succeeded,
failed
model
string

The judge model used.

verdict
object | null

Null when status is failed.

error
string | null

Why the evaluation failed (null when it succeeded). For an evaluation that ran in a customer-hosted deployment a direct API response carries a short label only; the full text is stored in your own cloud, and the Python SDK returns it

latency_ms
integer | null
created_at
string<date-time>
content_location
object | null

Where the judge's reasoning and notes are stored in your own cloud (null unless the evaluation ran in a customer-hosted deployment)

content_unavailable_reason
enum<string> | null

Set when verdict.reasoning and each dimension's notes are empty because they are stored in your own cloud, not because the judge wrote none (null otherwise). The scores and labels are still complete. The Python SDK reads the text from your data plane, fills the fields and clears this

Available options:
result_content_in_data_plane