diff --git a/api/controllers/console/datasets/rag_pipeline/datasource_auth.py b/api/controllers/console/datasets/rag_pipeline/datasource_auth.py index 01b3372e24..7442a5001a 100644 --- a/api/controllers/console/datasets/rag_pipeline/datasource_auth.py +++ b/api/controllers/console/datasets/rag_pipeline/datasource_auth.py @@ -203,7 +203,7 @@ class DatasourceAuthListApi(Resource): datasources = datasource_provider_service.get_all_datasource_credentials( tenant_id=current_user.current_tenant_id ) - return {"result": datasources}, 200 + return {"result": jsonable_encoder(datasources)}, 200 class DatasourceAuthOauthCustomClient(Resource): @setup_required diff --git a/api/services/datasource_provider_service.py b/api/services/datasource_provider_service.py index a238778169..cd959f075f 100644 --- a/api/services/datasource_provider_service.py +++ b/api/services/datasource_provider_service.py @@ -416,53 +416,17 @@ class DatasourceProviderService: "author": datasource.declaration.identity.author, "credentials_list": credentials, "credential_schema": [ - { - "type": credential.type.value, - "name": credential.name, - "required": credential.required, - "default": credential.default, - "options": [ - { - "value": option.value, - "label": option.label.model_dump(), - } - for option in credential.options or [] - ], - } + credential.model_dump() for credential in datasource.declaration.credentials_schema ], "oauth_schema": { "client_schema": [ - { - "type": client_schema.type.value, - "name": client_schema.name, - "required": client_schema.required, - "default": client_schema.default, - "options": [ - { - "value": option.value, - "label": option.label.model_dump(), - } - for option in client_schema.options or [] - ], - } - for client_schema in datasource.declaration.oauth_schema.client_schema or [] + client_schema.model_dump() + for client_schema in datasource.declaration.oauth_schema.client_schema ], "credentials_schema": [ - { - "type": credential.type.value, - "name": credential.name, - "required": credential.required, - "default": credential.default, - "options": [ - { - "value": option.value, - "label": option.label.model_dump(), - } - for option in credential.options or [] - ], - } - for credential in datasource.declaration.oauth_schema.credentials_schema or [] + credential_schema.model_dump() + for credential_schema in datasource.declaration.oauth_schema.credentials_schema ], "oauth_custom_client_params": self.get_tenant_oauth_client(tenant_id, datasource_provider_id), "is_oauth_custom_client_enabled": self.is_tenant_oauth_params_enabled(