---
title: "Get an agent"
method: GET
path: "/agents/{agent_id}"
tags: ["Agents"]
---

# Get an agent

`GET /agents/{agent_id}`

## Request

- Base URL: `https://api-docs.jackhamr.ai` (the document declares no server; this is the origin it was published from)
- URL: `https://api-docs.jackhamr.ai/agents/{agent_id}`
- Auth: none declared

Return a single agent by id.

404 when the agent does not exist, belongs to another org, or the
caller lacks visibility (owner/share/org-visible). The org scope is
enforced by ``AgentService.get_agent``'s ownership check; a wrong-org
agent surfaces as ``AgentNotFoundError`` → 404 so existence is not
leaked across org boundaries.

Note: ``DELETE`` is a **soft delete**: a destroyed agent stays
readable here with ``status: "destroyed"`` rather than returning 404.
Poll for ``status == "destroyed"`` to confirm teardown; do not rely on
a 404 (QA Finding #6).

## Path parameters

- `agent_id` string, required

## Response `200`

Successful Response

- AgentOut: An agent as returned by ``GET/POST /api/v1/agents``.
  - `id` string, required
  - `organization_id` string, required
  - `name` string, required
  - `description` string, nullable
  - `status` string, required
  - `owner_user_id` string, nullable
  - `allow_cloning` boolean
  - `visible_to_org` boolean
  - `cores` integer, nullable
  - `memory` integer, nullable
  - `disk_size` integer, nullable
  - `template_id` string, nullable
  - `os_template` string, nullable
  - `size_preset_id` string, nullable
  - `sort_order` integer
  - `is_board_clone` boolean
  - `clone_of_agent_id` string, nullable
  - `avatar_image_url` string, nullable
  - `avatar_color` string, nullable
  - `subtitle` string, nullable
  - `tags` object, nullable
  - `metadata` object, nullable
  - `subagent_max_iterations` integer, nullable
  - `error_message` string, nullable
  - `last_error_at` string, date-time, nullable
  - `created_at` string, date-time, required
  - `updated_at` string, date-time, required
  - `provisioned_at` string, date-time, nullable
  - `started_at` string, date-time, nullable
  - `stopped_at` string, date-time, nullable
  - `hibernated_at` string, date-time, nullable

## Other responses

- `422`: Validation Error

---

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