Get Artifact File
Stream a single artifact file produced by a run. The response body is the raw file bytes (not JSON). Range requests, conditional requests via ETag, and presigned redirects for large media files (e.g. .mp4 recordings) are supported.
https://bouncer.nunu.ai, not the main nunu.ai/api/v1 host. Use the same
X-Api-Key header for authentication.Content-Type and Content-Length headers,
not a JSON envelope.
The endpoint supports HTTP range requests, conditional requests via ETag, and
serves a presigned redirect for large media files (such as .mp4 recordings)
to allow efficient streaming.
Path Parameters
{multiplayerRunId}-{playerNumber} (for
example lkkg6t5612m-1).deliverables/report.json).Headers
206 Partial Content for
satisfiable ranges and 416 Range Not Satisfiable otherwise.304 Not Modified when
the file has not changed.Response
The response body is the raw file content. Common status codes:| Status | Meaning |
|---|---|
200 | Full file body |
206 | Partial content (response to a Range request) |
302 | Redirect to a presigned URL (typically for large media files) |
304 | Not modified (when If-None-Match matches) |
404 | Artifact does not exist or is hidden from the requesting key |
416 | Requested range cannot be satisfied |
Authorizations
API key for authentication
Headers
Standard HTTP range header. Returns 206 for satisfiable ranges and 416 otherwise.
Send the ETag from a previous response to receive 304 Not Modified when the file has not changed.
Path Parameters
Composite run ID, in the format {multiplayerRunId}-{playerNumber}.
Artifact filename, exactly as returned by List Run Artifacts. May include subdirectories (e.g. deliverables/report.json).
Response
Full file body. Content-Type is set based on the artifact's stored type.
The response is of type file.