A 404 does not always mean the website is missing. In an AI API workflow it usually points to one of two problems: the request went to the wrong path, or the configured model ID does not exist. Some clients also turn an access mismatch into model_not_found, so endpoint, model, and key permissions should be checked together.
Identify the Type of 404
Look at the original response body, not only the client popup:
| Error pattern | Likely cause |
|---|---|
| HTML-style page not found | Incorrect API path |
model_not_found | Wrong or unavailable model ID |
not_found_error | Claude path or model configuration issue |
| Generic request failed | Open client logs to find the actual response |
Finding the raw status and message usually saves more time than changing random settings.
Check /v1 for OpenAI-Compatible Tools
OpenAI SDKs, Codex, and most desktop clients normally use:
https://zivv.pro/v1Common mistakes include:
- Using
https://zivv.prowhen the client does not append/v1 - Entering the full chat completions path and letting the client append it again
- Copying an invisible character with the URL
Set the base URL only through /v1; let the SDK add the operation path. Current paths are listed in the endpoint reference.
Claude Code is the exception:
export ANTHROPIC_BASE_URL=https://zivv.proDo not add /v1 to the Claude Code base URL.
Copy the Exact Model ID
A model ID is not a marketing display name. Case, hyphens, and version suffixes matter. Copy the current name from Model Hub or retrieve the list:
curl https://zivv.pro/v1/models \
-H "Authorization: Bearer sk-your-key"Copy the returned id value. Models can be added, migrated, or retired, so an old tutorial may contain a stale name.
Check the Key Group
A platform can expose several groups for Claude Code, OpenAI-compatible calls, and other workflows. A public model listing does not guarantee every key has identical access.
Verify that:
- The key group supports the target model
- The key does not have a restrictive model allowlist
- The key is active and unexpired
- The model is available through the protocol your client uses
If one key can call GPT but not Claude, inspect group and protocol settings before reinstalling the client.
Clear Stale Client Models
After model changes, a client may preserve an old selection. Refresh the model list, remove stale custom entries, copy the current ID, select the correct provider again, and fully restart the client.
Codex and scripts may define the model in project settings, user settings, and environment variables at the same time. Keep one clear source of truth to avoid silent overrides.
Verify with a Minimal Request
Once the endpoint and ID are confirmed, send a small request without tools, images, or long context:
curl https://zivv.pro/v1/chat/completions \
-H "Authorization: Bearer sk-your-key" \
-H "Content-Type: application/json" \
-d '{"model":"your-model-id","messages":[{"role":"user","content":"Reply OK"}]}'If this succeeds, the platform, key, endpoint, and model are working. The remaining problem is in the original client or request payload.
404 Checklist
- Use
https://zivv.pro/v1for OpenAI-compatible tools - Use
https://zivv.profor Claude Code - Copy the current model ID
- Confirm the key group allows that model
- Remove stale client entries
- Reproduce with a minimal curl request
See the Codex setup guide for full configuration and the error reference for response fields. New users can also repeat the four checks in the quickstart.