diff --git a/Packages/OsaurusCore/Models/RemoteProviderConfiguration.swift b/Packages/OsaurusCore/Models/RemoteProviderConfiguration.swift index c9bc2a67..15d40b15 100644 --- a/Packages/OsaurusCore/Models/RemoteProviderConfiguration.swift +++ b/Packages/OsaurusCore/Models/RemoteProviderConfiguration.swift @@ -230,15 +230,21 @@ public struct RemoteProvider: Codable, Identifiable, Sendable, Equatable { if authType == .apiKey, let apiKey = getAPIKey(), !apiKey.isEmpty { switch providerType { case .anthropic: - headers["x-api-key"] = apiKey + if headers["x-api-key"] == nil { + headers["x-api-key"] = apiKey + } // Add required Anthropic version header if not already set if headers["anthropic-version"] == nil { headers["anthropic-version"] = "2023-06-01" } case .gemini: - headers["x-goog-api-key"] = apiKey + if headers["x-goog-api-key"] == nil { + headers["x-goog-api-key"] = apiKey + } case .openai, .openResponses: - headers["Authorization"] = "Bearer \(apiKey)" + if headers["Authorization"] == nil { + headers["Authorization"] = "Bearer \(apiKey)" + } } } diff --git a/Packages/OsaurusCore/Services/RemoteProviderManager.swift b/Packages/OsaurusCore/Services/RemoteProviderManager.swift index c82027c5..92b12c34 100644 --- a/Packages/OsaurusCore/Services/RemoteProviderManager.swift +++ b/Packages/OsaurusCore/Services/RemoteProviderManager.swift @@ -348,15 +348,21 @@ public final class RemoteProviderManager: ObservableObject { if authType == .apiKey, let apiKey = apiKey, !apiKey.isEmpty { switch providerType { case .anthropic: - testHeaders["x-api-key"] = apiKey + if testHeaders["x-api-key"] == nil { + testHeaders["x-api-key"] = apiKey + } // Add required Anthropic version header if not already set if testHeaders["anthropic-version"] == nil { testHeaders["anthropic-version"] = "2023-06-01" } case .gemini: - testHeaders["x-goog-api-key"] = apiKey + if testHeaders["x-goog-api-key"] == nil { + testHeaders["x-goog-api-key"] = apiKey + } case .openai, .openResponses: - testHeaders["Authorization"] = "Bearer \(apiKey)" + if testHeaders["Authorization"] == nil { + testHeaders["Authorization"] = "Bearer \(apiKey)" + } } }