Direct answer
Wrong-base-URL errors happen when an OpenAI-compatible tool, Claude-native tool, SDK, or hosted app appends paths differently than expected. Use https://base.corvusllm.com/v1 for OpenAI-compatible clients and https://base.corvusllm.com/anthropic for Claude-native workflows such as Claude Code.
Private order, key, and balance details belong in the customer portal or support. Public docs can explain the diagnostic path, not reveal account-specific state.
Error phrases this guide covers
Search tools, logs, and support tickets do not always use the same wording. Treat these phrases as the same troubleshooting family before changing unrelated settings.
Fast check before changing everything
Run the smallest check that isolates the failing layer. If the small request works, the problem is usually the client configuration, hidden context, permissions, or advanced feature path rather than the whole account.
# OpenAI-compatible tools
OPENAI_BASE_URL=https://base.corvusllm.com/v1
OPENAI_API_KEY=YOUR_CORVUSLLM_KEY
# Claude-native tools
ANTHROPIC_BASE_URL=https://base.corvusllm.com/anthropic
ANTHROPIC_AUTH_TOKEN=YOUR_CORVUSLLM_KEY
Common causes
- The app expects a base URL but the user pasted a full chat completions URL, so the client appended another path.
- The configured value already includes /v1 and the tool appends /v1 again.
- Claude Code or a Claude-native client was pointed at the OpenAI-compatible path instead of /anthropic.
- An old official-provider profile is still selected even though the visible settings panel shows a CorvusLLM value.
Fix steps
- Decide whether the client is OpenAI-compatible or Anthropic-native before editing settings.
- Use https://base.corvusllm.com/v1 as the base URL for OpenAI SDKs, curl, fetch, Open WebUI, ChatBox, n8n, Cursor when custom provider fields exist, and similar clients.
- Use https://base.corvusllm.com/anthropic for Claude Code or Claude-native clients that expect Anthropic-style request handling.
- Remove duplicate suffixes such as /v1/v1, /chat/completions/chat/completions, or /anthropic/v1.
Verify before retrying production traffic
- Run the minimal /v1/models check if the client is OpenAI-compatible.
- For Claude-native setups, re-open the terminal and print the Anthropic base URL variable before testing.
- Check the network log or app debug output to see the final URL being requested, not just the visible base URL field.
Use one small request first. Large retries can spend balance, hide the original cause, and create confusing logs.
Diagnostic decision tree
Work through these checks in order. The goal is to isolate the failing layer before editing unrelated settings or sending another expensive request.
| Check | Action | Pass result | Fail result |
|---|---|---|---|
| Minimal request | Run the smallest check from this page with the same key, endpoint shape, and one public model slug. | The account and basic route probably work; move to client settings, hidden context, tools, or retries. | Fix auth, base URL, balance, model slug, or current route health before testing advanced features. |
| Client final URL | Inspect the actual URL or provider profile the client sends, not only the visible settings field. | Continue with request body, model slug, payload size, and feature compatibility checks. | Correct host/base/full-endpoint confusion before changing keys or model families. |
| Balance movement | Compare dashboard balance before and after one tiny diagnostic request. | If charged and no answer arrives, collect the support packet before retrying large prompts. | If not charged, focus first on request rejection, wrong endpoint, auth, or client-side failure. |
| Feature isolation | Disable streaming, tools, images, file context, long history, and automation loops for one retry. | Re-enable one feature at a time until the failing layer is identified. | Keep the request small and do not use production retries as the diagnostic method. |
| Route health | Check Service Status and try a tiny prompt on one nearby public model row if your workflow allows it. | Use a documented fallback only if quality and cost are acceptable. | Wait, switch safely, or contact support with timestamps instead of hammering the failing route. |
Prevent it next time
Write down whether each tool wants a host, base URL, or full endpoint. Those labels look similar, but they produce different final request URLs once the client appends its own route.
Minimum support packet
Collect these details before opening support. This avoids exposing secrets while giving enough context to match logs and reproduce the public failure path.
| Field | Why support needs it |
|---|---|
| Timestamp | Use UTC or include timezone so logs can be matched accurately. |
| Endpoint path | Include /v1, /anthropic, or the exact client route shape involved. |
| Public model slug | Send the customer-facing slug, not a private key, upstream account name, or hidden route. |
| Exact error text | Include the visible wrong base URL message and any HTTP status shown by the client. |
| Minimal request result | State whether the tiny check on this page works with the same key. |
| Balance movement | State whether balance changed after the failed request or only after retries. |
| Client and feature flags | Name the tool, SDK, streaming setting, image input, tools, file context, or automation loop involved. |
When to contact support
Contact support when a minimal reproducible check still fails, when the dashboard history does not match what your client received, or when usage appears charged but no usable answer reached the client.
- Include timestamp, endpoint path, public model slug, exact error wording, and whether the same key works on a minimal request.
- Include whether the dashboard balance changed and whether the client retried in the background.
- Do not send secrets, full API keys, regulated data, or private production prompts in public support messages.
Open the support bot after collecting the reproducible details.
Related sources
Use these pages to verify the exact base URL, model slug, billing behavior, service status, or broader troubleshooting route before changing unrelated settings.