/flask-rest-api-jwt

API REST com a funcionalidade de Produtos Favoritos dos Clientes escrito em Python com Flask, SQLAlchemy e JWT utilizando banco de dados MySQL

Primary LanguagePythonMIT LicenseMIT

Descrição

API REST com a funcionalidade de Produtos Favoritos dos Clientes escrito em Python com Flask, SQLAlchemy e JWT utilizando banco de dados MySQL.

Versão utilizado do Python v3.9.0

Requisitos

  • Criar, Atualizar, Visualizar e Remover Clientes
    • O cadastro dos clientes deve conter apenas seu nome e endereço de e-mail
    • Um cliente não pode se registrar duas vezes com o mesmo endereço de e-mail
  • Cada cliente só deverá ter uma lista de produtos favoritos
  • Em uma lista de produtos favoritos podem existir uma quantidade ilimitada de produtos
  • O acesso à api deve ser aberto ao mundo, porém deve possuir autenticação e autorização

Estrutura do projeto

Estrutura projeto

Endpoints

  • Registra usuário: POST /api/users/register

Registra usuario


  • Login: POST /api/users/login

Login


  • Cria cliente: POST /api/clients/

Cria cliente


  • Todos clientes: GET /api/clients/

Todos clientes


  • Cliente por Id: GET /api/clients/{id}

Cliente por id


  • Atualiza cliente: PUT /api/clients/{id}

Atualiza cliente


  • Remove cliente: DELETE /api/clients/{id}

Remove cliente


  • Cria produtos favorito: POST /api/clients/{client_id}/favorite/products

Cria produtos favoritos


  • Todos produtos favoritos: GET /api/clients/{client_id}/favorite/products

Todos produtos favoritos


  • Produtos favorito por Id: GET /api/clients/{client_id}/favorite/products/{product_id}

Produtos favorito por id