feat: handle brave_search in API key test endpoint

Add a branch in test_key to route brave_search provider to
crate::services::brave_search::test_api_key instead of the LLM factory.

Co-Authored-By: Claude Sonnet 4.6 <noreply@anthropic.com>
master
oabrivard 3 months ago
parent f414ff0f58
commit e05c2ae75a

@ -121,6 +121,31 @@ pub async fn test_key(
let decrypted_key = let decrypted_key =
encryption::decrypt(&master_key, &stored_key.encrypted_key, &stored_key.nonce)?; encryption::decrypt(&master_key, &stored_key.encrypted_key, &stored_key.nonce)?;
// Handle Brave Search key testing separately (not an LLM provider)
if provider == "brave_search" {
let result = crate::services::brave_search::test_api_key(
&state.http_client,
&decrypted_key,
).await;
return match result {
Ok(()) => Ok(Json(TestResult {
success: true,
message: "Brave Search API key is valid and working".into(),
})),
Err(e) => {
let message = match &e {
AppError::BadRequest(msg) => msg.clone(),
_ => "Brave Search API key test failed.".into(),
};
Ok(Json(TestResult {
success: false,
message,
}))
}
};
}
// Create a provider instance // Create a provider instance
let llm_provider = factory::create_provider(&provider, decrypted_key)?; let llm_provider = factory::create_provider(&provider, decrypted_key)?;

Loading…
Cancel
Save