PaginatedInsightsOutput
Unified paginated insights response with session summary
- insightsType: array object[] · InsightOutput[]required
Array of insight objects
Unified insight information
- durationType: integer
In Seconds requiredDuration of the insight in seconds
- endedType: string Format: date-time
At Time requiredTimestamp when the insight period ended
- idType: string Format: uuidrequired
Unique identifier for the insight
- insightType: string | null
Group requiredStable Insight Group slug for this insight's type; null when the type has no group (for example, Journal). The published set is served by GET /insights/1.0/insight-groups; it is not a fixed list.
- insightType: string · InsightType
Type requiredInsight type slug (data-driven, see GET /insights/1.0/types for available types)
- reasonType: stringrequired
Detailed reason or description for the insight
- startedType: string Format: date-time
At Time requiredTimestamp when the insight period started
- versionType: string · InsightVersionmax length:16required
Version of the insight
- messageType: integer | null
Version Pinned catalog message bundle version; null for legacy insights
- rolloutType: string | null enum
State Rollout stage recorded at detection for the student's school, not the school's current stage. Dashboard GETs (
getUserInsights,getSessionInsights) omitSHADOW;getSessionNotificationsmay still return it. Null when no rollout policy governed the finding.values- S
H A D O W - N
O T I F Y - E
N F O R C E
- limitType: integerrequired
Maximum number of items returned
- offsetType: integerrequired
Number of items skipped in the result set
- sessionType: object · SessionSummaryOutputrequired
Session summary information
- durationType: integer
In Seconds requiredTotal duration of the session in seconds
- endedType: string Format: date-time
At Time requiredTimestamp when the session ended
- isType: boolean | null
Proctored requiredWhether the session was proctored. Populated only for a single owning session; null for aggregate summaries that span multiple sessions.
- recordingType: string | null
S3 Key requiredS3 key of the session recording, null if no recording exists
- revokedType: string | null Format: date-time
At requiredTimestamp when the session was quarantined (revoked), or null when it is not revoked. Downstream fail-closed consumers read this to distinguish a quarantined session from one that is not yet materialized.
- startedType: string Format: date-time
At Time requiredTimestamp when the session started
- subjectType: string | null · SessionSubjectenumrequired
Academic subject attributed to this learning session. Null means not yet decided (no vision-end upsert). Unknown is an explicit value meaning looked and could not say. Values: Reading, Language, Vocabulary, Social Studies, Writing, Science, FastMath, Math, Unknown.
values- Reading
- Language
- Vocabulary
- Social
Studies - Writing
- Science
- Fast
Math - Math
- Unknown
- subjectType: string | null · SessionSubjectSourceenum
Source requiredHow subject was decided: app (single-subject LTI application shortcut), journal (vision journal classification), or none (fallback Unknown). Null when subject is null.
values- app
- journal
- none
- wasteType: integer
Duration In Seconds requiredTotal waste duration of the session in seconds
- wasteType: integer
Percentage requiredPercentage of session time that was waste (0-100)
- metadataType: object | null · InsightsSessionMetadata
Opaque session metadata object
- totalType: integerrequired
Total number of items available
