---
title: "Session Document Events"
method: GET
path: "/v1/sessions/{session_id}/doc-events"
tags: ["v1", "sessions"]
---

# Session Document Events

`GET /v1/sessions/{session_id}/doc-events`

## Request

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

Poll for cross-session document updates: returns `document_updated` events for documents
THIS session holds that OTHER sessions committed since `after_id`. The client polls this
(~every 1-2s while a doc is open) and re-fetches the changed document's content so all open
sessions converge without a refresh. Excludes this session's own writes by default (the web UI
already has its own changes); a REST/MCP integrator can pass `include_own=true` to receive its
own events too. REST-only — a lightweight poll, deliberately NOT an MCP tool and NOT a held
SSE connection (keeps the per-instance connection budget free).

## Path parameters

- `session_id` string, required

## Query parameters

- `after_id` integer: Return events with id greater than this (the poll cursor).
- `include_own` boolean: Integrator opt-out: when true, ALSO return this session's own document_updated events (default false excludes them — the web UI never needs its own writes echoed). A REST/MCP integration that writes on one connection and polls on another, or wants a complete change feed for the docs it holds, sets this true.

## 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)
