Set Up Coursera Integration with Oracle Learning

Integrate Coursera learning content seamlessly into Oracle Learning. The integration also lets you track learner progress and completions in Oracle Learning, whether the content is accessed through Coursera or directly in Oracle Learning.

  1. Make sure that you have an active account with Coursera that allows integrations.
  2. Configure single sign in between Oracle Learning and Coursera to ensure the correct exchange of user information for learner progression tracking. You can use any identity provider you want.
  3. Map the user name or work email attribute, or both attributes depending on the provider's requirements. The provider includes the user name or work email in the xAPI statements it sends to Oracle Learning to identify the relevant learner.
  4. Enable self-paced learning.
  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 Coursera. Use the Tools > Security Console page, Roles tab.
    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 Aperian will get API authentication failures when sending content to Oracle Learning.

  6. Create a user account that you'll use in step 3. Oracle Learning uses the account when querying Coursera to get new and updated content.
    1. On the Tools > Security Console page, Users tab, add a user account.
    2. Set Associated Person Type to None. Make sure the user isn't associated with a person or worker account.
    3. Enter the appropriate user details so you can identify the account. Give the account a meaningful user name, such as user.coursera.
      Tip:

      Coursera uses this user for both content and completion syncs.

    4. Add the job role that you created in step 1.
  7. Enable the Coursera external provider using the My Client Groups > Learning and Development > Configure External Providers task.
    1. Enter the user account created in step 2.
    2. Select a learning catalog profile that will apply to all imported Coursera learning. The profile identifies who can see and manage the learning.
    3. Optionally configure 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.
    4. Validate the configuration.
    5. Optionally change the attribute mappings that you can to map certain Coursera attributes to attributes in Oracle Learning that you might have extended or changed. Not all attribute maps can be changed.
  8. Contact your Coursera account team and give them the user name created in step 2. In turn, they'll give you this information:
    • The trusted issuer name for their JWT token, it needs to exactly match the value used when configuring JWT.
    • A public certificate so they can authenticate to the Oracle Learning APIs to send content and completion data.
  9. Create an Oracle API authentication provider to authenticate incoming requests from Coursera.
    1. Go to Tools > Security Console API Authentication tab.
    2. Create the Oracle API authentication provider.
    3. Edit the API authentication configuration details so that you can enter the trusted issuer name provided by your Coursera account team and select the JWT token type.
      Caution:

      You need to get the trusted issuer name from Coursera and the name that you enter needs to match the value they used when generating the token. Any other name results in authentication errors when Coursera tries to send content.

    4. Save your changes and close the page.
    5. Add a new inbound API authentication public certificate with a unique alias.
    6. Upload the public key (.cer extension file) provided by your Coursera account team.
    7. Save your changes and click Done. Your environment can now accept incoming requests from Coursera.
  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. Use the Tools > Scheduled Processes task:
    Process Input Parameter Recommended Frequency Description

    ESS job to run Bulk ingest to OSCS

    Program Name is OLC-REST Once per day, after the Load and Synchronize External Course Data process completes Make new content and updates visible to people in Oracle Learning.
    Process Learning Experience Statements NA Once per day Process any learner experience statements that for some reason weren't processed immediately.
    Process Learning Catalog Item Deactivations and Deletions NA Once per day, after the Load and Synchronize External Course Data process completes Deactivate content and withdraw active enrollments.
  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.
    1. Go to Tools > Scheduled Processes.