{siteKey} (UUID or domain). All endpoints require Authorization: Bearer {token}. See Conventions for the base URL, headers, and date-range conventions shared by every endpoint.
A session only appears in this API once it has a full rrweb snapshot and at least 2 recorded events — a single-event session has nothing worth playing back.
List replays
data/meta/links envelope (see Response envelope), at a fixed internal page size of 20. Advance with ?page=; there is no per_page parameter for this endpoint.
Path parameters
Query parameters
Only a subset of the shared dashboard filters apply to this list, because replay metadata only carries a session’s last-seen dimensions:
path (substring match on the recorded page URL), country, browser, os, and device/size. Any other filter key (e.g. referrer, goal) is silently ignored here.
Response — each item in data:
Status:
200 OK.
Get a replay
Response — a flat object:
Status:
200 OK. A foreign/unknown sessionId returns 404 Not Found.
Delete a replay
Status:
204 No Content. A foreign/unknown sessionId returns 404 Not Found.
Enable session replay
api.sites.replays.enable. Turns on track_session_replay for the site so the tracker starts recording new sessions. This is the only replay-specific enable toggle; see Tracking configuration for the Web Vitals and error-tracking equivalents and for the response fields shared by all three.
Response — the updated site (SiteResource, same shape as Sites, including track_session_replay: true). Status: 200 OK.

