Scoring endpoint
Perform automatic scoring on the provided Questions and responses data.
Endpoints:
Usage
The format of requests to the Data API uses the following syntax:
https://data.learnosity.com/{LTS_VERSION}/{endpoint}
For example, to use the v2025.2.LTS version and the /scoring endpoint, you would create a request like so:
https://data.learnosity.com/v2025.2.LTS/scoring
Important The Data API is not a REST API. All requests must use the POST method, with the action request body parameter specifying the operation to use. The Learnosity SDK must be used to make requests to Data API.
Note The Data API usage is subject to rate limits.
Related articles:
- Getting Started with the Data API
- See Release Cadence and Version Lifecycle for more information on available LTS versions.
Scoring
See Understanding and Using the Data API Scoring Service for a list of supported Question types and Question response examples.
| Endpoint | /{LTS_VERSION}/scoring |
|---|---|
| HTTP method | POST |
| Action type | "get" |
Request body parameters
Body content type: application/json
-
partial_scores boolean
Controls whether to retrieve partial scores for supported Question types.
Default:
false -
questions array[object]
An array of Question type objects that can be autoscored.
-
responses object
An object containing each individual Question response object to be scored, keyed by
response_id.
Request body example
{
"questions": [
{
"response_id": "10000",
"options": [
{
"label": "A",
"value": "0"
},
{
"label": "B",
"value": "1"
},
{
"label": "C",
"value": "2"
},
{
"label": "D",
"value": "3"
}
],
"stimulus": "<p>Choose the right response</p>",
"type": "mcq",
"ui_style": {},
"validation": {
"scoring_type": "exactMatch",
"valid_response": {
"score": 1,
"value": [
"0"
]
}
}
},
{
"response_id": "10001",
"options": [
{
"label": "A",
"value": "0"
},
{
"label": "B",
"value": "1"
},
{
"label": "C",
"value": "2"
},
{
"label": "D",
"value": "3"
}
],
"stimulus": "<p>Choose the right response</p>",
"type": "mcq",
"ui_style": {},
"validation": {
"scoring_type": "exactMatch",
"valid_response": {
"score": 1,
"value": [
"3"
]
}
}
}
],
"responses": {
"10000": {
"value": [
"0"
],
"type": "array",
"apiVersion": "v2.105.2"
},
"10001": {
"value": [
"3"
],
"type": "array",
"apiVersion": "v2.105.2"
}
}
}
Responses
Response example
{
"meta": {
"status": true,
"timestamp": 1748361465,
"versions": {
"requested": "v2025.1.LTS",
"mapped": "v1.74",
"concrete": "v1.74.1"
},
"records": 2
},
"data": [
{
"response_id": "10000",
"type": "mcq",
"automarkable": true,
"is_valid": true,
"score": 1,
"max_score": 1,
"attempted": true,
"error": null,
"meta": {
"scoring_version_used": "v2.168.22"
}
},
{
"response_id": "10001",
"type": "mcq",
"automarkable": true,
"is_valid": true,
"score": 1,
"max_score": 1,
"attempted": true,
"error": null,
"meta": {
"scoring_version_used": "v2.168.22"
}
}
]
}