The Udemy Business APIs provide integration functionality in a variety of different methods to provide you with more flexibility in your software development. This article outlines some of the potential uses for each and recommendations on which to choose.
Table of Contents
- Courses and all learning objects
- Reporting
- Learning paths
- Single sign on (SSO)
- Legacy Courses API
- Recommended best in-class integration
Courses and all learning objects
GraphQL Courses API - Protocol: GraphQL
- The next generation and evolution to the traditional courses API. In GraphQL, for each course, we allow you to obtain only the course metadata that you specify. Additionally, utilizing the query system of GraphQL, we enable returning courses that fit your specified criteria.
Please note: To learn more about the general technology behind GraphQL, visit the GraphQL Organization Page.
GraphQL All Learning Objects API - Protocol: GraphQL
- Udemy has a variety of ways to learn, beyond courses. We expose all learning objects via API for integration into your system. This API allows you to obtain courses, labs, or badges. As with the other GraphQL services, you are able to use queries to obtain just the objects and fields you specify.
Documentation: You must have access to Udemy Business to obtain GraphQL documentation. View the Developer Portal at this URL: https://{your_subdomain}.udemy.com/dev-portal/api-reference/
Reporting
Reporting API - Protocol: RESTful
- This API contains all collected user data around the progress, completions, and actions within learning. You can choose to get all user reporting data or specify a set of users. Due to the quantity of data, there is a delay in user actions to be collected and reported against.
Documentation: Udemy Business API Documentation - RESTful APIs
xAPI - Protocol: xAPI
- Real-time reporting, delivered over a webhook, built following the xAPI EdTech standards. Udemy enables real-time progress and reporting data to be pushed to you as it happens. The data contained in these real-time events have less scope when compared to the RESTful reporting API.
Documentation: Udemy Business xAPI Documentation
Learning paths
Learning path API - Protocol: RESTful
- Udemy allows learners and L&D admins to create learning paths, a collection of several courses, and any other kind of learning object, or even external links. We expose these learning paths via API and return all paths and the items contained within them.
Documentation: Udemy Business API Documentation - RESTful APIs
Single sign on (SSO)
Udemy Business is able to connect to all SAML 2.0 single sign on services, which includes most SSO providers. Additionally, custom SSO integrations are available as long as they follow the SAML 2.0 standard.
Protocol: SAML 2.0+
Documentation: Overview of Udemy Business SSO & Core Features
SCIM User Provisioning APIs - System for Cross-domain Identity Management (SCIM) Provisioning allows you to both provision and deprovision user licenses. This system allows your IT teams or custom integrations to automate license management functions.
Protocol: SCIM
Documentation: System for Cross-domain Identity Management (SCIM) Provisioning
Legacy Courses API
Courses API - Protocol: RESTful
- The courses API follows traditional EdTech norms. It obtains all course metadata for either a single course or all courses.
Please note: This is our legacy courses API and we will not be releasing any new functionality to this API. All new features will be released in our GraphQL APIs which contain not only courses but also all learning objects.
Documentation: Udemy Business API Documentation - RESTful APIs
Recommended best in-class integration
We know that each Udemy customer and partner is different and may have different needs. For the best in-class integration, we would recommend incorporating the following APIs:
1. Courses and learning objects: Utilize GraphQL API for access to all learning objects
2. Reporting: Utilize REST API for the full scope of data and complement that by using the xAPI for real-time data
3. SSO: Should be utilized with the addition of SCIM to automate both provisioning and deprovisioning users
4. Learning paths: Utilize the Learning Path API to allow L&D admins and program leads to create learning pathways for the end-user.