---
title: "List agent session artifacts"
method: GET
path: "/agents/sessions/{session_id}/artifacts"
tags: ["Agents"]
---

# List agent session artifacts

`GET /agents/sessions/{session_id}/artifacts`

Lists immutable artifacts published by completed hosted session turns. See [session artifacts](https://developers.openai.com/api/docs/guides/agents-api/environments/files#openai-hosted-artifacts).

## Path parameters

- `session_id` string, required

## Query parameters

- `order` 'asc' | 'desc' — The order in which paginated resources are returned.
- `environment_id` string, nullable
- `limit` integer, nullable
- `after` string, nullable

## Response `200`

A page of durable session artifacts.

- SessionArtifactListResource — A page of Agents API resources, with IDs for retrieving additional pages.
  - `object` 'list', required — The object type, which is always `list`.
  - `data` SessionArtifactResource[], required — The resources returned in this page, in the requested sort order.
    - `id` string, required — The immutable artifact ID.
    - `object` 'agent.session.artifact', required — The object type. Always `agent.session.artifact`.
    - `session_id` string, required — The ID of the session that owns the artifact.
    - `environment_id` string, required — The ID of the environment that produced the artifact.
    - `turn_id` string, required — The ID of the completed turn that published the artifact.
    - `path` string, required — The original absolute file path in the execution environment.
    - `size_bytes` integer, required — The immutable artifact size in bytes.
    - `created_at` integer, required — The Unix timestamp, in seconds, when the artifact was published.
  - `first_id` string, nullable, required — The ID of the first resource in `data`, or `null` if the page is empty.
  - `last_id` string, nullable, required — The ID of the last resource in `data`, or `null` if the page is empty. Pass this as `after` with the same order and filters.
  - `has_more` boolean, required — Whether there are more resources to retrieve after this page.

## 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/artifacts/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/d86203de41ae?raw)
