Spaces:
Paused
Paused
File size: 546 Bytes
c2bbff3 |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 |
from fastapi import APIRouter, HTTPException, Depends
from sqlalchemy.orm import Session
from app.database import SessionLocal
from app.models import APIKey, User
import secrets
router = APIRouter()
def get_db():
db = SessionLocal()
try:
yield db
finally:
db.close()
@router.post("/generate-key")
def generate_key(user_id: int, db: Session = Depends(get_db)):
api_key = secrets.token_hex(32)
new_key = APIKey(user_id=user_id, key=api_key)
db.add(new_key)
db.commit()
return {"api_key": api_key}
|