DocsHTTP APIDownload raw job logs

Download raw job logs

Download raw job logs. Use GET /workflows/{workflow_id}/jobs/{job_id}/logs/raw in Chronoverse, with authentication, parameters, and response details.

GET
/workflows/{workflow_id}/jobs/{job_id}/logs/raw

Authentication

cookieSession
apiKey
required

Encrypted session cookie issued after registration or login.

cookie: session

Parameters

workflow_id
path
required

No additional description.

string · uuid
job_id
path
required

No additional description.

string · uuid
format
query

Download encoding. Defaults to plain text.

stringenum: txt | json | jsonldefault: txt
stream
query

No additional description.

stringenum: stdout | stderr
q
query

Optional safe text filter

string

Responses

200

Log download matching the requested filters, streamed in ascending sequence order

text/plain
{
  "type": "string",
  "description": "Raw log messages separated by newlines"
}
application/json
{
  "type": "object",
  "required": [
    "id",
    "workflow_id",
    "filters",
    "logs"
  ],
  "properties": {
    "id": {
      "type": "string",
      "format": "uuid",
      "description": "Job ID"
    },
    "workflow_id": {
      "type": "string",
      "format": "uuid"
    },
    "filters": {
      "type": "object",
      "required": [
        "q",
        "stream"
      ],
      "properties": {
        "q": {
          "type": "string"
        },
        "stream": {
          "type": "string",
          "enum": [
            "all",
            "stdout",
            "stderr"
          ]
        }
      }
    },
    "logs": {
      "type": "array",
      "items": {
        "type": "object",
        "required": [
          "timestamp",
          "sequence_num",
          "stream",
          "event_id",
          "message_raw"
        ],
        "properties": {
          "timestamp": {
            "type": "string",
            "format": "date-time"
          },
          "sequence_num": {
            "type": "integer",
            "minimum": 0
          },
          "stream": {
            "type": "string",
            "enum": [
              "stdout",
              "stderr"
            ]
          },
          "event_id": {
            "type": "string"
          },
          "message_raw": {
            "type": "string"
          },
          "message_json": {
            "description": "Parsed JSON value when message_raw contains valid JSON"
          }
        }
      }
    }
  }
}
application/x-ndjson
{
  "type": "string",
  "description": "Newline-delimited JSON where each line conforms to JobLogDownloadEntry"
}
400

Invalid filter or format, or the job has not reached a terminal state

401

Missing or invalid session

429

Ingress rate or connection limit exceeded for the client address