---
title: "GET /experimental/tasks/{id}"
method: GET
path: "/experimental/tasks/{id}"
tags: ["Tasks"]
---

# GET /experimental/tasks/{id}

`GET /experimental/tasks/{id}`

Get a task by id, including its current run, pending-input count, links, and the latest event tail.

## Path parameters

- `id` string, uuid, required

## Headers

- `Authorization` string

## Response `200`

Default Response

- object
  - `links` object, required
    - `web` string, uri, required
    - `self` string, uri, required
  - `data` object, required
    - `id` string, uuid, required
    - `type` 'task', required
    - `attributes` object, required
      - `status` union, required
        - 'running'
        - 'waiting_for_input'
        - 'cancelled'
        - 'completed'
      - `definition` object, required
        - `skillRef` string, required
        - `repoUrl` string, required
        - `baseBranch` string
        - `agent` string, required
        - `model` string
        - `environmentId` string, uuid
        - `environmentName` string
        - `snapshotFamily` union
          - 'base'
          - 'dev'
      - `inputs` object, required
      - `currentRun` object, nullable, required
        - `id` string, uuid, required
        - `status` string, required
        - `liveness` object
          - `phase` union, required
            - 'queued'
            - 'starting'
            - 'preparing'
            - 'running'
            - 'recovering'
            - 'retrying'
            - 'finalizing'
          - `message` string
          - `updatedAt` string, date-time, nullable, required
      - `pendingInputCount` integer, required
      - `links` object[], required
        - `type` string, required
        - `value` string, required
        - `eventId` string, uuid, nullable, required
        - `displayLabel` string
        - `displayTitle` string
        - `displayUrl` string
      - `latestEvents` object[], required
        - `id` string, uuid, required
        - `type` 'task-event', required
        - `attributes` union, required
          - object
            - `taskId` string, uuid, required
            - `runId` string, uuid, nullable, required
            - `actor` object, required
              - …
            - `createdAt` string, date-time, required
            - `type` 'task.created', required
            - `payload` object, required
              - …
          - object
            - `taskId` string, uuid, required
            - `runId` string, uuid, nullable, required
            - `actor` object, required
              - …
            - `createdAt` string, date-time, required
            - `type` 'user_input.received', required
            - `payload` object, required
              - …
          - object
            - `taskId` string, uuid, required
            - `runId` string, uuid, nullable, required
            - `actor` object, required
              - …
            - `createdAt` string, date-time, required
            - `type` 'run.created', required
            - `payload` object, required
              - …
          - object
            - `taskId` string, uuid, required
            - `runId` string, uuid, nullable, required
            - `actor` object, required
              - …
            - `createdAt` string, date-time, required
            - `type` 'run.completed', required
            - `payload` object, required
              - …
          - object
            - `taskId` string, uuid, required
            - `runId` string, uuid, nullable, required
            - `actor` object, required
              - …
            - `createdAt` string, date-time, required
            - `type` 'run.failed', required
            - `payload` object, required
              - …
          - object
            - `taskId` string, uuid, required
            - `runId` string, uuid, nullable, required
            - `actor` object, required
              - …
            - `createdAt` string, date-time, required
            - `type` 'task.cancelled', required
            - `payload` object, required
              - …
          - object
            - `taskId` string, uuid, required
            - `runId` string, uuid, nullable, required
            - `actor` object, required
              - …
            - `createdAt` string, date-time, required
            - `type` 'input.requested', required
            - `payload` object, required
              - …
          - object
            - `taskId` string, uuid, required
            - `runId` string, uuid, nullable, required
            - `actor` object, required
              - …
            - `createdAt` string, date-time, required
            - `type` 'run.progress', required
            - `payload` object, required
              - …
      - `workspaceName` string, required
      - `createdAt` string, date-time, required
      - `updatedAt` string, date-time, required

## Other responses

- `401` — Unauthorized
- `403` — Forbidden
- `404` — Not Found
- `500` — Internal Server Error

## Changes

- **2026-08-27** `4e0376ae878b` — 1 warning, 1 info
  - removed the optional property `data/attributes/currentRun/anyOf[subschema #1]/progress` from the response with the `200` status
  - added the optional property `data/attributes/currentRun/anyOf[subschema #1]/liveness` to the response with the `200` status
- **2026-08-12** `a3e84124ece4` — 2 info
  - added the optional property `data/attributes/definition/snapshotFamily` to the response with the `200` status
  - added the optional property `data/attributes/latestEvents/items/attributes/anyOf[subschema #1]/payload/definition/snapshotFamily` to the response with the `200` status

[Change history](https://skmtc.dev/tessl/apis/tessl-api/changes/experimental/tasks/:id/get.md)

---

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