Introduction to API Development
"The one goal of compassionate communication is to help others suffer less."– Thich Nhat Hanh
In this chapter, we are going to learn about the concept of an Application Programming Interface, or API.
We are going to explore this important topic by working on a railway project together. As we go along, we will take the opportunity to also touch briefly upon the following topics:
- HTTP protocol, requests, and responses
- Python type hinting
- The Django web framework
There are entire books dedicated to API design, so it would be impossible for us to tell you everything you need to know about this subject within a single chapter. This consideration brought us to the decision of adopting FastAPI as the main technology for this project. It is a well-designed framework that has allowed us to create an API with clean, concise, and expressive code, which we think is quite apt for the purpose of this...