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.
π‘ Recommendations:
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 |
|---|---|---|
| Yes | Identifies the degree to which the student will be invited. |
| Yes | Used to invite the student if the |
| Optional | Unique identifier (e.g., Canvas User ID). Recommended to avoid account duplication. |
| Optional | Overrides the default tuition cost for the degree. |
| Optional | Specifies the currency for tuition cost. If not provided, the default currency set for the degree is used. |
| Optional | First name of the student. |
| 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.
FAQs
Can I invite students using only their email addresses?
Yes. If a student has not been added to Canvas or another LMS, you can invite them using their email.
What happens if I provide both externalId and email?
The system prioritizes externalId and ignores the email provided.
Can I update the externalId for a student?
No. The externalId is immutable once assigned.
What if a student is already enrolled in a degree?
If the student is already enrolled in the specified degree, the API will not duplicate their enrollment.
How do I fetch the degreeId?
You can use the the College query in the Woolf API or retrieve it from the AMS UI under Degree Details.