Skip to content

Brief description of the GraphQL API used by Lisbon's Bike-Sharing System, GIRA

License

Notifications You must be signed in to change notification settings

joaodcp/emel-gira-api

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

11 Commits
 
 
 
 

Repository files navigation

Logótipo GIRA
GIRA API Documentation

API privada da GIRA, usada pela aplicação.

A API aqui descrita é a utilizada pela aplicação oficial da GIRA, pelo que é necessário iniciar sessão junto do serviço de autenticação da EMEL.
Os tokens expiram a cada 2 minutos e devem ser atualizados com refresh.

Índice de Conteúdos

Clique para expandir

Autenticação

Auth

Autenticação através do sistema de login da EMEL

Os tokens obtidos têm um tempo de vida de 2 minutos.

Pedido

{
    "Provider": "EmailPassword",
    "CredentialsEmailPassword": {
        "Email": "", // substituir pelos seus dados de acesso
        "Password": "" // substituir pelos seus dados de acesso
    }
}

Resposta

{
    "error": {
        "code": 0,
        "message": "Success"
    },
    "data": {
        "accessToken": "", // token JWT a usar nos pedidos para a API GIRA, expira 2 minutos após gerado
        "refreshToken": "", // guardar token para atualizar o token expirado
        "expiration": int // timestamp em ticks (referente ao accessToken)
    } 
}

JWT

Pode descodificar o token JWT "accessToken" e saber mais sobre a norma JWT em JWT.io

Tick

Tick é uma unidade de tempo comumente utilizada em serviços baseados em .NET
1 tick = 10000 ms e a contagem inicia-se em 0001-01-01T00:00:00.0000000 UTC
Saiba mais sobre a unidade em https://learn.microsoft.com/en-us/dotnet/api/system.datetime.ticks
Em https://tickstodatetime.azurewebsites.net é possível a conversão instantânea para um formato human-readable.

Refresh e Revoke

Pode atualizar ou revogar o seu token.

Pedido

{
    "Token": "" //substituir pelo token a gerir
}

Perfil

Pode consultar os seus detalhes.

Pedido

GET https://api-auth.emel.pt/user

Modificar Perfil

Pode alterar os seus detalhes.

Pedido

Deve incluir no corpo um objeto JSON formatado de acordo com a resposta obtida em Perfil

PUT https://api-auth.emel.pt/user

API GIRA

GraphQL

A API GIRA faz uso a linguagem de consulta GraphQL.

Obtenha o schema através de introspeção.

Pedido

Deverá incluir um cabeçalho de autenticação do tipo Bearer, que contenha o valor da chave "accessToken" do JSON obtido em Autenticação:

Authorization: Bearer { accessToken }

About

Brief description of the GraphQL API used by Lisbon's Bike-Sharing System, GIRA

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published