When GPT reports model not found, first identify whether the error comes from ChatGPT or a custom API. Model IDs, access permissions, request paths or server-side routing can make an API model unavailable; /v1/v1 indicates a duplicated path segment. The message alone does not mean you need to add funds. Do not keep repeating the same failing request.
First distinguish ChatGPT from API errors
| Where the error appears | First checks | What not to assume |
|---|---|---|
| Official ChatGPT website or app | Check your account and available models, try a new conversation and check the official service status. Contact official support if the issue persists. | You do not need an AIFast Link base URL. Adding funds to a third-party API cannot fix the official ChatGPT website. |
| Third-party chat application | Check the actual provider, client version, custom model field and final request URL. | A model's display name may differ from the model ID sent in the request. |
| Your own code or API client | Record the status code and redacted error response, then check the model ID, key permissions, endpoint and group. | A 404 does not necessarily mean insufficient funds or a retired model. |
What should you check first when the ChatGPT website shows model not found?
If the error appears in the official ChatGPT website or app, note the account, selected model and time, then start a new conversation with a currently available model for comparison. Only an old conversation failing is different from every new conversation failing; this comparison alone cannot prove model retirement or changed account permissions. If failures persist, send redacted details to official support rather than applying the Link API commands below.
For a third-party client error, first identify the request destination
Check the actual request host and model field, not just the GPT label in the interface. Official account sign-in, third-party API keys and keys from different providers are not interchangeable; only send a provider the key it issued. If the path is correct but the same key still fails, use the response types below to investigate permissions and routing.
The remaining steps cover AIFast Link API integration. The documentation review date is 2026-10-26; it is not evidence of paid testing of every model or an announcement of a current outage.
Model not found on Link: check protocol and group
The Link model directory is not an authorization list for every key. Query /v1/models using your Link key, check the exact ID and key group, and confirm both plan group coverage and model visibility.
gpt-image-2 is intended for image generation; its presence in a GPT list does not make it a Codex chat model. Include /v1 in the OpenAI SDK base URL, but not in the Claude Code base address. The final path must not contain /v1/v1.
Review Link funding and monthly-plan rules
Quick conclusion
Query /v1/models on the same domain with the same key, copy the exact id and inspect the client's final URL. If the target model is absent, check permissions, group and availability. A listed model may not support every protocol. An HTML error page may come from the frontend, a proxy or a security layer; it does not establish whether the model exists.
| Observed response | Priority check | Next step |
|---|---|---|
| 404 JSON containing model_not_found | Exact model ID, current key permissions and selected endpoint | Query the catalog with the same key. If the configuration is correct, ask the provider to investigate routing. |
| 404 or 200 with an HTML body | Host, full path, proxy and security pages | Check Content-Type. Do not parse the page as a JSON model response. |
| 401 or 403 | Authentication headers, key validity and resource permissions | Resolve authentication or permissions before changing models. |
| 429 | Quota or rate-limit details in the error body | Address the specific cause. Not every 429 means insufficient funds. |
| 5xx, timeout or connection failure | Service status, network and upstream availability | Use bounded retries with backoff. Keep the request ID if failures persist. |
Error codes vary across compatible services. Use the status code, Content-Type and error body together instead of relying on one error phrase.
Check before you start
Log the full URL and model fields that the client actually sent. Don't just look at what is filled in the settings page, because the client may automatically append paths or replace model aliases.
When you are not sure how the addresses will be spliced, you can use Base URL online checkerGenerate recommended values and final request path. This tool only analyzes the URL string in the browser, does not request the target API, and does not require an API Key.
Reproducible path check: why does /v1/v1 appear?
This is a local path reproduction, not a customer incident, and no paid model request is sent. You can repeat the inputs and check the expected outputs and limitations in your browser.
- In the URL checker, enter
https://www.aifast.link/v1, with the option for the client to append this suffix unchecked:/v1. The suggested Base URL should keep that address, and the Chat request URL should behttps://www.aifast.link/v1/chat/completions. - Select the option only after confirming that the client automatically appends
/v1. In that case, the suggested Base URL is the root addresshttps://www.aifast.link. The final Chat path should still contain only one/v1. - Compare the client's actual logs. If it still sends requests to
/v1/v1/chat/completions, correct the client's URL assembly. The tool does not change the client settings or verify model permissions or upstream availability.
Correcting the path rules out only one configuration issue. If model_not_found persists, check the exact model ID and endpoint with the same key. A passing path check is not a successful model call.
Configuration steps
Get the real model ID
curl --connect-timeout 10 --max-time 30 --include https://www.aifast.link/v1/models \
-H "Authorization: Bearer ${AIFAST_API_KEY:?Set AIFAST_API_KEY locally before running}"
Copy from returned results id field. The following content usually cannot be used directly as model ID:
- Web card title.
- Chinese model name.
- Manufacturer name.
- Marketing labels such as “latest”, “flagship” and “high-speed”.
For a long model list, use the separate Link repository's offline checker to match data[].id exactly. Keep JSON without headers or keys outside the repository. The checker makes no network requests and reads no environment variables. Exit code 0 means the snapshot contains the ID, 2 means absent, and 1 means invalid input. A match does not prove a successful call. The Gemini examples also explain case-sensitive IDs and protocol differences.
Offline model-ID checks and Gemini protocol examples
Check final URL
A correct Chat Completions request usually looks like:
https://www.aifast.link/v1/chat/completions
Error example:
https://www.aifast.link/v1/v1/chat/completions
https://www.aifast.link/chat/completions
https://www.aifast.link/v1/models/chat/completions
If the client automatically appends /v1, Base URL fills in the root domain name; if the client requires a complete compatible address, keep it /v1.
Endpoint and client limitations
It is in the model list, but the call still does not exist
The model may only support specific APIs or the current account permissions may be different. Check whether the model supports Chat Completions, Responses, image or video tasks, and do not use text APIs to call non-text models.
404 returns the web page HTML
This indicates that the request may have landed on the front-end site rather than the API route. Check the host, path and reverse proxy and do not return HTML error pages as models.
The tool automatically changes the model name
Some clients only allow built-in models or map display names to fixed IDs. Check the request log to confirm the final sent value; use the custom model function provided by the client if necessary.
Next step
Submit redacted diagnostic details
Verify that the request domain belongs to your chosen provider and keep the key in a local environment variable. Before sharing the details below with support, remove Authorization, cookies, complete keys, user input and sensitive URL query parameters. Never publish unredacted debug logs.
Client and version:
Time and timezone:
Request method and URL (redacted):
Model ID and endpoint:
HTTP status and Content-Type:
Error code and message (redacted):
Request ID (if provided):
Same model visible with the same key: yes / no
After correcting the model name and address, use non-streaming short request verification. After the short request succeeds, tool calls, long context, and streaming output are resumed.
If it still returns 401, 429, or 5xx, continue checking API error troubleshooting; If the address is correct but the real model and protocol need to be verified, runFree model checking.
When converting a project using a community protocol such as Cursor2API, the model directory may also change with the upstream entry. Please combine Cursor2API Risk Check and Migration GuideDetermine whether the model ID configuration is incorrect or the upstream model has been adjusted.