Ana sayfa → Yardım

Claude Code ve Codex aynı ağ geçidinde farklı base URL'ler ister

Anthropic tarzı istemciler (Claude Code, Anthropic SDK) /v1/messages'i kendileri ekler, bu yüzden base URL sunucu adında bitmelidir. OpenAI tarzı istemciler (Codex, OpenAI SDK, Cursor, Cline) hiçbir şey eklemez, bu yüzden onlarınki /v1 ile bitmelidir.

Gördüğünüz hata

Neden oluyor

İki SDK soyu, iki gelenek, tek bir ağ geçidi adı. İki istemci de hatalı değil; yalnızca /v1 segmentinin kime ait olduğu konusunda anlaşamıyorlar. Tersini yaparsanız ya /v1/v1/… ya da hiç sürüm içermeyen bir yol elde edersiniz.

Ortaya çıkan 404'te hata ayıklamak alışılmadık derecede zordur, çünkü istek çoğu zaman API'ye hiç ulaşmaz. Web sitesini aynı alan adında sunan bir ağ geçidi, bilinmeyen yollara pazarlama sayfasıyla yanıt verir – HTTP 200, Content-Type: text/html. İstemci HTML'i JSON olarak ayrıştırmaya çalışır ve gerçek sebebin yakınından bile geçmeyen bir sözdizimi hatası bildirir.

Bu, hatanın sağlayıcı tarafında iz bırakmadığı anlamına da gelir. Destek ekibi anahtarınızdan istek görmediğini söyleyecektir ve doğruyu söylüyordur: İstek, bir API çağrısına dönüşmeden önce bir web sunucusu tarafından yanıtlanmıştır.

Sebebin bu olduğunu doğrulayın

Gövdeyi okumak yerine içerik türünü isteyin – tek komut meseleyi çözer:

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":"YOUR_MODEL","messages":[{"role":"user","content":"hi"}]}'

application/json URL'nin doğru olduğunu gösterir – yanlış bir anahtar bile JSON ile yanıt verir. text/html bir web sitesiyle konuştuğunuzu ve sorunun base URL olduğunu gösterir.

Nasıl düzeltilir

  1. Ürün adına göre değil, SDK soyuna göre karar verinAnthropic SDK üzerine kurulu her şey çıplak sunucu adını ister; OpenAI uyumlu her şey /v1 ister. Yeni araçlar kendi talimatlarına ihtiyaç duymadan bu ikisinden birine yerleşir.
  2. Sondaki eğik çizgiyi kaldırınBazı istemciler yolları özensizce birleştirir ve / ile biten bir base URL, API yerine web sitesine yönlenen çift eğik çizgi üretebilir.
  3. Anahtardan önce içerik türünü kontrol edinHTML yanıtı, isteğin API'ye hiç ulaşmadığı anlamına gelir. O noktada anahtar yenilemek hiçbir şey değiştirmez ve bir öğleden sonranıza mal olur.
  4. Önce sağlayıcının kendi örneklerini birebir kullanınÇalıştığı bilinen bir yapılandırmayı çalıştırın, sonra her seferinde tek bir şeyi değiştirin. Kurulum hatalarının çoğu aynı anda iki hatadır.
İstemciBase URL şöyle olmalı
Claude Codeyalnızca sunucu adı – /v1 olmadan
Anthropic SDKyalnızca sunucu adı – /v1/messages yolunu kendisi ekler
Codex/v1 ile bitmeli
OpenAI SDK (Python, Node, Go)/v1 ile bitmeli
Cursor, Cline, Roo Code/v1 ile bitmeli
Cherry Studio, Chatbox, LobeChat/v1 ile bitmeli
APICLAN'da: Claude Code ve Anthropic SDK için https://apiclan.us, Codex ve OpenAI uyumlu her şey için https://apiclan.us/v1. Her istemci için kopyala-yapıştır yapılandırmalar hızlı başlangıç sayfasında.

İlgili konular

OpenAI uyumlu bir API'yi çağırırken Unexpected token '<' hatası401 invalid API key – anahtar doğru göründüğü halde hata veriyorsa

Son kontrol: 2026-10-01. Canlı bir OpenAI uyumlu ağ geçidinde teşhis edilen sorunlardan yazılmıştır, başka sitelerden derlenmemiştir.