Course Outline
Module I: Fundamentals of Web Applications and APIs
1. Web application architecture – client-server model
2. HTTP protocol mechanisms: requests, responses, resources
3. Basic concepts: URI, URL, endpoint
4. Overview of popular API interfaces and methods for communicating with them
5. Postman as an HTTP client
6. Type annotations in Python
Module II: FastAPI Framework – Fundamentals
1. First FastAPI application
2. Defining routes and routing mechanisms
3. Handling POST requests – request body and validation with Pydantic
4. Path parameters
5. Handling HTTPException exceptions and 404 error code
6. Using JSONResponse, configuring default status codes
7. Implementing the DELETE request and 204 No Content response
8. Updating resources using the PUT method
9. Automatically generated documentation (Swagger UI and ReDoc)
10. Defining response schemas
11. Using the requests library to communicate with APIs
12. Advanced Pydantic capabilities
Module III: Database Integration
1. Configuring database connection in a project
2. Psycopg library – fundamentals of PostgreSQL management
3. SQLAlchemy ORM – object-relational mapping
Module IV: CRUD
1. CRUD principle – analysis of individual operations
2. Implementing database operations using SQLAlchemy
3. Query parameters – sorting and filtering data
4. Testing endpoints using TestClient
Module V: Advanced Application Aspects
1. Security – hashing and storing passwords
2. User authentication and authorization mechanisms
3. Simple API frontend written in Python
Testimonials (1)
The trainer was very available to answer all te kind of question I did