---
title: "Read another user's agent thread"
method: GET
path: "/api/observed-agent-threads/{threadId}"
tags: ["Agent Threads"]
---

# Read another user's agent thread

`GET /api/observed-agent-threads/{threadId}`

## Request

- The document declares no server URL.
- Auth: HTTP bearer

Read-only, whoever owns the thread. Takes can.observe(agent.threads); the response matches the owner's route.

## Path parameters

- `threadId` string, required

## Response `200`

Response for status 200

- object
  - `sandboxState` object
    - `name` string, required
    - `status` 'new' | 'busy' | 'ready' | 'blocked' | 'unavailable', required
    - `initialized` boolean, required
  - `id` string, required
  - `projectId` string, required
  - `ownerPrincipal` object, required
    - `type` 'user' | 'serviceAccount' | 'system', required
    - `id` string, required
  - `owner` object, required
    - `type` 'user' | 'serviceAccount' | 'system', required
    - `id` string, required
    - `displayName` string
  - `participants` object[], required
    - `principal` object, required
      - `type` 'user', required
      - `id` string, required
      - `displayName` string
    - `addedAt` string, required
    - `addedBy` object, required
      - `type` 'user' | 'serviceAccount' | 'system', required
      - `id` string, required
  - `title` string
  - `sandboxParams` object
  - `status` 'active' | 'archived', required
  - `activeRunId` string, nullable, required
  - `lastMessageAt` string
  - `messageCount` number, required
  - `createdAt` string, required
  - `updatedAt` string, required

## Other responses

- `400`: Response for status 400
- `403`: Response for status 403
- `404`: Response for status 404
- `501`: Response for status 501

## Changes

- **2026-10-20** `e7589d61175d`: 2 info
  - added the required property `owner` to the response with the `200` status
  - added the required property `participants` to the response with the `200` status
- **2026-10-20** `1c47601b37c0`: 2 breaking
  - removed the required property `owner` from the response with the `200` status
  - removed the required property `participants` from the response with the `200` status
- **2026-10-20** `ebeab1520daa`: 1 info
  - endpoint added
- **2026-10-20** `2529bf887ba6`: 1 breaking
  - api path removed without deprecation
- **2026-10-20** `8df745541b3a`: 1 info
  - endpoint added

[Operation history](https://skmtc.dev/sixb-ai/apis/sixb-api/changes/api/observed-agent-threads/:threadId/get.md)

---

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