| Field | Required | Description |
|---|---|---|
version | Yes | Schema version ("1.0") |
session | Yes | Session metadata |
timeline | Yes | Capture events |
media | No | Media files |
comments | No | Discussion |
notes | No | Rich text notes |
Session metadata
Session identity, timestamps, recording configuration, environment, and project management.Session identifier
Creation timestamp
End timestamp
Duration in seconds
Session title
Session description
One of:
in_session, uploading, todo, in_progress, needs_feedback, done, cancelledAssignee identifier
Assignee username
Label names
1 (highest) to 5 (lowest)
One of:
electron, web, ios, androidPlatform version string
Whether session includes video
Whether session includes audio
One of:
h264, h265, vp9, av1Video width in pixels
Video height in pixels
Frames per second
Operating system (e.g.
macOS, Windows, iOS, Android)OS version string
Device name (e.g.
MacBook Pro 16-inch, iPhone 15 Pro)Screen width in pixels
Screen height in pixels
Screen scale factor (e.g. 2 for Retina)
Team identifier
Creator identifier
Timeline events
Capture events recorded during the session, sorted by timestamp. Every event hastimestamp + type. Other fields depend on the event type.
Event types
Common fields
These fields are present on most events:Seconds from session start
Event type (see list above)
Text content. Used by:
text_typed, transcription, annotation, console_errorX coordinate. Used by:
mouse_click, click, touch, annotationY coordinate. Used by:
mouse_click, click, touch, annotationURL. Used by:
page_navigation, click, annotation, console_error, network_requestID of a media item. Used by:
snapshot, annotationType-specific fields
Window and navigation fields
Window and navigation fields
Input fields
Input fields
Click and element fields
Click and element fields
CSS selector path (
click, annotation)HTML tag name (
click, annotation)Visible text of the element (
click, annotation)Element bounding box with
x, y, width, height (click, annotation)React component tree (
click, annotation)Element class list (
click, annotation)ARIA info (
click, annotation)Text around the element (
click, annotation)Fixed/sticky positioning (
click, annotation)Touch fields
Touch fields
Transcription fields
Transcription fields
Error and network fields
Error and network fields
Media
Media files (video, audio, images) associated with the session. Referenced by timeline events viamediaRef.
Media identifier, referenced by timeline events
One of:
video, audio, imageFile name
One of:
recording, snapshot, annotation, smart, pasted, convertedMIME type
Cloud storage URL
Width in pixels
Height in pixels
Duration in seconds (video/audio)
File size in bytes
Creation timestamp
Comments
Threaded discussion on the session.Comment identifier
Creation timestamp
Author identifier
Comment text
Last update timestamp
Author username
Parent comment ID for threaded replies
Notes
Rich-text notes. Content is an array of nodes (paragraphs, headings, images, etc.) in Tiptap JSON format.Array of content nodes, each with a required
type field (e.g. paragraph, heading, image)
