Uma API REST não oficial, segura e de alto desempenho para o Sistema Integrado de Gestão de Atividades Acadêmicas (SIGAA) da Universidade Federal da Paraíba (UFPB).
Esta API atua como um wrapper sobre o SIGAA, extraindo dados através de web scraping para fornecer uma interface moderna e estruturada para desenvolvedores. O objetivo é simplificar a integração e a criação de novas aplicações que utilizam informações acadêmicas da UFPB.
Warning
Este é um projeto não oficial e não possui vínculo direto com a UFPB ou a Superintendência de Tecnologia da Informação (STI). As informações são obtidas estão sujeitas a alterações conforme o site do SIGAA é atualizado.
- Autenticação: Gerenciamento de sessão seguro através de tokens JWT.
- Consulta de Perfil: Acesso a informações detalhadas do perfil do estudante.
- Dados Públicos: Acesso a informações sobre Centros e Departamentos Acadêmicos.
Note
O projeto está em desenvolvimento inicial e possui poucos recursos acessíveis no momento. Novas funcionalidades estão sendo adicionadas.
Siga os passos abaixo para executar o projeto em seu ambiente de desenvolvimento local.
1. Clone o repositório:
git clone https://github.com/pedrior/sigaa-api.git
cd sigaa-api2. Defina as configurações de desenvolvimento:
Execute o comando abaixo na raiz do projeto para iniciar o armazenamento de segredos:
dotnet user-secrets init --project src/Sigaa.Api/Note
.NET user-secrets é a forma mais segura de gerenciar dados sensíveis em desenvolvimento, evitando que suas
credenciais sejam expostas no código-fonte ou no appsettings.json.
Defina a chave usada para assinar tokens JWT:
dotnet user-secrets set --project src/Sigaa.Api/ "Jwt:Key" "<chave-segura-de-256-bits>"Tip
Você pode obter chaves seguras de 256 bits em randomkeygen.com.
Consulte o arquivo appsettings.json para mais detalhes sobre as configurações disponíveis.
3. Restaure as dependências:
dotnet restore4. Execute:
dotnet run --project --launch-profile httpA API estará disponível em http://localhost:5001.
Note
Ao acessar a raiz (/), você será redirecionado para a documentação da API.
A documentação interativa da API, incluindo endpoints e modelos de requisição e resposta, está disponível em /docs.
Contribuições são muito bem-vindas! Abra uma issue para descrever a sua ideia ou relatar um problema.
Este projeto é distribuído sob a licença MIT.