API: Replay
Bounded session listing and audited session-replay chunk reads.
Раздел собран из спецификации OpenAPI продукта: 2 метод(ов). Поверхность — query-api (основной API, база /api/v1). Все методы требуют аутентификации.
/projects/{id}/sessions List sessions aggregated from events with replay availability (analyst+)
Results use the canonical event identity/session semantics and an EXISTS-style replay-chunk marker. Dates are inclusive local calendar dates; both may be omitted for the latest seven dates, or supplied together for a maximum of 90 days. The response is never cached.
Параметры
| Имя | Где | Тип | Описание |
|---|---|---|---|
id обязателен | Путь | integer (int32) | Project id. |
date_from необязателен | Query | string (date) | Inclusive local calendar date. Supply together with date_to; when both are omitted the latest seven dates are used. Effective range max 90 days. |
date_to необязателен | Query | string (date) | Inclusive local calendar date. Supply together with date_from; when both are omitted the latest seven dates are used. Effective range max 90 days. |
url необязателен | Query | string | Exact URL filter. |
actor_id необязателен | Query | string | Exact opaque project actor identifier. |
has_replay необязателен | Query | boolean | |
has_rage необязателен | Query | boolean | |
cursor необязателен | Query | string | Opaque cursor bound to project and the complete effective query scope. |
limit необязателен | Query | integer | По умолчанию 50. |
Ответы
| Код | Что означает | Тело |
|---|---|---|
| 200 | Cursor-paginated session summaries. Заголовки: Cache-Control.
| ReplaySessionPage |
| 401 | Missing or invalid credentials (code=unauthorized) | Error |
| 402 | Product access is not active. `code=trial_expired` means the organization's trial ended without payment; `code=subscription_required` means there is no current paid subscription or live trial. In both cases ingest, mutations and plan-gated read/write capabilities are paused until a plan is paid; details.billing_url, when present, points to the cabinet billing page. | Error |
| 403 | Authenticated but not permitted (code=forbidden) | Error |
| 404 | Resource not found (code=not_found) | Error |
| 422 | Request failed validation (code=validation_failed) | Error |
| 429 | Rate limit (code=rate_limited) or plan quota exceeded (code=quota_exceeded). On ingest operations a live trial that exhausted its total event cap answers code=trial_quota_exceeded instead of quota_exceeded. Заголовки: Retry-After.
| Error |
/projects/{id}/sessions/{sid}/replay Read audited replay chunks for one session (analyst+)
Every success, not-found and storage failure is written to the product-wide audit ledger with an HMAC session fingerprint. Audit failure is fail-closed. Chunks are independently gzip-compressed rrweb data and ordered by sequence. At most 16 chunks, 8 MiB compressed payload and 8 MiB response framing are returned per page.
Параметры
| Имя | Где | Тип | Описание |
|---|---|---|---|
id обязателен | Путь | integer (int32) | Project id. |
sid обязателен | Путь | string | Exact opaque session identifier; the path-normalizing values `.` and `..` are invalid. |
date_from необязателен | Query | string (date) | Inclusive local calendar date. Supply together with date_to; when both are omitted the latest seven dates are used. Effective range max 90 days. |
date_to необязателен | Query | string (date) | Inclusive local calendar date. Supply together with date_from; when both are omitted the latest seven dates are used. Effective range max 90 days. |
cursor необязателен | Query | string | Opaque cursor bound to project and the complete effective query scope. |
limit необязателен | Query | integer | По умолчанию 8. |
Ответы
| Код | Что означает | Тело |
|---|---|---|
| 200 | Ordered replay chunk page; a successful view has already been audited. Заголовки: Cache-Control.
| ReplayChunkPage |
| 401 | Missing or invalid credentials (code=unauthorized) | Error |
| 402 | Product access is not active. `code=trial_expired` means the organization's trial ended without payment; `code=subscription_required` means there is no current paid subscription or live trial. In both cases ingest, mutations and plan-gated read/write capabilities are paused until a plan is paid; details.billing_url, when present, points to the cabinet billing page. | Error |
| 403 | Authenticated but not permitted (code=forbidden) | Error |
| 404 | Resource not found (code=not_found) | Error |
| 422 | Request failed validation (code=validation_failed) | Error |
| 429 | Rate limit (code=rate_limited) or plan quota exceeded (code=quota_exceeded). On ingest operations a live trial that exhausted its total event cap answers code=trial_quota_exceeded instead of quota_exceeded. Заголовки: Retry-After.
| Error |
Источник раздела — docs/api/openapi.yaml репозитория продукта,
версия API 1.0.0, OpenAPI 3.0.3,
снимок 095579325c2d.
Расхождение снимка со спецификацией роняет сборку документации.