Back end - santosascegas/sac_arquitetura GitHub Wiki

O backend do Santos às Cegas é uma API desenvolvida em cima do Spring Boot.

Tecnologias

Para o desenvolvimento desta API foi usada as seguintes tecnologias:

  • Amazon Corretto 17 OpenJDK
  • Maven
  • Spring Boot
  • MySQL

Como Iniciar

Para rodar a API será necessário algumas configurações, sendo elas:

  1. Será necessário a configuração de algum serviço de email. Para o desenvolvimento é recomendado o uso do MailDev.
    • Após a configuração do MailDev como descrito na pagina do GitHub deles, insira o usuario e a senha configurada no arquivo src/main/resources/application.yaml no trecho mail.
  2. Configure também, o servidor SQL que nesse caso é o MySQL no arquivo src/main/resources/application.yaml no trecho spring -> datasource.

Endpoints

Listagem de todos os pontos de acesso da API:

Endpoint Tipo Descrição Acesso
/agenda/$id GET Retorna uma determinada data baseada no $id Público
/agenda POST Insere uma nova data para um trajeto Privado
/agenda PUT Atualiza um data na agenda Privado
/agenda/$id DELETE Deleta uma data na agenda Privado
/agenda/status GET Lista todas as datas disponiveis na agenda Público
/agenda/ GET Lista todas as datas na agenda Privado
/agendamento/ GET Lista todos os agendamentos Privado
/agendamento/$id GET Retorna um determinado agendamento baseado no $id Privado
/agendamento/novo POST Cria um novo agendamento Público
/agendamento/$id PUT Atualiza um agendamento existente Privado
/agendamento/$id DELETE Deleta um agendamento Privado
/postagem/ POST Insere uma nova postagem Público
/postagem/todos GET Retorna todos os posts públicos Público
/postagem/todos_adm GET Retorna todos os posts Privado
/postagem/$id PUT Atualiza um post Privado
/postagem/$id DELETE Deleta um post Privado
/fale-conosco/ POST Envia um email para a administração Público
/files/ POST Faz o upload de um arquivo Privado
/files/$id GET Retorna um arquivo baseado no $id Privado
/api/user/save POST Registra um novo usuario Privado
/api/token/refresh GET Atualiza o token de acesso do usuário Público
/api/users GET Retorna todos os usuários Privado
/api/user/$username GET Retorna um usuário específico Privado
  • O endpoint /api/user/save está desativado, pois só existe um único usuário(o administrador).
  • Os endpoints /files/ e /files/$id são privados porque o usuário só envia arquivos para o servidor através do /postagem/, e o mesmo já faz o tratamento desses arquivos.