[Backend] Add SECRET credential type for storing generic sensitive values (#4246)

This commit is contained in:
Marc Kelechava
2025-12-09 11:19:57 -08:00
committed by GitHub
parent 71e4614cfe
commit eb50fdef83
7 changed files with 107 additions and 5 deletions

View File

@@ -29,6 +29,7 @@ from skyvern.forge.sdk.schemas.credentials import (
CredentialVaultType,
CreditCardCredentialResponse,
PasswordCredentialResponse,
SecretCredentialResponse,
)
from skyvern.forge.sdk.schemas.organizations import (
AzureClientSecretCredentialResponse,
@@ -267,6 +268,14 @@ async def create_credential(
credential_type=data.credential_type,
name=data.name,
)
elif data.credential_type == CredentialType.SECRET:
credential_response = SecretCredentialResponse(secret_label=data.credential.secret_label)
return CredentialResponse(
credential=credential_response,
credential_id=credential.credential_id,
credential_type=data.credential_type,
name=data.name,
)
else:
raise HTTPException(status_code=400, detail=f"Unsupported credential type: {data.credential_type}")
@@ -764,5 +773,13 @@ def _convert_to_response(credential: Credential) -> CredentialResponse:
credential_type=credential.credential_type,
name=credential.name,
)
elif credential.credential_type == CredentialType.SECRET:
credential_response = SecretCredentialResponse(secret_label=credential.secret_label)
return CredentialResponse(
credential=credential_response,
credential_id=credential.credential_id,
credential_type=credential.credential_type,
name=credential.name,
)
else:
raise HTTPException(status_code=400, detail="Credential type not supported")