How to Start the Server
The Problem
The "Not Found" error means the server is not running. You need to start it first.
Solution: Start the Server
Step 1: Open a PowerShell Terminal
Make sure you're in the project directory:
cd C:\Users\tarun\IITMTdsPrj2
Step 2: Set Environment Variables
$env:QUIZ_SECRET = "EasyQuiz"
$env:OPENAI_API_KEY = "eyJhbGciOiJIUzI1NiJ9.eyJlbWFpbCI6IjI0ZjIwMDU3NTNAZHMuc3R1ZHkuaWl0bS5hYy5pbiJ9.eji7L5I62M9YHoeEKE8ao6eTw8dFjgDIMP9C3lOUXc4"
Step 3: Start the Server
python -m app.main
You should see:
INFO: Started server process [...]
INFO: Waiting for application startup.
INFO: Application startup complete.
INFO: Uvicorn running on http://0.0.0.0:8000 (Press CTRL+C to quit)
Keep this terminal open! The server runs in this window.
Step 4: Test in Another Terminal
Open a NEW PowerShell window and run:
# Set variables again (in the new window)
$env:QUIZ_SECRET = "EasyQuiz"
# Test the API
$body = @{
email = "24f2005753@ds.study.iitm.ac.in"
secret = "EasyQuiz"
url = "https://tds-llm-analysis.s-anand.net/demo"
} | ConvertTo-Json
Invoke-RestMethod -Uri "http://127.0.0.1:8000/demo" -Method POST -ContentType "application/json" -Body $body
Quick Test Script
I've created a test script. After starting the server, run:
.\test_server.ps1
This will test all endpoints and show you what's working.
Troubleshooting
"Module not found" error
pip install -r requirements.txt
"Port already in use" error
Another process is using port 8000. Either:
- Stop the other process
- Change the port:
$env:PORT = "8001"then restart
Server starts but endpoints don't work
- Make sure you're using the correct URL:
http://127.0.0.1:8000orhttp://localhost:8000 - Check for errors in the server terminal
- Restart the server after code changes
Summary
- ✅ Start server:
python -m app.main(keep terminal open) - ✅ Open new terminal for testing
- ✅ Set variables in new terminal
- ✅ Test API endpoints