diff --git a/routes/openrouter.routes.js b/routes/openrouter.routes.js index 259349e..6d3de69 100644 --- a/routes/openrouter.routes.js +++ b/routes/openrouter.routes.js @@ -26,10 +26,8 @@ router.get('/models', authenticateToken, async (req, res) => { const setting = await getOne('SELECT value FROM settings WHERE key = $1', ['openrouter_api_key']); if (!setting || !setting.value) { - return res.status(400).json({ - error: 'Clé API OpenRouter non configurée', - models: [] - }); + // Return 200 with empty array to avoid console errors + return res.status(200).json([]); } // Appeler l'API OpenRouter pour récupérer les modèles @@ -93,8 +91,8 @@ router.post('/refresh-models', authenticateToken, requireAdmin, async (req, res) const setting = await getOne('SELECT value FROM settings WHERE key = $1', ['openrouter_api_key']); if (!setting || !setting.value) { - return res.status(400).json({ - error: 'Clé API OpenRouter non configurée', + return res.status(200).json({ + message: 'Clé API OpenRouter non configurée', models: [] }); } diff --git a/src/pages/Index.tsx b/src/pages/Index.tsx index cd8bbbf..e164d59 100644 --- a/src/pages/Index.tsx +++ b/src/pages/Index.tsx @@ -552,12 +552,12 @@ const Index = () => { } }, []); - // Load models when chatbox opens + // Load models when chatbox opens (only if API key is configured) useEffect(() => { - if (chatOpen && openRouterModels.length === 0) { + if (chatOpen && settings.openrouter_api_key && openRouterModels.length === 0) { loadOpenRouterModels(); } - }, [chatOpen]); + }, [chatOpen, settings.openrouter_api_key]); // Set default model when models are loaded useEffect(() => {