Many online apps need to know the identity of users before those users can log in. This is seen frequently in edtech apps that need to know which students and teachers from a school or district should be allowed to access the app. Furthermore, it's usually beneficial to know if the role of the user (i.e. student, teacher, or administrator) in order to give that user the proper level of access. For example, you probably don't want students to see answer keys reserved for teachers!

The act of retrieving data from from another platform to provision accounts in a different application is called rostering. There are several different ways to get rostering information from platforms that schools use to manage their students and faculty. In this article, we'll go over some of the different methods that apps can use to roster users.


OneRoster is a standard from IMS Global that allows for the secure exchange of enrollment data between two platform. Many student information systems (SISs) allow enrollments to be exported via the OneRoster format. This OneRoster file can then be uploaded into a OneRoster-compliant platform or application. OneRoster contains data such as names, email identifiers, course listings, and roles of users.


Clever is one of the most popular platforms to obtain roster data. Clever helps school administrators to connect their student information systems (SISs) to Clever. The students and teachers from a school can then log into Clever-connected apps with a single set of credentials. This entire process is free for schools. However, companies who want to be able to retrieve rostering data from Clever must pay for Clever's Secure Sync program.

ClassLink provides SSO and rostering solutions for educational applications. ClassLink's services (which include Launchpad, OneSync, and Roster Server) are built on the OneRoster standard.

Roster Server is ClassLink's implementation of a OneRoster server. Schools that work with ClassLink will install Roster Server as a virtual server on their network or in the cloud. School administrators then either directly connect their student information system (SIS) to Roster Server through the OneRoster API or upload CSV templets into Roster Server that are formatted in the OneRoster specification.

When school administrators connect to an application on ClassLink, the school's Roster Server will export their enrollments to the application through the OneRoster standard. Though it's not required, many applications will use this data through ClassLink Launchpad in order to provision accounts for users and enable single sign-on.


GG4L offers rostering through its GG4L Connect solution. GG4L creates universal identifiers for school users through SIS, LMS, and LDAP integrations. GG4L exposes its roster data through the OneRoster API standard.


Ed-Fi is a non-profit organization that promotes the use of it's Ed-Fi data standard and the Ed-Fi API. Edtech vendors that work with districts who have adopted the Ed-Fi technology suite can use the Ed-Fi API to roster data into their applications.

It is important to note that Ed-Fi itself is not a product or rostering tool. It is a standard that other products can adhere to. There are a number of products on the market that implement the Ed-Fi specification, including Powerschool and Certica.


A4L is another non-profit that encourages the use and development of data standards for education, such as the SIF specification. A4L offers the xPress Roster API as a method to retrieve rostering data from schools that support SIF 3 data models.

LMS Integration

Many LMSs allow for the retrieval of enrollments and other related data via their API. This method may require an administrator or teacher to connect their account to the application, at which point the app may retrieve a list of enrollments from the user's courses in the LMS. It should be noted that the LTI Advantage standard can also gather enrollment data for a particular course, but not for an entire school.

Manual or CSV-based Rostering

Many applications allow for users to upload roster information manually. This is certainly the most error-prone and time consuming method to perform rostering, but it may be necessary in the event that a school or application does not support any of the previously mentioned methods for rostering. This process can either be performed by allowing teachers or administrators to create accounts for other users through an interface in the application; or by allowing the user to upload rosters through a specified CSV format.

Which one should you choose?

If your app needs to retrieve rostering information from your partner schools, you'll need to make sure that your app actually supports incoming data from the schools' data sources. Thus, you may want to make sure that your app supports rostering data from multiple platforms. This is where Edlink can help!

Learn More about LMS Integrations

If you’re interested to learn more about LMS Integrations here’re other articles we’ve written:

If you're looking for a partner who can help guide you through developing LMS integrations (like these), then let’s introduce ourselves. We’re Edlink!