Production

Troubleshooting

Common problems, by symptom.

The OpenAI SDK base URL must end with /v1; the Anthropic SDK base URL must not. Also check the model ID spelling.

Check that the API key is complete with no stray spaces or line breaks, and that the header is Authorization: Bearer <key>. The Anthropic format uses x-api-key.

Check your balance in the console, and whether the key is disabled or restricted.

Model IDs are case-sensitive and must match the model catalog. GET /v1/models lists what your key can use.

Reasoning models think for a while. Use streaming, set the client timeout to 300 seconds or more, and check that the output cap is not excessive.

A reverse proxy in between is buffering. Disable buffering (e.g. Nginx proxy_buffering off) and make sure your client reads line by line.

Reasoning models usually reject temperature, max_tokens and similar parameters. Remove sampling parameters and use max_completion_tokens.

finish_reason: length (or stop_reason: max_tokens in the Anthropic format) means the output cap was hit. Raise it.

Use structured output and check whether the reply was cut off by the output cap.

Make sure the model has the Vision capability and the image URL is publicly reachable; otherwise send base64.

Quick check

Confirm your endpoint and key work (-i prints the status line and headers):

curl -sS -i https://api.link-io.cloud/v1/models \
  -H "Authorization: Bearer $API_KEY"

Still stuck? Note the request time, model, status code and response body, and contact us through the console.