API desenvolvida em linguagem Python para interação web com o portal online da instituição federal Centro Federal de Educação Tecnológica Celso Suckow da Fonseca (CEFET/RJ).
Application Programming Interface (API) é um conjunto de padrões de programação que permite acesso a um serviço em expecífico. Em resumo, é uma camada intermediária que promove a interação de uma aplicação com o serviço desejado, neste caso o portal do aluno CEFET/RJ.
Este projeto tem por objetivo fomentar o desenvolvimento de aplicações que visam facilitar o acesso a informações referentes ao portal online de docentes e dicentes da instituição.
Este projeto ainda está em desenvolvimento, novas funcionalidades estão sendo adicionadas constantemente. Abaixo segue o andamento das implementações:
-
Autenticação
✔️ autenticacao [Atualizada 🚩 ]
-
Relatórios
✔️ listaRelatorios
✔️ geraRelatorio
-
Perfil
⚠️ perfilDados [BETA]✔️ perfilDadosGerais
✔️ perfilFoto
Atualmente a API está hospedada no site Heroku e pode ser acessada através da URL: https://api-portal-cefet.herokuapp.com/.
-
Autenticação
-
autenticacao (usuario , senha) [POST]
Esta função é responsável por autenticar uma nova sessão no portal. Deve seguir o padrão abaixo para sua execução:
URL:
https://api-portal-cefet.herokuapp.com/autenticacao
Json:
{ "usuario" : "SUA_MATRICULA_AQUI", "senha" : "SUA_SENHA_AQUI" }
Se o login occorer corretamente o retorno será um json contendo um Cookie e uma Matrícula interna do site (Atenção: a matrícula retornada não está ligada a matrícula acadêmica, se trata de um novo dado usado internamente pelo portal).
Exemplo de json de retorno:
{ "code": 200, "data":{ "cookie":"B60E98A57D71D7BBEB80457A125436478", "matricula":"123456" } }
-
-
Relatórios
-
listaRelatorios (cookie , matricula)
Esta função é responsável por listar os relatórios disponíveis para o seu perfil. Deve seguir o padrão abaixo para sua execução:
https://api-portal-cefet.herokuapp.com/relatorios?cookie=COOKIE_AUTENTICADO_AQUI&matricula=MATRICULA_INTERNA_AQUI
Se o cookie e a matrícula forem válidos o retorno será um json contendo o código 200 e uma lista de relatórios contendo ID, Nome e Link.
Exemplo de json de retorno:
{ "codigo": 200, "data":[ { "id":0, "link":"atestadoTrancamento.action?matricula=123456", "nome":"Atestado Trancamento" }, { "id":1, "link":"boletimEscolar.action?matricula=123456", "nome":"Boletim Escolar" } ] }
-
geraRelatorio (cookie , link)
Esta função é responsável por gerar um relatório expecificado pelo link (item passado pela função listaRelatorios). Deve seguir o padrão abaixo para sua execução:
https://api-portal-cefet.herokuapp.com/relatorios/pdf?cookie=COOKIE_AUTENTICADO_AQUI&link=LINK_RELATORIO_AQUI
Se o cookie e o link forem válidos o retorno será um arquivo relatorio.pdf.
-
-
Perfil
-
perfilDados (cookie , matricula)
Esta função é responsável por listar os dados principais (Nome, Curso, Matrícula Acadêmica e Período). Deve seguir o padrão abaixo para sua execução:
https://api-portal-cefet.herokuapp.com/perfil?cookie=COOKIE_AUTENTICADO_AQUI&matricula=MATRICULA_INTERNA_AQUI
Se o cookie e a matrícula forem válidos o retorno será um json contendo o código 200 e uma lista de dados.
Exemplo de json de retorno:
{ "codigo": 200, "data":{ "Curso":"PET - CURSO DE ENGENHARIA DE COMPUTACAO", "Matricula":"1234567GCOM", "Periodo Atual":"5", "Nome":"Luke Skywalker" } }
-
perfilDadosGerais (cookie , matricula) [BETA]
Esta função é responsável por listar os dados cadastrados, tais como endereço, número de telefone, E-mail e etc. Deve seguir o padrão abaixo para sua execução:
https://api-portal-cefet.herokuapp.com/perfil/geral?cookie=COOKIE_AUTENTICADO_AQUI&matricula=MATRICULA_INTERNA_AQUI
Se o cookie e a matrícula forem válidos o retorno será um json contendo o código 200 e uma lista de dados divididos em quadro tipos: academico, informacoes, endereco e documentos.
Exemplo de json de retorno:
{ "codigo": 200, "data": { "academico":{ "Curso":"PET - CURSO DE ENGENHARIA DE COMPUTACAO", "Matricula":"1234567GCOM", "Periodo Atual":"5" }, "endereco":{ "Bairro":"CENTRO", "CEP":"00000-000", "Cidade":"Tatooine" }, "informacoes":{ "Nascimento":"18/11/1977", "Nome":"Luke Skywalker", "Nome da Mae":"Padmé Amidala", "Nome do Pai":"Anakin Skywalker" } } }
-
perfilFoto (cookie)
Esta função é responsável por obter a foto de perfil cadastrada no portal. Deve seguir o padrão abaixo para sua execução:
https://api-portal-cefet.herokuapp.com/perfil/foto?cookie=COOKIE_AUTENTICADO_AQUI
Se o cookie for válido o retorno será um arquivo imagemPerfil.jpeg.
-