#Wrong error messages on unsatisfiable chat requests

5 messages · Page 1 of 1 (latest)

swift forgeBOT
#

@faint pagoda

Description:
Models on OpenRouter seem to return the wrong reason in the error messages when a request is unsatisfiable.

For example, when I request a chat completion from google/gemma-3-27b-it with "provider": {"zdr": true} but also provide "tools": [] in the payload, the request should fail because Gemma 3 doesn't support tool calls, but it fails with this message instead:
"message": "No endpoints found matching your data policy (Zero data retention). Configure: https://openrouter.ai/settings/privacy"

What I've Tried:
Many combinations of API payload. For example, even if I don't provide "provider": {"zdr": true}, the error message is still wrong:
"message": "No endpoints found matching your data policy (Paid model training). Configure: https://openrouter.ai/settings/privacy"

Error Messages:

Mentioned above

API/Model: https://openrouter.ai/api/v1/chat/completions

#

I'm an AI assistant - my answers may be incorrect and I cannot see screenshots. Please verify information with the OpenRouter docs.

To help debug this API error message issue, I need a bit more information:

  1. Can you share your full API request payload (including all parameters you sent)?
  2. Are you using any specific provider filters besides "zdr" (zero data retention)?
  3. What is the exact OpenRouter API response you receive (full JSON error object)?

These details will help determine if the incorrect error message is due to payload structure, model limitations, or provider routing.

-# This is an automated response powered by Answer HQ. Use !mute to stop the bot from responding, or !close when your question is resolved.

faint pagoda
#
  1. This request:
{
    "model": "google/gemma-3-27b-it",
    "stream": false,
    "reasoning": {
        "enabled": false
    },
    "provider": {
        "zdr": true
    },
    "messages": [
        {
            "role": "user",
            "content": "Hello world"
        }
    ],
    "tools": []
}

Yields this response:

{
    "error": {
        "message": "No endpoints found matching your data policy (Zero data retention). Configure: https://openrouter.ai/settings/privacy",
        "code": 404
    }
}

But all Gemma 3 providers support ZDR. If I omit "tools": [] the request goes through without issue.

  1. No extra provider filters. I am globally excluding any providers who train on my data.
  2. Mentioned above
swift forgeBOT
#

Thank you for sharing the exact payload and error.

Based on the OpenRouter API error handling documentation:
"When an endpoint cannot be found matching your request’s model, data policy, or other filters, the API will return a 404 error with a message explaining which constraint could not be satisfied."

However, your example shows the error message refers to the data policy, not the model's tool support capability. This suggests OpenRouter is prioritizing provider/data policy matching errors over model feature validation in its error reporting.

There is no documentation specifying the order or priority of error messages when multiple constraints are unsatisfiable. The error message may not always point to the root cause if both model and policy are incompatible.

If you need this behavior changed or clarified, I recommend reporting it to the OpenRouter devs or mods for review.
"If you receive an unexpected error or believe an error message is misleading, please contact support or ask in the Discord server for clarification." Error Handling

Let me know if you need help escalating this feedback.

-# This is an automated response powered by Answer HQ. Use !mute to stop the bot from responding, or !close when your question is resolved.

faint pagoda
#

!mute