Uso completo de um aluno (matrículas, aulas assistidas, certificados, login)
A visão que uma auditoria de estorno precisa: matriculou? assistiu? concluiu? logou depois da compra? `courses` e `certificates` são ALL-TIME (toda a história do aluno); `lessons` e `library` filtram pela janela `?days=7|30|90` (default 30 — mesma janela do painel interno de engajamento). `access.sessionsInWindow` conta sessões abertas DENTRO da janela; `lastLoginAt`/`lastActiveAt` são sempre all-time (a pergunta 'ele já logou' não pode depender do período escolhido). `access.lastIp` é o IP da sessão mais recente — um carimbo, não 'o' IP do aluno. 404 se o usuário não existe.
A visão que uma auditoria de estorno precisa: matriculou? assistiu? concluiu? logou depois da compra? courses e certificates são ALL-TIME (toda a história do aluno); lessons e library filtram pela janela ?days=7|30|90 (default 30 — mesma janela do painel interno de engajamento). access.sessionsInWindow conta sessões abertas DENTRO da janela; lastLoginAt/lastActiveAt são sempre all-time (a pergunta 'ele já logou' não pode depender do período escolhido). access.lastIp é o IP da sessão mais recente — um carimbo, não 'o' IP do aluno. 404 se o usuário não existe.
Autorização
apiKey Chave de API (gos_…)
Em: header
Parâmetros de caminho
1 <= lengthParâmetros de consulta
-9007199254740991 <= value <= 9007199254740991Corpo da resposta
application/json
curl -X GET "https://example.com/platform/users/string"{ "id": "string", "name": "string", "email": "string", "createdAt": "string", "windowDays": -9007199254740991, "access": { "lastLoginAt": "string", "lastActiveAt": "string", "sessionsInWindow": -9007199254740991, "lastIp": "string" }, "courses": [ { "courseId": "string", "courseTitle": "string", "status": "active", "progressPct": -9007199254740991, "startedAt": "string", "completedAt": "string" } ], "lessons": [ { "lessonId": "string", "title": "string", "courseTitle": "string", "watchSec": -9007199254740991, "watchPct": -9007199254740991, "completed": true, "lastDate": "string" } ], "certificates": [ { "code": "string", "courseId": "string", "courseTitle": "string", "issuedAt": "string" } ], "library": [ { "docId": "string", "title": "string", "readSec": -9007199254740991, "read": true, "lastDate": "string" } ]}Listar alunos com resumo de uso
Alunos = usuários com ao menos uma matrícula (`enrollment`) em algum curso. Dado GLOBAL da rede — não filtra por workspace. Exclusivo da conta Accelera: a chave precisa do escopo `platform.read` E ser o workspace da conta Accelera; qualquer outra chave com o escopo leva 403 `forbidden_platform`. `lastLoginAt`/`lastActiveAt` vêm da sessão (Better Auth): login mais recente e última vez visto; `null` = nunca logou. `enrolledCourses`/`completedCourses`/`certificates` são contadores ALL-TIME (não filtram por período). `q` busca por nome ou e-mail (contém, sem diferenciar maiúsculas). `activeSince`/`activeBefore` (ISO-8601) recortam por `lastActiveAt`: `activeSince` é `>=`, `activeBefore` é `<`; aluno que nunca logou não casa com nenhum dos dois. Paginação por cursor keyset (`createdAt`, `id`); `limit` até 500.
Criar tarefa
Próxima página