Módulos do Curso
Após criar um curso e seus módulos separadamente, você deve vincular explicitamente os módulos ao curso. O vínculo define a posição do módulo, se ele é obrigatório e sua carga horária dentro deste curso específico.
Listar módulos vinculáveis
Retorna os módulos que pertencem à mesma instituição e ainda não estão vinculados a este curso.
GET /courses/{course_uuid}/attach/modules
curl "https://api.dokstamp.eu/courses/c3d4e5f6-a7b8-9012-cdef-123456789012/attach/modules" \
-H "Authorization: Bearer {TOKEN}" \
-H "Accept: application/json" \
-H "X-Tenant: {TENANT}"
Vincular módulos a um curso
POST /courses/{course_uuid}/attach/modules
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|
modules | array | Sim | Array de objetos de vínculo de módulo |
modules[].uuid | string | Sim | UUID do módulo |
modules[].order | integer | Não | Posição no currículo do curso |
modules[].is_required | boolean | Não | Sobrescreve o valor padrão is_required do módulo |
modules[].workload | integer | Não | Sobrescreve a carga horária padrão do módulo neste curso |
modules[].course_module_group_uuid | string | Não | Atribui o módulo a um grupo de módulos |
curl -X POST "https://api.dokstamp.eu/courses/c3d4e5f6-a7b8-9012-cdef-123456789012/attach/modules" \
-H "Authorization: Bearer {TOKEN}" \
-H "Accept: application/json" \
-H "Content-Type: application/json" \
-H "X-Tenant: {TENANT}" \
-d '{
"modules": [
{
"uuid": "b2c3d4e5-f6a7-8901-bcde-f12345678901",
"order": 1,
"is_required": true,
"workload": 80
},
{
"uuid": "c3d4e5f6-a7b8-9012-cdef-123456789013",
"order": 2,
"is_required": true,
"workload": 60
}
]
}'
Desvincular módulos de um curso
DELETE /courses/{course_uuid}/detach/modules
| Parâmetro | Tipo | Obrigatório | Descrição |
|---|
modules | array | Sim | Array de UUIDs de módulos a desvincular |
{ "modules": ["b2c3d4e5-f6a7-8901-bcde-f12345678901"] }
Desvincular um módulo de um curso não exclui o módulo em si — apenas a associação é removida. O módulo permanece disponível para ser vinculado a outros cursos.