|
Who can use this feature?
|
Synchronize courses and learning statistics from OpenSesame to 360Learning. This integration allows you to:
- Search for OpenSesame courses in 360Learning.
- Add OpenSesame courses to paths.
- Add OpenSesame courses to groups' catalogs and libraries.
- Manually add tags to OpenSesame courses. These tags persist through each synchronization.
- Filter the OpenSesame content in 360Learning.
- View the statistics on OpenSesame courses in 360Learning.
As part of the integration setup, an SSO SAML is also configured between OpenSesame and your 360Learning platform.
OpenSesame integration overview
Synchronized OpenSesame courses are added to catalog of the group where the integration is activated. These courses can’t be edited from the 360Learning platform.
- Coaches and group admins can add synchronized courses to their group catalog.
- Group admins, editors, and contributors can add synchronized courses to their group library.
- Editors and contributors can add synchronized courses to paths if they are available in their group library.
When learners engage with an OpenSesame course, their journey begins on the 360Learning platform. The course content is played on OpenSesame. For more information about the learner's journey, see Play an OpenSesame course from your 360Learning platform.
If you activate the OpenSesame integration after benefitting from the Jumpstart Content offer, the SCORM courses from the Jumpstart Content offer remain in the catalog of the platform group. Contact your Customer Success Partner (CSP) if you wish to delete them.
Synchronization schedule and timing
- Courses synchronize daily from OpenSesame to 360Learning at 6:50 AM Central European Time (UTC + 1).
- Statistics synchronize from OpenSesame to 360Learning in near real-time upon course completion.
Data mapping
Course metadata mapping
The following table shows how course metadata from OpenSesame is mapped to 360Learning metadata.
| OpenSesame Course Object Field | 360Learning Course Object Field | Mandatory Field |
| id | externalId | ✅ |
| title | name | ✅ |
| descriptionHtml | description | ❌ |
| imageUrl | image | ❌ |
| duration | courseDuration | ❌ |
| publisherName | author | ❌ |
| languages | lang | ✅ |
| quickLaunchUrl | launchUrl | ✅ |
| dateUpdated | modifiedAt | ✅ |
| categories | subjects | ❌ |
| active | Archived if active = false | ✅ |
| type | contentType | ✅ |
Statistics mapping
OpenSesame sends statistics to 360Learning in near real-time when a learner completes a course in OpenSesame. The following table shows how OpenSesame statistics are mapped to 360Learning.
| OpenSesame xAPI Statement Field | 360Learning Statistic Object Field | Mandatory Field |
|---|---|---|
| object.id | externalCourseId | ✅ |
| actor.mbox | learnerMail | ✅ |
| actor.account | learnerMail | ✅ |
| result.completion | progress | ❌ |
| result.success | result | ❌ |
| result.score.scaled | score | ❌ |
| result.duration | timeSpentInMilliseconds | ❌ |
| timestamp | completedAt | ❌ |
The learner identification method (actor.mbox for email, actor.account for username or external identifier) depends on how the connector is configured in 360Learning. See Step 3.
The time spent and the last activity columns only show data for courses launched from 360Learning after you set up the integration.
For a detailed explanation of how statistics in 360Learning are updated when a learner starts a course and when they complete a course, see Track statistics for OpenSesame courses from your 360Learning platform.
Set up the integration
Step 1: Gather prerequisites
Request the following from OpenSesame:
-
OpenSesame API Access: Your OpenSesame portal needs to have access to their API (
https://api.delivery.opensesame.com/content). -
Customer Integration ID:
customer_integration_id.
Step 2: Contact 360Learning
After you have access to OpenSesame’s API and your credentials, email either your 360Learning Client Success Partner or Solution Architect with the following information:
- Integration Name: OpenSesame
- 360Learning Group ID: The OpenSesame courses will be added to the catalog of that group. If you choose the platform group, all users in public groups will see the content in their catalog. You may want to create a private group for this synchronization (Find the ID of a group).
- 360Learning Connector Admin ID: The ID of a user with editor or administrator permissions on the group, who will be assigned as the main author of the courses in 360Learning.
Step 3: Activate the integration in 360Learning
Once the backend setup is done, activate the integration in 360Learning:
- In the left sidebar, click the group where courses will synchronize.
- If you’ve previously activated and then deactivated the OpenSesame integration, reactivate it in the same group as the initial activation. Otherwise, this will create duplicate courses.
- At the top right of the main section, click
Settings.
- In the left sidebar, click
Integrations → OpenSesame.
- Enter the OpenSesame Customer Integration ID.
- At the bottom right, click Setup Integration. The platform takes a few minutes to complete the setup.
- Click Continue.
Courses will appear in the catalog the following day.
Step 4: Send xAPI information to OpenSesame
The statistics synchronization relies on xAPI reporting. Once you’ve activated the integration in 360Learning, send the following information to OpenSesame:
-
LMS Auth URL:
https://app.360learning.com/api/opensesame/oauth2/token- If you have a custom URL, replace
app.360learning.comwith your own URL.
- If you have a custom URL, replace
-
LMS URL:
https://app.360learning.com/api/opensesame/stats- If you have a custom URL, replace
app.360learning.comwith your own URL.
- If you have a custom URL, replace
- Client ID: The webhook Client ID provided in the OpenSesame panel
- Client Secret: The webhook Client Secret provided in the OpenSesame panel
- Scope: xapi:write
- User identification: MBOX
To find the Client ID and Client Secret values:
- In the left sidebar, click the group where the connector is active.
- At the top right, click
Settings.
- In the left sidebar, click
Integrations → OpenSesame.
- In the Webhook credentials section, copy the Client ID and Client secret fields.
Step 5: Configure learner identification
- In the left sidebar, hover over the integration group and click
Settings.
- In the left menu, click Integrations, and then click OpenSesame.
- Under Integration configuration, click the Synchronization tab.
- Under Learner identification, select the method that matches how your users are identified in OpenSesame:
-
Email: Learners are identified by their email address. The email must be accessible in the
actor.mboxxAPI field. -
User Name: Learners are identified by their platform username. The username must be accessible in the
actor.account.namexAPI field. -
External Identifier: Learners are identified by a unique external ID. The external ID must be accessible in the
actor.account.namexAPI field.
-
Email: Learners are identified by their email address. The email must be accessible in the
Step 6: Filter OpenSesame content in 360Learning
By default, all OpenSesame content available to your organization is included in the synchronization. In 360Learning, you can filter content by language and content type.
When you save a filter configuration:
- Content that no longer matches the selected filters is archived immediately.
- Content that matches the selected filters remains unchanged.
- The filters are saved and applied to future synchronizations.
Using multiple values for the same filter shows more results. Combining different filters shows fewer results:
| Filter combination | Logic applied | Result |
| Multiple languages | OR | Content in any selected language is included. |
| Multiple content types | OR | Content in any selected type is included. |
| Language + content type | AND | Content must match both the language and the content type to be included. |
6.1. Filter OpenSesame content by language
To add a new language filter:
- In the left sidebar, hover over the integration group and click
Settings.
- If
Settings doesn’t appear in your sidebar, click on the integration group first, then click
Settings in the top right of the main section.
- If
- In the left menu, click Integrations, and then click OpenSesame.
- Under Integration configuration, click Languages.
- Click + Add languages.
- In the dialog box, select a language.
- At the bottom right, click Confirm.
- At the bottom-right of the language list, click Save.
To remove a language filter:
- In the left sidebar, hover over the integration group and click
Settings.
- If
Settings doesn’t appear in your sidebar, click on the integration group first, then click
Settings in the top right of the main section.
- If
- In the left menu, click Integrations, and then click OpenSesame.
- Under Integration configuration, click Languages.
- Next to the language you wish to remove, click
Remove.
- At the bottom-right of the language list, click Save.
6.2. Filter OpenSesame content by content type
To add a new content type filter:
- In the left sidebar, hover over the integration group and click
Settings.
- If
Settings doesn’t appear in your sidebar, click on the integration group first, then click
Settings in the top right of the main section.
- If
- In the left menu, click Integrations, and then click OpenSesame.
- Under Integration configuration, click Content types.
- Select a content type.
- At the bottom-right of the content type list, click Save.
To remove a content type filter:
- In the left sidebar, hover over the integration group and click
Settings.
- If
Settings doesn’t appear in your sidebar, click on the integration group first, then click
Settings in the top right of the main section.
- If
- In the left menu, click Integrations, and then click OpenSesame.
- Under Integration configuration, click Content types.
- Unselect a content type.
- At the bottom-right of the content type list, click Save.
Deactivate the integration
Deactivating the integration will stop the synchronization, and all courses will be archived. You will keep all the learning data that was already synchronized.
- In the left sidebar, click the group where the connector is active.
- At the top right of the main section, click
Settings.
- In the left sidebar, click
Integrations → OpenSesame.
- At the bottom right, click Deactivate.
We recommend keeping track of any deactivation to make sure any reactivation happens in the same group.