Aller au contenu

Ranking do curso

GET/api/courses/{courseId}/leaderboard

Auth
Jeton requis
Clé d’API:
courses:read
X-CommunityId
X-CommunityId Envoyez le X-CommunityId de la communauté où l’opération a lieu.
Les descriptions des endpoints viennent directement de la spécification de l’API et sont en portugais pour l’instant. L’interface autour est traduite.

Os **10 primeiros** alunos por aulas concluídas no curso (empate: quem concluiu a última aula antes), com nome e avatar, e a posição de quem pede (`me`), mesmo fora do top 10. Sai de `lesson_progress`, não dos pontos. Só entram matrículas `enrolled` e `completed` e aulas vivas; quem saiu e a pré-visualização da equipe não entram. O top 10 fica em cache de **60 segundos** por curso; `me` é calculado na hora.

**Opt-in:** o ranking vem desligado; owner e admin ligam com `leaderboardEnabled: true` no curso. Desligado, **403**. Quem lê: a equipe (owner, admin, moderador, financeiro) e o aluno matriculado; os demais, 403.

Paramètres

NomEmplacementTypeDescription
courseIdobligatoirepathstring (uuid)

En-têtes

NomTypeDescription
X-CommunityIdfacultatifstring (uuid)ID da comunidade em que a operação acontece. Obrigatório na maioria dos endpoints com escopo de comunidade.

Réponses

StatutDescription
200O ranking.
401Token ausente, inválido ou expirado; token de outra comunidade (o `X-CommunityId` ou o `communityId` do corpo não é o do token); token antigo ou de uma sessão encerrada (troca de senha, convite aceito). Nesses casos a mensagem pede para entrar de novo (`auth.signInAgain`).
403Autenticado, mas sem permissão para esta operação.
404Recurso não encontrado.
500Erro interno do servidor.

Exemple curl

curl -X GET "https://api.memberfy.net/api/courses/<courseId>/leaderboard" \
  -H "Authorization: Bearer $TOKEN" \
  -H "X-CommunityId: $COMMUNITY_ID"