Open edX API: all you need to know in one place
In order to explain what Open edX API does, we need to start with the explanation what API in general is.
API (Application Program Interface) is a set of definitions, procedures, protocols and tools allowing some software utilize data and functions of another software, operational system or service.
EdX.org reported reaching 10,000,000 learners worldwide on the 2nd of February, 2017. This makes the need for increasing the quantity of APIs available even more important. As Marco Morales, edX.org Project manager and Designer, stated in an interview with us published in the November of 2016, “Current technology roadmap goals include separate services and applications, faster development cycles, and the creation of clear and clean APIs.”
Nowadays, Open edX APIs are a set of capabilities that allow connecting Open edX to third-party and legacy modules, providing smooth integration and development of multiple apps and software. This is essential for companies and educational organisations who already have their HR, accounting, L&D and other software infrastructure in place.
As LMS will become one of the mission-critical assets of the company after deployment (because it will provide 24/7 access to educational materials from various devices, act as a centralized storage of user’s personal data, payment processor, tracking and analytics tool, certification and recertification center, etc.), it should be able to integrate with existing systems to ensure the best user experience to admins, course staff and users alike.
Open edX APIs
In order to ensure this, Open edX Platform APIs utilize ReST design principles with OAuth2 authentication functionality and employ the JSON format of data interchange. This helps provide multiple and secure platform entrance points like social network accounts, Microsoft personal accounts or existing intranet user accounts.
Such APIs are currently available:
- Courses API version 1.0. This API allows getting a list of courses currently deployed on a platform and getting the details for each of these courses.
- Enrollment API version 1.0. This API allows finding out whether the user enrolled on a course or not, how many users are enrolled for a course, list all courses the user is enrolled to and actually enroll the user to a course.
- User API version 1.0.This API provides the functionality of receiving and updating the user account details and preferences, helping provide personalized user experience across multiple devices.
More APIs are in development, promising a significant increase in the range of tools and software that can be integrated with Open edX platform. Raccoon Gang has vast experience with connecting various software, third-party and legacy modules, as well as implementing OAuth2 authentication for our customers. We are always glad to help, contact us any time!