Escopos
Chaves criadas antes dos escopos não têm nenhum dos dois. Marque-os na chave, no painel. Veja
Autenticação.
Modelo
Curso
Um curso pertence a um produto, e cada produto tem no máximo um curso. O curso tem módulos, e cada módulo tem aulas, sempre em ordem deposition. Rascunhos aparecem, com
status: "DRAFT", porque a integração é da própria loja.
A aula traz a estrutura: título, tipo (VIDEO, TEXT ou QUIZ), status, regra de liberação e
duração do vídeo. O conteúdo pago nunca sai pela API: nada de vídeo, texto, quiz, materiais ou
transcrição.
Referência: Cursos → Listar cursos e Cursos → Consultar curso.
Turma
Todo curso tem uma turma padrão (isDefault: true) e pode ter outras. O módulo diz quais
turmas o veem em visibleCohortIds: null significa todas as turmas.
Referência: Turmas → Listar turmas. As turmas também vêm dentro de Consultar curso.
Aluno
O aluno é a pessoa com acesso à área de membros da loja. Um aluno sem matrícula continua aparecendo, comenrollments vazio. A conta de pré-visualização que o seller usa para ver a área
nunca aparece.
Referência: Alunos → Listar alunos e Alunos → Consultar aluno.
Matrícula
A matrícula liga o aluno a um curso e a uma turma. Ela tem dois campos que respondem perguntas diferentes:statusé o estado gravado:ACTIVEouREVOKED(comrevokeReason).hasAccessdiz se o aluno entra agora: matrículaACTIVEeexpiresAtnulo ou futuro. Uma matrículaACTIVEcom acesso vencido vem comhasAccess: false.
guaranteeEndsAt é o fim da trava de garantia: até essa data, o conteúdo marcado para depois da
garantia fica travado para o aluno.
Progresso
O progresso é calculado por matrícula, na hora da leitura.totalLessonsconta só as aulas publicadas, de módulos publicados, que a turma da matrícula vê. Aula em rascunho ou de módulo oculto para a turma fica fora da conta e volta quando fica visível de novo.percentécompletedLessons / totalLessons × 100, arredondado, e0quando não há aulas. É o mesmo percentual que o aluno vê na área de membros.completedAté preenchido quando todas as aulas contadas estão concluídas. Uma aula nova publicada tira o 100%.lessonslista cada aula contada, em ordem. A aula que o aluno não abriu vemNOT_STARTED.- Matrícula revogada ou vencida mantém o progresso gravado, e
certificatecontinua preenchido quando o certificado foi emitido.
Sincronizando alunos e progresso
As listas usampage e perPage (de 1 a 100, padrão 50) e respondem com hasMore. Pagine até
hasMore ser false. A ordem é estável (createdAt decrescente e, no empate, id), então a
paginação não pula alunos.
Node.js
cohortId. Os filtros de matrícula (courseId,
cohortId e enrollmentStatus) escolhem os alunos, mas cada aluno continua com todas as
matrículas em enrollments.

