SyntaxError: Unexpected token '<', "<!doctype "... is not valid JSONjson.decoder.JSONDecodeError: Expecting value: line 1 column 1 (char 0)invalid character '<' looking for beginning of valueError: Invalid JSON response bodyDie meisten OpenAI-kompatiblen Gateways liefern Website und API über dieselbe Domain aus. Fragen Sie einen Pfad an, den die API nicht kennt, bekommen Sie kein sauberes 404 – sondern das Frontend der Website, mit HTTP 200 und Content-Type: text/html.
Aus Sicht des Clients war alles erfolgreich, also parst er den Body. Der Fehler, den Sie sehen, ist ein JSON-Parser, der sich über das erste Zeichen eines HTML-Dokuments beschwert – und das deutet nirgendwo in die Nähe des eigentlichen Problems.
Das heißt auch: Der fehlgeschlagene Aufruf hinterlässt in den Fehlerlogs des Anbieters meist keine Spur – ein 200 ist kein Fehler. Der Support wird Ihnen sagen, dass er nichts Auffälliges sieht, und das stimmt.
Mit einem Befehl bestätigen: Senden Sie eine Anfrage und schauen Sie auf den Content-Type statt auf den Body:
curl -s -o /dev/null -w '%{http_code} %{content_type}\n' \
-X POST 'YOUR_BASE_URL/chat/completions' \
-H 'Authorization: Bearer YOUR_KEY' \
-H 'Content-Type: application/json' \
-d '{"model":"MODEL","messages":[{"role":"user","content":"hi"}]}'
Ein funktionierender Endpunkt antwortet mit application/json – selbst bei falschem Schlüssel bekommen Sie JSON, das genau das sagt. Sehen Sie text/html, liegt es an der URL, nicht am Schlüssel.
| Client | Base URL sollte |
|---|---|
| OpenAI SDK (Python, Node, Go) | auf /v1 enden |
| Codex, Cherry Studio, Chatbox, LobeChat | auf /v1 enden |
| Anthropic SDK | kein /v1 – es hängt /v1/messages selbst an |
| Claude Code | kein /v1 – aus demselben Grund |
https://apiclan.us/v1 für Clients im OpenAI-Stil und https://apiclan.us für Claude Code. Die vollständige Einrichtung für jeden Client steht im Schnellstart.Zuletzt geprüft am 2026-10-01. Geschrieben aus Problemen, die auf einem laufenden OpenAI-kompatiblen Gateway diagnostiziert wurden – nicht von anderen Seiten zusammengetragen.