Skip to main content

xAPI Configuration

How to get started with Security Journey's xAPI

Roman Oliver avatar
Written by Roman Oliver
Updated over a month ago

Security Journey does provide xAPI access if you were interested in pushing learners completion data from the Platform directly into your LMS of choice. This feature is not enabled by default and can be turned on by request by reaching out to your Customer Success Manager or emailing support@securityjourney.com.

Authentication

Our xAPI allows two different methods of authentication:

  1. Basic

    1. Basic authentication involves including a username and password, combined and Base64 encoded, in the Authorization header of each request to the Learning Record Store (LRS).

    2. You will also need to provide your LRS URL

  2. OAuth 2.0

    1. Our OAuth 2.0 connection uses the "Client Credentials" workflow

      1. You will need to provide Security Journey with LRS URL, Token URL, Key and Secret

What data do we provide?

Currently, our xAPI will send four events back to your LRS:

  1. Level Completed

  2. Path Completed

  3. Lesson Passed

  4. Lesson Failed

Note: this is a one way communication to your LMS.


Getting Started

To setup and configure xAPI you will navigate to Admin > Settings > LRS:
​

  1. Click the red lock in the upper right corner to make changes to the settings.

  2. Choose your preferred authentication method (Basic or OAuth)

  3. Input the required information as outlined in the UI


In the example below, we were using SCORM Cloud:

undefined-Feb-15-2022-04-14-34-42-PM

xAPI JSON Examples

Example responses are provided below for all supported event types:
​

Level Completion

{
"id": "065e91d4-b7c2-4e89-a12b-965ecff28f4f",
"actor": {
"objectType": "Agent",
"mbox": "mailto:peter_fisher@securityjourney.com",
"name": "Peter Fisher"
},
"verb": {
"id": "https://w3id.org/xapi/dod-isd/verbs/completed",
"display": {
"en-US": "completed"
}
},
"timestamp": "2025-03-12T14:39:23.934Z",
"stored": "2025-03-12T14:39:23.934Z",
"authority": {
"objectType": "Agent",
"account": {
"homePage": "http://cloud.scorm.com",
"name": "OaGxr3VFbwWiGLoA94g"
},
"name": "Security Journey xAPI"
},
"version": "1.0.0",
"object": {
"id": "https://my.securityjourney.com/belts/1",
"definition": {
"name": {
"en-US": "Foundational"
}
},
"objectType": "Activity"
}
}

Path Completion

{
"id": "75a59091-6032-4bf6-adda-d8e5405a52e6",
"actor": {
"objectType": "Agent",
"mbox": "mailto:peter_fisher@securityjourney.com",
"name": "Peter Fisher"
},
"verb": {
"id": "https://w3id.org/xapi/dod-isd/verbs/completed",
"display": {
"en-US": "completed"
}
},
"timestamp": "2025-02-14T16:17:37.917Z",
"stored": "2025-02-14T16:17:37.917Z",
"authority": {
"objectType": "Agent",
"name": "Security Journey xAPI",
"account": {
"name": "OaGxr3VFbwWiGLoA94g",
"homePage": "http://cloud.scorm.com"
}
},
"version": "1.0.0",
"object": {
"id": "https://my.securityjourney.com/admin/roles/127",
"definition": {
"name": {
"en-US": "Foundational: Web Developer"
}
},
"objectType": "Activity"
}
}

Lesson Passed

{
"id": "839e7054-399f-417c-a254-f0787f910ec4",
"actor": {
"objectType": "Agent",
"mbox": "mailto:peter_fisher@securityjourney.com",
"name": "Peter Fisher"
},
"verb": {
"id": "https://w3id.org/xapi/dod-isd/verbs/passed",
"display": {
"en-US": "passed"
}
},
"timestamp": "2025-03-03T21:06:13.083Z",
"stored": "2025-03-03T21:06:13.083Z",
"authority": {
"objectType": "Agent",
"account": {
"homePage": "http://cloud.scorm.com",
"name": "OaGxr3VFbwWiGLoA94g"
},
"name": "Security Journey xAPI"
},
"version": "1.0.0",
"object": {
"id": "https://my.securityjourney.com/belts/2/modules/230/lesson",
"definition": {
"name": {
"en-US": "Broken Access Control"
}
},
"objectType": "Activity"
}
}

Lesson Failed

{
"id": "839e7054-399f-417c-a254-f0787f910ec4",
"actor": {
"objectType": "Agent",
"mbox": "mailto:peter_fisher@securityjourney.com",
"name": "Peter Fisher"
},
"verb": {
"id": "https://w3id.org/xapi/dod-isd/verbs/passed",
"display": {
"en-US": "failed"
}
},
"timestamp": "2025-03-03T21:06:13.083Z",
"stored": "2025-03-03T21:06:13.083Z",
"authority": {
"objectType": "Agent",
"account": {
"homePage": "http://cloud.scorm.com",
"name": "OaGxr3VFbwWiGLoA94g"
},
"name": "Security Journey xAPI"
},
"version": "1.0.0",
"object": {
"id": "https://my.securityjourney.com/belts/2/modules/230/lesson",
"definition": {
"name": {
"en-US": "Broken Access Control"
}
},
"objectType": "Activity"
}
}
Did this answer your question?