Skip to content

FACTOSolution/ufpi-mobile-cm

Repository files navigation

UFPI Mobile support API

A API web de suporte do UFPI Mobile permite a busca de informações sobre o cardápio do restaurante universitário, os eventos do calendário acadêmico e as últimas notícias no website da UFPI.

URL base

Todas as URLs mencionadas nesse documento usam a seguinte base:

https://ufpi-mobile-cm.herokuapp.com

Autenticação

As requisições HTTP para adicionar informações no servidor são protegidas por uma autenticação básica. As informações sobre o cardápio e o calendário não são consideradas únicas para a instituição e, por isso, elas devem estar associadas a um usuário da API. De forma resumida, você vai precisar de um e-mail e senha para cadastrar novos cardápios ou calendários.

Usuários (users)

Para criar um novo usuário, envie uma requisição com o método POST para o endpoint /api/users. Este endpoint aguarda um objeto JSON, que representa o novo usuário, no corpo da mensagem. Tal objeto tem três propriedades do tipo string, a propriedade email, a propriedade password e a propriedade kind, como apresentado no exemplo abaixo:

{
  "email": "exemplo@email.com",
  "password": "exemplo senha",
  "kind": "CAL"
}

A propriedade kind só pode assumir 3 valores, CAL,RU,EVEN.

Com o envio da requisição, a API confirma a adição do novo usuário com a identificação (id) desse usuário por meio de outro objeto JSON, por exemplo:

{
  "id": "aaa111bbb222ccc333ddd444",
  "email": "exemplo@email.com",
  "kind": "CAL"
}

Essa id será utilizada para pesquisar os cardápios e os calendários postados por esse usuário.

Recursos

A seguir, são apresentados os endpoints para cada uma das informações armazenadas pela API.

Cardápios (menus)

Um modelo do JSON que representa o cardápio semanal pode ser visualizado em cardapio.json.

URL Método Autenticação Descrição
/api/menus POST Sim Adiciona um novo cardápio para o usuário autenticado
/api/menus/{id} GET Não Retorna uma coleção de cardápios associados ao usuário identificado pela id
/api/menus/{id}/latest GET Não Retorna o cardápio mais recente do usuário id

Calendários (calendars)

Um modelo do JSON que representa o calendário acadêmico pode ser visualizado em calendario.json.

URL Método Autenticação Descrição
/api/calendars POST Sim Adiciona um novo calendário para o usuário autenticado
/api/calendars/{id} GET Não Retorna uma coleção de calendários associados ao usuário identificado pela id
/api/calendars/{id}/latest GET Não Retorna o calendário mais recente do usuário id

Notícias (articles)

Um modelo do JSON que representa uma notícia pode ser visualizado em noticia.json.

URL Método Autenticação Descrição
/api/articles GET Não Retorna uma lista de notícias obtidas no website da UFPI. Os resultados dessa rota não apresentam as propriedades text, links e images
/api/articles/{code} GET Não Retorna todos as informações de uma notícia específica identificada pelo valor numérico code
/api/articles/update GET Não Requisita que novas notícias sejam adicionadas ao servidor

About

No description, website, or topics provided.

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Contributors 2

  •  
  •