• Post category:StudyBullet-7
  • Reading time:7 mins read


Learn to Develop Real World Secure API’s using Python, JWT, FAST API, SQLAlchemy, Databases, validation & error handling

What you will learn

You will learn the basics of Python

You will learn about FAST API and develop real world REST APIs

You will learn about SQLAlchemy and how to use it for interaction with database

You will learn to implement JWT(Json Web Token) to create secure API endpoint

You will learn how to do validation and handle errors and exceptions

You will learn how to use different database like MySQL, PostgreSQl and SQL Lite with FAST API

Description

In this course you will learn about Python, Fast API, SQLAlchemy, JWT, Heroku and using different databases like SQL Lite, MySQL, PostgresQL with SQLAlchemy.

This course has no pre-requisite because along the way we will also learn the basics of Python which is needed for this course.

We will build a complete real world application use case by developing the all the API’s using FAST APIΒ python framework, along the way we will learn the details of Fast API framework and also compare it with other API development Frameworks.

We will learn to handle errors and exceptions and how to perform validation.

We learn then learn the basics of Authentication, Authorization and concept of JWT and then go ahead to secure our API’s with JWT(Json Web Token) and OAuth2.


Get Instant Notification of New Courses on our Telegram channel.


We will build multiple database entities and learn to develop relationships between different models using multiple databases like SQL Lite, MySQL, PostgreSQL and SQLAlchemy library.

We will also learn how to setup the database configuration and also how to use the database explorer to visualize our data inside the database.

Next we will move on to defining different schemas with the help of Pydantic library. We will see how to convert data between models and schemas.

We will learn how to secure an API endpoint behind JWT authentication.

We will learn to use OpenAPI/Swagger docs with FastAPI to test our application.

English
language

Content

Introduction & Setup

Course Introduction
Dowloading Python and Pycharm
Installing and setting up PyCharm editor
First Python Program in Pycharm
Running Python code from command prompt
What is FastAPI
Create Python Project in Pycharm
Installing Python Libraries for our project development

Working with Database, Model, Relationship

Creating Database Configuration
Create User Model
Create Post Model
Establishing relation ship between User and Post model

Working with Schemas & Database Session and Tables

Logic to verify password
Create Service Layer Create DB method
Installing Database Explorer Tool
Setting up the main app
Create Schema Classes for User
Create Schema Classes for Post
Create Database Session
Database Tables

User Registration & JWT Implementation

Create API endpoint for User Registration
Create db query to find if user with email exist
Throw exception if user with email exist
What is JWT and Components of JWT
Write query to save user in database after some validation
Save user Create JWT token and Return that
Start Server and Test user Registration flow

User Login & Current User Information

Implementing the logic to validate user login
Create Login REST API endpoint
Testing the login user from Swagger
Create Service Method to get current user information
Create Get API Endpoint to get current user info

Create Post, Get Posts by User, Get Post Detail

Implement Create Post functionality in Service layer
Implement Create Post API Endpoint
Testing Create Post by the logged in user
Implement All Posts by User functionality
Create REST API Endpoint to get all posts by the user
Test Get All Post By the User
Implement API and Functionality to get post detail

Update, Delete Post & Get All Posts From All User

Implement API and Delete Post functionality
Fix Error for Delete Post
Update Post API endpoint and Functionality Implementation
API and Functionality to get All posts from All users
Implement API and Functionality to Get User Detail

Using MySQL & PostgreSQL Database

How to connect Postgresql and Mysql database