Skip to main content
GET
Get one run with all artifacts

Authorizations

Authorization
string
header
required

Send Authorization: Bearer tst_live_….

Format (services/api-keys.ts): the literal prefix tst_live_ followed by 24 random bytes rendered as 32 base64url characters. Only the SHA-256 hash is stored server-side. The shape check that routes a token down the API-key path rather than the Clerk JWT path requires the tst_live_ prefix and a total length of at least 25 characters.

Keys are minted in the dashboard at /settings/team. The same header also accepts a Clerk session JWT, which is how the web app authenticates, but the JWT path is out of scope for this document.

Path Parameters

id
string<uuid>
required

Run id (UUID). Returned as runId by POST /api/runs/trigger. Not UUID-validated by the handler; a malformed value simply finds nothing and 404s.

Response

OK

run
RunDetail · object
required

The full run row from GET /api/runs/{id}, minus the two encrypted columns cookiesJson and localStorageJson (stripped by augmentDetail), plus three resolved artifact URLs.

The JSON payload columns are deliberately typed loosely below: they are written by the run orchestrator without a wire schema, so their inner shape can change without an API change. Read them defensively.