Skip to main content
Most real demos need to start signed in. An environment is a saved target app — a base URL plus however Director should get authenticated before recording starts.

Session lifecycle

A captured session moves through these states (sessionStatus):

Getting a session in

Keeping sessions fresh

  • reset hook — an optional URL Director calls to reset your app to a known state (before, after, or both relative to the recording). Configurable method and timeout. By default, an unreachable reset hook fails environment creation — pass skipResetVerification: true to opt out.
  • settle — how Director knows the page has finished loading after navigation or login: a selector to wait for, a URL substring, and/or a flat delay.
  • sessionLineageMaxAgeMs — how long a captured session is trusted before it’s treated as expired (default 30 days, 1–365 day range).
  • Sessions can be wiped without deleting the environment itself via delete_session — useful when you know credentials rotated and want to force a fresh capture.

Reset secrets

Creating an environment returns a one-time resetSecret — use it to authenticate calls from your app’s reset endpoint back to Director, if your reset flow needs to prove the request is legitimate.