Course Management REST API (GCP + Auth0)
A production-style REST API built with Python/Flask and deployed to Google App Engine, demonstrating end-to-end cloud API design and deployment. The API manages three related resources — instructors, courses, and student enrollments — across 11 endpoints with proper relationship constraints (e.g., a course must have exactly one instructor, students enroll in courses with conflict checks). Security is handled via Auth0 JWTs: every protected endpoint verifies the token's signature, issuer, audience, and expiration before granting access, with clear 401/403 responses when checks fail. All endpoints return consistent JSON bodies and appropriate HTTP status codes for both success and error cases, including paginated collection responses. Persistence uses Google Cloud Datastore with structured entity design. A full Postman collection covers correctness, authentication edge cases, and relationship integrity.