401 is universal

This commit is contained in:
reanon
2025-08-08 13:14:54 +02:00
parent bc85a71c2a
commit 9c0a4fd3a7
+3 -8
View File
@@ -274,15 +274,10 @@ const handleUpstreamErrors: ProxyResHandlerWithBody = async (
assertNever(service); assertNever(service);
} }
} else if (statusCode === 401) { } else if (statusCode === 401) {
// OpenAI specific - retry with different key for any 401 error // Universal 401 handling - authentication failed, retry with different key
if (service === "openai") {
keyPool.disable(req.key!, "revoked");
await reenqueueRequest(req);
throw new RetryableError("OpenAI key authentication failed, retrying with different key.");
}
// Key is invalid or was revoked
keyPool.disable(req.key!, "revoked"); keyPool.disable(req.key!, "revoked");
errorPayload.proxy_note = `Assigned API key is invalid or revoked, please try again.`; await reenqueueRequest(req);
throw new RetryableError(`${service} key authentication failed, retrying with different key.`);
} else if (statusCode === 402) { } else if (statusCode === 402) {
// Deepseek specific - insufficient balance // Deepseek specific - insufficient balance
if (service === "deepseek") { if (service === "deepseek") {