Inviting Students to a Degree using API
This guide explains how colleges using Canvas or other systems can utilize the addStudentToDegree. This API mutation can be used to invite students to degrees, avoid account duplication, and ensure accurate billing and payment tracking.
Key Concepts
1. Use External ID to Prevent Account Duplication
What is External ID?
External ID refers to a unique, unchangeable identifier for students (e.g., Canvas User ID). It ensures each student is accurately identified across systems.
Why Use External ID?
Emails may change, but the External ID remains constant. Using External IDs helps prevent duplicate accounts when students use multiple email addresses.
- Always store the External ID (e.g., Canvas User ID) in your CRM.
- If a student is already added to Canvas, use their
externalIdwhen inviting them to a degree. - If the student hasn’t been added to Canvas, use their email.
- The
externalIdcannot be changed or deleted via the API.
Important Note: Account merging is not available in Woolf. Carefully handle External IDs to avoid errors.
2. Required and Optional API Fields
| Field | Required | Description |
|---|---|---|
degreeId |
Yes | Identifies the degree to which the student will be invited. |
email |
Yes | Used to invite the student if the externalId is not provided. |
externalId |
Optional | Unique identifier (e.g., Canvas User ID). Recommended to avoid account duplication. |
tuitionCost |
Optional | Overrides the default tuition cost for the degree. |
currency |
Optional | Specifies the currency for tuition cost. If not provided, the default currency set for the degree is used. |
nameFirst |
Optional | First name of the student. |
nameLast |
Optional | Last name of the student. |
Example Request
🚀 Request (Try It)
Example Response
{
"data": {
"addStudentToDegree": {
"id": "1cb91e3f-2eab-4c8d-902f-944c86937dfc"
}
}
}
Invitation Logic
The API handles student invitations as follows:
-
If
externalIdexists:
The system invites the user associated with theexternalIdto the degree. Any email provided in the request is ignored. -
If
externalIddoes not exist butemailexists:
The system invites the user associated with the email to the degree. -
If neither
externalIdnoremailexists:
The system creates a new user and invites them to the degree.
Common Scenarios and Best Practices
Inviting Students Using External IDs
- Use the
externalIdwhen the student already exists in Canvas or another integrated LMS. - This prevents duplicate records and ensures accurate syncing of student data.
Specifying Tuition Costs and Currency
- Override the default tuition cost for specific students by passing
tuitionCostandcurrencyvalues. - If no values are provided, Woolf will apply the default tuition cost and currency set for the degree.
Handling Missing Information
- If
externalIdoremailis missing, ensure the necessary data is collected before making the API request. - Always verify the
degreeIdfrom Woolf AMS to avoid errors.