Skip to content

CourseProgress

Defined in: v1/schemas.ts:539

Progress record for a specific user on a specific course.

certificate — all certificate fields are null until the student meets the course completion requirements and a certificate is issued. Once issued, page_id references the certificate page, issued_at is the ISO 8601 timestamp of issue, and serial_number is a unique certificate identifier prefixed with cert_.

lecture_sections — returns an empty array [] until the student has interacted with the course. Once progress exists, each section lists its lectures with individual completion state and timestamps.

percent_complete — a value between 0 and 100.

meta.total — returns the total number of lectures in the course when progress data exists, not the number of progress records. Returns 0 when the student has not yet started the course.

  • output<typeof CourseProgressSchema>

certificate: { issued_at: string | null; page_id: number | null; serial_number: string | null; } = CourseCertificateSchema

Defined in: v1/schemas.ts:494

issued_at: string | null

page_id: number | null

serial_number: string | null

z.infer.certificate


completed_at: string | null

Defined in: v1/schemas.ts:495

z.infer.completed_at


enrolled_at: string | null

Defined in: v1/schemas.ts:496

z.infer.enrolled_at


id: number

Defined in: v1/schemas.ts:493

z.infer.id


lecture_sections: { id: number; lectures?: { completed_at?: string | null; id: number; is_completed?: boolean; name?: string; }[]; name?: string; }[]

Defined in: v1/schemas.ts:498

id: number

optional lectures?: { completed_at?: string | null; id: number; is_completed?: boolean; name?: string; }[]

optional name?: string

z.infer.lecture_sections


percent_complete: number

Defined in: v1/schemas.ts:497

z.infer.percent_complete