---
title: "Twitter API 429, 403 ve 401 Hataları: Nedenleri ve Çözümleri"
description: "X (Twitter) API'deki 429 Too Many Requests, 403 Forbidden ve 401 Unauthorized hatalarını çözün: her kodun resmi X API'de ve TwexAPI'de ne anlama geldiği, hangi başlıklara bakmanız gerektiği ve ne zaman yeniden denemeniz gerektiği."
lastModified: "2026-10-19"
sidebar:
  label: "429, 403 ve 401 Hataları"
seo:
  title: "Twitter API 429, 403 ve 401 Hatası Çözümü"
search:
  tags: ["twitter 429 hatası", "x api 429", "twitter api 403 forbidden", "twitter api 401 unauthorized", "Request failed with status code 401", "x-rate-limit-reset"]
---

**Kısa cevap:** `429`, çok fazla istek gönderdiğiniz ve beklemeniz gerektiği anlamına gelir. `403`, kimlik bilgileriniz geçerli ama bu işlem için yetkiniz olmadığı anlamına gelir. `401`, kimlik bilgilerinizin eksik veya hatalı olduğu anlamına gelir. Beklemekle düzelen tek hata `429`'dur; `403` ve `401` siz isteği, kimlik bilgilerini veya erişimi değiştirene kadar aynı hatayı döndürmeye devam eder.

| Kod | Anlamı | Önce kontrol edin | Yeniden denenir mi? |
| :--- | :--- | :--- | :--- |
| **429 Too Many Requests** | Hız sınırına, kullanım üst sınırına veya hesabın günlük sınırına ulaşıldı | `x-rate-limit-reset` veya `Retry-After` başlığı | ✅ Belirtilen süre beklendikten sonra |
| **403 Forbidden** | Kimlik doğrulandı ama bu endpoint, işlem veya hesap için izin yok | Uygulama erişimi, token türü, izinler, Credits, hedef hesap | ❌ Önce erişimi düzeltin |
| **401 Unauthorized** | Kimlik bilgileri eksik, geçersiz, süresi dolmuş veya yanlış imzalanmış | `Authorization` başlığı ve kullandığınız anahtar ya da token | ❌ Önce kimlik bilgilerini düzeltin |

API'yi doğrudan çağırıyor olun ya da hatayı bir araçta görün, çözüm aynıdır. `Request failed with status code 401` veya `status code 429` gibi mesajlar HTTP istemcisinden gelir (örneğin n8n ve birçok Node.js botunun kullandığı axios) ve çağırdığınız API'nin döndürdüğü durum kodunu taşır; anlamı aynıdır.

## Önce hatayı hangi API'nin döndürdüğünü kontrol edin

Aynı kodun nedeni, onu kimin döndürdüğüne göre değişir:

- **Resmi X API** (`api.x.com` veya `api.twitter.com`): hatalar X geliştirici platformunun uygulama, proje, OAuth ve hız sınırı pencerelerine ilişkin kurallarını izler.
- **TwexAPI** (`api.twexapi.io`): hatalar TwexAPI anahtarınız, Credits bakiyeniz ve yazma işlemlerinde gönderdiğiniz X oturumuyla ilgilidir. Tam liste için [TwexAPI hata kodu referansına](/tr/guides/error-reference) bakın.
- **x.com sitesi veya X uygulaması**: gezinirken görülen "Rate limit exceeded" mesajı, X'in hesabınıza uyguladığı sınırlardan gelir; herhangi bir geliştirici API'siyle ilgisi yoktur.

## Twitter API 429 Too Many Requests hatası

### Resmi X API'de

X, endpoint bazında genellikle 15 dakikalık veya 24 saatlik pencerelerle, uygulama ve kullanıcı başına ayrı sınırlar uygular. Her yanıtta üç başlık bulunur:

| Başlık | Anlamı |
| :--- | :--- |
| `x-rate-limit-limit` | Geçerli pencerede izin verilen istek sayısı |
| `x-rate-limit-remaining` | Geçerli pencerede kalan istek sayısı |
| `x-rate-limit-reset` | Pencerenin sıfırlanacağı Unix zaman damgası |

Bir sınırı aştığınızda X HTTP `429` döndürür. Eski v1.1 tarzı gövdelerde `88` hata kodu ve `Rate limit exceeded` görünür. Daha yeni problem yanıtları `rate-limit-exceeded` türünü, hesabınız bir hız penceresi yerine kullanım üst sınırına ulaştıysa `usage-capped` türünü kullanır.

Çözmek için:

1. **`x-rate-limit-reset` zamanına kadar bekleyin.** Daha önce yeniden denemek yeni bir `429` döndürür.
2. **`x-rate-limit-remaining` değerini izleyin.** Sıfıra indikten sonra değil, inmeden önce yavaşlayın.
3. **Günlük sınırları kontrol edin.** Gönderi paylaşma veya beğenme gibi bazı yazma endpoint'lerinin uygulama ya da kullanıcı başına 24 saatlik sınırları vardır. Birkaç dakika beklemek bunları sıfırlamaz.
4. **Önbellek kullanın ve istekleri yayın.** Aynı profili veya tweet'i tekrar tekrar çekmeyin ve tüm işleri saat başında aynı anda başlatmayın.

Kullandıkça öde modelindeki X API'de hız sınırları ve faturalama birbirinden ayrıdır. Bir istek sınırın altında kalsa bile faturanıza eklenebilir; bu yüzden önbellek hem kotadan hem de paradan tasarruf sağlar.

### TwexAPI'de

TwexAPI'deki bir `429`, istek kısıtlaması veya bir yazma işlemi sırasında X hesabı sınırına ulaşılması olabilir (örneğin gönderi sınırı için X kodu `344`, günlük DM sınırı için `502`). Varsa `Retry-After` başlığına veya `retry_after` alanına uyun. Hesabın günlük sınırları kısa bir yeniden denemeyle değil, sıfırlanma süresi dolunca kalkar. Geri çekilme ve sayfalamayı bozmadan kurtarma için [Hız Sınırları](/tr/guides/rate-limits) sayfasına bakın.

### Tarayıcıda x.com'da veya X uygulamasında

X, her hesabın yükleyebileceği içerik miktarını sınırlar. Kaydırırken "Rate limit exceeded" görürseniz yeniden yüklemeden önce bekleyin, fazla sekmeleri ve otomatik yenileyen eklentileri kapatın, çok kişinin kullandığı ortak ağlardan veya VPN çıkışlarından kaçının. Hesap olmadan herkese açık bir profile bakmak istiyorsanız ücretsiz [Twitter görüntüleyiciyi](https://twexapi.io/twitter-viewer) kullanabilirsiniz.

## Twitter API 403 Forbidden hatası

`403`, X'in veya TwexAPI'nin kimlik bilgilerinizi tanıdığı ama isteği reddettiği anlamına gelir. Aynı isteği tekrarlamak aynı `403`'ü döndürür.

### Resmi X API'de

| Neden | Nasıl görünür | Çözüm |
| :--- | :--- | :--- |
| **Uygulama kayıtlı değil veya erişimi yok** | `client-forbidden` problem türü; eski yanıtlarda `453` kodu ("You currently have access to a subset of…") | Bir Project'e bağlı uygulamanın anahtarlarını kullanın ve hesabınızın erişiminin bu endpoint'i kapsadığından emin olun |
| **Endpoint için yanlış token türü** | Yalnızca uygulama (app-only) Bearer Token ile gönderi paylaşma, beğenme, takip etme veya DM gönderme | Kullanıcı bağlamlı bir token kullanın: OAuth 1.0a access token ve secret ya da OAuth 2.0 kullanıcı token'ı |
| **Eksik izinler veya scope'lar** | Read only bir uygulamanın kullanıcı token'ı ya da `tweet.write` gibi scope'ları olmayan bir OAuth 2.0 token'ı | Uygulamayı Read and write olarak ayarlayın (gerekirse Direct Messages da ekleyin), ardından access token ve secret'ı **yeniden oluşturun** veya kullanıcıdan yeniden yetki alın |
| **Korumalı veya erişilemeyen kaynak** | `not-authorized-for-resource` problem türü | Hedef hesap gizli ya da içerik kısıtlı; kullanıcınızın görebileceği bir şey isteyin |
| **Yinelenen veya kısıtlı işlem** | Aynı metinli gönderi, yanıtları kısıtlanmış tweet'ler, zaten beğenilmiş tweet'ler | İçeriği değiştirin veya yeniden denemeden önce mevcut durumu doğrulayın |

Uygulama izinlerini değiştirmek mevcut token'ları güncellemez. Read and write'a geçtikten sonra yeni kullanıcı token'ları oluşturun; aksi halde gönderi paylaşmak `403` döndürmeye devam eder.

### TwexAPI'de

TwexAPI'deki bir `403` genellikle şunlardan biridir:

- **Credits bitti**: bakiyenizi [Get Balance](/tr/api-reference/balance-endpoints/get-balance-api-balance-get) ile kontrol edin ve [panelden](https://twexapi.io/dashboard) yükleme yapın.
- **Hedef hesap korumalı veya askıya alınmış**: gönderilerini yalnızca onaylı takipçileri okuyabilir. İsteği herkese açık bir hesaba yönlendirin.
- **Hesap veya işlem kısıtlaması**: yazma işlemi için verdiğiniz X hesabı askıya alınmış veya kilitlenmiş, tweet yanıtları kısıtlıyor (X kodu `433`) ya da işlem X Premium gerektiriyor.

Her mesaj ve çözümü [hata kodu referansında](/tr/guides/error-reference) listelenmiştir.

## Twitter API 401 Unauthorized hatası

`401`, isteğin kim olduğunuzu kanıtlayamadığı anlamına gelir. Kimlik bilgilerini düzeltin; değiştirmeden yeniden denemek asla işe yaramaz.

### Resmi X API'de

- **Hatalı başlık biçimi**: yalnızca uygulama istekleri tam olarak `Authorization: Bearer <token>` biçiminde olmalıdır. Eksik `Bearer ` öneki, fazladan tırnak işaretleri veya ortam değişkeninin sonundaki satır sonu `401` döndürür.
- **Yeniden oluşturulmuş veya iptal edilmiş kimlik bilgileri**: geliştirici portalında anahtarları yeniden oluşturmak eskilerini anında geçersiz kılar. Saklandıkları her yeri güncelleyin.
- **Yanlış kimlik bilgisi kombinasyonu**: OAuth 1.0a, consumer key ve secret'a **ek olarak** kullanıcının access token ve secret'ını gerektirir. İki uygulamanın anahtarlarını karıştırmak veya token gereken yerde API anahtarı kullanmak `401` döndürür.
- **OAuth 1.0a imza hataları**: `32` kodu (`Could not authenticate you`) genellikle hatalı bir imzaya işaret eder. Parametrelerin URL kodlamasını ve sunucu saatinizin doğru olduğunu kontrol edin; kaymış bir zaman damgası imzayı geçersiz kılar.
- **Süresi dolmuş OAuth 2.0 kullanıcı token'ı**: kullanıcı erişim token'larının süresi dolar. `offline.access` scope'unu isteyin ve yeni token almak için refresh token kullanın.

### TwexAPI'de

- **API anahtarı eksik veya hatalı**: [panelden](https://twexapi.io/dashboard) aldığınız anahtarla `Authorization: Bearer YOUR_API_KEY` gönderin. Bkz. [Kimlik Doğrulama](/tr/authentication).
- **Yazma endpoint'lerinde süresi dolmuş X oturumu**: gönderi paylaşma, beğenme veya DM sırasında `Invalid auth_token` ya da X kodu `32`, `cookie` içinde verdiğiniz X oturum bilgilerinin süresinin dolduğu anlamına gelir. Bunları yenileyin; API anahtarınızda sorun yok.

## Yalnızca başarılı olabilecek istekleri yeniden deneyin

Bu Python yardımcı fonksiyonu yalnızca `429` ve geçici `5xx` yanıtlarını yeniden dener, diğer tüm durumları hemen döndürür. `Retry-After` (TwexAPI ve çoğu HTTP API'si) ile `x-rate-limit-reset` (resmi X API) başlıklarının ikisini de dikkate alır:

```python
import random
import time

import requests


def request_with_retry(method, url, max_attempts=5, **kwargs):
    for attempt in range(max_attempts):
        response = requests.request(method, url, timeout=30, **kwargs)
        if response.status_code != 429 and response.status_code < 500:
            return response  # success, or a 4xx that waiting won't fix

        wait = None
        retry_after = response.headers.get("Retry-After", "")
        reset_at = response.headers.get("x-rate-limit-reset", "")
        if retry_after.isdigit():
            wait = int(retry_after)
        elif reset_at.isdigit():
            wait = max(0, int(reset_at) - time.time()) + 1
        if wait is None:
            wait = min(300, 5 * 2 ** attempt) + random.uniform(0, 1)

        time.sleep(wait)

    return response
```

Sayfalanmış sonuçları okurken `429` sonrasında bir sonraki imleci değil, **aynı imleci** yeniden deneyin. Yazma işlemlerinde, yeniden göndermeden önce gönderinin, beğeninin veya DM'in zaten uygulanıp uygulanmadığını kontrol edin; zaman aşımı, işlemin başarısız olduğunu kanıtlamaz.

## Asıl sorun resmi sınırlarsa

Uygulamanız okuma yaparken sürekli `429` alıyorsa veya istek başına fatura ihtiyacınız olan veriden daha hızlı büyüyorsa, kullandıkça öde modelindeki üçüncü taraf bir API'nin maliyetini karşılaştırın. TwexAPI okumaları 1.000 tweet başına yaklaşık 0,05 dolardır, yalnızca API anahtarı gerektirir ve OAuth kurulumu istemez; resmi X API'de ise 1.000 gönderi okuması 5 dolardır. Bkz. [TwexAPI ve resmi X API karşılaştırması](/tr/comparison/official-x-api) ve [X API fiyat hesaplayıcı](https://twexapi.io/x-api-pricing). TwexAPI, X Corp. ile bağlantılı değildir ve onun tarafından onaylanmamıştır.

## Twitter API 429, 403 ve 401 hakkında sorular

### Twitter API 429 hatası ne kadar sürer?

`x-rate-limit-reset` ile belirtilen zamana kadar; bu genellikle 15 dakikadan kısadır. Gönderi paylaşma gibi 24 saatlik sınırları olan endpoint'ler, günlük pencere sıfırlanana kadar engelli kalır. TwexAPI'de `Retry-After` veya `retry_after` kadar bekleyin.

### X API ile tweet paylaşırken neden 403 Forbidden alıyorum?

Genellikle token'ın yazma yetkisi olmadığı için. Yalnızca uygulama Bearer Token'ı kullanıyor olabilirsiniz, uygulama Read only olarak ayarlanmış olabilir ya da kullanıcı token'ı Read and write etkinleştirilmeden önce oluşturulmuş olabilir. Yazma iznini açın, kullanıcının token'larını yeniden oluşturun ve kullanıcı bağlamlı kimlik doğrulamayla paylaşın.

### n8n'deki "Request failed with status code 401" ne anlama gelir?

X API'nin veya TwexAPI'nin o HTTP düğümündeki kimlik bilgilerini reddettiği anlamına gelir. `Authorization` başlığının `Bearer` ve ardından geçerli bir anahtar ya da token içerdiğini, kimlik bilgisinin yeniden oluşturulmadığını ve yazma işlemlerinin kullanıcı bağlamlı kimlik bilgileri kullandığını kontrol edin. Çalışan bir TwexAPI kurulumu için [n8n rehberine](/tr/guides/n8n) bakın.

### 403 ile 429 arasındaki fark nedir?

`429`, çok fazla istek gönderdiğiniz ve beklemeniz gerektiği anlamına gelir. `403`, bu isteği yapmaya hiç yetkiniz olmadığı anlamına gelir. Beklemek `429`'u çözer; `403` için erişimde, izinlerde, Credits'te veya hedefte değişiklik gerekir.

### Twitter hata kodu 88 nedir?

X hata kodu `88`, `Rate limit exceeded` anlamına gelir ve HTTP `429` ile birlikte döner. Bir sonraki istekten önce `x-rate-limit-reset` zamanına kadar bekleyin.

### Twitter hata kodu 32 nedir?

X hata kodu `32`, `Could not authenticate you` anlamına gelir ve HTTP `401` ile birlikte döner. Resmi API'de genellikle hatalı bir OAuth 1.0a imzasına veya yanlış token'lara işaret eder. TwexAPI yazma endpoint'lerinde, verdiğiniz X oturum bilgilerinin süresinin dolduğu anlamına gelir.

## İlgili sayfalar

- [Twitter API hata kodu referansı](/tr/guides/error-reference): her TwexAPI durumu ve X hata kodu ile çözümü
- [Hız Sınırları](/tr/guides/rate-limits): geri çekilme, `Retry-After` ve sayfalamayı bozmadan kurtarma
- [Hata Yönetimi](/tr/guides/error-handling): MCP, SDK ve yazma işlemi kurtarma
- [Kimlik Doğrulama](/tr/authentication): API anahtarları ve X oturum bilgileri
