---
title: "Remove Worker"
method: DELETE
path: "/worker/{worker_id}"
tags: ["workers"]
---

# Remove Worker

`DELETE /worker/{worker_id}`

## Request

- Base URL: `https://api.traversal.com` (the document declares no server; this is the origin it was published from)
- URL: `https://api.traversal.com/worker/{worker_id}`
- Auth: none declared

Terminally stop a worker; for a private chat, archive it.

Same auth chain as deploy. The worker is resolved org-scoped, so a guessed
id from another organization 404s rather than stopping it. An archived private
chat drops out of ``GET /worker/{worker_id}/private-chats`` and accepts no more
messages.

## Path parameters

- `worker_id` string, required

## Response `200`

Successful Response

- RemoveWorkerResponse: Outcome of removing a worker. ``already_stopped`` distinguishes a no-op from a stop this call issued, so the UI can stay quiet instead of claiming it stopped something that was already stopped (or was never deployed).
  - `worker_id` string, required
  - `already_stopped` boolean, required

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/traversal/apis/traversal-api.md) - [All operations](https://skmtc.dev/traversal/apis/traversal-api/llms.txt) - [OpenAPI document](https://skmtc.dev/traversal/apis/traversal-api/revisions/31e1a8b7cf89?raw)
