A production-grade multi-tenant REST API for managing containerized agents. Demonstrates FastAPI, PostgreSQL, Redis caching, JWT authentication, Docker deployment, and CI/CD.
Live Demo: http://65.0.5.132:8000
- Backend: Python 3.11, FastAPI 0.136.1
- Database: PostgreSQL 18
- Cache: Redis 8.0.1
- Auth: JWT (PyJWT), bcrypt password hashing
- Deployment: Docker, Docker Compose, AWS EC2 (ap-south-1)
- CI/CD: GitHub Actions (pytest, docker build, push)
- Agent CRUD API — Create, list, read, update, delete agents
- Multi-Tenant Isolation — tenant_id propagated in JWT token
- JWT Authentication — Signup with bcrypt, login returns token
- Redis Caching — Cache-aside pattern, 5-min TTL, invalidation on write
- Testing & CI/CD — 95% test coverage, automated GitHub Actions
git clone https://github.com/syedshoriful/taskflow-agent-api.git
cd taskflow-agent-api
pip install -r requirements.txt
docker compose up --build
uvicorn main:app --reload
pytest tests/ -vServer: AWS EC2 (Mumbai, ap-south-1)
IP: 65.0.5.132:8000
Status: Running ✅
POST /signup— Register new userPOST /login— Login, get JWT tokenPOST /agents— Create agentGET /agents?tenant_id=X— List agents (cached)GET /agents/{id}— Get agentPUT /agents/{id}— Update agentDELETE /agents/{id}— Delete agent
Syed Shariful Alam Opu | Backend Engineer
GitHub: @syedshoriful