learning
One learner's unit/topic/activity breakdown + times vs team avg.
One learner's unit/topic/activity breakdown + times vs team avg.
OpenAPI specificationPOST
/api/v1/learning/student-unitsAuthentication
bearerAuth
Request
curl --globoff --request POST \
--url 'https://honen.com/api/v1/learning/student-units' \
--header 'Authorization: Bearer <BEARER_TOKEN>' \
--header 'Content-Type: application/json' \
--data-raw '{
"userId": "<userId>",
"courseId": "<courseId>"
}'Replace credential and <field> placeholders with your own values. URL placeholders appear as %3Cfield%3E. Review the example values before sending your request.
Use the sample JSON body as your starting point, and enter values that match the endpoint's schema.
Request body schema or example
{
"type": "object",
"properties": {
"userId": {
"type": "string"
},
"courseId": {
"type": "string"
},
"groupId": {
"type": "string"
}
},
"required": [
"userId",
"courseId"
]
}Responses
200Command result.
{
"type": "object",
"properties": {
"success": {
"type": "boolean",
"enum": [
true
]
},
"data": {
"type": "object",
"properties": {
"userId": {
"type": "string"
},
"courseId": {
"type": "string"
},
"overallProgress": {
"type": "number"
},
"overallScore": {
"type": "number",
"nullable": true
},
"overallStatus": {
"type": "string",
"enum": [
"complete",
"active",
"not-started"
]
},
"unitsCompleted": {
"type": "number"
},
"totalUnits": {
"type": "number"
},
"criteriaLabel": {
"type": "string",
"nullable": true
},
"modules": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"title": {
"type": "string"
},
"progress": {
"type": "number"
},
"quizScore": {
"type": "number",
"nullable": true
},
"teamAvg": {
"type": "number",
"nullable": true
},
"status": {
"type": "string",
"enum": [
"complete",
"active",
"not-started"
]
},
"timeSeconds": {
"type": "number",
"nullable": true
},
"unitComplete": {
"type": "boolean",
"enum": [
false,
true
]
},
"topics": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"title": {
"type": "string"
},
"completedCount": {
"type": "number"
},
"requiredCount": {
"type": "number"
},
"totalActivities": {
"type": "number"
},
"completed": {
"type": "boolean",
"enum": [
false,
true
]
},
"timeSeconds": {
"type": "number",
"nullable": true
},
"activities": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"title": {
"type": "string"
},
"type": {
"type": "string"
},
"completed": {
"type": "boolean",
"enum": [
{
"description": "Nested schema"
},
{
"description": "Nested schema"
}
]
},
"timeSeconds": {
"type": "number",
"nullable": true
}
},
"required": [
"id",
"title",
"type",
"completed",
"timeSeconds"
]
}
}
},
"required": [
"id",
"title",
"completedCount",
"requiredCount",
"totalActivities",
"completed",
"timeSeconds",
"activities"
]
}
},
"test": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"required": {
"type": "boolean",
"enum": [
false,
true
]
},
"taken": {
"type": "boolean",
"enum": [
false,
true
]
},
"scorePercent": {
"type": "number",
"nullable": true
},
"minScore": {
"type": "number",
"nullable": true
},
"satisfied": {
"type": "boolean",
"enum": [
false,
true
]
}
},
"required": [
"id",
"required",
"taken",
"scorePercent",
"minScore",
"satisfied"
],
"nullable": true
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"title": {
"type": "string"
},
"required": {
"type": "boolean",
"enum": [
false,
true
]
},
"completed": {
"type": "boolean",
"enum": [
false,
true
]
},
"satisfied": {
"type": "boolean",
"enum": [
false,
true
]
}
},
"required": [
"id",
"title",
"required",
"completed",
"satisfied"
]
}
}
},
"required": [
"id",
"title",
"progress",
"quizScore",
"teamAvg",
"status",
"timeSeconds",
"unitComplete",
"topics",
"test",
"projects"
]
}
}
},
"required": [
"userId",
"courseId",
"overallProgress",
"overallScore",
"overallStatus",
"unitsCompleted",
"totalUnits",
"criteriaLabel",
"modules"
]
}
},
"required": [
"success",
"data"
]
}400Malformed JSON request body.
{
"type": "object",
"properties": {
"success": {
"type": "boolean",
"enum": [
false
]
},
"error": {
"type": "object",
"properties": {
"code": {
"type": "string"
},
"message": {
"type": "string"
},
"resolution": {
"type": "string"
},
"errors": {
"type": "object",
"additionalProperties": {
"type": "array",
"items": {
"type": "string"
}
}
},
"details": {
"nullable": true
}
},
"required": [
"code",
"message",
"resolution"
]
}
},
"required": [
"success",
"error"
]
}401Missing or invalid Connector credentials.
{
"type": "object",
"properties": {
"success": {
"type": "boolean",
"enum": [
false
]
},
"error": {
"type": "object",
"properties": {
"code": {
"type": "string"
},
"message": {
"type": "string"
},
"resolution": {
"type": "string"
},
"errors": {
"type": "object",
"additionalProperties": {
"type": "array",
"items": {
"type": "string"
}
}
},
"details": {
"nullable": true
}
},
"required": [
"code",
"message",
"resolution"
]
}
},
"required": [
"success",
"error"
]
}403Connector policy does not permit this command.
{
"type": "object",
"properties": {
"success": {
"type": "boolean",
"enum": [
false
]
},
"error": {
"type": "object",
"properties": {
"code": {
"type": "string"
},
"message": {
"type": "string"
},
"resolution": {
"type": "string"
},
"errors": {
"type": "object",
"additionalProperties": {
"type": "array",
"items": {
"type": "string"
}
}
},
"details": {
"nullable": true
}
},
"required": [
"code",
"message",
"resolution"
]
}
},
"required": [
"success",
"error"
]
}404Unknown command.
{
"type": "object",
"properties": {
"success": {
"type": "boolean",
"enum": [
false
]
},
"error": {
"type": "object",
"properties": {
"code": {
"type": "string"
},
"message": {
"type": "string"
},
"resolution": {
"type": "string"
},
"errors": {
"type": "object",
"additionalProperties": {
"type": "array",
"items": {
"type": "string"
}
}
},
"details": {
"nullable": true
}
},
"required": [
"code",
"message",
"resolution"
]
}
},
"required": [
"success",
"error"
]
}422Input validation error.
{
"type": "object",
"properties": {
"success": {
"type": "boolean",
"enum": [
false
]
},
"error": {
"type": "object",
"properties": {
"code": {
"type": "string"
},
"message": {
"type": "string"
},
"resolution": {
"type": "string"
},
"errors": {
"type": "object",
"additionalProperties": {
"type": "array",
"items": {
"type": "string"
}
}
},
"details": {
"nullable": true
}
},
"required": [
"code",
"message",
"resolution"
]
}
},
"required": [
"success",
"error"
]
}