Integrate Udemy Business with Oracle Learning

Complete this one-time setup to configure integration, enable secure data exchange, and start importing, tracking, and managing Udemy Business learning in Oracle Learning.

  1. Make sure that you have an active enterprise subscription with Udemy Business.
  2. Configure Single Sign On between Oracle Learning and Udemy Business to ensure the correct exchange of user information for learner progression tracking. You can use any identity provider.
  3. Enable self-paced learning.
  4. In Oracle Cloud Infrastructure Identity and Access Management, generate a unique set of Oracle client ID, client secret, token URL or OAuth server URL, and scope for each POD where you're enabling integration. The set lets you authenticate incoming requests from Udemy Business to track learning completions.
    1. Sign in to Oracle Cloud console.
    2. On the navigation menu, select Identity & Security > Domains.

      Complete steps c through l as many times as you have PODs. For example, to enable integration in a development POD and a production POD, complete the steps twice.

    3. On the Integrated applications tab, add a confidential application for Udemy Business.
    4. Enter a unique name that includes Udemy for easy identification, such as Udemy dev or Udemy prod, and a description.
    5. Submit the application.
    6. In the Configure OAuth step, configure the app as a client now.
    7. For authorization, select Client credentials.
    8. In the Token issuance policy step, add specific authorized resources that are accessible to the users.
    9. Add either the Oracle Applications Cloud (Fusion) or the Fusion Applications Cloud Service scope, whichever is available.

      The description shows the scope in the format <resource audience><resource scope>, for example, urn:opc:resource:fa:instsanceid=630113349urn:opc:resource:consumer::all. Copy this scope, which is different for each of your environments, because you'll need to share this information with Udemy Business.

    10. Submit the configuration.
    11. Review the configuration and activate the app.
    12. From the OAuth configuration page of your activated app, copy the client ID and client secret values because you need to share this information with Udemy Business.
  5. In Oracle, create a job role that includes only the Learning Content Provider duty role--don't include any other duty role. The role lets this account use the necessary Oracle APIs to receive content and completions from Udemy Business.
    1. Go to Tools > Security Console.
    2. On the Roles tab, create your job role.
    Caution: If you have any IP restrictions or have enabled location-based access control (LBAC), make sure to enable the job role for access from all IP addresses. Otherwise Udemy Business will get API authentication failures when sending content to Oracle Learning.
  6. Configure the Oracle client ID from step 4 as a user account that you'll use in step 9.

    Oracle Learning uses the account when querying Udemy Business to get new and updated content.

    1. On the security console Users tab, add a user account.
    2. Set Associated Person Type to None.
    3. Enter the appropriate user details so you can identify the account. Make sure that the user name is the same as the Oracle client ID value. Any discrepancy might lead to an unsuccessful configuration.
    4. Add the job role that you created in step 5.
  7. Ask your Udemy Business account team for your GraphQL API client credentials for Oracle integration. The team should provide you with Udemy Client ID and Udemy Client secret credentials, which you'll use step 9.
  8. In Udemy Business, set up xAPI integration using this information:
    Property Value Comments
    LMS/LXP Name Any meaningful name for your Oracle Learning integration NA
    Auto enrollment On NA
    xAPI configuration On NA
    OAuth token URL Obtained in step 4

    Gets the access token using client credentials. It's in the format https://idcs-a79107525a3e47319c208830b3cfc15a.identity.oraclecloud.com/oauth2/v1/token

    The URL needs to be unique to each POD where you enable the integration

    Client ID Oracle Client ID obtained in step 4 These credentials need to be unique for each POD where you enable the integration
    Client Secret Oracle Client Secret obtained in step 4
    OAuth Scope Scope obtained in step 4 Needed for integration to work, even though its shown as optional
    xAPI statements URL https://<hostname>/hcmRestApi/redwood/xAPI/statements

    Where hostname is for your Oracle learning environment

    If the app URL is https://fa-eodv-test-saasfaprod1.fa.ocs.oraclecloud.com/fscmUI/faces/FuseWelcome then hostname is fa-eodv-test-saasfaprod1.fa.ocs.oraclecloud.com

    The xAPI statements URL will be https://fa-eodv-test-saasfaprod1.fa.ocs.oraclecloud.com/hcmRestApi/redwood/xAPI/statements

  9. In Oracle Learning, enable Udemy Business.
    1. Go to My Client Groups > Learning and Development > Configure External Providers.
    2. Configure Udemy Business and enter the provider client ID and client secret credentials.
    3. For user name, search for and select the Oracle Client ID created in step 4.
    4. Select a learning catalog profile to apply to all imported Udemy Business learning. The profile identifies who can see and manage the learning.
    5. To prepare imported learning for discovery and automatically classify it, configure skills and qualifications, audience, and catalog settings. The settings apply to new content imported after you validate your changes. Changes aren't automatically applied to content imported before you validate these changes.

      Changes to the skills library or provider skills aren't reconciled to learning that's already been processed. Skills also aren't re-evaluated when you run Load and Sync External Course Data with Force All External Course Data to Reload set to Yes.

    6. To better support learning discovery in Oracle Learning, review the attribute mappings and update them as appropriate.
    7. Validate the configuration.
  10. If they're not already scheduled because another provider is already enabled or you've been creating and managing your own self-paced learning, schedule these background processes.
    • Load and Synchronize External Course Data
    • ESS job to run Bulk ingest to OSCS
    • Process Learning Experience Statements
    • Process Learning Catalog Item Deactivations and Deletions

    Reference: Scheduled background processes for Oracle Learning

    1. Go to Tools > Scheduled Processes.
  11. If you set the provider content visibility to private, schedule the Reconcile User Groups process to run daily if it's not already scheduled.