Relecture
La relecture de session enregistre ce que l'écran de l'utilisateur a réellement fait : changements du DOM et interactions, capturés par le SDK en fragments et revus dans la console. L'enregistrement est opt-in par client, les saisies sont masquées par défaut, et une session enregistrée masquée le dit partout où elle s'affiche.
At a glance
- Enable
createWebClient({ sessionReplay: true, replayHost })- Intake
POST /v1/replay, chunked, project key- Read
replaySessions,replayChunksover GraphQL- Masking
- Inputs masked by default, client-side
- Auth
- Project key to record, access token to watch
- Capture par fragments : l'enregistreur reçoit des fragments numérotés, un onglet fermé en cours de session laisse donc tout ce qui a été envoyé.
- Le masquage est côté client : le contenu masqué ne quitte jamais le navigateur, il n'est pas caché à l'affichage.
- Les liens de lecture sont volontairement éphémères ; un lien expiré se réémet au rechargement au lieu d'échouer en silence.
Comment ça marche
The web SDK records DOM mutations and interactions, serialises them into numbered chunks and posts each chunk to the recorder with the project key, flushing on an interval and on page hide. The replay processor stores the chunks with their session metadata: whose session, how many events, whether masking was on. The console lists sessions and plays one back by fetching its chunks through short-lived links, in order, so a recording streams rather than downloading whole.
Où y accéder
| Surface | Operation |
|---|---|
| REST | POST /v1/replay (recorder intake, project key) |
| GraphQL | replaySessions, replayChunks queries |
| Realtime | None: session lists read on demand |
| MCP | None |
Exemple
import { createWebClient } from '@prodantix/sdk/web';
const prodantix = createWebClient({
apiKey: process.env.PRODANTIX_KEY,
replayHost: 'eu.replay.prodantix.com',
sessionReplay: true,
// Inputs are masked by default; widen or narrow with sessionReplayOptions.mask.
});Replay is a web SDK capability: recording needs a DOM, so the Dart and Python SDKs do not carry it. Watching back happens on the Replay screen.