learning
Per-topic completion %, avg quiz score, avg time-on-task.
Per-topic completion %, avg quiz score, avg time-on-task.
OpenAPI specificationPOST
/api/v1/learning/unit-topicsAuthentication
bearerAuth
Request
curl --globoff --request POST \
--url 'https://honen.com/api/v1/learning/unit-topics' \
--header 'Authorization: Bearer <BEARER_TOKEN>' \
--header 'Content-Type: application/json' \
--data-raw '{
"unitId": "<unitId>"
}'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": {
"unitId": {
"type": "string"
},
"groupId": {
"type": "string"
}
},
"required": [
"unitId"
]
}Responses
200Command result.
{
"type": "object",
"properties": {
"success": {
"type": "boolean",
"enum": [
true
]
},
"data": {
"type": "object",
"properties": {
"unitId": {
"type": "string"
},
"courseId": {
"type": "string"
},
"totalMembers": {
"type": "number"
},
"topics": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"title": {
"type": "string"
},
"orderIndex": {
"type": "number"
},
"avgScore": {
"type": "number",
"nullable": true
},
"minScore": {
"type": "number",
"nullable": true
},
"maxScore": {
"type": "number",
"nullable": true
},
"completion": {
"type": "number"
},
"avgTimeSeconds": {
"type": "number",
"nullable": true
}
},
"required": [
"id",
"title",
"orderIndex",
"avgScore",
"minScore",
"maxScore",
"completion",
"avgTimeSeconds"
]
}
},
"projects": {
"type": "array",
"items": {
"type": "object",
"properties": {
"id": {
"type": "string"
},
"title": {
"type": "string"
},
"type": {
"type": "string"
},
"completion": {
"type": "number",
"nullable": true
},
"requiredMembers": {
"type": "number"
},
"totalMembers": {
"type": "number"
}
},
"required": [
"id",
"title",
"type",
"completion",
"requiredMembers",
"totalMembers"
]
}
}
},
"required": [
"unitId",
"courseId",
"totalMembers",
"topics",
"projects"
]
}
},
"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"
]
}