---
title: "Replay a space's runtime realtime events"
method: GET
path: "/v1/spaces/{spaceId}/runtime/realtime/events"
tags: ["Runtime"]
---

# Replay a space's runtime realtime events

`GET /v1/spaces/{spaceId}/runtime/realtime/events`

## Request

- Base URL: `https://api.spacefast.com`
- URL: `https://api.spacefast.com/v1/spaces/{spaceId}/runtime/realtime/events`
- Auth: one of:
  - HTTP bearer
  - HTTP bearer

Returns stored realtime invalidation events for the space's live runtime, oldest first. A read with no `afterEventId` starts at the beginning of the retained window; follow `nextAfterEventId` as `?afterEventId=` to walk forward to the newest event, and stop when it is null. Retention is bounded: an `afterEventId` that has aged out of the window is a `validation_error`, never a silent restart from the oldest event.

## Path parameters

- `spaceId` string, required

## Query parameters

- `afterEventId` string: Walk forward from this event id, exclusive. Omit it to start at the oldest retained event; pass the previous page's `nextAfterEventId` to continue. An id that has aged out of the retention window is rejected.
- `limit` integer: Maximum events to return.

## Response `200`

Response for status 200

- object
  - `$schema` string, uri: Canonical JSON Schema URL for this response body. The server also sends it in the `Link: rel="describedby"` response header.
  - `data` object[], required
    - `eventId` string, required
    - `spaceId` string, required
    - `versionId` string, nullable, required
    - `runtimeKind` 'zero', required
    - `requestId` string, required
    - `mutationName` string, required
    - `changedTables` string[], required
    - `changedQueries` string[], required
    - `schemaHash` string, required
    - `committedAt` string, date-time, required
  - `nextAfterEventId` string, nullable, required: Event id to pass as `afterEventId` for the next page; null when this page reached the newest retained event.
  - `pagination` object, required: Legacy pagination envelope kept only for frozen pre-cutover Zero capsule clients that page by `pagination.nextCursor`. New clients read `nextAfterEventId`; `nextCursor` mirrors it exactly.
    - `nextCursor` string, nullable, required: Opaque cursor for the next page; null when there are no more results.
    - `hasMore` boolean, required: Whether another page exists after this one.

## Other responses

- `default`: Problem details (RFC 9457). Any 4xx/5xx response is one `application/problem+json` document.

---

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