A quick-start guide for your integration
We want your integration to go live quickly, so we can both open up new markets for our mutual-customers.
Udemy Business Integrations Page, pictured below
Prerequisite steps
- Partnership application submitted and approved
- Udemy provisions sandbox environment for Udemy Business
- Udemy admin invites additional users
If any of these items are missing, please refer to the (Getting Started Guide) to complete them first
Partner integration use cases: If you would like to review the high level use-cases that these integration steps support. If not, let's move into development.
Development steps
Our recommended best practice is to mitigate technical risk, by connecting to all Udemy APIs first, and then begin software development after all endpoints are confirmed working.
- Connect to Courses API, return at least 10 courses
- Connect to Course API, return 1 course
- Log into your Udemy Business site and enroll in a course, watch a lecture for at least 1 minute (you can increase the speed of playback)
- Connect to Reporting API (user-activity)
- Connect to Reporting API (user-course-activity)
- Connect to Reporting API (learning-activity-attempt)
Configurations
With the majority of the APIs all working, you can move to configuration steps.
- Single Sign On (SSO) configuration is done directly inside the your Udemy Business Settings page. You will need to have administrator credentials to access these settings. Setup out-of-the-box SSO with one of our many providers. Or create a custom connection with SAML 2.0. (link to SSO documentation)
- Go through the rest of the settings within the [Udemy Business: Manage: Settings] and customize to your liking
Enhancements
Learning Paths - Allows users to create a curriculum containing a large variety of learning resources, with a start and end to guide the learner.
- Log into your Udemy Business site and create a Learning Path (documentation), open a course and add that course to the learning path you just created
- Connect to the Learning Path API; return the learning path you created
- Connect to Reporting API (learning-path-activity)
Real-time reporting via Webhook
- Setup xAPI - Udemy’s webhook for reporting data of the learner’s progress and completion events (documentation). You will add parameters into the Udemy admin settings page.
- Once setup, watch a short lecture at maximum playback speed and see if you received the progress data.
Query or search course data - Using Udemy’s GraphQL API, we allow queries to our course catalog, returning only the data you need for that specific use case. Additionally, we also provide a Search API that takes your input and filters and returns relevant course results.
- Obtain GraphQL API credentials
- Call GraphQL function GetAuthToken()
- Use the [authToken] to call the Courses API
- Call the CourseSearch API
Note: A Udemy Business login is required to access GraphQL Documentation. The applicable URL features the subdomain for your organization's Udemy account followed by .udemy.com/dev-portal/api-reference/.
For example:
https://{your_subdomain}.udemy.com/dev-portal/api-reference/.
Core software development
With all of the Udemy credentials working, all APIs connected to, and additional configurations setup, the technical risk has been removed. Most partners will next move to planning or head right into development. One way to get started is to take a list of user stories or supported use-cases and map the Udemy APIs needed for each use-case. Best of luck to your software engineering from here!
Error handling, exceptions, and best practices
Harden your software by incorporating error handling, exceptions, and edge-cases. To handle unexpected IT issues, we have a variety of error-handling recommendations.
- Log error responses returned by APIs
- Add retry logic to API calls
- Handle rate limits by using page_size best practices
- Implement other best practices contained in the document
For additional support, feedback, or upon completion of your new integration, please contact us at partnersupport@udemy.com. We are looking forward to opening new markets together with our new mutual functionality.