Skip to content

Query endpoints

All read endpoints take x-api-key and the shared parameters. Reads are scoped to the project resolved from the key. Below are the most-used endpoints, grouped by need; see the overview for auth and parameter units.

MethodPathPurposeExtra params
GET/api/v1/sessionsRecent sessions (id, visitor, event count, start/end).limit, cameraMode
GET/api/v1/sessions/:id/metaCoarse session descriptor (device/scene/user).
GET/api/v1/sessions/:id/trajectoryOne session’s ordered walked path.scene, limit
GET/api/v1/scenesDistinct scenes with activity (for the scene picker).limit
MethodPathPurposeExtra params
GET/api/v1/heatmaps/pointer2D pointer heatmap bins.bins, scene, source, session, cameraMode
GET/api/v1/heatmaps/world3D world-space pointer heatmap.cellSize, scene, source, cameraMode
GET/api/v1/heatmaps/gaze3D world-space gaze heatmap (requires capture.gaze).cellSize, scene, session, cameraMode
GET/api/v1/heatmaps/cameraView-direction heatmap (spherical bins).bins, scene, session, cameraMode
GET/api/v1/heatmaps/positionTop-down floor-plan camera-position heatmap.cellSize, scene, session, cameraMode
GET/api/v1/heatmaps/click-raysClick rays per voxel/mesh.cellSize, scene, source, session
GET/api/v1/heatmaps/flowGaze→mesh flow links. Position-aware mode (groupByOrigin/originVoxel) bins by click-time camera standpoint — best for walkable scenes.bins, limit, scene, session, cellSize, groupByOrigin, originVoxel, cameraMode
MethodPathPurposeExtra params
GET/api/v1/meshes/topMost-interacted meshes.limit, session
GET/api/v1/meshes/dwellObject dwell ranking from mesh_visibility.scene, session
GET/api/v1/hover/dwellHover-hesitation ranking from hover_dwell.limit, scene, source, session
GET/api/v1/clicks/deadDead-click rate (clicks that hit empty space).scene, source, session
GET/api/v1/clicks/rageRage-click clusters.interval, minRepeats, limit, scene, source, session
GET/api/v1/interactions/sourcesInput-source breakdown (mouse/touch/XR/hand/gaze/…).limit, scene, source, session
MethodPathPurposeExtra params
GET/api/v1/perfRendering-performance summary (samples, avg/min/p50 FPS).session
GET/api/v1/perf/resourcesGPU/memory footprint summary from resource_sample.session
GET/api/v1/perf/compile-stallsShader/pipeline compile stalls.limit, scene, session
GET/api/v1/capabilitiesCapability fallbacks/recoveries (e.g. WebGPU→WebGL2).limit, scene, session
MethodPathPurposeExtra params
GET/api/v1/camera-gesturesCamera-navigation breakdown (orbit/pan/dolly/zoom/…).limit, scene, source, session
GET/api/v1/coverageScene coverage / dead zones from camera positions.cellSize, scene, source, session
GET/api/v1/camera/distanceCamera distance / zoom histogram.centerX/Y/Z, bucketSize, scene, source, session
GET/api/v1/navigationPer-session travel (segments, distance, active vs idle).moveThreshold, scene, source, session
GET/api/v1/xr/rotationXR head/view rotation rate (motion-sickness proxy).rapidTurn, limit, scene, session
GET/api/v1/xr/sourcesXR input-source usage (hand vs controller vs gaze).limit, scene, session
GET/api/v1/xr/abandonmentXR session abandonment.limit, scene, session
MethodPathPurposeExtra params
GET/api/v1/timeseriesEvent-volume buckets over time (bucket, events, avg_fps).scene, interval, type
GET/api/v1/event-countsPer-event-type counts over the range.scene
MethodPathPurposeExtra params
GET/api/v1/sessions/:id/eventsOrdered raw event stream for replay.
Terminal window
curl -H "x-api-key: $KEY" \
"https://collect.example.com/api/v1/perf?session=<session-id>"