Skip to content
Woolf Help Center home
InboxAsk a human

πŸ“ˆ Get Student Degree Progress

The studentDegreeProgress and myDegreeProgress queries return a complete snapshot of a student's progress on a degree in a single call: total workload completed versus required, GPA and final average, and a per-tier and per-course breakdown including exemptions and course requirements.

  • Use studentDegreeProgress with your college token to look up any of your students.

  • Use myDegreeProgress when the request is authenticated as the student (for example, with a token from Generate User Token) to return that student's own progress.

Workload is returned in both hours and minutes. For how provisional workload is counted, see Understanding Provisional Progress.


studentDegreeProgress

Parameters

Parameter

Type

Description

degreeId

ID!

ID of the degree.

id

String!

The student β€” accepts the student's email address, your external ID, or the Woolf user ID.

Response Fields

Returns a StudentDegreeProgressSnapshot.

Field

Type

Description

degree

StudentDegreeProgressSnapshotDegree!

Degree structure with tiers, specializations, and per-course progress (see Related Types).

degreeId

ID!

ID of the degree.

degreeStudentId

ID!

ID of the student's degree enrollment.

finalAverage

Float

Final average grade across the degree, if available.

gpa

Float

Grade point average across the degree, if available.

status

DegreeStudentStatus!

Degree enrollment status (PENDING, ACTIVE, REJECTED, SUBMITTED, COMPLETED, ARCHIVED, PAUSED).

workloadCompletedHours

Float!

Workload completed toward the degree, in hours.

workloadCompletedMinutes

Int!

Workload completed toward the degree, in minutes.

workloadConsumedHours

Float!

Workload consumed by the student, in hours.

workloadConsumedMinutes

Int!

Workload consumed by the student, in minutes.

workloadInProgressHours

Float!

Workload currently in progress, in hours.

workloadInProgressMinutes

Int!

Workload currently in progress, in minutes.

workloadProvisionalHours

Float!

Workload counted provisionally, in hours.

workloadProvisionalMinutes

Int!

Workload counted provisionally, in minutes.

workloadRequiredHours

Float!

Workload required to complete the degree, in hours.

workloadRequiredMinutes

Int!

Workload required to complete the degree, in minutes.

πŸš€Β Request (Try It)


myDegreeProgress

Returns the degree progress of the authenticated student. The response is the same StudentDegreeProgressSnapshot as studentDegreeProgress.

Parameters

Parameter

Type

Description

degreeId

ID!

ID of the degree.

πŸš€Β Request (Try It)


StudentDegreeProgressSnapshotDegree

Field

Type

Description

id

ID!

ID of the degree.

name

String!

Name of the degree.

specializations

[StudentDegreeProgressSnapshotTier!]!

Specializations of the degree (tiers of kind SPECIALIZATION).

tiers

[StudentDegreeProgressSnapshotTier!]!

Tiers of the degree (tiers of kind TIER).

workloadRequiredHours

Float

Workload required for the degree, in hours.

workloadRequiredMinutes

Int

Workload required for the degree, in minutes.

StudentDegreeProgressSnapshotTier

Field

Type

Description

courses

[StudentDegreeProgressSnapshotCourse!]!

Courses in this tier with the student's progress.

cumulativeWorkloadConsumedHours

Float!

Cumulative workload consumed in this tier, in hours.

cumulativeWorkloadConsumedMinutes

Int!

Cumulative workload consumed in this tier, in minutes.

cumulativeWorkloadProvisionalHours

Float!

Cumulative provisional workload in this tier, in hours.

cumulativeWorkloadProvisionalMinutes

Int!

Cumulative provisional workload in this tier, in minutes.

cumulativeWorkloadProvisionalSolidHours

Float!

Cumulative solid provisional workload in this tier, in hours.

cumulativeWorkloadProvisionalSolidMinutes

Int!

Cumulative solid provisional workload in this tier, in minutes.

id

ID!

ID of the tier.

kind

TierKind!

Tier kind (TIER, SPECIALIZATION).

name

String!

Name of the tier.

position

Int!

Position of the tier within the degree.

tierProgress

StudentDegreeProgressSnapshotTierProgress

Student's progress and exemption details for this tier.

tierWorkloadRequiredHours

Float!

Workload required for this tier, in hours.

tierWorkloadRequiredMinutes

Int!

Workload required for this tier, in minutes.

StudentDegreeProgressSnapshotTierProgress

Field

Type

Description

exemptionGrantedAt

DateTime

When an exemption was granted for this tier, if any.

exemptionSource

TierExemptionSource

Where the exemption came from (see TierExemptionSource).

isExempted

Boolean!

true if the student is exempted from this tier.

workloadCompletedHours

Float!

Workload completed in this tier, in hours.

workloadCompletedMinutes

Int!

Workload completed in this tier, in minutes.

workloadCompulsoryCompletedHours

Float!

Compulsory-course workload completed, in hours.

workloadCompulsoryCompletedMinutes

Int!

Compulsory-course workload completed, in minutes.

workloadCompulsoryRequiredHours

Float!

Compulsory-course workload required, in hours.

workloadCompulsoryRequiredMinutes

Int!

Compulsory-course workload required, in minutes.

workloadElectiveCompletedHours

Float!

Elective-course workload completed, in hours.

workloadElectiveCompletedMinutes

Int!

Elective-course workload completed, in minutes.

workloadElectiveRequiredHours

Float!

Elective-course workload required, in hours.

workloadElectiveRequiredMinutes

Int!

Elective-course workload required, in minutes.

workloadRequiredHours

Float!

Workload required for this tier, in hours.

workloadRequiredMinutes

Int!

Workload required for this tier, in minutes.

workloadTransferredHours

Float!

Workload transferred into this tier (for example, through RPL), in hours.

workloadTransferredMinutes

Int!

Workload transferred into this tier (for example, through RPL), in minutes.

StudentDegreeProgressSnapshotCourse

Field

Type

Description

courseId

String!

ID of the course.

degreeCourseKind

DegreeCourseKind!

Whether the course is COMPULSORY or ELECTIVE in this degree.

finalAverage

Float

Final average grade for the course, if available.

name

String!

Name of the course.

provisionalWorkloadHours

Float!

Provisional workload for the course, in hours.

provisionalWorkloadMinutes

Int!

Provisional workload for the course, in minutes.

provisionalWorkloadSolidHours

Float!

Solid provisional workload for the course, in hours.

provisionalWorkloadSolidMinutes

Int!

Solid provisional workload for the course, in minutes.

requirementCounters

StudentDegreeProgressSnapshotCourseRequirementCounters!

Course requirements and how many the student has met (see below).

runningAverage

Float

Current running average grade for the course.

status

CourseStudentStatus

Course enrollment status (ACTIVE, SUBMITTED, PASSED, FAILED).

workloadConsumedHours

Float!

Workload consumed in the course, in hours.

workloadConsumedMinutes

Int!

Workload consumed in the course, in minutes.

workloadRequiredHours

Float!

Workload required for the course, in hours.

workloadRequiredMinutes

Int!

Workload required for the course, in minutes.

StudentDegreeProgressSnapshotCourseRequirementCounters

Field

Type

Description

accomplished

DateTime

When the student passed the course, if applicable.

consumedResourceAssignmentAmount

Int!

Assignments completed.

consumedResourceAssignmentSummativeAmount

Int!

Summative assignments completed.

consumedResourceMeetingAmount

Int!

Meetings attended.

consumedResourcePublicationReviewedAmount

Int!

Peer-reviewed publications completed.

gradingScheme

GradingScheme

Grading scheme of the course (NUMERIC, PASS_FAIL).

hasDegreeAffiliation

Boolean!

Whether the course enrollment is affiliated with the degree.

isOnboardingCompleted

Boolean!

Whether the student has completed degree onboarding.

minimumCourseWorkloadHours

Float!

Minimum workload required for the course, in hours.

minimumCourseWorkloadMinutes

Int!

Minimum workload required for the course, in minutes.

resourceAssignmentAmountRequired

Int!

Assignments required.

resourceAssignmentSummativeAmountRequired

Int!

Summative assignments required.

resourceMeetingAmountRequired

Int!

Meetings required.

resourcePublicationReviewedAmountRequired

Int!

Peer-reviewed publications required.

Enums

Enum

Values

TierKind

TIER, SPECIALIZATION

TierExemptionSource

AIRLOCK_API, AIRLOCK_SDK, AMS, IMPORT, IMPORT_RPL, RPL_REQUEST, STAI_CREDIT, UNKNOWN

DegreeCourseKind

COMPULSORY, ELECTIVE

GradingScheme

NUMERIC, PASS_FAIL

DegreeStudentStatus

PENDING, ACTIVE, REJECTED, SUBMITTED, COMPLETED, ARCHIVED, PAUSED

CourseStudentStatus

ACTIVE, SUBMITTED, PASSED, FAILED