"No endpoints found" is the Janitor AI error that convinces people their setup is broken when it is not. The proxy URL is right, the key is right, and the chat still refuses. The message comes from OpenRouter, which Janitor passes through unchanged, and it means one thing: at this moment, no provider is available to serve the model id you typed, either because none exists, or because your own OpenRouter settings rule out the ones that do.
Janitor AI's OpenRouter error guide files it under 404 and names three causes. This page takes them in the order that fixes the most cases fastest, gives the exact setting for each, and ends with the current list of free model ids, because a retired id is the cause more often than anything else.
Cause one: the model id is retired or misspelled
OpenRouter's free models change. Providers add them, rename them, and retire them, and the id that worked in a guide from spring is often gone by autumn. Janitor's guide gives its own example of the pattern: deepseek-chat-v3:free was replaced by deepseek-chat-v3-0324:free, and both are now history, because DeepSeek's free slugs were retired in 2026 altogether. Type a retired id and OpenRouter has, literally, no endpoint for it.
The fix is mechanical. Open OpenRouter's models page, filter for :free, and copy the id character for character, suffix included. Ids are case sensitive. As of 24 August 2026, OpenRouter's public list carried 18 free ids; the larger ones:
nvidia/nemotron-3.5-lightning:freenvidia/nemotron-3-ultra-550b-a55b:freedots-studio/dots-3-note-preview:freegoogle/gemma-4-31b-it:freeandgoogle/gemma-4-26b-a4b-it:freethinkingmachines/inkling:freepoolside/laguna-s-2.1:freenvidia/nemotron-3-super-120b-a12b:freez-ai/glm-5.2:freenvidia/nemotron-3-nano-30b-a3b:free
The full list, and the limits that come with it, are in our OpenRouter guide for Janitor AI. If the id you have is on the current list and the error persists, move to cause two.
Cause two: the privacy setting
Many free models are served by providers that require permission to use your prompts, and OpenRouter will not send your request to them while your account's data policy forbids it. With the setting off, every provider for that model is excluded and the answer is no endpoints found. Janitor's guide gives the fix in one line: enable Model Training under Privacy Settings on OpenRouter. Save, refresh Janitor, and retry.
This is the cause worth a pause rather than a reflex. Enabling it means the providers behind the free models may train on your roleplay. The free route is priced in exactly that, and OpenRouter states it on its own settings page rather than hiding it. If it is not acceptable, the alternatives are a paid model on OpenRouter with the setting off (the same key, a small balance), Google's Gemini free tier under Google's terms, or DeepSeek's cheap API, each covered in best free Janitor AI proxy. Make the choice on purpose.
Cause three: provider restrictions
OpenRouter lets you block providers you do not want and allow only the ones you do. Set that too tightly and a free model that is only served by a blocked provider has no endpoint left. Janitor's guide states the fix: unblock all Ignored Providers and clear Allowed Providers, then save. Most people never touched these settings; if you did, or followed a guide that did, this is the cause.
Check the model id
current :free spelling from OpenRouter's list
Enable Model Training
Privacy Settings on OpenRouter, if the trade is acceptable
Clear provider restrictions
unblock Ignored, clear Allowed, save
Still failing?
the model is down; check its uptime tab
Switch model
another :free id for tonight
When all three are fine: the model is down
If the id is current, privacy is enabled and providers are unrestricted, the model is simply not being served right now. Janitor's guide recommends the same check for a 502: open the model's uptime tab on OpenRouter, which shows whether its providers are up. Pick another free model for the evening and come back to the first one later. Nothing in your Janitor settings is wrong.
What it is not
It is not a rate limit; that is a 429, with its own causes and fixes in Janitor AI error 429. It is not a wrong URL; that produces a network error, and Janitor's rule is that the OpenRouter URL must be exactly https://openrouter.ai/api/v1/chat/completions. It is not a bad key; that is a 401. And it is not a Janitor outage: the message is OpenRouter's answer about your model and your account.
It is also not anything your IP address touches. We run a proxy network of the IP-changing kind, and there is no version of this error a network proxy fixes, because the decision is made by the model id you typed and the settings inside your OpenRouter account. The only Janitor case for our product is a network or country from which openrouter.ai or janitorai.com cannot be reached at all, which shows up as a network error, not this one; if that is your situation, a static residential address in a served country, ours from $0.44 per GB on a usage meter, is the different tool for the different problem.
Check the id, flip the setting if you accept the trade, clear the provider lists, and the endpoints come back.
Sources
- Janitor AI Help Center, OpenRouter Error Guide: the three 404 causes (provider restrictions, obsolete model, privacy blocks) with their fixes, the 502 uptime-tab check, and the exact URL rule.
- OpenRouter, public models list: the 18 ids tagged :free on 24 August 2026.
- OpenRouter, API rate limits, for the neighbouring 429 and 402 behaviour.