---
title: "GET /api/v1/workflows/runs/{runId}/logs"
method: GET
path: "/api/v1/workflows/runs/{runId}/logs"
tags: ["workflows"]
---

# GET /api/v1/workflows/runs/{runId}/logs

`GET /api/v1/workflows/runs/{runId}/logs`

## Path parameters

- `runId` string, required

## Query parameters

- `nodeRef` string
- `stream` 'stdout' | 'stderr' | 'console'
- `level` 'debug' | 'info' | 'warn' | 'error'
- `limit` integer
- `cursor` string, date-time
- `startTime` string, date-time
- `endTime` string, date-time

## Response `200`

Logs for a workflow run

- object
  - `runId` string
  - `logs` object[]
    - `id` string
    - `runId` string
    - `nodeId` string
    - `level` 'debug' | 'info' | 'warn' | 'error'
    - `message` string
    - `timestamp` string, date-time
  - `totalCount` number
  - `hasMore` boolean
  - `nextCursor` string, nullable

## Changes

- **2025-12-04** `a4d134c3f469` — 2 info
  - added the new optional `query` request parameter `endTime`
  - added the new optional `query` request parameter `startTime`
- **2025-12-04** `e2078aa10e75` — 2 breaking, 7 info
  - the `query` request parameter `stream` was restricted to a list of enum values
  - for the `query` request parameter `limit`, default value `100` was added
  - added the new optional `query` request parameter `cursor`
  - added the new optional `query` request parameter `level`
  - …5 more
- **2025-11-04** `b0518ab33431` — 1 info
  - endpoint added
- **2025-10-24** `8db531c050e5` — 1 breaking
  - api path removed without deprecation

[Change history](https://skmtc.dev/shipsecai/apis/shipsec-studio-api/changes/api/v1/workflows/runs/:runId/logs/get.md)

---

[API](https://skmtc.dev/shipsecai/apis/shipsec-studio-api.md) · [All operations](https://skmtc.dev/shipsecai/apis/shipsec-studio-api/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/shipsecai/shipsec-studio-api/revisions/cc60562ad9f3/schema)
