Skip to main content

Get Run Session Endpoint

GET 

/runs/:run_id/sessions/:parent_id

Return one session's span structure with this run's evaluation results joined onto it.

Answers where inside a session an evaluation failed, which a run's results alone cannot: they name the span in target_ref but carry no structure, ordering or kind. components holds every span in the session — including those no partition covered, which carry an empty results so an unevaluated component never reads as a passing one — while end_to_end holds the session- and trace-granularity verdicts that grade the session as a whole.

parent_id is the session key the run rolled results up under: the dataset's real session_id where its traces carry one, else the trace's own trace_id. Discover the sessions in a run through GET /runs/{run_id}/analysis?group_by=parent_id.

Spans are read from the version the run scored (Run.dataset_version_id), never the dataset's latest, so a version derived afterwards cannot silently re-point the tree. The span list is never paginated: a partial one would render a tree with holes that reads as a coverage gap rather than a truncation.

compare_run_id names the counterpart run when this read is one side of a session comparison: two separately ingested span tables share no trace or span ids, so their sessions cannot be paired at all. A counterpart with no span table of its own — a wide-format run — passes here and is refused by its own session read instead, since "a different span table" would misdescribe a run that has none.

Returns 404 if the run does not exist, it has neither completed nor failed with output already written, or parent_id names no session on the scored version. Returns 422 if the run is not a trace-metric run, or if compare_run_id reads a differing span table.

Request​

Responses​

Successful Response