Ajuda da API do SiSU Simulator

Confira como funciona a API do SiSU Simulator

Introdução

A API do SiSU Simulator facilita os desenvolvedores que fazem programas relacionados ao ENEM e ao SiSU, a disponibilizar, de forma fácil e rápida, todos os dados da última edição do Sistema de Seleção Unificada - SiSU, como:

Noções básicas da API

Em cada uma das situações de pesquisa, a API recebe dados pré-determinados, nas convenções que serão descritas a seguir.

Todas as requisições são pelo método GET.

Se o recurso não for encontrado, o servidor disparará um erro 404 para o requerente.

Em caso de houver um erro interno do servidor, o servidor disparará um erro 500 ao cliente, como manda a convenção do protocolo HTTP.

Os dados serão retornados na forma de notação JSON (JavaScript Object Interface), notação reconhecida internacionalmente para transferência de dados oriundos de diversas fontes, como um webservice (no nosso caso).

Fluxo de busca

O fluxo de busca do SiSU Simulator funciona da seguinte forma:

  1. O usuário busca a slug da universidade, curso ou cidade desejada;
  2. De posse da slug desejada, são feitas as seguintes consultas: 2.1. Cursos pela slug do curso. Ex.: A slug ciencia-da-computacao retorna os cursos de Ciência da Computação. Cada curso nessa lista possui um número identificador (id); 2.2. Campus pela slug da cidade, retornando todos os campus de uma cidade; 2.3. Campus pela slug da universidade, retornando todos os campus de uma universidade; 2.4. As buscas dos itens 2.2 e 2.3 retornam uma lista de campus, que contêm diversas informações, como a slug do respectivo campus.
  3. Com a slug do campus desejado (obtidos nos itens 2.2 ou 2.3), a pessoa buscará os cursos daquele campus, onde cada curso terá um id (assim como na busca especificada no item 2.1);
  4. Com a id do curso desejado, o usuário consultará os dados desse curso.

Documentação das URLs de busca

A seguir, será especificado detalhadamente os parâmetros de entrada e saída de cada URL de busca da API.

Busca de cidades por nome

/api/searchcity/<nome> /api/searchcity.php?param=nome&city=<nome>

Onde é o nome da cidade a ser pesquisada.

Retorna um array JSON, com as lista de todas as cidades que começam com . Neste array, cada item é um objeto representando uma cidade, com as seguintes proprieidades:

Se o nome não for fornecido, o comando retorna uma lista de TODAS as cidades cadastradas no sistema, seguindo o mesmo formato.

A busca é insensitiva a letras maíusculas, mínusculas e acentos. Assim, buscas com SAO, são, SÃO, sAo retornam o mesmo resultado.

Busca de cursos pelo nome

/api/searchcursos/<nome> /api/searchcity.php?curso=<nome>

Retorna uma lista de nomes de cursos que correspondem com o parâmetro fornecido.

Esta lista é um array JSON, onde cada item é um objeto com os seguintes itens:

Se o nome não for fornecido, o comando retorna uma lista de TODOS os cursos cadastrados no sistema, seguindo o mesmo formato.

A busca é insensitiva a letras maíusculas, mínusculas e acentos.

Busca de universidades pelo nome

/api/searchuniversidades/<nome> /api/searchfaculdades.php?nome=<nome>

Onde é o nome (ou a sigla) da universidade que deseja pesquisar.

Retorna uma lista de universidades cujo nome correspondem com o nome a ser pesquisado. É retornado como um array JSON, onde cada item corresponde a um objeto, com as seguintes proprieidades:

Assim como nas buscas anteriores, se não for fornecido nenhum nome a ser pesquisado, é retornado uma lista com todas as faculdades. A busca é insensitiva a acentos, maiúsculas e minúsculas.

Busca de campus localizados em uma cidade

/api/cidade/<uf>/<slugCidade> /api/searchcampus.php?type=cidade&estado=<uf>&cidade<slugCidade>

Onde é a sigla do estado e é a slug da cidade a ser pesquisada.

Retorna uma lista de todos os campus sediados em uma cidade. A lista é um array JSON, onde cada item possui as seguintes proprieidades:

Busca de cursos pela slug do curso

/api/curso/<slugCurso> /api/searchcursosslug.php?slugCurso=<slugCurso>

Pesquisa todos os cursos que corresponderem a uma slug. Damesma forma que os anteriores, retorna uma array de cursos em formato JSON. Onde cada item do array é um objeto que contêm as seguintes proprieidades:

Busca de campus de uma universidade

/api/universidade/<slugUni> /api/searchcampus.php?type=universidade&universidade=<slugUni>

Retorna todos os campus de uma universidade, que é identificada pela sua slug. Novamente, essa lista é retornada na notação de array JSON, onde cada item desse array tem as seguintes proprieidades:

Busca de cursos por campus

/api/universidade/<slugUni>/<slugCampus> /api/searchcursoscampus.php?universidade=<slugUni>&campus=<slugCampus>

Onde é o slug da universidade a ser pesquisada e é a slug do respectivo campus a ser pesquisado

Ex.: /api/universidade/uems/unidade-universitaria-de-dourados-sede

Novamente, é retornado um array na notação JSON, onde cada item representa um curso ofertado nesse campus. Cada item possui as seguintes proprieidades:

Como um campus fica na mesma cidade, as proprieidades cidade, uf, campus, slugCampus, universidade e slugUni devem ser as mesmas em todos os itens retornados de uma pesquisa.

Busca de um único curso

/api/curso/<idCurso> /api/curso.php?parameter=id&id=<idCurso>

Retorna os dados de um curso identificado pelo . Os dados são fornecidos por meio de notação de array JSON, com um único objeto, com as seguintes proprieidades:

Atenção: Recomenda-se ler as perguntas frequentes caso você não entenda esses termos técnicos que foram apresentados.

Nota: Na API, os cursos não são agrupados por turno, como ocorre no nosso site.

Considerações Finais

A presente API dá ao interessado várias opções de busca ao curso desejado, de diversas maneiras diferentes.

Termos e custos

Até a edição 2018.1 do SiSU, a API permanecerá gratuita a todos os usuários interessados.

Na próxima atualização de notas, alterações na estrutura e na precificação da API podem ocorrer. Fique ligado nas nossas redes sociais para saber dos detalhes.

Vale lembrar, que quando o programador usa a nossa API, estará se submetendo as regras de nossos Termos de Uso, como um usuário final. Como consta em nossos Termos, se o usuário desejar verificar a exatidão dos dados, através da consulta dos registros originais vindos do Ministério da Educação, deve entrar em contato conosco.

Pedimos, que citem nosso site como fonte, e se puder, doem para nós para manter esse site e essa API disponível para todos.

Entre em contato

Luís Aurélio Casoni

Site pessoal: aureliocasoni.xyz

Entre em contato com nós, preenchendo nosso formulário de contato para saber de outros meios para entrar em contato com o desenvolvedor.