OpenAPI 3.1.0raw.githubusercontent.com2026-08-19150216600.1 KB

ece7d99ceaf3

Eval runs

Get run status

Run status, result, and summary. Poll until status is terminal (completed, failed, or cancelled).

get/projects/{projectId}/eval-runs/{runId}

Path parameters

projectIdstring required

ID of the hosted project that contains the server.

runIdstring required

Eval run ID, as returned by POST /eval-runs.

Response

The run.

idstring required
suiteIdstring required
runNumberinteger nullable
status'pending' | 'running' | 'completed' | 'failed' | 'cancelled' required

Poll until terminal: completed, failed, or cancelled.

result'passed' | 'failed' | 'null' nullable

Pass/fail verdict once terminal.

source'ui' | 'api' | 'sdk' required

Run origin. API-created runs are api.

notesstring nullable
createdAtnumber required

Epoch milliseconds.

completedAtnumber nullable

Epoch milliseconds, null until terminal.

scoreIntegrity'valid' | 'invalid' | 'null' nullable

Whether the run's score evidence verified at ingest. TRI-STATE, and the third state matters: valid means the backend checked and definitions and results agree; invalid means they do not; null (or absent) means NO VERDICT was produced, on a deployment that predates integrity checking. A score gate must treat null exactly like invalid — absent evidence is not valid evidence.

executionEnginestring

Which engine executed the run: emulated (the platform's own turn loop) or harness:<id> (a real agent runtime such as Claude Code). ABSENT means the run recorded no engine — a run created before the platform attributed one. Treat that as UNKNOWN, never as emulated: those are different claims, and the runs whose engine was never recorded are exactly the ones a reader must not vouch for.