A step's named results (ADR-0041). The read side of the results-ingest write path (`POST …/steps/{step}/results`): the Inspector's Results tab, and the source the Outputs view derives from. Bare = latest evidence; `?attempt=` = that attempt's immutable copy (ADR-0056). Read at the run's tenant.
GET
/v1/runs/{id}/steps/{step}/results
const url = 'https://example.com/v1/runs/example/steps/example/results';const options = {method: 'GET'};
try { const response = await fetch(url, options); const data = await response.json(); console.log(data);} catch (error) { console.error(error);}curl --request GET \ --url https://example.com/v1/runs/example/steps/example/resultsParameters
Section titled “Parameters”Path Parameters
Section titled “Path Parameters”id
required
string
Run id
step
required
string
Step id
Query Parameters
Section titled “Query Parameters”attempt
string
Responses
Section titled “Responses”Media typeapplication/json
Array<object>
One named result a step published (ADR-0041) — the ${{ outputs.<step>.<name> }}
values, exposed read-only for the run detail Inspector. type_name is a
coarse JSON kind (string/number/bool/object/array/null) so the UI can badge it
without re-deriving.
object
name
required
string
type_name
required
string
value
required
object
Examplegenerated
[ { "name": "example", "type_name": "example", "value": {} }]No such run