---
title: "GET /v2/tasks/{taskId}"
method: GET
path: "/v2/tasks/{taskId}"
---

# GET /v2/tasks/{taskId}

`GET /v2/tasks/{taskId}`

Get a task by ID.

## Path parameters

- `taskId` string, required

## Response `200`

Ok

- SerializedTask — SerializedTask
  - `id` string, required
  - `spec` object, required
  - `status` 'cancelled' | 'completed' | 'failed' | 'open' | 'processing' | 'skipped', required — The status of each step of the Task
  - `createdAt` string, required
  - `lastHeartbeatAt` string
  - `createdBy` string

## Other responses

- `403` — An error response from the backend.

## Changes

- **2026-08-19** `3dacb7325aa2` — 2 warning
  - removed the optional property `secrets` from the response with the `200` status
  - removed the optional property `state` from the response with the `200` status
- **2025-07-18** `359484cd49ab` — 1 info
  - added the non-success response with the status `403`
- **2024-12-27** `e7ca0bc861d2` — 2 breaking, 2 warning, 1 info
  - the `secrets` response's property type/format changed from `object`/`` to ``/`` for status `200`
  - the `spec` response's property type/format changed from ``/`` to `object`/`` for status `200`
  - removed the optional property `secrets/backstageToken` from the response with the `200` status
  - added the new `skipped` enum value to the `status` response property for the response status `200`
  - …1 more
- **2024-12-10** `77fc3b24957b` — 1 breaking
  - the `secrets/additionalProperties/` response's property type/format changed from `string`/`` to ``/`` for status `200`
- **2024-09-10** `7fdabae0e933` — 1 info
  - endpoint added

[Full history](https://skmtc.dev/backstage/apis/scaffolder/changes/v2/tasks/:taskId/get.md)

---

[API](https://skmtc.dev/backstage/apis/scaffolder.md) · [All operations](https://skmtc.dev/backstage/apis/scaffolder/llms.txt) · [OpenAPI document](https://skmtc-service-production.skmtc.workers.dev/v1/apis/backstage/scaffolder/revisions/7f53f7b1650b/schema)
