---
title: "Get Probe Context"
method: GET
path: "/v1/admin/eval/probes/{probe_id}/context"
tags: ["evals"]
---

# Get Probe Context

`GET /v1/admin/eval/probes/{probe_id}/context`

Side-context for the probe edit page: recent runs + suite membership.

Powers the "History & membership" section at the bottom of ProbeForm:
  - `recent_runs`: last 10 runs of this probe (reverse-chrono), each
    with its single eval_run_results row's `rubric_pass` so the UI can
    render pass/fail dots without a second roundtrip. Run rows that
    haven't completed (no result yet) report `rubric_pass: null` and
    the UI shows them as in-flight.
  - `pass_rate`: `{passed, total, pct}` computed over the same set so
    the header can show "7/10 passing (70%)" without the UI doing math.
  - `suites`: every eval_suite this probe is currently in, either via
    explicit_probe_ids OR via tag_query overlap with the probe's tags.

Single endpoint over two reasons: one network round-trip from the
edit page, and the two slices conceptually answer the same question
— "where does this probe live in the broader testing fabric?"

## Path parameters

- `probe_id` string, required

## Response `200`

Successful Response

- unknown

## Other responses

- `422` — Validation Error

---

[API](https://skmtc.dev/roxels/apis/interviewer.md) · [All operations](https://skmtc.dev/roxels/apis/interviewer/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/roxels/interviewer/revisions/4ef48ed226e1/schema)
