diff --git a/app/controllers/aaManager.py b/app/controllers/aaManager.py index d75c83c..4f9a1d6 100644 --- a/app/controllers/aaManager.py +++ b/app/controllers/aaManager.py @@ -10,7 +10,7 @@ from ..services.database import engine, get_session, add_and_refresh from ..services.auth import auth_is_admin import uuid as gen_uuid -aa_router = APIRouter(prefix="/aa", tags=["AccessAuth"]) +aa_router = APIRouter(prefix="/api/v1/aa", tags=["AccessAuth"]) @aa_router.post("/", response_model=AccessAuthorizationResponse) def add_accessauth(*, db: Session = Depends(get_session), aa: AccessAuthorizationCreate, admin: bool = Depends(auth_is_admin)): diff --git a/app/controllers/cardManager.py b/app/controllers/cardManager.py index e7df1b5..74c86f3 100644 --- a/app/controllers/cardManager.py +++ b/app/controllers/cardManager.py @@ -11,7 +11,7 @@ from ..services.auth import auth_is_admin import uuid as gen_uuid from app.services.scanner import WriteNewCard, DeleteCard -card_router = APIRouter(prefix="/cards", tags=["Card"]) +card_router = APIRouter(prefix="/api/v1/cards", tags=["Card"]) def register_card(group_id: int): key = WriteNewCard() diff --git a/app/controllers/debugManager.py b/app/controllers/debugManager.py index 96bc546..282c9bd 100644 --- a/app/controllers/debugManager.py +++ b/app/controllers/debugManager.py @@ -7,7 +7,7 @@ from app.model.models import * from app.services.database import get_session, add_and_refresh debug_router = APIRouter( - prefix="/debug", + prefix="/api/v1/debug", tags=["Debug items - maybe dont show this in UI"], dependencies=[Depends(auth_is_admin)], ) diff --git a/app/controllers/doorManager.py b/app/controllers/doorManager.py index 49f8935..3e419b9 100644 --- a/app/controllers/doorManager.py +++ b/app/controllers/doorManager.py @@ -5,7 +5,7 @@ from app.services.database import get_session from app.services.auth import auth_is_admin import app.services.door as doorService -door_router = APIRouter(prefix="/door",tags=["Door"]) +door_router = APIRouter(prefix="/api/v1/door",tags=["Door"]) @door_router.put("/open") def open_door(db: Session = Depends(get_session), admin: bool = Depends(auth_is_admin)): diff --git a/app/controllers/groupManager.py b/app/controllers/groupManager.py index 8cf4706..d5a4800 100644 --- a/app/controllers/groupManager.py +++ b/app/controllers/groupManager.py @@ -6,7 +6,7 @@ from ..model.models import GroupDB, GroupResponse, GroupCreate from ..services.database import engine, get_session, add_and_refresh from ..services.auth import auth_is_admin -group_router = APIRouter(prefix="/groups", tags=["Group"]) +group_router = APIRouter(prefix="/api/v1/groups", tags=["Group"]) @group_router.get("/", response_model=List[GroupResponse]) def get_groups(*, db: Session = Depends(get_session), admin: bool = Depends(auth_is_admin)): diff --git a/app/controllers/userManager.py b/app/controllers/userManager.py index 7abe7c6..dd121ce 100644 --- a/app/controllers/userManager.py +++ b/app/controllers/userManager.py @@ -8,28 +8,28 @@ from ..model.models import UserResponse, UserCreate, UserDB, UserUpdate from ..services.database import engine, get_session, add_and_refresh from ..services.auth import get_password_hash, get_current_user, auth_is_admin -user_router = APIRouter(tags=["Users"]) +user_router = APIRouter(tags=["Users"], prefix="/api/v1/users") -@user_router.post("/users/", response_model=UserResponse) +@user_router.post("/", response_model=UserResponse) def create_user(*, db: Session = Depends(get_session), user: UserCreate, admin: bool = Depends(auth_is_admin)): logger.info(f"creating user with data: {user}") hashed_password = {"passwordhash": get_password_hash(user.password)} db_user = UserDB.model_validate(user, update=hashed_password) return add_and_refresh(db, db_user) -@user_router.get("/users/", response_model=List[UserResponse]) +@user_router.get("/", response_model=List[UserResponse]) def read_users(*, db: Session = Depends(get_session), admin: bool = Depends(auth_is_admin)): users = db.exec(select(UserDB)).all() return users -@user_router.get("/users/{user_id}", response_model=UserResponse) +@user_router.get("/{user_id}", response_model=UserResponse) def read_user(*, db: Session = Depends(get_session), user_id: int, admin: bool = Depends(auth_is_admin)): db_user = db.get(UserDB, user_id) if db_user is None: raise HTTPException(status_code=404, detail="User not found") return db_user -@user_router.patch("/users/{user_id}", response_model=UserResponse) +@user_router.patch("/{user_id}", response_model=UserResponse) def update_user(*, db: Session = Depends(get_session), user_id: int, user: UserUpdate, admin: bool = Depends(auth_is_admin)): db_user = db.get(UserDB, user_id) if db_user is None: @@ -42,7 +42,7 @@ def update_user(*, db: Session = Depends(get_session), user_id: int, user: UserU db_user.sqlmodel_update(user_data, update=hashed_password) return add_and_refresh(db, db_user) -@user_router.delete("/users/{user_id}") +@user_router.delete("/{user_id}") def delete_user(*, db: Session = Depends(get_session), user_id: int, admin: bool = Depends(auth_is_admin)): db_user = db.get(UserDB, user_id) if db_user is None: diff --git a/app/main.py b/app/main.py index e801d77..a34df88 100644 --- a/app/main.py +++ b/app/main.py @@ -36,7 +36,11 @@ async def lifespan(app: FastAPI): yield #scanner.stop() -app = FastAPI(lifespan=lifespan) +app = FastAPI( + lifespan=lifespan, + docs_url="/api/v1/docs", + openapi_url="/api/v1/openapi.json" + ) origins = [ "http://127.0.0.1",