Integrate with CyberPath

Everything you need to get up and running

CyberPath is a free database of cybersecurity certifications and trainings, its main goal is to help find the right path to advance in people cybersecurity careers, but, what if you want to integrate with CyberPath to provide your users with the most up-to-date information on cybersecurity certifications and trainings?

CyberPath provides a simple and easy-to-use API to get all the information you need to integrate with your platform. The API is free to use and doesn't require any authentication.

  • Free to use The API is free to use and will always be.
  • No authentication required The API doesn't require any authentication. Just make a request and get the data you need.
  • Easy to use The API is available in JSON format and is easy to use, it follows a simple yet powerful data structure.

Data structure

The API is available in JSON format and follows a simple yet powerful data structure. Here's an example of the data structure you can expect to receive from the API:

Typescript
                            interface CertificationMetadata {
                                image: string;
                                provider: string;
                                title: string;
                                acronym: string;
                                last_updated_at: Date;
                                reference: string;
                                aliases?: string[] | undefined;
                                career_paths: string[];
                                price: string;
                                currency: string;
                                slug: string;
                            }
                            
                            type CertificationMetadataCollection =
                                        CertificationMetadata[];
                        
Certification metadata data structure

All the API endpoints return a Certification­Metadata­Collection array, which is composed of Certification­Metadata objects. Each Certification­Metadata object contains all the information you may need to display a certification on your platform. Notice that the aliases list is optional, meaning it may not be present at all.

Note the API does not provide any information about the certification content, the API is focused solely on providing metadata about the certification itself. This has been done to ensure the API is as lightweight as possible and to make searching for the right certification as fast as possible.

Providing searching functionalities

If you want to provide searching functionalities to your users, you should consider opting into some kind of fuzzy search algorithm. This will allow your users to search for certifications even if your users don't know the exact name of the certification.

CyberPath comes with pre-built search indexes for all the certifications available in the database. The indexes are built using Fuse.js a lightweight fuzzy-search library that provides fast and easy searching capabilities.

The search indexes are available in JSON format and follow a dynamic data structure. Here's an example of the data structure you can expect to receive from the search indexes:

Typescript
                            // This is the data structure of the search index
                            interface FuseIndex {
                                keys: string[]
                                records: FuseIndexObjectRecord | FuseIndexStringRecord
                            }
                            
                            // Below this line reside the types used in the search index data structure
                            type FuseIndexObjectRecord = {
                                i: number
                                $: RecordEntry
                            }
                            type FuseIndexStringRecord = {
                                i: number
                                v: string
                                n: number
                            }
                            
                            type RecordEntry = {
                                [p: string]: RecordEntryObject | RecordEntryArrayItem
                            }
                            type RecordEntryObject = {
                                v: string
                                n: number
                            }
                            type RecordEntryArrayItem = (RecordEntryObject & {
                                i: number
                            })[]
                        
Fuse.js search index data structure

Endpoints

The API provides two types of endpoints, one for fetching all the certifications available in the database and one for fetching the search indexes.

Certifications endpoint

The certifications endpoint is used to fetch all the certifications available in the database or all the certification for a given career path. The endpoint are available at the following URLs:

Search indexes endpoint

The search indexes endpoint is used to fetch the search indexes for all the certifications available in the database or all the certification for a given career path. The endpoint are available at the following URLs: