Listar turmas
Lista as turmas de um curso (informe o `CourseId`). Também é possível filtrar por visibilidade e paginar.
Autorização
apiToken Token do parceiro. Gere no painel do parceiro: Configurações > Integrações > API Token (perfil Admin ou Superadmin). Envie só este header: se Authorization também for enviado, ele tem prioridade e a requisição é recusada com 401.
Local: header
Parâmetros de Query
ID do curso. Obrigatório.
true ou false para filtrar pela visibilidade.
Valor em
- "true"
- "false"
Página (começa em 1).
Itens por página (padrão 50). O nome do parâmetro é esse mesmo, com "itens".
Corpo da Resposta
application/json
application/json
curl -X GET "https://example.com/course-classes?CourseId=33954&page=1&itensPerPage=50"{ "paging": null, "content": [ { "id": 1, "active": true, "visible": true, "name": "Turma teste 1", "startsAt": null, "endsAt": null, "expiresAt": null, "durationTime": null, "priceInCents": 185000, "gracePeriodDays": 0, "partnerSKU": null, "createdAt": "2021-10-06T19:16:12.383Z", "updatedAt": "2021-10-06T19:16:12.383Z", "CourseClassType": null, "CourseClassDuration": null, "CourseClassAttendType": null, "CourseClassModality": { "id": 1, "name": "online" }, "CourseClassPeriod": { "id": 2, "name": "integral" }, "CourseClassTime": null, "Campus": null, "Course": { "id": 123, "name": "Curso teste" } }, { "id": 2, "active": true, "visible": true, "name": "Turma teste 2", "startsAt": null, "endsAt": null, "expiresAt": null, "durationTime": 1, "priceInCents": 185000, "gracePeriodDays": 7, "partnerSKU": null, "createdAt": "2022-02-07T23:40:53.118Z", "updatedAt": "2022-02-07T23:40:53.118Z", "CourseClassType": { "id": 2, "name": "plano" }, "CourseClassDuration": { "id": 4, "name": "ano(s)" }, "CourseClassAttendType": { "id": 2, "name": "sob demanda" }, "CourseClassModality": { "id": 1, "name": "online" }, "CourseClassPeriod": null, "CourseClassTime": null, "Campus": null, "Course": { "id": 123, "name": "Curso teste" } } ]}Alterar visibilidade do curso
Torna um curso visível ou invisível. Com `applyInCourseClasses: true`, a mudança também vale para as turmas: ao tornar o curso invisível, todas as turmas dele ficam invisíveis; ao torná-lo visível, só as turmas listadas em `CourseClassesIds` voltam a ficar visíveis.
Criar turma
Uma turma (variação de produto) tem várias combinações possíveis, com algumas regras. Sempre obrigatórios: `CourseId`, `name`, `visible`, `CourseClassTypeId`, `CourseClassModalityId` e `CourseClassAttendTypeId`. Os três últimos definem quais outros campos são necessários. **Tipo da turma** (`CourseClassTypeId`): - `1`, período fechado: informe `startsAt` e `endsAt`. - `2`, assinatura: informe a duração (`durationTime` e `CourseClassDurationId`). Para acesso vitalício (`CourseClassDurationId` 5), não envie `durationTime`. **Modalidade** (`CourseClassModalityId`): `1` remota, `2` presencial, `3` híbrida. **Forma de assistir** (`CourseClassAttendTypeId`): `1` ao vivo, `2` gravada, `3` as duas. Se houver aula presencial, informe o `CampusId` de um campus já cadastrado e o período (`CourseClassPeriodId`: `1` integral, `2` meio período). Em meio período, informe também o turno (`CourseClassTimeId`: `1` manhã, `2` tarde, `3` noite). Opcionais: - `priceInCents`: se não for enviado, vale o preço do curso. Se for, não pode passar do preço do curso nem ser menor que R$ 30,00 (3000 centavos). - `gracePeriodDays`: não pode ser menor que a carência do curso (ou do parceiro, se o curso não tiver). Se não for enviado, vale a do curso ou do parceiro. - `expiresAt`: data em que a turma fica invisível automaticamente. - `partnerSKU`: identificador da turma no seu sistema. Recomendamos enviar.