List sessions with waste and insight enrichment
Retrieve paginated list of sessions with organization or user scoping, enriched with waste metrics and insights summary. Supports filtering by waste percentage, waste duration, and insight types. Enrichment for insightsSummary can be selected independently of the session filter via enrichmentInsightTypes and enrichmentInsightCategories.
Authorizations
OAuth 2.0 client credentials flow. Contact timeback@trilogy.com to request credentials for your application.
Query Parameters
Filter by organization ID. Returns sessions for users whose primary organization is this org, or who have a student role in the org. At least one of orgId or userId must be provided.
Filter by user ID. At least one of orgId or userId must be provided.
Filter by application ID
Filter sessions starting after this timestamp (ISO 8601, inclusive)
Filter sessions starting before this timestamp (ISO 8601, inclusive)
Minimum waste percentage (0-100, inclusive)
0 <= x <= 100Maximum waste percentage (0-100, inclusive)
0 <= x <= 100Minimum waste duration in seconds (inclusive)
x >= 0Maximum waste duration in seconds (inclusive)
x >= 0Comma-separated list of insight types. Filters to sessions containing at least one visible insight of the specified types (OR logic), after type-visibility ACL. Takes precedence over insightGroups. When set, insightsSummary counts those same ACL-visible types only. When none of the requested types are visible to the client, the page is empty. When unset, insightsSummary and waste metrics reflect the default user-facing set (waste + proctoring). Under a type filter, waste metrics use the same formula but only from waste types within the fetched allowlist. Decides insightsSummary only when neither enrichmentInsightTypes nor enrichmentInsightCategories is present.
"Idling,AwayFromSeat"
Comma-separated list of stable Insight Group slugs to filter by. Display names are served by GET /insights/1.0/insight-groups. Takes precedence over category and default, but is overridden by type (or insightTypes on session endpoints). On endpoints that return insights, selects matching insights. On endpoints that return sessions, a session is returned only if it carries at least one caller-visible insight of a member type, and the session's metrics scope to the filter.
"StayFocused,DistractionFreeSpace"
Comma-separated list of insight type slugs used only to widen insightsSummary and the fetched insight set. Does not contribute to the insightTypes session filter. Waste metrics are computed from the fetched set, so when minWastePercentage, maxWastePercentage, or the waste-duration bounds are also present, a waste-free enrichment set can empty or shrink the result page. Internal-only types are dropped for external credentials rather than returning an error; unknown slugs return 400. When set (alone or with enrichmentInsightCategories) it replaces the insightTypes-aligned enrichment and the default enrichment.
"ObservabilityCameraWorking,AcademicIntegrityStayInTheTest"
Comma-separated list of insight categories expanded server-side to their client-visible type slugs, used only to widen insightsSummary and the fetched insight set. Does not contribute to the insightTypes session filter. Waste metrics are computed from the fetched set, so when minWastePercentage, maxWastePercentage, or the waste-duration bounds are also present, a waste-free enrichment set can empty or shrink the result page. Unknown categories contribute no types rather than returning an error, so a request whose resolved enrichment set is empty returns its sessions with an empty insightsSummary and zero waste metrics.
"Observability,AcademicIntegrity"
Filter by proctored status
Filter by webcam enabled status
Comma-separated popup and enforcement outcomes. Narrows the result set (including total and pagination) to sessions matching ANY of the tokens (OR logic): auto_stopped (a forced-end occurred), warning_issued (at least one ENFORCE warning popup was shown, falling back to legacy warning events for sessions with no presentation ledger), or notification_shown (at least one NOTIFY popup was shown). Unknown tokens return 400.
"auto_stopped,warning_issued,notification_shown"
When true, widens an insightTypes filter so proctored sessions that had an enforcement event (warning_accrued / warning_displayed / forced_end) surface even when they have no visible insight of the requested types. Has no effect without insightTypes. Defaults to false.
Maximum number of items to return
1 <= x <= 100Number of items to skip
x >= 0Response
Successful response with enriched sessions