This API allows to get and set data on behalf of the authenticated learner.
POST  API/v1/REST/learner/login version 1.0

Description :

This web-service authenticates the learner by creating a HTTP Session object on the server. As long as this HTTP Session is available, you’ll able to make web-services call out to get the data of the authenticated learner.

Endpoint : API/v1/REST/learner/login.json

Method : POST

Return :

This web-service created a HTTP session on the server and returns a json object.

Parameters :

Label Type Required Comment Values
login string The login of the learner. john.doe
password string The password of the learner. iamjondoethevegan!

Request :


POST /API/v1/REST/Learner/login.json HTTP/1.1
Host: yourdomain.crossknowledge.com
Content-Type: application/x-www-form-urlencoded
Cache-Control: no-cache

login=john.doe&password=iamjohndoethevegan!

Response:

Returned data:

Label Type Comment
message string a message indicating the success or the reason of the failure
success boolean Describes if the web-service call was a success or not. (true or false).
totalResults integer The number of results returned by the web-service.
value object An object or a list of objects containing the data in response to the request.

Example of JSON response :


{
"message": "Login successful",
"success": true,
"totalResults": 1,
"value": {}
}

Codes and messages:

Message Code
“Login successful” 200
“Missing mandatory parameter: login” 400
“Missing mandatory parameter: password” 400
“Access denied” 401
“Forbidden” 403
Glossary: Learner
DELETE  API/v1/REST/learner/login version 1.0

Description :

This web-service logout the authenticated learner by killing the HTTP session on the server

Endpoint : API/v1/REST/learner/login.json

Method : DELETE

Return :

This web-service returns a JSON object after the learner is logged out.

Parameters :

No parameters required.

Request :


DELETE /API/v1/REST/learner/login.json HTTP/1.1
Host: yourdomain.crossknowledge.com 
Cache-Control: no-cache


Response:

Returned data:

Label Type Comment
message string a message indicating the success or the reason of the failure
success boolean Describes if the web-service call was a success or not. (true or false).
totalResults integer The number of results returned by the web-service.
value object An object or a list of objects containing the data in response to the request.

Example of JSON response :


{
"message": "Logged out",
"success": true,
"totalResults": 1,
"value": {}
}

Codes and messages:

Message Code
“Login successful” 200
“Access denied” 401
“Forbidden” 403
Glossary: Learner
POST  API/v1/REST/learner/mobileLogin version 1.0

Description :

This web-service authenticates the learner by creating a HTTP Session on the server.

Endpoint : API/v1/REST/learner/mobileLogin.json

Method : POST

Return :

This web-service return json response and HTTP Cookie (access token) in the header of the response.

Parameters :

Label Type Required Comment Values
login string The login of the learner. john.doe
password string The password of the learner. iamjohndoethevegan!.
deviceid string The device id of the learner. kale1.
deviceName string The name of the device iPhone X
deviceOs string The device operation system of the learner. The values can be: “ios” or “android”
applicationName string The name of the application Mylearning

Request :


POST /API/v1/REST/Learner/mobileLogin.json HTTP/1.1
Host: yourdomain.crossknowledge.com
Content-Type: application/x-www-form-urlencoded
Cache-Control: no-cache

login=john.doe&password=iamjohndoethevegan!&deviceid=kale1&deviceOs=ios

Response:

Returned data:

Label Type Comment
message string a message indicating the success or the reason of the failure
success boolean Describes if the web-service call was a success or not. (true or false).
totalResults integer The number of results returned by the web-service.
value object An object or a list of objects containing the data in response to the request.
mainColor string The hexa code color of the CrossKnowledge mobile app UI as set in the CrossKnowledge platform.
logoUrl object The client logo URI as set in the CrossKnowledge platform.

Example of JSON response :


{
    "message": "Login successful",
    "success": true,
    "totalResults": 1,
    "value": {
        "mainColor": "#745da1",
        "logoUrl": "https://yourdomain.crossknowledge.com/data/medias/yourClientLogo.png"
    }
}

Codes and messages:

Message Code
“Login successful” 200
“Access denied: not logged-in.” 401
“Forbidden” 403
“Missing mandatory parameter: login” 400
“Missing mandatory parameter: password” 400
“Missing mandatory parameter: deviceid” 400
“Invalid parameter: deviceOs” 400
Glossary: Learner
DELETE  API/v1/REST/learner/mobileLogin version 1.0

Description :

This web-service logs out the user by killing the HTTP Session on the server.

Endpoint : API/v1/REST/learner/mobileLogin.json

Method : DELETE

Return :

This web-service returns a json object.

Parameters :

No parameters required.

Request :


DELETE /API/v1/REST/Learner/mobileLogin.json HTTP/1.1
Host: yourdomain.crossknowledge.com
Content-Type: application/x-www-form-urlencoded
Cache-Control: no-cache

Response:

Returned data:

Label Type Comment
message string a message indicating the success or the reason of the failure
success boolean Describes if the web-service call was a success or not. (true or false).
totalResults integer The number of results returned by the web-service.
value object An object or a list of objects containing the data in response to the request.

Example of JSON response :


{
"message": "Logged out",
"success": true,
"totalResults": 1,
"value": {}
}

Codes and messages:

Message Code
“Logged out” 200
“Access Denied: Not logged-in” 401
“Forbidden” 403
Glossary: Learner
GET  API/v1/REST/learner/profile version 1.0

Description :

This web-service allow to get the profile information of the authenticated learner.

Endpoint : API/v1/REST/learner/profile.json

Method : GET

Return :

This web-service returns the profile information of the learner.

Parameters :

Label Type Required Comment Values
learnerLogin string The login of the learner. john.doe

Request :


GET /API/v1/REST/learner/profile.json?learnerLogin=john.doe HTTP/1.1
Host: yourdomain.crossknowledge.com
Cache-Control: no-cache

Response:

Returned data:

Label Type Comment
message string a message indicating the success or the reason of the failure
success boolean Describes if the web-service call was a success or not. (true or false).
totalResults integer The number of learners returned by the web-service.
value object An object or a list of objects containing the data in response to the request.
id integer ID of the learner as stored in CrossKnowledge database.
login string login of the learner as stored in CrossKnowledge database.
name string name of the learner as stored in CrossKnowledge database.
firstname string firstname of the learner as stored in CrossKnowledge database.
email string email of the learner as stored in CrossKnowledge database.
lastAccessDate string last connexion of the learner to the CrossKnowledge platform as stored in CrossKnowledge database.
normalPictureUri string profile picture of the learner as stored in CrossKnowledge database (small size).
bigPictureUri string profile picture of the learner as stored in CrossKnowledge database (big size).
displayName string Concatenation of the learner firstname and lastname.
presentation string presentation of the learner as stored in CrossKnowledge database.
webUrl string public website url of the learner as stored in CrossKnowledge database.
linkedin string linkedin profile url the learner as stored in CrossKnowledge database.
twitter string twitter profile url of the learner as stored in CrossKnowledge database.

Example of JSON response :


{
    "message": "OK",
    "success": true,
    "totalResults": 1,
    "value": {
        "id": 1,
        "login": "[email protected]",
        "name": "Doe",
        "firstname": "Jogn",
        "email": "[email protected]",
        "lastAccessDate": "2017-09-01 09:37:58",
        "normalPictureUrl": "https://yourdomain.crossknowledge.com/candidate_picture/...",
        "bigPictureUrl": "https://yourdomain.com/candidate_picture/...",
        "displayName": "John Doe",
        "presentation": "",
        "webUrl": "",
        "linkedInUrl": "",
        "twitterUrl": ""
	}
}
  

Codes and messages:

Message Code
“OK” 200
“Access Denied: Not logged-in” 401
“Not found” 404
Glossary: Learner
GET  API/v1/REST/learner/manager version 1.0

Description :

This web service returns learner’s managing information. It returns the active managers IDs of the authenticated learner as stored in CrossKnowledge database.

Endpoint : API/v1/REST/learner/manager.json

Method : GET

Return :

This web-service returns the manager IDs of the learner

Parameters :

No parameter

Request :


GET /API/v1/REST/learner/manager.json HTTP/1.1
Host: yourdomain.crossknowledge.com
Cache-Control: no-cache

Response:

Returned data:

Label Type Comment
message string a message indicating the success or the reason of the failure
success boolean Describes if the web-service call was a success or not. (true or false).
value object An object or a list of objects containing the data in response to the request.
managerIds array array of managers IDs of the learner as stored in CrossKnowledge database.

Example of JSON response :


{
    "message": "OK",
    "success": true,
    "value": {
        "managerIds": [ //authentificated learner managers's accounts IDs.
            4,5,9 
        ]
    }
}

Codes and messages:

Message Code
“OK” 200
“Management is disabled” 400
“Access Denied: Not logged-in” 401
Glossary: Learner Manager
GET  API/v1/REST/learner/subordinates version 1.0

Description :

This web service returns learner’s managing information. It inherits from Manager as it returns the active subordinates IDs of the authenticated learner as stored in CrossKnowledge database.

Endpoint : API/v1/REST/learner/subordinates.json

Method : GET

Return :

This web-service returns the subordinates IDs of the learner

Parameters :

Label Type Required Comment values
limitedSub boolean If true, it will limit the list of subordinates to the direct ones, whatever else, it will return all the surbordonates true | false
limit integer Limits the number of ids returned Range >= 1
offset integer Number of ids of subordinates to ignore in the request Range >= 1

Request :


GET /API/v1/REST/learner/subordinates.json HTTP/1.1
Host: yourdomain.crossknowledge.com
Cache-Control: no-cache

Response:

Returned data:

Label Type Comment
message string a message indicating the success or the reason of the failure
success boolean Describes if the web-service call was a success or not. (true or false).
totalResults integer The number of subordinates returned by the web-service.
value object An object or a list of objects containing the data in response to the request.
subordinatesIds array array of IDs of the subordinates as stored in CrossKnowledge database.

Example of JSON response :


{
    "message": "OK",
    "success": true,
    "value": {
        "subordinatesIds": [ //authentificated learner managers's accounts IDs.
            459,23,56
        ]
    }
}

Codes and messages:

Message Code
“OK” 200
“Management is disabled” 400
“Access Denied: Not logged-in” 401
Glossary: Learner subordinates
GET  API/v1/REST/learner/Discussions/list version 1.0

Description :

Returns available discussions of the connected learner and their comments. The discussions are returned from the newest to the oldest, accordingly to their visibility and the optionnal filter on context. Comments for a given discussion are returned from the newest to the oldest as well.

Endpoint : API/v1/REST/learner/Discussions/list.json

Method : GET

Return :

This web-service returns available discussions of the authentificated learner and their comments.

Parameters :

Label Type Required Comment Values
context string The context of the discussion. LearningObject | TrainingSession | Training
contextGuid boolean GUID to add a filter on. Either Learning Object GUID or Training Session GUID or Training GUID(specified in the context parameter) abcdef-12345-XXXXXXX-XXXXXXX
limit integer Limit of discussions to search (ie number of discussions max. to return) 10 (Default) | 1(Min.) | 50(Max.)
offset integer Number of ids of discussions to ignore in the request. If offset is above or equal to the actual number of filtered discussions, an error is returned. Default: 0

Request :


GET /API/v1/REST/Discussions/list.json?offset=1 HTTP/1.1
Host: yourdomain.crossknowledge.com
Cache-Control: no-cache

Response:

Returned data:

Label Type Comment
message string a message indicating the success or the reason of the failure
success boolean Describes if the web-service call was a success or not. (true or false).
totalResults integer The number of subordinates returned by the web-service.
value object An object or a list of objects containing the data in response to the request.
id integer ID of the discussion item.
date datatime Date and time when the discussion was posted. (yyyy-mm-dd hh:ii:ss).
context string Context in which the discussion was posted (Training, Learning Object or Training Session).
contextGuid string Guid (identifier) of the context in which the discussion was posted (Training, Learning Object or Training Session).
followed boolean Specifiy if the discussion is followed by the authentificated learner (false: not followed, true: followed).
contributed boolean Specifiy if the discussion is contributed by the authenticated learner (false: not contributed, true: contributed).
title string Title of the discussion item. (topic)
comments array Array of object containing the comments associated to the discussion item.
comments.id integer ID of the comment item.
comments.date date Date and time when the discussion was posted. (yyyy-mm-dd hh:ii:ss).
comment string/html Text of the comment item.
like boolean Specify if the comment was liked by the authenticated learner or not (0: not liked, 1: liked)
author object Contains the information about the author of the comment.
author.login string The username of the author of the comment.
author.name string The name of the author of the comment.
author.firstname string The firstname of the author of the comment.
author.normalPictureUri string The profile picture URI of the author of the comment.

Example of JSON response :


{
    "message": "OK",
    "success": true,
    "totalResults": 2,
    "value": [
        {
            "id": 191,
            "date": "2017-06-14 19:50:04",
            "context": "TrainingSession",
            "contextGuid": "392570F0-ACC7-xxxxxxxxxxxxxxxx",
            "followed": false,
            "contributed": false,
            "title": "Are you John Doe?",
            "comments": [
                {
                    "id": 268,
                    "date": "2017-06-14 19:50:04",
                    "comment": "

Not really!

", "like": 1, "author": { "login": "Richard.Roe", "name": "Roe", "firstname": "Richard", "normalPictureUrl": "yourdomain.crossknowledge.com/candidate_picture/..." } } ] } ] }

Codes and messages:

Message Code
“OK” 200
“There are no current discussions” 200
“Access Denied: Not logged-in” 401
“The offset parameter is higher than the number of discussions” 400
“Invalid parameter” 400
“Bad Parameter” 400
“Context not found” 400
“Discussion not visible by the user.” 400
PUT  API/v1/REST/Discussions/Comments/{commentId} version 1.0

Description :

This web service allow the authenticated learner to like a comment.

Endpoint : API/v1/REST/Discussions/Comments/{commentId}.json

Method : PUT

Return :

This web-service returns a json object.

Parameters :

Label Type Required Comment Values
commentId integer the comment id. Range >= 1
like boolean If yes or no the authenticated learner likes the comment. (0: no liked, 1: Liked {default}) true | false

Request :


PUT /API/v1/REST/Discussions/Comments/1.json?commentId=1&like=1 HTTP/1.1
Host: yourdomain.crossknowledge.com
Cache-Control: no-cache

Response:

Returned data:

Label Type Comment
message string a message indicating the success or the reason of the failure
success boolean Describes if the web-service call was a success or not. (true or false).
totalResults integer The number of subordinates returned by the web-service.
value object An object or a list of objects containing the data in response to the request.

Example of JSON response :


{
    "message": "Liked",
    "success": true,
    "totalResults": 1,
    "value": null
}

Codes and messages:

Message Code
“Liked” 200
“Already liked” 400
“Comment not liked” 400
“Missing Mandatory Parameter : commentId” 400
“Access Denied: Not logged-in” 401
“Discussion not visible by the use” 403
“Comment not found” 404
POST  API/v1/REST/Discussions/list.json version 1.0

Description :

This web service allow the authenticated learner to create a new discussion with a new (first) post associated.

Endpoint : API/v1/REST/Discussions/list.json

Method : POST

Return :

This web-service returns a json object with the ID of the newly created discussion (Topic).

Parameters :

Label Type Required Comment values
context string Class name of the object to which the discussion will be associated | LearningObject | TrainingSession | Training
contextGuid string The GUID of the context object sepcified for the ‘context” parameter 123456-abcedfg-xxxxxxxxxxxxxxxx
title string The title of the discussion (topic). If the context is “LearningObject”, the title will be content title. John Doe is alive!
comment string The comment on the discussion I've seen John Doe!

Request :


POST /API/v1/REST/Discussions/list.json HTTP/1.1
Host: yourdomain.crossknowledge.com
Cache-Control: no-cache
Content-Type: multipart/form-data; boundary=----WebKitFormBoundary7MA4YWxkTrZu0gW

Response:

Returned data:

Label Type Comment
message string a message indicating the success or the reason of the failure
success boolean Describes if the web-service call was a success or not. (true or false).
totalResults integer The number of discussions returned by the web-service.
value object An object or a list of objects containing the data in response to the request.
newTopicId integer ID of the newly created discussion.

Example of JSON response :


{
    "message": "OK",
    "success": true,
    "totalResults": 1,
    "value": {
        "newTopicId": 193
    }
}

Codes and messages:

Message Code
“OK” 200
“Bad parameter: context” 400
“Missing mandatory parameter: title” 400
“Missing mandatory parameter: comment” 400
“Missing mandatory parameter: context” 400
“Missing mandatory parameter: contextGuid” 400
“Context not found” 404
GET  API/v1/REST/Discussions/{discussionId}.json version 1.0

Description :

This web service allow to get all the comments of a given discussion available for a learner.

Endpoint : API/v1/REST/Discussions/{discussionId}.json

Method : GET

Return :

This web-service returns a json object with a list of comments for the given discussion.

Parameters :

No parameters required.

Request :


GET /API/v1/REST/Discussions/195.json HTTP/1.1
Host: presales.jnstaging.crossknowledge.com
Cache-Control: no-cache

Response:

Returned data:

Label Type Comment
message string a message indicating the success or the reason of the failure
success boolean Describes if the web-service call was a success or not. (true or false).
totalResults integer The number of discussions returned by the web-service.
value object An object or a list of objects containing the data in response to the request.
id integer ID of the comment item.
date datatime Date and time when the comment was posted. (yyyy-mm-dd hh:ii:ss).
comment string The text comment.
like integer Number of likes.
author object Contains the information about the author of the comment.
author.login string The username of the author of the comment.
author.name string The name of the author of the comment.
author.firstname string The firstname of the author of the comment.
author.normalPictureUri string The profile picture URI of the author of the comment.

Example of JSON response :


{
    "message": "OK",
    "success": true,
    "totalResults": 1,
    "value": [
        {
            "id": 271,
            "date": "2017-09-04 15:15:34",
            "comment": "No,I'm John Doe!",
            "like": 0,
            "author": {
                "login": "john.doe",
                "name": "Doe",
                "firstname": "John",
                "normalPictureUrl": "https://yourdomain.crossknowledge.com/candidate_picture/..."
            }
        }
    ]
}

Codes and messages:

Message Code
“OK” 200
“Bad parameter: context” 400
“Missing mandatory parameter: title” 400
“Missing mandatory parameter: comment” 400
“Missing mandatory parameter: context” 400
“Missing mandatory parameter: contextGuid” 400
“Access denied” 401
“Context not found” 404
POST  API/v1/REST/Discussions/{discussionId}.json version 1.0

Description :

This web service allow to update a given discussion available for a learner by adding a new comment.

Endpoint : API/v1/REST/Discussions/{discussionId}.json

Method : POST

Return :

This web-service returns a json object with the ID of the created comment.

Parameters :

Label Type Required Comment values
comment string the text comment to add. Richard Roe was a good man.

Request :


POST /API/v1/REST/Discussions/195.json HTTP/1.1
Host: presales.jnstaging.crossknowledge.com
Cache-Control: no-cache

Response:

Returned data:

Label Type Comment
message string a message indicating the success or the reason of the failure
success boolean Describes if the web-service call was a success or not. (true or false).
totalResults integer The number of discussions created by the web-service.
value object An object or a list of objects containing the data in response to the request.
newPostId integer ID of the newly created comment.

Example of JSON response :


{
    "message": "OK",
    "success": true,
    "totalResults": 1,
    "value": {
        "newPostId": 276
    }
}

Codes and messages:

Message Code
“OK” 200
“Missing mandatory parameter: comment” 400
“Access Denied: Not logged-in” 401
POST  API/v1/REST/Discussions/Follow/{discussionId}.json version 1.0

Description :

This web service allow to follow a given discussion available for the authenticated learner by adding a new comment.

Endpoint : API/v1/REST/Discussions/Follow/{discussionId}.json

Method : POST

Return :

This web-service returns a json object with the ID of the created comment.

Parameters :

Label Type Required Comment values
follow boolean Follow or unfollow the discussion. 0: unfollow | 1: Follow (default)

Request :


POST /API/v1/REST/Discussions/195.json HTTP/1.1
Host: yourdomain.crossknowledge.com
Cache-Control: no-cache

Response:

Returned data:

Label Type Comment
message string a message indicating the success or the reason of the failure
success boolean Describes if the web-service call was a success or not. (true or false).
totalResults integer The number of discussion updated by the web-service.
value object An object or a list of objects containing the data in response to the request.

Example of JSON response :


{
    "message": "Discussion subscribed",
    "success": true,
    "totalResults": 1,
    "value": null
}

Codes and messages:

Message Code
“Discussion subscribed” 200
“Discussion already subscribed” 400
“Discussion not visible by the learner” 400
“Access Denied: Not logged-in” 401
GET  API/v1/REST/Trainings/list version 1.0

Description :

This web-service allow to get the trainings information available for the authenticated learner.

Endpoint : API/v1/REST/Trainings/list.json

Method : GET

Return :

This web-service returns a json object with the trainings information available for the [authenticated learner](/ckauth_workflow.html).

Parameters :

Label Type Required Comment Values
offset integer Index to start the search. Default: 0
limit integer Limit of the search. Default: 10 Max.: 50
filter string Filter on trainings only available for mobile. onlyMobile Default: empty

Request :


GET /API/v1/REST/Trainings/list.json HTTP/1.1
Host: yourdomain.crossknowledge.com
Cache-Control: no-cache

Response:

Returned data:

Label Type Comment
message string a message indicating the success or the reason of the failure
success boolean Describes if the web-service call was a success or not. (true or false).
totalResults integer The number of trainings returned by the web-service.
value object An object or a list of objects containing the data in response to the request.
guid string The GUID of the training.
title string The title of the training.
code string The code of the training.
locale string The language code of the training.
description string The description of the training.
welcomeText string the welcome text of the training.
discussionEnabled boolean Define id the discussions are enabled on this training or not. True: Enabled False: Disabled. To learn more about discussion restrictions click here.
discussionRestricted boolean Define id the discussions are restricted to this training or not. True: Restricted False: Not Restricted. To learn more about discussion restrictions click here.
modality string modality of the training.
normalPictureUrl string The thumbnail of the training. (size: 220x124)
catalogInfo array A representation of the organisation of the training in the catalog.
catalogInfo.chapterName string The training’s chapter in the catalog.
catalogInfo.guid string The training’s chapter GUID in the catalog.
catalogInfo.parentGuid string The training’s parent chapter GUID in the catalog.
isMobile boolean Define if the training is enabled for mobile app. True: Enabled False: Disabled.
trainingId integer ID of the training.

Example of JSON response :


{
    "message": "OK",
    "success": true,
    "totalResults": 1,
    "value": [
        {
            "guid": "D65D7E08-XXXXXXX-XXXXXXX-D132-76DA",
            "title": "Improving Skills Negociation.",
            "code": "TCC",
            "locale": "en-US",
            "description": "Most sales professionals are always looking for ways...",
            "welcomeText": null,
            "discussionEnabled": true,
            "discussionRestricted": true,
            "modality": "guided",
            "normalPictureUrl": "https://yourdomain-assets.crossknowledge.com/lo_picture/...",
            "catalogInfo": [
                {
                    "chapterName": "Management Techniques",
                    "guid": "0139A842-5AAF-XXXXXXX-XXXXXXX",
                    "parentGuid": null
                },
                {
                    "chapterName": "Selling / Negotiation",
                    "guid": "20BE3B45-B727-XXXXXXX-XXXXXXX",
                    "parentGuid": "XXXXXXX-XXXXXXX-D0F1-773F8B1B1EFE"
                }
            ],
            "isMobile": false,
            "trainingId": 1625
        }
    ]
}
  

Codes and messages:

Message Code
“OK” 200
“Access Denied: Not logged-in” 401
GET  API/v1/REST/TrainingSessions/list version 1.0

Description :

This web-service allow to get the training sessions information available for the authenticated learner.

Endpoint : API/v1/REST/TrainingSessions/list.json

Method : GET

Return :

This web-service returns a json object with the training sessions information available for the [authenticated learner](/ckauth_workflow.html).

Parameters :

Label Type Required Comment Values
offset integer Index to start the search. Default: 0
limit integer Limit of the search. Default: 10 Max.: 50
modalities array Values (separated by comma) of training modalities to search. kc,campus,distanciel,guided | Default: all
filter string Filter on training sessions available for mobile only. onlyMobile Default: empty

Request :


GET /API/v1/REST/TrainingSessions/list.json HTTP/1.1
Host: yourdomain.crossknowledge.com
Cache-Control: no-cache

Response:

Returned data:

Label Type Comment
message string a message indicating the success or the reason of the failure
success boolean Describes if the web-service call was a success or not. (true or false).
totalResults integer The number of training sessions returned by the web-service.
value object An object or a list of objects containing the data in response to the request.
guid string The GUID of the training session.
trainingGuid string The GUID of the training.
title string The title of the training session.
start string Start date of the session (YYYY-MM-DD).
end string End date of the session (YYYY-MM-DD).
description string The description of the training session.
welcomeText string the welcome text of the training session.
modality string modality of the training session.
progress integer The learner’s progression (%) in the training session.
totalTimeSpent integer The learner total time spent (seconds) in the training session.
formattedTotalTimeSpent integer The learner formattted total time spent (hh:ii) in the training session.
isMobile boolean Define if the training session is enabled for mobile app. True: Enabled False: Disabled
accessible boolean Define if the training session is open for registration True: Open False: Close.
closed boolean Define if the training session is closed according to due time True: Open False: Close.
trainingUrl string The training session direct access URL.
normalPictureUrl string The thumbnail of the training session.
configurablePictureUrl string The responsive thumbnail of the training session.
guidedEarnedPoints integer The points earned on the session. (Only available for training modality = guided)
guidedThreshold integer The points threshold of the session. (Only available for training modality = guided)
guidedMainColor string The hex color of the training session UI. (Only available for training modality = guided)
showPoints boolean Define wheither or not points are visible or not for the learner from the UI. true: Visible false: not visible (Only available for training modality = guided)

Example of JSON response :


{
    "message": "OK",
    "success": true,
    "totalResults": 1,
    "value": [
        {
            "guid": "392570F0-XXXXXXXX-CE4F-363B-XXXXXXXX",
            "trainingGuid": "D65D7E08-XXXXXXXX-D132-76DA-XXXXXXXX",
            "title": "Improving Skills Negociation.",
            "start": "2017-04-20",
            "end": "2017-09-29",
            "description": "Most sales professionals are always looking for ways to overcome customer objections and close the sale.\n",
            "modality": "guided",
            "welcomeText": "Most sales professionals are always looking for ways to overcome customer objections and close the sale.
\n", "progress": 71, "totalTimeSpent": 6607, "formattedTotalTimeSpent": "1 h 50 min.", "isMobile": false, "accessible": true, "closed": false, "trainingUrl": "yourdomain.crossknowledge.com/site/path/1100", "normalPictureUrl": "yourdomain-assets.crossknowledge.com/lo_picture/...", "configurablePictureUrl": "yourdomain-assets.crossknowledge.com/lo_picture/...", "guidedEarnedPoints": 48, "guidedThreshold": 68, "guidedMainColor": "#1a76e2", "showPoints": true } ] }

Codes and messages:

Message Code
“OK” 200
“The Offset parameter is greater than the total number of available training courses” 400
“Access Denied: Not logged-in” 401
GET  API/v1/REST/LearningObjects/list version 1.0

Description :

This web-service allow to get the learning objects (content) information available for the authenticated learner.

Endpoint : API/v1/REST/LearningObjects/list.json

Method : GET

Return :

This web-service returns a json object with the learning objects information available for the [authenticated learner](/ckauth_workflow.html).

Parameters :

Label Type Required Comment Values
offset integer Index to start the search. Default: 0
limit integer Limit of the search. Default: 10 Max.: 50
sort string Descendant sort on: view | rate | update |lastAccessDate view | rate | update |lastAccessDate
filter string Filter on a duration range (mins) short (max. 10) | medium (max. 30) | long (+30)
types array Array (separated by comma) containing the list of types. Each Learning Objects found must match with a given type.
  • v (video)
  • i (interactive content)
  • r (reading document)
  • q (Questionnaire)
  • w (web site)
  • a (audio)
  • s (work to submit)
  • c (In-class assessement)
  • d (document to download)
  • p (image)
theme string Filter on a theme. My theme name
linkedToLoId int Filter on a linked learning object. Default: 0
tags array Array (separated by comma) containing the list of tags which the learning object found must have. negociation, award, guilty, innocent
keyword string filter on a keyword which the learning object found must have. sales negociation
sessionGuid string filter on a specific session GUID. 123456-abcdef-12345-XXXXXXX-XXXXXXX
folderId int filter on a specific folder ID. Defulat: 0
mobileTraining boolean If true, only Learning Objects related to a training course set “Available in the Mobile Application” will be returned. true | false

Request :


GET /API/v1/REST/LearningObjects/list.json HTTP/1.1
Host: yourdomain.crossknowledge.com
Cache-Control: no-cache

Response:

Returned data:

Label Type Comment
message string a message indicating the success or the reason of the failure
success boolean Describes if the web-service call was a success or not. (true or false).
totalResults integer The number of learning objects returned by the web-service.
value object An object or a list of objects containing the data in response to the request.
id integer The learning object session item ID (context).
loId integer The learning object id.
guid string The learning Object GUID.
title string The learning object title.
code string The learnin object code.
locale string The language code of the learning object.
thumbnail object Thumbnail URIs of the learning object in 3 size: small | medium | large.
type string The learning object type (in the example below i for Interactive content).
typeLabel string The learning object type label.
subtype string The learing object subtype.
author object The learing object author : authorGuid (identifier) | authorFirstname (firstname) | authorLastname (lastname)
duration integer The learning object duration (mins.).
summary string The learing object summary.
learningPoints string The learning object learning points (What you will learn).
includedInLo string The learning object detailed summary.
targetAudience string The learning object target audience.
level integer The learning object level in the library.
totalRate integer The learning object total rate.
totalViews integer The learning object total views.
isFavourite integer The learning object favourites number.
rate integer The learning object learner rate.
launchDate string The learning object last access date (YYYY-MM-DD).
progression string The learning object learner progression (%).
trackingId integer The learning object tracking Id (can be used to get or set the tracking for a learner).
folder object
locales array The learning object available locales.
runtime string The learning object runtime.
isMobile boolean Define if the learning object is available for mobile.
isDownloadable boolean Define if the learning object is downloadable for offline access.
isMandatory boolean Define if the learning object is mandatory in the training session.
theme object The learning object theme.
modificationDate date The learning object last modification date (YYYY-MM-DD hh:ii:ss).
sortOrder integer The sort order of the learning object in the training session.
registrationGuid string The registration guid of the learner (learning object context).
trainingGuid string The trianing guid of the learner(learning object context).
sessionGuid string The training session guid of the learner (learning object context).
scormData object The tracking data of the learner on the learning object (Scorm 1.2/ 2004) : activity_url | activity_id | version | raw_tracking_data

Example of JSON response :


{
    "message": "OK",
    "success": true,
    "totalResults": 6,
    "value": [
        {
            "id": 32439,
            "loId": 2337,
            "guid": "OJNE012",
            "title": "谈判准备十步曲",
            "code": "OJNE312",
            "locale": "zh-CHS",
            "thumbnail": {
                "small": "yourdomain-assets.crossknowledge.com/lo_picture/...",
                "medium": "yourdomain-assets.crossknowledge.com/lo_picture/...",
                "large": "yourdomain-assets.crossknowledge.com/lo_picture/..."
            },
            "type": "i",
            "typeLabel": "Session",
            "subtype": "cksession",
            "author": {
                "authorGuid": "RICHARD_ROE_70",
                "authorFirstName": "Richard",
                "authorLastName": "Roe"
            },
            "duration": 30,
            "summary": "要取得谈判的成功",
            "learningPoints": “<ul><li>谈判准备的不同步骤 </li><li>每个步骤中需要问的问题  </li><li>什么是“BATNA”?  </li><li>什么是谈判策略?</li></ul>”,
            "includedInLO": "",
            "targetAudience": "所有想要获得谈判成功的人",
            "level": "2",
            "totalRate": 0,
            "views": 5,
            "isFavourite": 0,
            "rate": 0,
            "launchDate": null,
            "progression": "5",
            "trackingId": 26116,
            "folder": null,
            "locales": [
                "zh-CHS",
                "ja-JP",
                "fr-FR",
                "en-US",
                "en-GB",
                "de-DE",
                "es-ES",
                "nl-NL",
                "pl-PL",
                "pt-BR",
                "ru-RU"
            ],
            "runtime": "scorm",
            "isMobile": false,
            "isDownloadable": false,
            "isMandatory": false,
            "theme": {
                "theme": "Find John Doe at Tokyo."
            },
            "modificationDate": "2015-09-15 00:11:52",
            "sortOrder": 14,
            "registrationGuid": "XXXXXXXXX-21FD-EEBB-D8E8-XXXXXXXXX81502",
            "trainingGuid": "D65D7E08-223B-D132-7XXXXXXXXX916BA49",
            "sessionGuid": "392570XXXXXXXXX7-CE4F-363B-422XXXXXXXXXDAE5",
            "scormData": {
                "activity_url": "",
                "activity_id": 0,
                "version": "scorm2004",
                "raw_tracking_data": "{\"cmi._version\":\"1.0\",\"cmi.learner_id\":\"[email protected]\",\"cmi.learner_name\":\"Mbouani,Brice\",\"cmi.extra_parameters\":\"[email protected]\",\"cmi.location\":\"\",\"cmi.completion_status\":\"incomplete\",\"cmi.completion_threshold\":\"1\",\"cmi.credit\":\"credit\",\"cmi.entry\":\"resume\",\"cmi.total_time\":0,\"cmi.max_time_allowed\":\"\",\"cmi.exit\":\"suspend\",\"cmi.session_time\":\"PT0H0M0S\",\"cmi.mode\":\"normal\",\"cmi.suspend_data\":\"\",\"cmi.launch_data\":\"\",\"cmi.progress_measure\":\"\",\"cmi.scaled_passing_score\":\"\",\"cmi.time_limit_action\":\"continue,no message\",\"cmi.success_status\":\"unknown\",\"cmi.learner_preference.language\":\"en-GB\",\"cmi.learner_preference.audio_level\":\"1\",\"cmi.learner_preference.audio_captioning\":\"0\",\"cmi.learner_preference.delivery_speed\":\"1\",\"cmi.score.raw\":\"\",\"cmi.score.min\":\"\",\"cmi.score.max\":\"\",\"cmi.score.scaled\":\"\",\"cmi.objectives._count\":\"0\",\"cmi.interactions._count\":\"0\"}"
            }
        }
	]
}
  

Codes and messages:

Message Code
“OK” 200
“Invalid parameter offset” 400
“Invalid parameter limit” 400
“Invalid parameter value: ‘sort’ must be in: view, rate, lastAccessDate, update” 400
“Invalid parameter value: ‘types’ must be in: v, i, r, q, w, a, s, c, d, p” 400
“Access Denied: Not logged-in” 401
GET  API/v1/REST/LearningObjects/item version 1.0

Description :

This web-service allow to get a learning object (content) information available for the authenticated learner.

Endpoint : API/v1/REST/LearningObjects/list.json

Method : GET

Return :

This web-service returns a json object with the learning objects information available for the [authenticated learner](/ckauth_workflow.html).

Parameters :

Label Type Required Comment Values
id integer The learning object session item Id.
locale string The learning object locale. en-GB

Request :


GET /API/v1/REST/LearningObjects/32439.json HTTP/1.1
Host: yourdomain.crossknowledge.com
Cache-Control: no-cache

Response:

Returned data:

Label Type Comment
message string a message indicating the success or the reason of the failure
success boolean Describes if the web-service call was a success or not. (true or false).
totalResults integer The number of learning objects returned by the web-service.
value object An object or a list of objects containing the data in response to the request.
id integer The training session ID (context).
loId integer The learning object id.
guid string The learning Object GUID.
title string The learning object title.
code string The learnin object code.
locale string The language code of the learning object.
thumbnail object Thumbnail URIs of the learning object in 3 size: small | medium | large.
type string The learning object type (in the example below i for Interactive content).
typeLabel string The learning object type label.
subtype string The learing object subtype.
author object The learing object author : authorGuid (identifier) | authorFirstname (firstname) | authorLastname (lastname)
duration integer The learning object duration (mins.).
summary string The learing object summary.
learningPoints string The learning object learning points (What you will learn).
includedInLo string The learning object detailed summary.
targetAudience string The learning object target audience.
level integer The learning object level in the library.
totalRate integer The learning object total rate.
totalViews integer The learning object total views.
isFavourite integer The learning object favourites number.
rate integer The learning object learner rate.
launchDate string The learning object last access date (YYYY-MM-DD).
progression string The learning object learner progression (%).
trackingId integer The learning object tracking Id (can be used to get or set the tracking for a learner).
folder object
locales array The learning object available locales.
runtime string The learning object runtime.
isMobile boolean Define if the learning object is available for mobile.
isDownloadable boolean Define if the learning object is downloadable for offline access.
isMandatory boolean Define if the learning object is mandatory in the training session.
theme object The learning object theme.
modificationDate date The learning object last modification date (YYYY-MM-DD hh:ii:ss).
sortOrder integer The sort order of the learning object in the training session.
registrationGuid string The registration guid of the learner (learning object context).
trainingGuid string The trianing guid of the learner(learning object context).
sessionGuid string The training session guid of the learner (learning object context).
scormData object The tracking data of the learner on the learning object (Scorm 1.2/ 2004) : activity_url | activity_id | version | raw_tracking_data
tags string The learning object tags.
contentURIs object The learning object direct access URI: launchURI | subtitleURIs

Example of JSON response :


{
    "message": "OK",
    "success": true,
    "totalResults": 6,
    "value": [
        {
            "id": 32439,
            "loId": 2337,
            "guid": "OJNE012",
            "title": "谈判准备十步曲",
            "code": "OJNE312",
            "locale": "zh-CHS",
            "thumbnail": {
                "small": "yourdomain-assets.crossknowledge.com/lo_picture/...",
                "medium": "yourdomain-assets.crossknowledge.com/lo_picture/...",
                "large": "yourdomain-assets.crossknowledge.com/lo_picture/..."
            },
            "type": "i",
            "typeLabel": "Session",
            "subtype": "cksession",
            "author": {
                "authorGuid": "RICHARD_ROE_70",
                "authorFirstName": "Richard",
                "authorLastName": "Roe"
            },
            "duration": 30,
            "summary": "要取得谈判的成功",
            "learningPoints": “<ul><li>谈判准备的不同步骤 </li><li>每个步骤中需要问的问题  </li><li>什么是“BATNA”?  </li><li>什么是谈判策略?</li></ul>”,
            "includedInLO": "",
            "targetAudience": "所有想要获得谈判成功的人",
            "level": "2",
            "totalRate": 0,
            "views": 5,
            "isFavourite": 0,
            "rate": 0,
            "launchDate": null,
            "progression": "5",
            "trackingId": 26116,
            "folder": null,
            "locales": [
                "zh-CHS",
                "ja-JP",
                "fr-FR",
                "en-US",
                "en-GB",
                "de-DE",
                "es-ES",
                "nl-NL",
                "pl-PL",
                "pt-BR",
                "ru-RU"
            ],
            "runtime": "scorm",
            "isMobile": false,
            "isDownloadable": false,
            "isMandatory": false,
            "theme": {
                "theme": "Find John Doe at Tokyo."
            },
            "modificationDate": "2015-09-15 00:11:52",
            "sortOrder": 14,
            "registrationGuid": "XXXXXXXXX-21FD-EEBB-D8E8-XXXXXXXXX81502",
            "trainingGuid": "D65D7E08-223B-D132-7XXXXXXXXX916BA49",
            "sessionGuid": "392570XXXXXXXXX7-CE4F-363B-422XXXXXXXXXDAE5",
            "scormData": {
                "activity_url": "",
                "activity_id": 0,
                "version": "scorm2004",
                "raw_tracking_data": "{\"cmi._version\":\"1.0\",\"cmi.learner_id\":\"[email protected]\",\"cmi.learner_name\":\"Mbouani,Brice\",\"cmi.extra_parameters\":\"[email protected]\",\"cmi.location\":\"\",\"cmi.completion_status\":\"incomplete\",\"cmi.completion_threshold\":\"1\",\"cmi.credit\":\"credit\",\"cmi.entry\":\"resume\",\"cmi.total_time\":0,\"cmi.max_time_allowed\":\"\",\"cmi.exit\":\"suspend\",\"cmi.session_time\":\"PT0H0M0S\",\"cmi.mode\":\"normal\",\"cmi.suspend_data\":\"\",\"cmi.launch_data\":\"\",\"cmi.progress_measure\":\"\",\"cmi.scaled_passing_score\":\"\",\"cmi.time_limit_action\":\"continue,no message\",\"cmi.success_status\":\"unknown\",\"cmi.learner_preference.language\":\"en-GB\",\"cmi.learner_preference.audio_level\":\"1\",\"cmi.learner_preference.audio_captioning\":\"0\",\"cmi.learner_preference.delivery_speed\":\"1\",\"cmi.score.raw\":\"\",\"cmi.score.min\":\"\",\"cmi.score.max\":\"\",\"cmi.score.scaled\":\"\",\"cmi.objectives._count\":\"0\",\"cmi.interactions._count\":\"0\"}"
            },
			"tags": "协商, 合作, 工作与生活的平衡, 收购, 销售, 信念",
			"contentURIs": {
				"launchURI": "https://XXXXXXXXX.cloudfront.net/staticCourseContent/zh-CHS/XXXXXXXXX/",
				"subtitleURIs": []
			}
        }
	]
}
  

Codes and messages:

Message Code
“OK” 200
“Invalid parameter offset” 400
“Invalid parameter limit” 400
“Invalid parameter value: ‘sort’ must be in: view, rate, lastAccessDate, update” 400
“Invalid parameter value: ‘types’ must be in: v, i, r, q, w, a, s, c, d, p” 400
“Access Denied: Not logged-in” 401
POST  API/v1/REST/LearningObjects/item version 1.0

Description :

This web-service allow to set vote or add to favourite a learning object (content) available for the authenticated learner.

Endpoint : API/v1/REST/LearningObjects/{learningObjectId}.json

Method : POST

Return :

This web-service returns a json object with the learning objects updated information for the [authenticated learner](/ckauth_workflow.html).

Parameters :

Label Type Required Comment Values
vote integer The learning object vote (rate number).. Range >= 1 (Max. 5)
favourite boolean Add learning object to learner’s favourite list. 0 (false) | 1 (true)

Request :


POST /API/v1/REST/LearningObjects/32439.json HTTP/1.1
Host: yourdomain.crossknowledge.com
Content-Type: application/x-www-form-urlencoded
Cache-Control: no-cache

vote=5&favourite=0

Response:

Returned data:

Label Type Comment
message string a message indicating the success or the reason of the failure
success boolean Describes if the web-service call was a success or not. (true or false).
totalResults integer The number of learning objects updated returned by the web-service.
value object An object or a list of objects containing the data in response to the request.
rate integer The rate number set by the authenticated learner on the learning object.
totalRate integer The total rate number on the learning object.
totalVote string The total vote number on the learning object.

Example of JSON response :


{
    "message": "ok",
    "success": true,
    "totalResults": 0,
    "value": {
        "rate": 5,
        "totalRate": 5,
        "totalVote": "(1 vote)"
    }
}

Codes and messages:

Message Code
“OK” 200
“The vote value is not correct: n” 400
GET  API/v1/REST/LearningObjects/themes version 1.0

Description :

This web-service allow to get the learning objects (content) themes list available for the authenticated learner.

Endpoint : API/v1/REST/LearningObjects/themes.json

Method : GET

Return :

This web-service returns a json object with the learning objects themes available for the [authenticated learner](/ckauth_workflow.html).

Parameters :

Label Type Required Comment Values
limit integer Limit must be between 0 and 50 Default: 10 Max. 50
offset integer Offset of the themes list. Default: 10

Request :


GET /API/v1/REST/LearningObjects/themes.json HTTP/1.1
Host: yourdomain.crossknowledge.com
Cache-Control: no-cache

Response:

Returned data:

Label Type Comment
message string a message indicating the success or the reason of the failure
success boolean Describes if the web-service call was a success or not. (true or false).
totalResults integer The number of learning objects themes returned by the web-service.
value object An object or a list of objects containing the data in response to the request.
title string The theme title.

Example of JSON response :


{
    "message": "OK",
    "success": true,
    "totalResults": 135,
    "value": [
        {
            "title": "Sharing the vision"
        },
        {
            "title": "Developing Talents"
        },
        {
            "title": "Personal Development"
        }
    ]
}
  

Codes and messages:

Message Code
“OK” 200
“Invalid parameter offset” 400
“Invalid parameter limit” 400
“Access Denied: Not logged-in” 401
GET  API/v1/REST/LearningObjects/types version 1.0

Description :

This web-service allow to get the learning objects (content) types list available for the authenticated learner.

Endpoint : API/v1/REST/LearningObjects/types.json

Method : GET

Return :

This web-service returns a json object with the learning objects types available for the [authenticated learner](/ckauth_workflow.html).

Parameters :

No parameters required

Request :


GET /API/v1/REST/LearningObjects/types.json HTTP/1.1
Host: yourdomain.crossknowledge.com
Cache-Control: no-cache

Response:

Returned data:

Label Type Comment
message string a message indicating the success or the reason of the failure
success boolean Describes if the web-service call was a success or not. (true or false).
totalResults integer The number of learning objects types returned by the web-service.
value object An object or a list of objects containing the data in response to the request.

Example of JSON response :


{
    "message": "OK",
    "success": true,
    "totalResults": 10,
    "value": {
        "i": "Interactive learning resource",
        "r": "Reading document",
        "v": "Video",
        "q": "Questionnaire",
        "s": "Work to submit",
        "d": "Document to download",
        "w": "Web site",
        "c": "In-class assessment",
        "p": "Image",
        "a": "Audio"
    }
}
  

Codes and messages:

Message Code
“OK” 200
“Access Denied: Not logged-in” 401
GET  API/v1/REST/LearningObjects/Download/item version 1.0

Description :

This web-service allow to download locally (mobile device) the learning objects (content) available for the authenticated learner for offline access.

Endpoint : API/v1/REST/LearningObjects/Download/{learningObjectId}.json

Method : GET

Return :

This web-service returns a json object with the download URL of learning object available for the [authenticated learner](/ckauth_workflow.html).

Parameters :

Label Type Required Comment
item integer The learning object session item Id.

Request :


GET /API/v1/REST/LearningObjects/Download/32439.json HTTP/1.1
Host: yourdomain.crossknowledge.com
Cache-Control: no-cache

Response:

Returned data:

Label Type Comment
message string a message indicating the success or the reason of the failure
success boolean Describes if the web-service call was a success or not. (true or false).
totalResults integer The number of learning objects download url returned by the web-service.
value object An object or a list of objects containing the data in response to the request.
downloadUrl string The download URL of the content.

Example of JSON response :


{
    "message": "OK",
    "success": true,
    "totalResults": 1,
    "value": {
        "downloadUrl": "https://xxxxxxxxxx.s3.amazonaws.com/ojne612-en-gb-default.zip?AWSAc"
    }
}
  

Codes and messages:

Message Code
“OK” 200
“Access Denied: Not logged-in” 401
“learner cannot access this Learning Object” 403
GET  API/v1/REST/PathSessionFolders/list version 1.0

Description :

This web-service allow to get the training session’s folders available for the authenticated learner for offline access.

Endpoint : API/v1/REST/PathSessionFolders/list.json

Method : GET

Return :

This web-service returns a json object with the session's folders available for the [authenticated learner](/ckauth_workflow.html).

Parameters :

Label Type Required Comment Values
sessionGuid string The training session GUID. abcdef-12345-XXXXXXX-XXXXXXX

Request :


GET /API/v1/REST/PathSessionFolders/list.json?sessionGuid=XXXX-ACC7-CE4F-363B-4225535CDAE5 HTTP/1.1
Host: yourdomain.crossknowledge.com
Cache-Control: no-cache

Response:

Returned data:

Label Type Comment
message string a message indicating the success or the reason of the failure
success boolean Describes if the web-service call was a success or not. (true or false).
totalResults integer The number of path session folders url returned by the web-service.
value object An object or a list of objects containing the data in response to the request.
id integer The session folder id.
name string The session folder name.
parent_id integer The session folder parent id.
sort_order integer The session folder sort order.
context_id integer The session folder context id.

Example of JSON response :


{
    "message": "OK",
    "success": true,
    "totalResults": 1,
    "value": [
        {
            "id": 10,
            "name": "Folder1",
            "parent_id": 0,
            "sort_order": 1,
            "context_id": 8,
            
            "id": 11,
            "name": "Folder 2",
            "parent_id": 10,
            "sort_order": 2,
            "context_id": 8,
                    
            "id": 12,
            "name": "Folder 3",
            "parent_id": 11,
            "sort_order": 3,
            "context_id": 8,
        }
    ]
}
  

Codes and messages:

Message Code
“OK” 200
“Access Denied: Not logged-in” 401
“Missing Mandatory Parameter: sessionGuid” 500
POST  API/v1/REST/Trackings/list version 1.0

Description :

This web-service allow to Create/Retrieve/Update learning objects tracking lines available for the authenticated learner.

Endpoint : API/v1/REST/Trackings/list.json

Method : POST

Return :

This web-service returns a json object with the learning objects tracking information available for the [authenticated learner](/ckauth_workflow.html).

Parameters :

Label Type Required Comment Values
trackings array The list of tracking to create/ retrieve or update. Array of json objects.
trackingId integer The tracking ID in the LMS Report. Mandatory if updating an existing tracking line only. Range >= 1
itemId string The learning object GUID. Mandatory if creating a new tracking line only. ABCD123
data string the tracking row data.
progression integer The amount of pregression achieved (%). Min. 0 | Max. 100
registrationGuid string The learner’s Registration where this Learning Object is referenced. Mandatory if creating a new tracking line only. abcdef-12345-XXXXXXX-XXXXXXX
score float The score the learner achieved in the Learning Object. Range >= 0.0
scoreMax float The maximum score value available in the Learning Object. Range >= 0.0
sessionTimeSpent integer The amount of time spent by the learner in the current training session (seconds). Mandatory if totalTimeSpent == null Range >= 0
totalTimeSpent integer The amount of total time spent by the learner in the current training session (seconds). Mandatory if sessionTimeSpent == null Range >= 0
firstLaunchTime datetime The date and time when the Learning Object was first launch for the Registration by the learner YYYY-MM-DD hh:ii:ss
completionTime datetime The date and time when the Learning Object was completed for the Registration by the learner YYYY-MM-DD hh:ii:ss

Request :


POST /API/v1/REST/Trackings/list.json HTTP/1.1
Host: yourdomain.crossknowledge.com
Content-Type: application/x-www-form-urlencoded
Cache-Control: no-cache

trackings=[{"completionTime":"2017-12-27 10:40:38","firstLaunchTime":"2017-03-27 10:40:38","trackingId":26116,"itemId":null,"progression":100,"registrationGuid":null,"score":1000,"scoreMax":100,"sessionTimeSpent":null,"totalTimeSpent":10000}, {"completionTime":"2017-12-27 10:40:38","firstLaunchTime":"2017-12-27 10:40:38","trackingId":26119,"itemId":null,"progression":0,"registrationGuid": null,"score":100,"scoreMax":null,"sessionTimeSpent":null,"totalTimeSpent":6000}]


Response:

The response values contains a list of all the Trackings successfully created and/or updated.

Returned data:

Label Type Comment
message string a message indicating the success or the reason of the failure
success boolean Describes if the web-service call was a success or not. (true or false).
totalResults integer The number of learning objects tracking lines returned by the web-service.
value object An object or a list of objects containing the data in response to the request.
firstLaunchTime datetime The date and time when the Learning Object was first launch for the Registration by the learner
completionTime datetime The date and time when the Learning Object was completed for the Registration by the learner
id integer The tracking item ID.
itemId integer The learning object session (context) item ID.
progression integer The learning object progression achieved by the learner on the current session.
registrationGuid string The learner training session’s registration guid.
score float The score achieved by the learner on the learning object (item id) in the current session.
scoreMax float The max score achievable by the learner on the learning object (item id) in the current session..
timespent integer The time spent by the learner on the learning object in the current session.

Example of JSON response :


{
    "message": "Trackings successfully created and/or updated.",
    "success": true,
    "totalResults": 2,
    "value": [
        {
            "firstLaunchTime": "2017-03-27 10:40:38",
            "completionTime": "2017-12-27 10:40:38",
            "id": 26116,
            "itemId": "32439",
            "progression": 100,
            "registrationGuid": "XXXX-21FD-EEBB-D8E8-XXXXXXX-XXXXXXX",
            "score": 1000,
            "scoreMax": 100,
            "timeSpent": 87367
        },
        {
            "firstLaunchTime": "2017-07-25 07:36:15",
            "completionTime": "2017-09-08 12:14:49",
            "id": 26119,
            "itemId": "32438",
            "progression": 100,
            "registrationGuid": "7F3F9052-21FD-EEBB-D8E8-9XXXXXXX-XXXXXXX"",
            "score": 0,
            "scoreMax": 0,
            "timeSpent": 3600
        }
    ]
}
  

Codes and messages:

Message Code
“Trackings successfully created and\/or updated” 200
“Trackings partially created and/or updated. Errors list:SessionTimeSpent (n) and TotalTimeSpent (n) must not be sent together.” 206
“Trackings partially created and/or updated. Errors list:ItemId and id must not be sent together.\nItemId and registrationGuid must bought be sent together.” 206
“Invalid parameter {trackings}” 400
“Access Denied: Not logged-in” 401
GET  API/v1/REST/Trackings/item version 1.0

Description :

This web-service allow to retrieve a learning object tracking row available for the authenticated learner.

Endpoint : API/v1/REST/Trackings/{trackingId}.json

Method : GET

Return :

This web-service returns a json object with the learning object tracking information available for the [authenticated learner](/ckauth_workflow.html).

Parameters :

Label Type Required Comment Values
trackingId integer The tracking ID in the LMS Report. Mandatory if updating an existing tracking line only. Range >= 1
itemId string The learning object GUID. Mandatory if creating a new tracking line only. ABCD123
progression integer The amount of pregression achieved (%). Min. 0 | Max. 100
registrationGuid string The learner’s Registration where this Learning Object is referenced. Mandatory if creating a new tracking line only. abcdef-12345-XXXXXXX-XXXXXXX
score float The score the learner achieved in the Learning Object. Range >= 0.0
scoreMax float The maximum score value available in the Learning Object. Range >= 0.0
sessionTimeSpent integer The amount of time spent by the learner in the current training session (seconds). Mandatory if totalTimeSpent == null Range >= 0
totalTimeSpent integer The amount of total time spent by the learner in the current training session (seconds). Mandatory if sessionTimeSpent == null Range >= 0
firstLaunchTime datetime The date and time when the Learning Object was first launch for the Registration by the learner YYYY-MM-DD hh:ii:ss
completionTime datetime The date and time when the Learning Object was completed for the Registration by the learner YYYY-MM-DD hh:ii:ss

Request :


GET /API/v1/REST/Trackings/26119.json HTTP/1.1
Host: yourdomain.crossknowledge.com
Cache-Control: no-cache

Response:

The response values contains the tracking row information.

Returned data:

Label Type Comment
message string a message indicating the success or the reason of the failure
success boolean Describes if the web-service call was a success or not. (true or false).
totalResults integer The number of learning objects tracking row returned by the web-service.
value object An object or a list of objects containing the data in response to the request.
firstLaunchTime datetime The date and time when the Learning Object was first launch for the Registration by the learner
completionTime datetime The date and time when the Learning Object was completed for the Registration by the learner
id integer The tracking item ID.
itemId integer The learning object session (context) item ID.
progression integer The learning object progression achieved by the learner on the current session.
registrationGuid string The learner training session’s registration guid.
score float The score achieved by the learner on the learning object (item id) in the current session.
scoreMax float The max score achievable by the learner on the learning object (item id) in the current session..
timespent integer The time spent by the learner on the learning object in the current session.

Example of JSON response :


{
    "message": "Tracking successfully read.",
    "success": true,
    "totalResults": 1,
    "value": {
        "firstLaunchTime": "2017-07-25 07:36:15",
        "completionTime": "2017-09-08 12:14:49",
        "id": 26119,
        "itemId": "32438",
        "progression": 100,
        "registrationGuid": "XXXX-21FD-EEBB-D8E8-9A4400581502",
        "score": 0,
        "scoreMax": 0,
        "timeSpent": 3600
    }
}
  

Codes and messages:

Message Code
“Tracking successfully read.” 200
“Access Denied: Not logged-in.” 401
“The requested tracking item is not related to the learner.” 404
“The requested tracking item was not found.” 404
POST  API/v1/REST/Trackings/item version 1.0

Description :

This web-service allow to create or update a learning object exsiting tracking row available for the authenticated learner.

Endpoint : API/v1/REST/Trackings/item.json

Method : POST

Return :

This web-service returns a json object with the learning object tracking information available for the [authenticated learner](/ckauth_workflow.html).

Parameters :

Label Type Required Comment Values
trackingId integer The tracking ID in the LMS Report. Mandatory if updating an existing tracking line only. Range >= 1
itemId string The learning object GUID. Mandatory if creating a new tracking line only. ABCD123
data string the tracking row data.
progression integer The amount of pregression achieved (%). Min. 0 | Max. 100
registrationGuid string The learner’s Registration where this Learning Object is referenced. Mandatory if creating a new tracking line only. abcdef-12345-XXXXXXX-XXXXXXX
score float The score the learner achieved in the Learning Object. Range >= 0.0
scoreMax float The maximum score value available in the Learning Object. Range >= 0.0
sessionTimeSpent integer The amount of time spent by the learner in the current training session (seconds). Mandatory if totalTimeSpent == null Range >= 0
totalTimeSpent integer The amount of total time spent by the learner in the current training session (seconds). Mandatory if sessionTimeSpent == null Range >= 0
firstLaunchTime datetime The date and time when the Learning Object was first launch for the Registration by the learner YYYY-MM-DD hh:ii:ss
completionTime datetime The date and time when the Learning Object was completed for the Registration by the learner YYYY-MM-DD hh:ii:ss

Request :


POST /API/v1/REST/Trackings/item.json HTTP/1.1
Host: yourdomain.crossknowledge.com
Content-Type: application/x-www-form-urlencoded
Cache-Control: no-cache

trackingId=26116&totalTimeSpent=9000&score=6000&progression=50&firstLaunchTime=2018-03-28+10%3A40%3A38&completionTime=2018-03-31+10%3A40%3A38

Response:

The response values contains the tracking row information.

Returned data:

Label Type Comment
message string a message indicating the success or the reason of the failure
success boolean Describes if the web-service call was a success or not. (true or false).
totalResults integer The number of learning objects tracking row returned by the web-service.
value object An object or a list of objects containing the data in response to the request.
firstLaunchTime datetime The date and time when the Learning Object was first launch for the Registration by the learner
completionTime datetime The date and time when the Learning Object was completed for the Registration by the learner
id integer The tracking item ID.
itemId integer The learning object session (context) item ID.
progression integer The learning object progression achieved by the learner on the current session.
registrationGuid string The learner training session’s registration guid.
score float The score achieved by the learner on the learning object (item id) in the current session.
scoreMax float The max score achievable by the learner on the learning object (item id) in the current session..
timespent integer The time spent by the learner on the learning object in the current session.

Example of JSON response :


{
    "message": "Tracking successfully",
    "success": true,
    "totalResults": 1,
    "value": {
        "firstLaunchTime": "2018-03-28 10:40:38",
        "completionTime": "2018-03-31 10:40:38",
        "id": 26116,
        "itemId": "32439",
        "progression": 100,
        "registrationGuid": "7F3F9052-21FD-XXXXXXX-XXXXXXX-D0F1-773F8B",
        "score": 6000,
        "scoreMax": 100,
        "timeSpent": 173767
    }
}
  

Codes and messages:

Message Code
“Tracking successfully” 200
“Date Times must be a valid SQL datetime (2018-03-31\n10:40:38 received).,The completion time should be a valide SQL date..” 400
“Access Denied: Not logged-in.” 401
“Tracking not found: n.” 404