Skip to content
Help Center
Products
Back to KC LMS Integration

Oracle Learning Integration with KnowledgeCity LMS

Summary

The Oracle Learning integration allows KnowledgeCity to act as a content provider, while Oracle Learning (part of Oracle Fusion Cloud HCM) is the platform where learners launch training and track results.

It supports three core flows:

  • User Import: Import users from Oracle HCM into KnowledgeCity
  • Course Export: Export eligible courses from KnowledgeCity to Oracle Learning
  • Course Completion Export: Export course completions from KnowledgeCity to Oracle Learning

Some sync operations can run automatically using a scheduler (based on the LMS local time zone).


Introduction

The purpose of this integration is to streamline enterprise learning operations by enabling admins to:

  • Keep user accounts aligned between Oracle HCM and KnowledgeCity
  • Publish KnowledgeCity courses into Oracle Learning for course launching
  • Send completion data back to Oracle Learning for centralized reporting and compliance

This reduces manual account management and keeps learning records consistent across systems.


Requirements

Before setting up the Oracle Learning integration, confirm the following prerequisites.

Admin Permissions

  • You must have Administrator access in the KnowledgeCity LMS to enable and configure integrations.

Oracle API Access

You must obtain the required API details from your Oracle Fusion Cloud HCM administrator:

  • Oracle Fusion Cloud REST API Base URL
  • Oracle API Username
  • Oracle API Password

Oracle API User Roles

The API user in Oracle Fusion HCM must have the following job roles assigned:

  • Learning Specialist (ORA_WLF_LEARNING_SPECIALIST_JOB): Required for all learning-related operations
  • HCM Integration Specialist (ORA_HRC_HUMAN_CAPITAL_MANAGEMENT_INTEGRATION_SPECIALIST_JOB): Required for REST and HDL-based integrations
  • Human Resource Specialist (ORA_PER_HUMAN_RESOURCE_SPECIALIST_JOB): Required to view and validate worker records
  • Application Implementation Consultant (ASM_APPLICATION_IMPLEMENTATION_CONSULTANT_JOB): Required for configuration validation
Important: Data Security is required for both User Import AND Completion Export.

Oracle HCM has two separate security layers:

  • Function Security (job roles above): controls whether the user can call the API
  • Data Security (HCM Data Role + Person Security Profile): controls which worker records the user can read or write to

Assigning job roles directly to the API user is not sufficient. Each required job role must be wrapped inside an HCM Data Role with an appropriate Person Security Profile (e.g., "View All Workers"). Without this:

  • /publicWorkers (User Import) returns 0 users with no error.
  • learnerLearningRecords POST (Completion Export) returns HTTP 400 with a null body: Oracle silently rejects the request because the data security policies in the directly-assigned job role are never instantiated.

KnowledgeCity API Access

  • You must have a valid KnowledgeCity API secret/token created in the LMS (or provided by a KnowledgeCity admin).

Scheduling (Optional)

  • If you plan to use scheduled sync, confirm the schedule aligns with your internal data update cadence and reporting needs.

Steps to Follow

1) Enable the Oracle Learning Integration

  • Log in to the KnowledgeCity LMS as an Administrator.
  • Go to the Integrations page.
  • Find the Oracle Learning integration card.
  • Click Enable.

2) Configure General Settings

Fill in the general connection settings using values provided by your Oracle Fusion Cloud HCM administrator:

  • Oracle Fusion Cloud REST API Base URL
  • Oracle API Username
  • Oracle API Password
  • KnowledgeCity API Secret
  • KnowledgeCity API URL

Save your changes.


Option 1: User Import (Oracle HCM → KnowledgeCity)

This option keeps KnowledgeCity users in sync with Oracle HCM. Oracle is treated as the source of truth for user identity.

How It Works

KnowledgeCity calls Oracle's /publicWorkers REST API to retrieve employee records and creates or updates user accounts in the LMS accordingly.

Configuration

Enable User Import and configure the following options:

  • Add users: Create new KnowledgeCity accounts for users found in Oracle HCM
  • Reactivate users: Reactivate users in KnowledgeCity if they become active again in Oracle HCM
  • Deactivate inactive users: Deactivate users in KnowledgeCity if they are inactive in Oracle HCM
  • Remove license for inactive users: Optionally remove the license when deactivating
  • Username field: Select which Oracle HCM field to use as the KnowledgeCity username
  • Username prefix: Optional prefix to avoid username collisions
  • Automatically assign license for new users + Subscription: Controls license assignment for newly imported users

Oracle Admin Prerequisites (Required)

In addition to the job roles listed in the Requirements section, your Oracle administrator must:

  1. Assign the API user an HCM Data Role that wraps the HCM Integration Specialist job role and includes a Person Security Profile covering the workers that should be visible (e.g., "All Workers" or the relevant business unit)
  2. Confirm the integration is pointed at the correct environment (production vs. sandbox)
  3. Confirm there are active workers in HCM under the accessible business units

Without the HCM Data Role + Person Security Profile, user import will run without errors but return 0 users.

Expected Result

  • Users from Oracle HCM are created/updated/deactivated in KnowledgeCity based on your configured rules
  • The sync job log will show the number of users retrieved and the actions taken

Option 2: Course Export (KnowledgeCity → Oracle Learning)

This option publishes KnowledgeCity courses into the Oracle Learning catalog so learners can discover and launch them from Oracle.

How It Works

KnowledgeCity pushes course metadata to Oracle Learning using Oracle's Self-Paced Learning Items REST API. Oracle Learning stores the metadata and KC launch URL — the actual content remains hosted on KnowledgeCity.

Configuration

  • Enable Course Export
  • Ensure your courses meet the eligibility criteria (see Expected Result below)

Expected Result

Courses become available in Oracle Learning based on the following eligibility rules:

  • Course is active in KnowledgeCity
  • Course is within a visible category
  • All parent categories of the course are also visible

Ineligible courses (inactive, hidden categories) will not be exported.


Option 3: Course Completion Export (KnowledgeCity → Oracle Learning)

This option sends learning completion records from KnowledgeCity back to Oracle Learning, keeping the learner's Oracle transcript up to date.

How It Works

After a learner completes a course in KnowledgeCity, a completion record is sent to Oracle Learning via the learnerLearningRecords REST API (POST). Oracle Learning updates the learner's transcript with the completion status and metadata.

Configuration

  • Enable Course Completion Export

Oracle Admin Prerequisites (Required)

In addition to the job roles listed in the Requirements section, your Oracle administrator must complete the following: this is the most common cause of failure for completion export:

  1. Wrap the Learning Specialist job role inside an HCM Data Role. Assigning ORA_WLF_LEARNING_SPECIALIST_JOB (or a custom variant such as LBT_LEARNING_SPECIALIST_CUSTOM) directly to the API user is not sufficient: Oracle's data security policies inside the job role are only instantiated through a Data Role.
  2. Attach a Person Security Profile to the Data Role with access to all workers who can complete training (e.g., "View All Workers").
  3. Confirm the Data Role grants write/POST privileges on learnerLearningRecords, not just read-only access. The role must include:
  • Use REST Service - Learner Learning Records (the write version: not the _RO_ read-only variant)
  • Manage Learning Assignment / Manage Learning Record
  • After making security changes, run the "Retrieve Latest LDAP Changes" scheduled process and wait for it to complete before testing.
Symptom of missing Data Role + write privileges: Completion export jobs fail with HTTP 400: Response: null from Oracle. The null body is intentional on Oracle's side when the user lacks the required data security context. The request reaches Oracle Fusion (a valid x-oracle-dms-ecid is returned in the response headers), but no error message is included.

Expected Result

  • Completion records are sent to Oracle Learning after the learner finishes a course
  • The Oracle Learning transcript reflects updated completion status and metadata based on your configuration
  • The Oracle API user must have the Learning Specialist role for completions to be accepted: assigned via an HCM Data Role with write privileges, not directly

Troubleshooting

ProblemCauseSolution
Integration fails to connect / credentials rejectedIncorrect Oracle REST API URL, username, password, or KC API secretRe-check all values with your Oracle admin and confirm the KC API secret is active and valid.
Users are not importingUser import disabled, or username field mismatchEnable user import and verify the selected username field matches what exists in Oracle HCM.
User import runs successfully but returns 0 users: no errorJob roles are assigned but no HCM Data Role with a Person Security Profile is configured. Oracle returns an empty response when data visibility is not granted — this is silent and does not produce an error.Ask your Oracle administrator to assign the API user an HCM Data Role that includes a Person Security Profile granting visibility to the relevant workers (e.g., "All Workers"). This is separate from the job roles and must be configured in addition to them.
Users import but do not receive licensesAuto-license assignment disabled or subscription not configuredEnable automatic license assignment and select a subscription for new users.
Users not updated / reactivated / deactivated as expectedUpdate/reactivation/deactivation rules not enabledReview and enable the specific user status rules you want applied during sync.
Courses are not exported to Oracle LearningCourse export disabled, course inactive, or category visibility rules not metEnable course export, ensure courses are active, and confirm category visibility (including parent categories).
Completion export fails with HTTP 400: Response: null from OracleThe Learning Specialist job role is assigned directly to the API user, not through an HCM Data Role. Function security passes but data security policies are never instantiated, so Oracle silently rejects the POST.Ask your Oracle administrator to: (1) wrap the Learning Specialist job role inside an HCM Data Role, (2) attach a Person Security Profile with access to all workers ("View All Workers"), (3) confirm the role grants write/POST privileges on learnerLearningRecords (not just read-only), and (4) run "Retrieve Latest LDAP Changes" scheduled process after the change.
Completion export fails with HTTP 400: "You don't have the required security privileges..."API user has Learning Specialist role but lacks write privileges on learnerLearningRecords.Ensure the Learning Specialist role includes Use REST Service - Learner Learning Records (write version, not the _RO_ read-only variant) and Manage Learning Assignment / Manage Learning Record privileges.
Completions are not appearing in Oracle LearningCompletion export disabled, or Oracle API user lacks Learning Specialist role assigned via a Data RoleEnable completion export and confirm the Oracle API user has the Learning Specialist role assigned via an HCM Data Role with a Person Security Profile and write privileges: not as a direct job role.
Sync does not run on scheduleScheduler disabled or configured at unexpected timesEnable the scheduler and verify the schedule is correct in the LMS local time zone.

Ask Casey about this article