From e0011d8372c3d0201d6edf73c0efd3bc5aa00d2b Mon Sep 17 00:00:00 2001 From: Seva <68725282+sevcator@users.noreply.github.com> Date: Wed, 8 Apr 2026 13:44:48 +0700 Subject: [PATCH] Fix provider API key validation to honor proxy settings (#1061) Integrated into release/v3.5.5 --- src/app/api/providers/validate/route.ts | 17 ++++++++++++----- 1 file changed, 12 insertions(+), 5 deletions(-) diff --git a/src/app/api/providers/validate/route.ts b/src/app/api/providers/validate/route.ts index 0b9b51b28d..79f7965196 100644 --- a/src/app/api/providers/validate/route.ts +++ b/src/app/api/providers/validate/route.ts @@ -6,8 +6,10 @@ import { isAnthropicCompatibleProvider, } from "@/shared/constants/providers"; import { validateProviderApiKey } from "@/lib/providers/validation"; +import { getProxyForLevel } from "@/lib/localDb"; import { validateProviderApiKeySchema } from "@/shared/validation/schemas"; import { isValidationFailure, validateBody } from "@/shared/validation/helpers"; +import { runWithProxyContext } from "@omniroute/open-sse/utils/proxyFetch.ts"; // POST /api/providers/validate - Validate API key with provider export async function POST(request) { @@ -60,11 +62,16 @@ export async function POST(request) { }; } - const result = await validateProviderApiKey({ - provider, - apiKey, - providerSpecificData, - }); + const providerProxy = await getProxyForLevel("provider", provider); + const globalProxy = providerProxy ? null : await getProxyForLevel("global"); + + const result = await runWithProxyContext(providerProxy || globalProxy || null, () => + validateProviderApiKey({ + provider, + apiKey, + providerSpecificData, + }) + ); if (result.unsupported) { return NextResponse.json({ error: "Provider validation not supported" }, { status: 400 });