---
title: "Retrieve a session subagent"
method: GET
path: "/agents/sessions/{session_id}/subagents/{subagent_id}"
tags: ["Agents"]
---

# Retrieve a session subagent

`GET /agents/sessions/{session_id}/subagents/{subagent_id}`

Retrieves a subagent belonging to this session. See [subagent workflows](https://developers.openai.com/api/docs/guides/agents-api/multi-agent).

## Path parameters

- `session_id` string, required
- `subagent_id` string, required

## Response `200`

The requested subagent.

- SubagentResource — A subagent created within a session.
  - `id` string, required — The ID of the subagent.
  - `object` 'agent.session.subagent', required — The object type for a subagent.
  - `session_id` string, required — The ID of the session that owns the subagent.
  - `name` string, nullable, required — The runner-assigned nickname, or null when unavailable.
  - `instructions` AgentContentResource[], nullable, required — Initial task content, or null when unavailable. Text may contain placeholders for images or audio when only a preview is available.
    - union — A plaintext or encrypted content part exchanged between agents.
      - object — A text content part produced by the agent.
        - `type` 'output_text', required — The content type. Always `output_text`.
        - `text` string, required — The text produced by the agent.
      - object — Encrypted content exchanged between agents.
        - `type` 'encrypted_content', required — The content type. Always `encrypted_content`.
        - `encrypted_content` string, required — The encrypted content payload.
  - `parent_agent_id` string, required — The ID of the agent that created this subagent.
  - `status` 'active' | 'closed', required — The current status of a subagent.
  - `opened_at` integer, required — The Unix timestamp, in seconds, when the subagent was first opened. Resuming does not change it.
  - `closed_at` integer, nullable, required — The Unix timestamp, in seconds, when the subagent was closed. Null while active, including after resume.

## Other responses

- `400` — The request was invalid.
- `401` — Authentication or project context was missing.
- `403` — The API key lacks the required permission.
- `404` — The requested session or event was not found.
- `409` — The request conflicted with the current session state.
- `500` — An internal error occurred.
- `503` — The service is temporarily unavailable.

## Changes

- **2026-09-10** `f2dae1a9aced` — 1 info
  - endpoint added

[Change history](https://skmtc.dev/openai/apis/openapi/changes/agents/sessions/:session_id/subagents/:subagent_id/get.md)

---

[API](https://skmtc.dev/openai/apis/openapi.md) · [All operations](https://skmtc.dev/openai/apis/openapi/llms.txt) · [OpenAPI document](https://skmtc.dev/openai/apis/openapi/revisions/26bd6202a0ad?raw)
