Book Image

Building Python Web APIs with FastAPI

By : Abdulazeez Abdulazeez Adeshina
Book Image

Building Python Web APIs with FastAPI

By: Abdulazeez Abdulazeez Adeshina

Overview of this book

RESTful web services are commonly used to create APIs for web-based applications owing to their light weight and high scalability. This book will show you how FastAPI, a high-performance web framework for building RESTful APIs in Python, allows you to build robust web APIs that are simple and intuitive and makes it easy to build quickly with very little boilerplate code. This book will help you set up a FastAPI application in no time and show you how to use FastAPI to build a REST API that receives and responds to user requests. You’ll go on to learn how to handle routing and authentication while working with databases in a FastAPI application. The book walks you through the four key areas: building and using routes for create, read, update, and delete (CRUD) operations; connecting the application to SQL and NoSQL databases; securing the application built; and deploying your application locally or to a cloud environment. By the end of this book, you’ll have developed a solid understanding of the FastAPI framework and be able to build and deploy robust REST APIs.
Table of Contents (14 chapters)
Part 1: An Introduction to FastAPI
Part 2: Building and Securing FastAPI Applications
Part 3: Testing And Deploying FastAPI Applications

What this book covers

Chapter 1, Getting Started with FastAPI, introduces the basics of FastAPI and other technologies used in the book. The chapter also details the steps involved in setting up your development environment for your FastAPI application.

Chapter 2, Routing in FastAPI, talks in detail about the process of creating endpoints using the routing system in FastAPI. The components of a routing system, including the request body and path parameters, are also discussed alongside validating them with pydantic classes.

Chapter 3, Response Models and Error Handling, introduces responses in FastAPI, response modeling, error handling, and status codes.

Chapter 4, Templating in FastAPI, discusses how templates can be used to create views and render responses from the API.

Chapter 5, Structuring FastAPI Applications, introduces structuring applications and also briefly introduces the application to be built in the next chapters.

Chapter 6, Connecting to a Database, discusses two classes of databases (SQL and NoSQL) and demonstrates how you can connect your FastAPI application to either of them. We’ll cover how to connect to and use a SQL database using SQLModel, and how to work with MongoDB using an object-document mapper, Beanie.

Chapter 7, Securing FastAPI Applications, talks about what securing your application entails – authorization and authentication, implementing authentication, and restricting access to application endpoints.

Chapter 8, Testing FastAPI Applications, explains what testing is and how to test our API endpoints.

Chapter 9, Deploying FastAPI Applications, discusses the steps involved in deploying your FastAPI application.