cp .env.example .env # configure DATABASE_URL, SECRET_KEY, EMAIL_USER, EMAIL_PASSWORD
source .venv/bin/activate
alembic upgrade head
uvicorn app.main:app --reloadBase: /api/v1/auth
Register a new user.
// Request
{ "email": "user@example.com", "password": "Str0ng!Pass" }
// Response 201
{ "access_token": "...", "refresh_token": "...", "token_type": "bearer" }// Request
{ "email": "user@example.com", "password": "Str0ng!Pass" }
// Response 200
{ "access_token": "...", "refresh_token": "...", "token_type": "bearer" }// Request
{ "refresh_token": "..." }
// Response 200
{ "access_token": "...", "refresh_token": "...", "token_type": "bearer" }Sends a password reset email with a one-time token (1hr expiry).
// Request
{ "email": "user@example.com" }
// Response 200
{ "message": "If that email is registered, you will receive a password reset link" }// Request
{ "token": "...", "password": "NewStr0ng!Pass" }
// Response 200
{ "message": "Password has been reset successfully" }Requires Authorization: Bearer <access_token> header.
// Response 200
{ "id": "uuid", "email": "user@example.com", "is_active": true }// Response 200
{ "status": "ok" }source .venv/bin/activate
python -m pytest tests/ -v