---
title: "Retrieve a worker"
method: GET
path: "/api/workers/{workerId}"
tags: ["Workers"]
---

# Retrieve a worker

`GET /api/workers/{workerId}`

Retrieve the current worker state and messages from its most recent task (or a specific task via `taskId`).

## Path parameters

- `workerId` string, required

## Query parameters

- `taskId` string — Return the worker state and messages for a specific task instead of the most recent one.

## Response `200`

Worker object.

- Worker
  - `id` string, required
  - `object` 'worker', required
  - `created_at` integer, nullable, required
  - `status` 'running' | 'completed' | 'pending', required
  - `running` boolean, required
  - `error` unknown, required
  - `incomplete_details` unknown, required
  - `metadata` object, required
  - `output` object[], required
    - `id` string, required
    - `type` 'message', required
    - `role` 'assistant', required
    - `status` 'completed', required
    - `content` object[], required
      - `type` 'output_text', required
      - `text` string, required
  - `output_text` string, required
  - `structured_output` object, nullable, required
  - `sources` object[], required
    - `id` string, required
    - `type` 'url', required
    - `url` string, required
    - `title` string, nullable, required
  - `files` object[], required
    - `mediaType` string, required
    - `filename` string, nullable, required
    - `url` string, uri, required
    - `size` integer
  - `usage` object
    - `durationMs` integer
  - `messages` unknown[], required
    - unknown
  - `url` string, required — Web URL of the worker in the Handinger dashboard.

## Other responses

- `401` — Unauthorized.
- `403` — Forbidden.
- `429` — Rate limit exceeded.
- `500` — Internal server error.

## Changes

- **2026-07-10** `26ac9ff402ce` — 1 warning
  - removed the optional property `usage/credits` from the response with the `200` status
- **2026-06-03** `f933ba68df7d` — 1 breaking, 1 warning, 1 info
  - removed the media type `text/event-stream` for the response with the status `200`
  - deleted the `query` request parameter `stream`
  - added the new optional `query` request parameter `taskId`
- **2026-05-15** `15c82f8f15cc` — 1 info
  - added the optional property `files/items/size` to the response with the `200` status
- **2026-05-11** `689cce060c12` — 12 info
  - the `object` response property const value `worker` was added for the status `200`
  - the `role` response property const value `assistant` was added for the status `200`
  - the `status` response property const value `completed` was added for the status `200`
  - the `type` response property const value `message` was added for the status `200`
  - …8 more
- **2026-05-11** `1cd8acc54da5` — 1 info
  - added the required property `url` to the response with the `200` status

[Full history](https://skmtc.dev/ramensoft/apis/handinger-api/changes/api/workers/:workerId/get.md)

---

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