Skip to content
  • There are no suggestions because the search field is empty.

Security Journey API v3

This article describes the v3 API, features and benefits.

Security Journey API v3 

Security Journey provides Program Administrators access to a RESTful API; this can be used to generate custom reports within a BI tool or pull reporting metrics into your Learning Managment System (LMS) building management reports.

Generating an API Key

You must be a Security Journey Admin to have access to the API key generator. Keep in mind, if you are already using the v2 API and have an API key, the existing keys will work with the v3 API.

To generate a new API Key you will go to More > Admin > Settings > API. Follow the steps below:

  • Name your key

  • Click Generate

  • Copy the key and store it in a safe place

  • Click "Done"

 

If you don't click "Done" the key will not be saved and will be invalid. You should see this screen if the API Key was generated successfully.

 

Use this API key to authenticate against the v3 API by providing it in the Authorization header as a bearer token.

For example: Authorization: Bearer {my API token}

API Documentation

The v3 API route is: https://my.securityjourney.com/api/v3/public-reporting/{endpoint}

The available endpoints are:

Function Endpoint
Users progress in their levels and paths /api/v3/public-reporting/enrollments
Users Details

/api/v3/public-reporting/users

Users progress in assignments 

/api/v3/public-reporting/assignments

Users lesson attempt data (lessons started & completed) /api/v3/public-reporting/lesson-attempts
Users progress in their paths

/api/v3/public-reporting/progress

Users Champion Passport activity details

/api/v3/public-reporting/activities

Our v3 API has improved query and filtering parameters, such as text search, status filtering, date range filtering, include/exclude archived users, etc.

*June 2025 Update: We've increased the row limit to 10,000 and added data to the response that tells you how many rows there are and which rows your request has returned.


Example Responses

Optional Fields: company, jobRole, securityChampion (as seen below) will be included in the API response if they are uploaded to the Security Journey Platform. See article Learner Attributes for more details.

GET https://my.securityjourney.com/api/v3/public-reporting/enrollments

{

"enrollments":[

{

"user":{

"email":"john_smith@securityjourney.com",

"firstName":"John",

"lastName":"Smith",

"totalPoints":0,

"securityChampion":"f",

"archived":true,

"archivedAt":"2024-04-09T13:45:43.355836Z"

},

"levelEnrollment":{

"levelName":"Foundational",

"levelType":"level",

"status":"in_progress",

"totalLessons":7,

"passedLessons":0,

"pointsEarned":0,

"updatedAt":"2024-01-22T13:46:24.193Z",

"createdAt":"2024-01-22T13:46:24.193Z"

},

"pathEnrollment":{

"pathName":"HackEDU: OWASP API Top 10",

"status":""

}

}

GET https://my.securityjourney.com/api/v3/public-reporting/users

{

"email":"john_smith@securityjourney.com",

"firstName":"John",

"lastName":"Smith",

"totalPoints":0,

"securityChampion":"f",

"archived":true,

"archivedAt":"2023-12-15T19:48:33.630916Z"

}

 

GET https://my.securityjourney.com/api/v3/public-reporting/assignments

{

"assignments":[

{

"user":{

"email":"john_smith@securityjourney.com",

"firstName":"John",

"lastName":"Smith",

"totalPoints":2767,

"company":"SecurityJourney",

"jobRole":"Sr. Devops Engineer",

"businessUnit":"DevOps",

"team":"DevOps",

"securityChampion":"false",

"timeSpent":"49h1m50.000000s"

},

"assignmentName":"Annual Compliance Training",

"pathName":"Content Engineering 2024",

"dueDate":"2025-05-30T23:59:59Z",

"passedLessons":0,

"totalLessons":14,

"status":"overdue"

}

GET https://my.securityjourney.com/api/v3/public-reporting/lesson-attempts

{

"user":{

"email":"john_smith@securityjourney.com",

"firstName":"John",

"lastName":"Smith",

"totalPoints":16069,

"securityChampion":"f",

"archived":true,

"archivedAt":"2023-12-15T19:49:55.539130Z",

"timeSpent":"4h52m25.000000s"

},

"lessonName":"Ruby Static Code Analysis",

"difficulty":"advanced",

"length":"9m",

"status":"passed",

"questions":10,

"correctAnswers":8,

"watchedVideo":"watched",

"readTranscript":"not read",

"startedAt":"2023-02-24T21:07:45.715429Z",

"createdAt":"2023-02-24T21:07:45.567756Z",

"updatedAt":"2023-02-24T21:14:52.087774Z"

}

GET https://my.securityjourney.com/api/v3/public-reporting/progress

{

"user":{

"email":"john_smith@securityjourney.com",

"firstName":"John",

"lastName":"Smith",

"totalPoints":0,

"company":"Security Journey",

"jobRole":"Web Developer",

"securityChampion":"false",

"archived":true,

"archivedAt":"2024-11-13T19:12:31.140936Z"

},

"pathName":"HackEDU: OWASP API Top 10",

"levelName":"Foundational",

"status":"not_started",

"requiredLessons":7,

"requiredLessonsPassed":0,

"lessonsPassed":0,

"allLessons":7,

"startedAt":"2024-03-21T20:26:46.371061Z",

"lastEngagement":"2024-03-21T20:26:46.371061Z",

"createdAt":"2024-03-21T20:26:46.371061Z",

"updatedAt":"2024-07-12T10:54:49.217408Z",

"timeSpent":"0h0m0s",

"pathArchived":true,

"pathArchivedAt":"2024-11-13T19:12:31.140936Z"

}

GET https://my.securityjourney.com/api/v3/public-reporting/activities

{

"activities":[

{

"user":{

"email":"john_smith@securityjourney.com",

"firstName":"John",

"lastName":"Smith",

"totalPoints":16069,

"archived":true,

"archivedAt":"2023-12-15T19:49:55.539130Z",

"timeSpent":"4h52m25.000000s"

},

"text":"Teach by delivering a presentation or talk for my group",

"description":"Presentation about side channel attacks. Explains what a side channel attack is, gives some examples, and gives examples relevant to AWS. Provides a technical explanation of how a side channel attack like spectre can work.",

"points":3,

"status":"in_progress",

"levelName":"Professional",

"createdAt":"2023-06-16T18:35:52.208612Z",

"updatedAt":"2023-06-22T18:55:32.418682Z"

}

Note: "status" : "abandoned" means that the user has switched paths. In the Platform UI, it will be displayed as "paused."

If you would like to review our postman collection or swagger documentation, please email support@securityjourney.com and we can send you the files directly.