xAPI Configuration
This article covers how to set up and configure our xAPI; along with sample responses.
xAPI
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:
- OAuth
- Our OAuth 2.0 connection uses the "Client Credentials" workflow
- You will need to provide Security Journey with LRS URL, Token URL, Key and Secret
- Basic
- 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). - You will also need to provide your LRS URL
OAuth 2.0
- Basic authentication involves including a username and password, combined and Base64 encoded, in the
What data do we provide?
Currently, our xAPI will send four events back to your LRS:
- Level Completed
- Path Completed
- Lesson Passed
- 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:

- Click the red lock in the upper right corner to make changes to the settings.
- Choose your preferred authentication method (Basic or OAuth)
- Input the required information as outlined in the UI
In the example below, we were using SCORM Cloud:

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"
}
}