---
title: "List the documents open in a multi-document session."
method: GET
path: "/v1/sessions/{session_id}/documents"
tags: ["v1", "mcp", "sessions"]
---

# List the documents open in a multi-document session.

`GET /v1/sessions/{session_id}/documents`

## Request

- Base URL: `https://api.superdocs.app`
- URL: `https://api.superdocs.app/v1/sessions/{session_id}/documents`
- Auth: HTTP bearer

Returns the editable documents open in this session (focused first), each with its id, chunk
count, and focused flag — so a client can render document tabs. The response is token-light by
default; pass include_html=true to also get each document's reassembled HTML.

ID MAPPING: `document_id` is the SESSION-LOCAL slot id ("doc_primary", "doc_ab12…");
`durable_document_id` is the PERMANENT document id (a UUID) — the SAME id `list_documents` (Files)
shows and `get_document_detail` / `rename_document` / `archive_document` / `open_documents`
take (null until the document's first save). focus_session_document, close_session_document,
and chat's `document_id` accept EITHER form, so you can drive a session entirely with durable
ids.

## Path parameters

- `session_id` string, required

## Query parameters

- `report_changed` boolean: Resume awareness: when true, each doc carries `changed_since_seen` = its committed version is newer than the version THIS session last saw (changed by another session while away). The web UI sets this ONLY on resume / a chat switch (never on the ~2s poll) so it can show a one-time 'changed since you were last here' notice — ongoing changes are surfaced through the normal change feed. Computed before the roster updates the version this session has seen.
- `include_html` boolean: Include each document's full reassembled HTML body. Default false (token-light — recommended for AI agents enumerating or switching tabs): returns only ids, title, section count, focused flag, and page setup, omitting the body which can be hundreds of KB per document. The web app passes true to render document content.

## Headers

- `authorization` string, nullable

## Response `200`

Successful Response

- unknown

## Other responses

- `422`: Validation Error

---

[API](https://skmtc.dev/superdocs/apis/universal-document-ai-api.md) · [All operations](https://skmtc.dev/superdocs/apis/universal-document-ai-api/llms.txt) · [OpenAPI document](https://skmtc.dev/superdocs/apis/universal-document-ai-api/revisions/37d03122940b?raw)
