⚠️

Claude Code API Hatası Analizi

10 Deneme Sonrası API Error - Kapsamlı Çözüm Rehberi

7
Olası Sebep
12
Kontrol Noktası
5
Çözüm Adımı

📝 Basit Anlatım (Herkes İçin)

Claude Code başında düzgün çalışıyor ancak birkaç işlem (10 deneme) sonrası API hatası veriyor. Bu sorun, Claude Code ile Anthropic sunucuları arasındaki iletişimde bir problem olduğu anlamına geliyor.

Basit açıklama: Telefon görüşmesini düşün. Başta konuşma iyi gidiyor, ancak 10 dakika sonra hattın diğer tarafı konuşmayı kapatıyor veya yanıt vermiyor. Bu olması gereken bir şey değil.

Neden önemli? Bu hata nedeniyle Claude Code ile çalışamıyorsunuz. Her 10 deneme sonrası baştan başlamanız gerekiyor, bu da verimliliği ciddi oranda düşürüyor.

🔧 Teknik Detaylar (Geliştiriciler İçin)

Claude Code 10 deneme yapıyor ve sonra "API Error" döndürüyor. Bu genellikle şu kaynaklardan birinden geliyor:

🎯 Olası Sebepler (7 Kategori)

1️⃣ API Rate Limiting (Hız Limitleri)

YÜKSEK İhtimal

Claude Code çok hızlı ardışık istekler gönderiyorsa, Anthropic API "429 Rate Limit Error" döndürüyor.

Sebepleri:

Kontrol Noktaları:

# 1. Açık session sayısını kontrol et ps aux | grep -i claude # 2. Ağ trafiğini izle (hangi porttan istek gidiyor?) netstat -tlnp | grep -i -E 'claude|api' # 3. API istatistiklerini kontrol et claude /cost # 4. Timeout ayarlarını kontrol et cat ~/.claude/settings.json | grep -i timeout

2️⃣ API Key / Authentication Sorunları

YÜKSEK İhtimal

API anahtarınız geçersiz, süresi dolmuş veya kısıtlı erişim izni var olabilir.

Sebepleri:

Kontrol Noktaları:

# 1. Kimlik doğrulamayı sıfırla claude /logout # 2. Yeniden giriş yap claude # 3. Auth bilgilerini temizle ve sıfırla rm -rf ~/.config/claude-code/auth.json claude # 4. Settings'te API key var mı kontrol et cat ~/.claude/settings.json | grep -i api cat .claude/settings.json | grep -i api

3️⃣ Network/Connection Sorunları

ORTA İhtimal

İnternet bağlantınız stabil değil veya Proxy/Firewall API isteklerini engelliyor olabilir.

Sebepleri:

Kontrol Noktaları:

# 1. Network bağlantısını test et ping -c 5 8.8.8.8 # 2. API endpoint'ine ulaşabildiğini test et curl -I https://api.anthropic.com # 3. DNS ayarlarını kontrol et nslookup api.anthropic.com # 4. Aktif network adapter'ları listele ip link show # 5. Proxy ayarlarını kontrol et echo $HTTP_PROXY $HTTPS_PROXY

4️⃣ Token Limitleri ve Context Window

YÜKSEK İhtimal

İstek çok büyük veya context window dolmuş olabilir. 10. deneme sırasında context window limitine ulaşabilirsiniz.

Sebepleri:

Kontrol Noktaları:

# 1. Context boyutunu kontrol et claude /compact # 2. Token kullanımını göster claude /cost # 3. CLAUDE.md dosya boyutunu kontrol et wc -l /var/www/vhosts/tuufi.com/httpdocs/CLAUDE.md du -h /var/www/vhosts/tuufi.com/httpdocs/CLAUDE.md # 4. Model'in max context window'unu kontrol et claude --help | grep -i token

5️⃣ Retry Mekanizması Ayarları

ORTA İhtimal

Claude Code'un retry mekanizması 10 denemeden sonra pes ediyor. Bu ayarlar yanlış konfigüre edilmiş olabilir.

Sebepleri:

Kontrol Noktaları:

# 1. Claude Code settings'ini kontrol et cat ~/.claude/settings.json cat .claude/settings.json # 2. Timeout ayarlarını ara grep -r "timeout\|retry\|attempt" ~/.claude/ 2>/dev/null # 3. Environment variables'i kontrol et env | grep -i -E 'claude|timeout|retry|api' # 4. Network timeout'unu artır export CLAUDE_TIMEOUT=60000 # 60 saniye

6️⃣ Settings/Configuration Sorunları

ORTA İhtimal

Claude Code settings dosyaları (JSON) yanlış konfigüre olmuş veya bozulmuş olabilir.

Sebepleri:

Kontrol Noktaları:

# 1. Settings dosyasını valide et cat ~/.claude/settings.json | jq . > /dev/null && echo "OK" || echo "INVALID JSON" cat .claude/settings.json | jq . > /dev/null && echo "OK" || echo "INVALID JSON" # 2. MCP configuration'ını kontrol et cat .mcp.json 2>/dev/null | jq . > /dev/null && echo "OK" || echo "INVALID" # 3. Settings dosyalarını sıfırla (BACKUP AL ÖNCE!) cp ~/.claude/settings.json ~/.claude/settings.json.backup rm ~/.claude/settings.json # 4. Claude doctor çalıştır claude /doctor

7️⃣ Anthropic Sunucu Sorunları

DÜŞÜK İhtimal

Anthropic API'nin kendi sunucularında sorun olabilir (nadirdir ancak mümkün).

Sebepleri:

Kontrol Noktaları:

# 1. API status'unu kontrol et curl https://status.anthropic.com # 2. Claude Code version'ını kontrol et claude --version # 3. Anthropic docs'taki API change log'unu oku # https://platform.claude.com/docs # 4. Problemi report et claude /bug

✅ Adım Adım Çözüm (5 Seviye)

Level 1: Basit Kontroller (2-5 dakika)

Başla buradan! Bu sorunların %40'ı burada çözülüyor.

Adım 1.1: Claude Code'u Yeniden Başlat

# Tüm Claude Code process'lerini kapat pkill -f claude # 2-3 saniye bekle sleep 3 # Yeniden aç claude

Adım 1.2: Açık Session'ları Kapat

# Açık session sayısını kontrol et ps aux | grep -i claude | grep -v grep # Eğer 1'den fazla varsa hepsini kapat pkill -9 -f claude

Adım 1.3: Ağ Bağlantısını Test Et

# İnternet bağlantısını test et ping -c 3 google.com # Anthropic API'ye erişimi test et curl -s https://api.anthropic.com > /dev/null && echo "API OK" || echo "API ERR"

Adım 1.4: Claude Doctor Çalıştır

claude /doctor # Çıktıda kırmızı işaretler varsa dikkate al

✅ Sonuç: Eğer bu adımlardan sonra sorun çözülmüşse, problem kapandı. Değilse Level 2'ye geç.

Level 2: Authentication Reset (5-10 dakika)

Bu adımlar %30 oranında sorun çözer.

Adım 2.1: Kimlik Doğrulamayı Sıfırla

# Claude Code'dan çık claude /logout # Auth cache'i temizle rm -rf ~/.config/claude-code/auth.json # Yeniden giriş yap (fresh login) claude # Giriş talimatlarını takip et

Adım 2.2: API Key Doğrulaması

# Settings'te API key var mı kontrol et cat ~/.claude/settings.json 2>/dev/null | grep -i "api_key\|apiKey" # Eğer API key manuel olarak ayarlanmışsa sil # (OAuth token daha güvenlidir) # Ardından logout/login yap

✅ Sonuç: Fresh login yapıldıktan sonra yeniden test et. Sorun çözülmüşse bitti. Değilse Level 3'e geç.

Level 3: Configuration Temizliği (10-15 dakika)

Bu adımlar %20 oranında sorun çözer. ⚠️ BACKUP AL!

Adım 3.1: Settings Dosyasını Valide Et

# User settings cat ~/.claude/settings.json | jq . > /dev/null 2>&1 && echo "✅ User settings OK" || echo "❌ User settings INVALID" # Project settings cat .claude/settings.json 2>/dev/null | jq . > /dev/null 2>&1 && echo "✅ Project settings OK" || echo "⚠️ Project settings NOT FOUND or INVALID" # MCP config cat .mcp.json 2>/dev/null | jq . > /dev/null 2>&1 && echo "✅ MCP config OK" || echo "⚠️ MCP config NOT FOUND or INVALID"

Adım 3.2: Bozuk Settings'i Düzelt

# ÖNCE BACKUP AL! cp ~/.claude/settings.json ~/.claude/settings.json.backup.$(date +%s) # Settings dosyasını sil (sıfırlanacak) rm ~/.claude/settings.json # Claude Code yeniden açılacak ve varsayılan settings oluşturacak claude # İhtiyaç varsa backup'tan restore et # cp ~/.claude/settings.json.backup.TIMESTAMP ~/.claude/settings.json

Adım 3.3: Problematic Plugins'i Devre Dışı Bırak

# .claude/settings.json'ı aç ve kontrol et cat .claude/settings.json # Eğer enabledPlugins bölümünde hata varsa: # Tüm plugin'leri devre dışı bırak (test amacıyla)

✅ Sonuç: Fresh settings ile yeniden test et. Sorun çözülmüşse bitti. Değilse Level 4'e geç.

Level 4: Advanced Diagnostics (15-30 dakika)

Bu adımlar %8 oranında sorun çözer. Teknik derinlemesine kontrol.

Adım 4.1: Network Trafiğini İzle

# Claude Code'u başlat (arka planda) claude & # Network trafiğini izle (başka terminal'de) # API request'lerini göreceksin tcpdump -i any -n 'tcp port 443' | grep -i anthropic # Veya curl ile test et curl -v https://api.anthropic.com 2>&1 | head -20

Adım 4.2: API Response'ı Ayrıntılı Kontrol Et

# Request'in response code'unu kontrol et curl -i -X POST https://api.anthropic.com/v1/messages \ -H "Content-Type: application/json" \ -H "anthropic-version: 2023-06-01" \ -H "x-api-key: YOUR_API_KEY" \ 2>&1 | head -15 # Beklenen: HTTP 200 veya HTTP 400 (not 401/429/500/529)

Adım 4.3: Environment Variables'i Kontrol Et

# Claude Code'un kullandığı environment variables env | grep -i -E 'claude|anthropic|api|timeout|proxy' | sort # Proxy ayarlanmışsa kontrol et echo "HTTP_PROXY: $HTTP_PROXY" echo "HTTPS_PROXY: $HTTPS_PROXY" echo "NO_PROXY: $NO_PROXY" # Eğer proxy sorunu varsa: unset HTTP_PROXY unset HTTPS_PROXY unset NO_PROXY

Adım 4.4: Large Context Simulation

# Context boyutunu test et claude /compact # Token sayısını göster claude /cost # Model info'yu göster claude --help | grep -i context

✅ Sonuç: Detaylı diagnostics ile root cause'u belirle. Sorun çözülmüşse bitti. Değilse Level 5'e geç.

Level 5: Nükleer Reset (30-45 dakika)

⚠️ KAPSAMLI RESET - Son çare! %2 oranında sorun çözer.

Adım 5.1: Tüm Claude Code Dosyalarını Sıfırla

# ÇOK ÖNEMLİ: Tüm dosyaları BACKUP AL! mkdir -p ~/claude-backup-$(date +%Y%m%d-%H%M%S) cp -r ~/.claude ~/claude-backup-$(date +%Y%m%d-%H%M%S)/ cp -r ~/.config/claude-code ~/claude-backup-$(date +%Y%m%d-%H%M%S)/ cp ~/.claude.json ~/claude-backup-$(date +%Y%m%d-%H%M%S)/ 2>/dev/null # Tüm Claude Code state'ini sıfırla rm -rf ~/.claude rm -rf ~/.config/claude-code rm ~/.claude.json 2>/dev/null # Claude Code'u temiz kurulumuyla başlat claude # Giriş talimatlarını takip et (fresh setup)

Adım 5.2: Claude Code'u Yeniden Kur

# Claude Code'u kaldır npm uninstall -g @anthropic-ai/claude-code # Veya native installation'ı kaldır rm -rf ~/.local/bin/claude # Yeniden kur (native recommended) curl -fsSL https://claude.ai/install.sh | bash # Verify claude --version

Adım 5.3: Sistem Bağlantısını Test Et

# System level network test curl -v https://api.anthropic.com 2>&1 | grep -E "HTTP|Connected" # DNS test nslookup api.anthropic.com # Firewall test sudo iptables -L -n 2>/dev/null | grep -i 443 # Proxy test (eğer kurumsal ağda) curl -v -x [PROXY]:PORT https://api.anthropic.com

❌ Hala sorun yaşıyorsan: Anthropic Support'a başvur. /bug komutu ile hata bildir. Backup'larından restore et.

📊 Hızlı Tanı Tablosu

Hata Mesajı Muhtemel Sebep İlk Çözüm Detaylı Çözüm
429 Rate Limit Çok hızlı istek Bekleme Level 1: Claude'u restart + Açık session'ları kapat
401 Unauthorized API key geçersiz /logout, /relogin Level 2: Auth reset
500 Server Error Anthropic sunucu hatası Bir kaç dakika bekle Level 4: İnternet connection kontrol
529 Overloaded API sunucuları aşırı yüklü Daha sonra yeniden dene Peak hours'dan kaçın (9-17 UTC)
Invalid JSON Settings dosyası bozuk Settings dosyasını sil Level 3: Configuration temizliği
Connection Timeout Network sorunları VPN/Proxy kontrol Level 4: Network diagnostics
After 10 attempts Retry limit aşıldı Context window kontrol Level 4: /compact yap, token boyutunu azalt

💡 Advanced Tips

🔧 Settings Optimization

{ "model": "sonnet", "timeout": 60000, "retryAttempts": 5, "retryDelay": 2000, "maxContextSize": 100000, "enableCompactMode": true, "permissions": { "defaultMode": "acceptEdits" } }

⚠️ Önemli Seçenekler:

⚡ Environment Variables

# ~/.bashrc veya ~/.zshrc'ye ekle export CLAUDE_TIMEOUT=120000 export CLAUDE_MAX_RETRIES=5 export CLAUDE_RETRY_DELAY=2000 export CLAUDE_LOG_LEVEL=debug export ANTHROPIC_API_TIMEOUT=120 export ANTHROPIC_CONNECT_TIMEOUT=30 # Eğer proxy varsa: export HTTP_PROXY=http://proxy.company.com:8080 export HTTPS_PROXY=http://proxy.company.com:8080 export NO_PROXY=localhost,127.0.0.1,.company.com

🚀 Performance Optimization

📞 Anthropic Support İletişim

Yukarıdaki adımları denedikten sonra hala sorun varsa:

📋 Hızlı Kontrol Listesi

Bugün Yapılacaklar

  • Claude Code'u restart et
  • /doctor çalıştır
  • /logout ve /login yap
  • Network bağlantısını test et
  • Settings dosyasını valide et
  • Açık session'ları kapat

Bu Hafta Yapılacaklar

  • CLAUDE.md dosyasını optimize et
  • Context boyutunu azalt (/compact)
  • Settings.json'ı ayarla (timeout, retry)
  • Plugins'i gözden geçir
  • MCP configuration'ını kontrol et
  • Network/Proxy ayarlarını düzelt