Skip to content

Referência da API ​

Esta página descreve a autenticação e documentação de endpoints para a Gami API.


Documentação Interativa ​

Documentação Swagger disponível em:

👉 http://localhost:3000/documentation


Autenticação ​

Todos os pedidos API (exceto /health e /documentation) requerem headers de autenticação:

HeaderDescrição
x-moodle-api-keyChave API da Instância Moodle
x-moodle-api-secretSegredo API da Instância Moodle

Estas credenciais autenticam a instância Moodle que faz o pedido, garantindo segurança multi-tenancy.

Exemplo de Pedido ​

bash
curl -X GET "http://localhost:3000/api/stats/user/123/course/456" \
  -H "x-moodle-api-key: your-api-key" \
  -H "x-moodle-api-secret: your-api-secret"

Health Check ​

GET /health

Retorna o estado de saúde da API. Não requer autenticação.


Endpoints Principais ​

Estatísticas do Utilizador ​

GET /api/stats/user/{userId}/course/{courseId}

Retorna estatísticas do utilizador para um curso específico, incluindo:

  • XP Total
  • Progresso de crachás
  • Conclusões de tópicos
  • Estatísticas de engagement

Rastreio de Conversas ​

POST /api/conversations

Regista uma conversa e processa recompensas de gamificação:

  • Atribuição de XP
  • Atualizações de progresso de tópicos
  • Verificações de crachás

Gestão de Crachás ​

GET /api/badges/user/{userId}/course/{courseId}

Retorna todos os crachás e o seu estado para um utilizador num curso.


Próximos Passos ​

Released under the MIT License.