In this course, you will learn how to build scalable and secure web APIs using the FAST API framework. We will start with an introduction to RESTful APIs and the benefits of using FAST API, followed by setting up your development environment and creating your first FAST API application.
To participate in this course, you should have prior knowledge of the SQLAlchemy library for interacting with databases, as we will be using it throughout the course. However, we will provide a brief crash course on SQLAlchemy for those who need a refresher.
You will learn how to work with data models, define CRUD endpoints, and handle database operations using SQLAlchemy. We will cover authentication and authorization mechanisms, including JWT-based authentication, and you will learn how to add permissions and roles to your API endpoints.
We will also cover best practices for API documentation and testing using OpenAPI (Swagger) specification and pytest. In addition, you will learn advanced features of FAST API, such as creating custom middleware and dependencies, using background tasks, and handling file uploads.
Throughout the course, you will work on a project to build a real-world API using FAST API, and deploy it to production. By the end of this course, you will have a strong foundation in building web APIs with FAST API, and be equipped with the tools and knowledge to develop high-quality APIs for your own projects or for clients.
Prerequisites: This course is designed for students with prior experience in Python programming and web development. Familiarity with web frameworks such as Flask or Django is recommended, but not required. Students should have a basic understanding of RESTful APIs, HTTP protocols, and the SQLAlchemy library for interacting with databases. If you are not familiar with SQLAlchemy, we will provide a brief crash course on the topic.