Alexander Hendorf - ✨ FastAPI facts we wish we'd known beforehand. | PyData London 2023

Learn best practices for building robust and scalable APIs with FastAPI, including data modeling, validation, and transformation, as well as integration with web frameworks and data sources, in this engaging PyData London 2023 talk.

Key takeaways
  • FastAPI is often misunderstood as a data validator, but it’s actually a data model framework that validates and transforms data.
  • Pydantic is a powerful tool for defining data models and can be used with FastAPI to create robust APIs.
  • Data classes are a good way to define complex data models in Python, and Pydantic can be used to validate and transform data.
  • Standardization is important for building scalable and maintainable APIs, and FastAPI has tools like Starlet to help with this.
  • Data is not just a sequence of bytes, it’s a complex entity with multiple representations and can be seen as a model, not just a set of fields.
  • The speaker’s team used FastAPI to build a complex web API quickly and efficiently.
  • To build a robust API, you need to validate and transform data correctly, and Pydantic can help with this.
  • Starlet is a web framework that works well with FastAPI and can be used to build complex web applications.
  • The speaker’s team used middleware to handle errors and exceptions in their FastAPI application.
  • The open API standard is useful for defining API endpoints and data models, and FastAPI supports this standard.
  • FastAPI is built on top of the Uvicorn server, which is well-suited for production systems.
  • The speaker’s team used FastAPI to build a GraphQL API, which is a great example of its flexibility.
  • The speaker’s team used Pydantic to define data models and validate data in their API.
  • FastAPI has a strong focus on performance and can handle complex computations quickly and efficiently.
  • The speaker’s team used Starlet to build a web application that can handle complex requests and responses.
  • The speaker’s team used FastAPI to build an API that integrates with multiple data sources.
  • The speaker’s team used Pydantic to define data models and validate data in their API, which improved the quality of their data.
  • The speaker’s team used FastAPI to build an API that can handle complex computations and computations with high latency.
  • The speaker’s team used Starlet to build a web application that can handle complex requests and responses.