Skip to content

Brunofp99/juntoSeguros

Repository files navigation

Documentação

Essa documentação tem como objetivo orientar e demonstrar como a API funciona

Ambiente virtual

Partindo do pressuposto de que você ja tem o Python3.7+ instalado na sua maquina (caso não tenha click no link: https://www.python.org/downloads/) e o repositorio clonado, selecione a pasta clonada e pelo seu editor de texto ou IDE inicie o ambiente virtual que ja vem inatalado com o Python:

$ python -m venv ambvir

Em seguida ative o seu ambinete virtual:

$ ./bin/Scripts/Activate.bat

Caso esteja usando p PowerShell use:

$ ./bin/Scripts/Activate.ps1

Se o terminal devolver um erro:

O termo './bin/Scripts/Activate.bat' não é reconhecido como nome de cmdlet, função, arquivo de script ou programa operável.

Continue sem executar o comando, este erro é aplicado quando o ambiente já esta ativo.

Caso seu PowerShell esteja com os scripts desabilitados, consulte a documentação para saber como proceder

Baixando dependências

Na raiz do projeto (com o ambiente virtual ativo) abra o terminal e digite o comando para atualizar o "pip":

$ python -m pip install --upgrade pip

Em seguida instale todas as dependências do projeto que se encontram na pasta requirements.txt:

$ pip install -r requirements.txt

Logo após o download das dependências use o comando:

$ python app.py

Se tudo correu de forma correta a aplicação estará rodando:

Running on http://127.0.0.1:5000/

API

Para testar os métodos POST e PUT, use o POSTMAN (link para download: https://www.postman.com/downloads/).

A API aceita e retorna apenas o formato JSON

Adicionar usuários

POST http://127.0.0.1:5000/users/register

Enviar JSON:

{
    "login": "[email protected]",
    "password": "eletromagnetismo",
    "city": "São paulo"
}

Sucesso:

{
    "message": "User cread successfully"
}

Usuario já existe:

{
    "massage": "The login [email protected] alredy exists."
}

Geração de token

POST http://127.0.0.1:5000/users/token

Enviar JSON

{
    "login": "[email protected]",
    "password": "eletromagnetismo"
}

Sucesso:

{
    "access_token": "eyJ0eXAiOiJKV1QiLCJhbGciOiJIUzI1NiJ9.eyJpYXQiOjE2MDA1NDE2MDEsIm5iZiI6MTYwMDU0MTYwMSwianRpIjoiY2IzNGJmNjQtNmM5ZS00MTg4LWJlMjUtYzgwNjhjNmI5NTlmIiwiZXhwIjoxNjAwNTQyNTAxLCJpZGVudGl0eSI6MSwiZnJlc2giOmZhbHNlLCJ0eXBlIjoiYWNjZXNzIn0.g5lNkaKN5KQ_4-hPZRb9peWlENUygZt3Z-rKLyWF94g"
}

Erro:

{
    "message": "The user name or password is incorrect"
}

Listagem de usuarios

GET http://127.0.0.1:5000/users

Retorna um JSON com todos os registros de usuarios

{
    "users": [
        {
            "id": 1,
            "login": "[email protected]",
            "city": "Curitiba"
        },
        {
            "id": 2,
            "login": "[email protected]",
            "city": "Curitiba"
        },
        {
            "id": 3
            "login": "[email protected]",
            "city": "São paulo"
        }
     ]
}

Parâmetro(opcionais)

Filtragem por cidade:

GET http://127.0.0.1:5000/users?city=curitiba

Filtragem por Quantidade:

GET http://127.0.0.1:5000/users?limit=100&offset=0

Filtragem por cidade e quantidade:

GET http://127.0.0.1:5000/users?city=curitiba&limit=100&offset=0

Retorna um JSON com todos os usuários filtrados pelos parâmetros

Pesquisar por "id" usuário

Para executar esse método precisaremos da token que foi gerada, após copiar a token entre na aba do POSTMAN "Headers" na coluna de "KEY" adicione a palavra "Authorization" e na coluna "VALUE" adicione "Bearer" seguido pela token

Exemplo:

KEY VALUE
Authorization Bearer eyJ0eXAiOiJKV1Qi...

GET http://127.0.0.1:5000/users/{:id}

Retorna um JSON com "id", "login" e "city":

{
    "id": 3,
    "login": "[email protected]",
    "city": "São paulo"
}

Alterar dados

Para executar esse método precisaremos da token que foi gerada, após copiar a token entre na aba do POSTMAN "Headers" na coluna de "KEY" adicione a palavra "Authorization" e na coluna "VALUE" adicione "Bearer" seguido pela token

Exemplo:

KEY VALUE
Authorization Bearer eyJ0eXAiOiJKV1Qi...

Os dados que podem ser alterados são: "login", "password", "city"

PUT http://127.0.0.1:5000/users/alter/{:id}

Enviar JSON (Todos os index são opcionais):

{
    "login": "[email protected]",
    "password": "correntealternada"
}

Retorna um JSON com as novas informações:

Sucesso:

{
    "id": 3
    "login": "[email protected]",
    "city": "São paulo"
}

Erro:

{
    "message": "this user id :id dont have a register"
}

Deletar Usuário

Para executar esse método precisaremos da token que foi gerada, após copiar a token entre na aba do POSTMAN "Headers" na coluna de "KEY" adicione a palavra "Authorization" e na coluna "VALUE" adicione "Bearer" seguido pela token

Exemplo:

KEY VALUE
Authorization Bearer eyJ0eXAiOiJKV1Qi...

DELETE http://127.0.0.1:5000/users/{id}

Retorna um JSON com uma menssagem:

Sucesso:

{
    "message": "user deleted"
}

Erro id não existe:

{
    "message": "The user :id does not exist"
}

Erro desconhecido:

{
    "message": "An internal error ocurred trying to delete user"
}

Seguranças

  • Usuários registrados tem obrigatoriamente que gerar token para executar ação de POST, PUT, DELETE.
  • As senhas são salvas criptografadas no bancos, ou seja, apenas o usuário tem acesso a sua versão original.

About

API REST

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages