Skip to main content
GET
List Job Run Container Logs

Path Parameters

uuid
string<uuid>
required

Query Parameters

cursor
string

Either next_cursor or prev_cursor, copied unchanged. It carries position and time filters. Only backward cursors accept tail; neither accepts since_ms or until_ms.

Minimum string length: 1
max_bytes
integer
default:65536

Maximum UTF-8 bytes of message text per page (1–1,048,576; default 65,536). A page ends at a whole line; a single line longer than the cap is returned on its own.

Required range: 1 <= x <= 1048576
since_ms
integer | null

Return only lines with timestamp_ms at or after this Unix time in milliseconds.

Required range: x >= 0
tail
integer

Return the last N lines (1–10,000), oldest first, within max_bytes. With a backward cursor, select up to N earlier lines (default 100). next_cursor continues forward.

Required range: 1 <= x <= 10000
until_ms
integer | null

Return only lines with timestamp_ms before this Unix time in milliseconds.

Required range: x >= 0

Response

A page of saved container output lines, with a cursor to continue.

complete
boolean
required

True when the run has ended and this response reaches the end of its output. tail, since_ms and until_ms do not change this: it describes the whole output, not the filtered lines. Once true, no later request returns more lines; stop polling. It turns true no sooner than 15 seconds after the run ends, and 60 seconds after when the server cannot confirm that no output is still in transit. These checks are best effort: output delayed in transit past them (for example, a large burst at the end of the run, or a queue backlog longer than 10 minutes) can still arrive after complete is true.

has_more
boolean
required

More scan work remains in the requested direction. Follow next_cursor for forward reads or prev_cursor for backward reads, including on empty filtered pages.

lines
object[]
required

Lines oldest first. Empty when there is nothing new.

next_cursor
string
required

Pass this value unchanged as cursor to continue after the last line returned. Never null: when you are caught up, calling again with it returns new lines or an empty page.

Minimum string length: 1
prev_cursor
string | null
required

Pass unchanged as cursor to load the adjacent earlier page. Null at history start or an unsupported partial boundary.

Minimum string length: 1
prev_cursor_status
enum<string>
required

Explains whether earlier history is readable. unsupported_boundary is not the start of history.

Available options:
available,
start,
unsupported_boundary
run_status
enum<string>
required

The run’s status when this page was read, so you can tell a running container from a finished one without another request.

Available options:
ASSIGNED,
PREPARING,
RUNNING,
COMPLETED,
CANCELLING,
CANCELLED,
FAILING,
FAILED