Skip to main content

API de Exercícios

A API de Exercícios do FitLocus fornece endpoints para criação, gerenciamento e execução de exercícios físicos na plataforma.

Visão Geral

A API de Exercícios permite:

  • Criação e gerenciamento de exercícios personalizados
  • Categorização de exercícios por grupo muscular
  • Upload e gerenciamento de imagens demonstrativas
  • Busca e filtragem de exercícios
  • Registro de execuções e progresso

Categorias de Exercícios

O FitLocus categoriza os exercícios por grupo muscular principal:

Modelo de Dados

ExerciseDTO

O objeto ExerciseDTO é utilizado para transferência de dados de exercícios entre o cliente e o servidor:

ExerciseFilterRequest

Objeto utilizado para filtrar exercícios na busca:

ExerciseExecutionDTO

Objeto que representa a execução de um exercício:

Endpoints Principais

Detalhes de Implementação

Autenticação

Todos os endpoints, exceto GET /exercises e GET /exercises/{id} para exercícios públicos, requerem autenticação via token JWT no cabeçalho Authorization:
Para mais detalhes sobre autenticação, consulte a documentação de autenticação.

Controle de Acesso

O acesso aos endpoints é controlado com base no tipo de usuário e propriedade do recurso:
  • Exercícios públicos podem ser visualizados por qualquer usuário
  • Exercícios privados só podem ser visualizados por seu criador
  • Apenas o criador de um exercício pode atualizá-lo ou removê-lo
  • Personal trainers podem criar exercícios públicos ou privados
  • Alunos só podem criar exercícios privados

Upload de Imagens

A criação e atualização de exercícios suporta upload de imagens demonstrativas através de requisições multipart/form-data:

Paginação e Ordenação

Endpoints que retornam listas de exercícios suportam paginação e ordenação através dos seguintes parâmetros:
  • page: Número da página (começando em 0)
  • size: Tamanho da página (número de itens por página)
  • sort: Campo e direção de ordenação (ex: name,asc)

Exemplos de Uso

Listar Exercícios

Obter Detalhes de um Exercício

Criar um Novo Exercício

Registrar Execução de Exercício

Códigos de Status

Considerações de Segurança

  1. Validação de Dados: Todos os dados de entrada são validados para prevenir injeção de dados maliciosos.
  2. Controle de Acesso: Verificações rigorosas garantem que um usuário só possa acessar e modificar seus próprios exercícios ou exercícios públicos.
  3. Validação de Arquivos: Uploads de imagem são validados quanto ao tipo, tamanho e conteúdo para prevenir ataques.
  4. Sanitização de Dados: Todos os dados de entrada são sanitizados antes de serem armazenados ou exibidos.
  5. HTTPS: Todas as comunicações com a API devem ser realizadas através de HTTPS.

Implementação no Frontend

Componente de Listagem de Exercícios

Próximos Passos

Para mais detalhes sobre endpoints específicos, consulte: