Hi Bill,
Thanks for the great questions!
If you're only using Clever for SSO and don't have access to rostering data, you'll essentially be provisioning incoming users on demand. If your existing student and teacher user records already contain email addresses or identifiers provided by school districts/SISes, then you have some of the best data points available to match incoming users to. When a student or teacher signs in to your application, you'll receive a few pieces of information you can use to attempt user matching:
- a unique Clever ID for ongoing matches
- a "sis_id" that corresponds to the ID of the user in the district's SIS
- For many users, an "email" field, also provided by the SIS.
- For many users, a credentials.district_username field which some SISes/districts provide for students and teachers.
You won't be able to match every user with these fields, but they do tend to result in the best matches. We touch on this a bit in
this doc.
If you're also using Clever for roster sync, these matching strategies generally remain the same but instead of performing matches in real time as users sign in to your application, you would perform the matching during a regular syncing process. Some further recommendations for matching in roster syncs is
here.
At this time, it isn't possible for a district to send app-specific usernames or other data via Clever.
One
recent announcement we made is about a new tool we've just started piloting called Matchmaker that aids applications in matching district data to their preexisting records.
Thanks again for your great questions.
Taylor Singletary
Clever Developer Relations