---
title: "Stream Parse preview progress"
method: GET
path: "/v1/documents/jobs/{id}/parse-progress/events"
tags: ["Documents"]
---

# Stream Parse preview progress

`GET /v1/documents/jobs/{id}/parse-progress/events`

## Request

- Base URL: `https://console.nace.ai`
- URL: `https://console.nace.ai/v1/documents/jobs/{id}/parse-progress/events`
- Auth: HTTP bearer
- TypeScript: <https://skmtc.dev/nace/apis/drex-api/docs/v1/documents/jobs/:id/parse-progress/events/get.ts> (a function with typed inputs; its response is checked against the schema)

Streams snapshot events for up to 55 seconds, with heartbeat comments. Reconnect after closure for current state; replace units by generation/index/revision instead of appending duplicates. An unavailable event means previews stopped, not that the job failed. Always read the normal job for final result and billing.

Retained Parse jobs only. Authenticate with the same Bearer key as the job. Previews do not change parsing, cache identity, cost, retention or cancellation. Zero retention and some parsers return only the complete result. See [Parse streaming](/docs/perception/parse#streaming).

## Path parameters

- `id` string, uuid, required

## Response `200`

Current preview metadata or content.

## Other responses

- `404`: Job or preview not found, unavailable or inaccessible.
- `410`: Preview content expired.
- `429`: Request rate limit reached; retry after the indicated delay.
- `503`: Upstream unavailable, or a terminal result is awaiting usage settlement.

---

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