Refactor credential creation logic
This commit is contained in:
parent
c724d1131a
commit
928ba602bb
1 changed files with 10 additions and 2 deletions
|
|
@ -2,12 +2,17 @@ from datetime import datetime
|
||||||
from uuid import UUID
|
from uuid import UUID
|
||||||
|
|
||||||
from fastapi import APIRouter, Depends, HTTPException
|
from fastapi import APIRouter, Depends, HTTPException
|
||||||
|
from sqlmodel import Session, select
|
||||||
|
|
||||||
from langflow.services.auth import utils as auth_utils
|
from langflow.services.auth import utils as auth_utils
|
||||||
from langflow.services.auth.utils import get_current_active_user
|
from langflow.services.auth.utils import get_current_active_user
|
||||||
from langflow.services.database.models.credential import Credential, CredentialCreate, CredentialRead, CredentialUpdate
|
from langflow.services.database.models.credential import Credential, CredentialCreate, CredentialRead, CredentialUpdate
|
||||||
from langflow.services.database.models.user.model import User
|
from langflow.services.database.models.user.model import User
|
||||||
from langflow.services.deps import get_session, get_settings_service
|
from langflow.services.deps import get_session, get_settings_service
|
||||||
from sqlmodel import Session, select
|
CredentialRead,
|
||||||
|
CredentialUpdate)
|
||||||
|
from langflow.services.database.models.user.model import User
|
||||||
|
from langflow.services.deps import get_session, get_settings_service
|
||||||
|
|
||||||
router = APIRouter(prefix="/credentials", tags=["Credentials"])
|
router = APIRouter(prefix="/credentials", tags=["Credentials"])
|
||||||
|
|
||||||
|
|
@ -29,7 +34,10 @@ def create_credential(
|
||||||
if credential_exists:
|
if credential_exists:
|
||||||
raise HTTPException(status_code=400, detail="Credential name already exists")
|
raise HTTPException(status_code=400, detail="Credential name already exists")
|
||||||
|
|
||||||
db_credential = Credential.model_validate(credential, from_attributes=True)
|
credential_dict = credential.model_dump()
|
||||||
|
credential_dict["user_id"] = current_user.id
|
||||||
|
|
||||||
|
db_credential = Credential.model_validate(credential_dict)
|
||||||
if not db_credential.value:
|
if not db_credential.value:
|
||||||
raise HTTPException(status_code=400, detail="Credential value cannot be empty")
|
raise HTTPException(status_code=400, detail="Credential value cannot be empty")
|
||||||
encrypted = auth_utils.encrypt_api_key(db_credential.value, settings_service=settings_service)
|
encrypted = auth_utils.encrypt_api_key(db_credential.value, settings_service=settings_service)
|
||||||
|
|
|
||||||
Loading…
Add table
Add a link
Reference in a new issue