خطای «Rate limit exceeded» در ⁦X (Twitter)⁩: معنا و راه‌حل

تاریخ انتشار:

18 دقیقه مطالعه

Acar Diveroli
نویسنده: Acar Diveroli
میدانی از کارت‌های درخواست که در عمق محو می‌شوند؛ روی کارت آبی جلو عدد 429 و زیر آن برچسب RATE LIMIT EXCEEDED دیده می‌شود

شب مسابقه است و شما مدام فید X را پایین می‌کشید تا پست‌های تازه بیاید. ناگهان هیچ‌چیز بارگذاری نمی‌شود و فقط یک سطر روی صفحه می‌ماند: «Rate limit exceeded». حساب شما تعلیق نشده و برنامه هم خراب نیست. X درخواست‌هایی را که از سمت شما می‌آید شمرده و شمار آن‌ها فعلاً از حد مجاز گذشته است. توسعه‌دهنده‌ها همین جمله را جای دیگری می‌بینند: API آن را با کد ⁦HTTP 429⁩ و خطای "code": 88 برمی‌گرداند.

نیمه نخست این نوشته برای کسی است که این پیام را روی گوشی یا در مرورگر می‌بیند: یعنی چه، چرا ظاهر می‌شود، چقدر طول می‌کشد و چه باید کرد. نیمه دوم برای توسعه‌دهندگانی است که از X API استفاده می‌کنند: پاسخ 429، هدرهای x-rate-limit-*، پنجره 15 دقیقه‌ای، مدل دسترسی و قیمت‌گذاری معتبر در 7 اکتبر 2026 و یک نمونه آزمایش‌شده از عقب‌نشینی (backoff). در پایان به تنها حالت محدودی می‌پردازیم که پروکسی در آن اهمیت دارد: وقتی محدودیت به آدرس IP مشترکی گره خورده که با افراد زیادی از آن استفاده می‌کنید.

«rate limit exceeded» یعنی چه؟

محدودیت نرخ (rate limit) سقفی است که یک سرویس برای شمار درخواست‌هایی می‌گذارد که در یک بازه زمانی از یک کاربر، حساب، برنامه یا آدرس IP می‌پذیرد. در X همه‌چیز یک درخواست است: پایین کشیدن فید پست‌های تازه را می‌خواهد، ضربه زدن روی یک پروفایل پست‌های آن پروفایل را می‌خواهد، لایک کردن و دنبال کردن یک عمل روی سرور ثبت می‌کنند. هر نوع عمل شمارنده خودش را دارد و وقتی شمارنده‌ای پر شود، آن عمل برای مدتی کوتاه پاسخ «limit exceeded» می‌گیرد.

به همین دلیل این پیام معمولاً فقط یک جا را می‌گیرد. ممکن است فید اصلی بارگذاری نشود اما اعلان‌ها همچنان برسند، یا دکمه دنبال کردن کار نکند اما هنوز بتوانید پست بگذارید. سازوکار کلی، اینکه شمارنده به چه چیزی گره خورده و پنجره‌های ثابت و سطل توکن (token bucket) چگونه می‌شمارند، در نوشته ما درباره ⁦429 Too Many Requests⁩ آمده است؛ اینجا به بخش‌هایی می‌پردازیم که مخصوص X است.

جدا کردن این پیام از پیام‌های دیگر X کمک می‌کند. «حساب شما تعلیق شده است» یک تصمیم بر اساس قوانین است و خودبه‌خود رفع نمی‌شود. «این پست در کشور شما پنهان شده است» به یک درخواست قانونی مربوط است و فقط همان یک پست را پنهان می‌کند؛ سازوکار آن در نوشته ما درباره پست‌های پنهان‌شده در کشور توضیح داده شده است. «Rate limit exceeded» هیچ‌کدام از این دو نیست: شمارنده‌ای پر شده و با پایان بازه دوباره صفر می‌شود.

X چه محدودیت‌هایی دارد؟

مرکز راهنمای X محدودیت‌های روزانه هر حساب برای کارهای مختلف را منتشر می‌کند. بر اساس صفحه محدودیت‌های X، هر حساب می‌تواند در روز حداکثر 2,400 پست منتشر کند و این عدد به بازه‌های نیم‌ساعته تقسیم شده است؛ پس ممکن است پیش از تمام شدن سهمیه روزانه به سقف نیم‌ساعته برخورد کنید. 500 پیام مستقیم و 400 عمل دنبال کردن در روز سقف‌های فنی هستند. همان صفحه می‌گوید این عددها فقط محدودیت فنی‌اند و رفتارهایی مانند دنبال کردن تهاجمی جداگانه در قوانین ممنوع شده است.

خواندن داستان دیگری دارد. X عدد به‌روزی برای اینکه هر حساب در روز چند پست می‌تواند ببیند منتشر نمی‌کند. چنین عددهایی یک بار اعلام شد: در 1 ژوئیه 2023 ایلان ماسک محدودیت‌های خواندنی را اعلام کرد که آن‌ها را «موقتی» و در برابر استخراج داده خواند، و در طول همان روز آن‌ها را به 10,000 پست در روز برای حساب‌های تأییدشده، 1,000 برای حساب‌های تأییدنشده و 500 برای حساب‌های تازه افزایش داد؛ گزارش Axios در همان روز پیام «Rate limit exceeded» را هم که کاربران می‌دیدند ثبت کرده است. از آن زمان هیچ به‌روزرسانی رسمی منتشر نشده و امروز X در برنامه به شما نمی‌گوید به کدام آستانه برخورد کرده‌اید. ادعای پرتکراری که می‌گوید اشتراک Premium محدودیت خواندن را بالا می‌برد، در صفحه‌های رسمی X تأیید نشد؛ به همین دلیل اینجا آن را نمی‌نویسیم.

چرا این پیام ظاهر می‌شود؟

شمارنده از چهار راه پر می‌شود. بیشتر افراد دو تای آن‌ها را هم‌زمان دارند.

  1. اسکرول تند و تازه کردن پیاپی. هر بار کشیدن فید، هر پروفایل و هر جست‌وجو یک درخواست جداگانه است. وقتی صفحه‌ای بارگذاری نمی‌شود، تازه کردن پشت سر هم شمارنده را زودتر پر می‌کند.
  2. برنامه‌های شخص ثالث متصل به حساب شما. ابزارهای تحلیل دنبال‌کننده، ابزارهای پست خودکار، سرویس‌های «چه کسی مرا آنفالو کرد» و برخی کلاینت‌های قدیمی از طرف شما در پس‌زمینه داده می‌کشند. حتی اگر هرگز به گوشی دست نزنید، درخواست‌های آن‌ها شمارنده شما را پر می‌کند.
  3. اشتراک یک آدرس IP با افراد زیاد. در شبکه‌های دانشگاه، اداره و مدرسه صدها دستگاه از طریق یک آدرس به اینترنت می‌رسند (به این کار NAT می‌گویند). یک سرور VPN رایگان یا شلوغ هم همین‌طور کار می‌کند. وقتی X برخی شمارنده‌ها را به‌ازای هر آدرس نگه می‌دارد، همه کسانی که پشت آن آدرس هستند در یک سطل مشترک می‌نویسند و شما بدون اینکه کاری کرده باشید به حد مجاز می‌رسید.
  4. محدودیت‌های موقتی از سمت X. در اقدام‌های سراسری مانند محدودیت‌های خواندن سال 2023، این پیام هم‌زمان برای شمار زیادی از کاربران ظاهر می‌شود. در این حالت تنها کاری که می‌توانید بکنید صبر کردن است.

چقدر طول می‌کشد؟

در برنامه، X زمانی به شما نمی‌گوید؛ پیام می‌گوید چند لحظه دیگر دوباره تلاش کنید. هم‌راستا با بازه‌های نیم‌ساعته‌ای که در مرکز راهنما آمده، در بیشتر موارد فید پس از 15 تا 30 دقیقه خودبه‌خود برمی‌گردد. اگر به محدودیت روزانه برخورد کرده‌اید، مثلاً 400 عمل دنبال کردن را تمام کرده‌اید، شمارنده روز بعد صفر می‌شود.

در API زمان دقیق است. بیشتر نقاط اتصال از پنجره 15 دقیقه‌ای استفاده می‌کنند و لحظه بسته شدن پنجره در هدر x-rate-limit-reset هر پاسخ به شکل برچسب زمانی Unix نوشته می‌شود. برخی کارها سقف 24 ساعته هم دارند؛ مثلاً 10,000 درخواست به‌ازای هر برنامه در روز روی نقطه اتصالی که پست می‌سازد.

چه باید بکنید؟

گام‌ها از ساده‌ترین تا پرزحمت‌ترین مرتب شده‌اند.

  1. صبر کنید و تازه کردن را کنار بگذارید. برنامه را ببندید و 15 تا 30 دقیقه به کار دیگری بپردازید. تازه کردن در این مدت شمارنده را صفر نمی‌کند، بلکه پرش می‌کند.
  2. برنامه‌های متصل را بازبینی کنید. به مسیر تنظیمات و حریم خصوصی › امنیت و دسترسی به حساب › برنامه‌ها و نشست‌ها › برنامه‌های متصل (Settings and privacy › Security and account access › Apps and sessions › Connected apps) بروید. دسترسی هر چیزی را که نمی‌شناسید، استفاده نمی‌کنید یا از خانواده «تحلیل دنبال‌کننده» است بردارید. مرکز راهنمای X به‌روشنی می‌گوید برنامه متصل، بسته به مجوزهایش، می‌تواند پست‌های شما را بخواند و از طرف حساب شما عمل کند؛ در بیشتر موارد همین برنامه‌ها شمارنده را پر می‌کنند.
  3. نشست‌ها را پاک‌سازی کنید. در همان منو، زبانه نشست‌ها (Sessions) اجازه می‌دهد از دستگاه‌هایی که نمی‌شناسید خارج شوید. ممکن است برنامه‌ای روی یک گوشی یا تبلت قدیمی هنوز در پس‌زمینه داده بکشد.
  4. خارج شوید و دوباره وارد شوید، حافظه پنهان را پاک کنید. در مرورگر داده‌های سایت را پاک کنید؛ در iOS برنامه را دوباره نصب کنید و در Android از مسیر تنظیمات › برنامه‌ها › X › فضای ذخیره‌سازی حافظه پنهان را پاک کنید. این کار شمارنده را صفر نمی‌کند، اما مشکل «هنوز بارگذاری نمی‌شود» را که گاهی پس از رفع پیام می‌ماند برطرف می‌کند.
  5. شبکه را عوض کنید. اگر پیام روی Wi-Fi مدرسه یا اداره ظاهر می‌شود و روی اینترنت همراه نه، شمارنده به آدرس IP گره خورده که با ده‌ها نفر مشترک است. اگر از VPN استفاده می‌کنید، آن را خاموش کنید و دوباره امتحان کنید؛ خروجی شلوغ VPN هم یک آدرس مشترک است.
  6. با حساب تازه آهسته شروع کنید. ده‌ها دنبال کردن و لایک پشت سر هم در روزهای نخست هم شمارنده‌ها را پر می‌کند و هم بررسی‌های خودکارسازی X را به سمت شما می‌کشاند.

فهرست کارهایی که نباید بکنید کوتاه است: باز کردن حساب دوم و سوم برای ادامه دادن، نصب افزونه‌هایی که وعده دور زدن محدودیت می‌دهند و کلاینت‌های شخص ثالثی که «خواندن نامحدود» وعده می‌دهند. این‌ها قوانین X را نقض می‌کنند و می‌توانند یک پیام موقتی را به مشکلی ماندگار برای حساب تبدیل کنند.

علت و راه‌حل بر اساس نشانه

نشانهعلت احتمالیچه باید کرد
فید متوقف شده، اعلان‌ها هنوز می‌رسندشمارنده اسکرول و تازه کردن پر شده است15 تا 30 دقیقه صبر کنید
پیام بدون دست زدن به گوشی ظاهر می‌شودیک برنامه متصل در پس‌زمینه داده می‌کشدبرنامه‌ها را قطع کنید
روی Wi-Fi ظاهر می‌شود، روی اینترنت همراه نهIP مشترک (NAT، VPN)شبکه را عوض کنید، VPN را خاموش کنید
دکمه دنبال کردن یا پیام مستقیم کار نمی‌کندمحدودیت روزانه آن کار پر شده استتا روز بعد صبر کنید
همه هم‌زمان شکایت می‌کنندمحدودیت سراسری پلتفرمصبر کنید؛ کار دیگری نمی‌شود کرد
پیام رفع شده، صفحه هنوز خالی استداده‌های کهنه نشستخارج و دوباره وارد شوید، حافظه پنهان را پاک کنید

برای توسعه‌دهندگان: 429 و هدرهای x-rate-limit

وقتی در X API محدودیت نرخ رد می‌شود، پاسخ با کد ⁦HTTP 429⁩ و خطای شماره 88 در بدنه می‌رسد. بر اساس سند محدودیت‌های نرخ، محدودیت‌ها به‌ازای هر نقطه اتصال تعریف می‌شوند، بیشتر روی پنجره‌های 15 دقیقه‌ای، و بر اساس نوع احراز هویت دو دسته‌اند: درخواست‌هایی که با توکن کاربر (⁦OAuth 1.0a⁩ یا ⁦OAuth 2.0⁩) انجام می‌شوند برای هر کاربر یک شمارنده دارند، در حالی که درخواست‌های فقط-برنامه با Bearer Token یک شمارنده مشترک برای کل برنامه دارند.

هر پاسخ سه هدر دارد:

text
HTTP/2 429
x-rate-limit-limit: 900
x-rate-limit-remaining: 0
x-rate-limit-reset: 1791367200

{"errors":[{"code":88,"message":"Rate limit exceeded"}]}

x-rate-limit-limit کل سهمیه پنجره، x-rate-limit-remaining باقی‌مانده و x-rate-limit-reset لحظه بسته شدن پنجره بر حسب ثانیه Unix است. این هدرها همراه پاسخ‌های 200 هم می‌آیند؛ کلاینت خوش‌رفتار مقدار remaining را زیر نظر می‌گیرد و پیش از آنکه اصلاً 429 ببیند سرعتش را کم می‌کند. چند نقطه اتصال رایج (7 اکتبر 2026، مستندات X):

نقطه اتصالبه‌ازای هر برنامهبه‌ازای هر کاربر
GET /2/tweets3,500 / 15 دقیقه5,000 / 15 دقیقه
GET /2/tweets/search/recent450 / 15 دقیقه300 / 15 دقیقه
GET /2/users/:id/tweets10,000 / 15 دقیقه900 / 15 دقیقه
POST /2/tweets10,000 / 24 ساعت100 / 15 دقیقه
POST /2/users/:id/followingندارد50 / 15 دقیقه
GET /2/dm_eventsندارد15 / 15 دقیقه

چهار عادتی که سند توصیه می‌کند، راه هرگز برخورد نکردن با محدودیت هم هست: پاسخ‌ها را در حافظه پنهان نگه دارید، برای داده بی‌درنگ به‌جای پرس‌وجوی پیاپی از filtered stream استفاده کنید، remaining را زیر نظر بگیرید و درخواست‌ها را در طول پنجره پخش کنید.

دسترسی و قیمت‌گذاری X API در 2026

در 6 فوریه 2026، X در انجمن توسعه‌دهندگانش اعلام کرد که API به قیمت‌گذاری پرداخت به‌ازای مصرف (pay-per-use) می‌رود؛ اطلاعیه می‌گفت این مدل برای توسعه‌دهندگان مستقل و تیم‌های کوچک طراحی شده، حساب‌های فعال اخیر در سطح رایگان با یک کوپن یک‌باره به مدل تازه منتقل می‌شوند و برنامه‌های خدمات عمومی که اطلاعیه‌های اضطراری منتشر می‌کنند دسترسی رایگان خود را نگه می‌دارند.

تا 7 اکتبر 2026، سند قیمت‌گذاری X یک مدل واحد را شرح می‌دهد: اشتراکی در کار نیست، در Developer Console اعتبار می‌خرید و هر درخواست از آن کم می‌شود. قیمت‌های واحد در این سند 0.005 دلار به‌ازای هر پست خوانده‌شده، 0.015 دلار به‌ازای هر پست ساخته‌شده، 0.20 دلار برای پستی که لینک دارد و 0.01 دلار به‌ازای هر پروفایل کاربر خوانده‌شده است؛ نقاط اتصالی که داده‌های حساب خودتان را می‌خوانند («Owned Reads») 0.001 دلار به‌ازای هر منبع هزینه دارند. اگر همان منبع ظرف 24 ساعت برای بار دوم درخواست شود، دوباره هزینه نمی‌گیرد. طرح‌های پرداخت به‌ازای مصرف سقفی برابر 3 میلیون پست خوانده‌شده در ماه دارند؛ بیشتر از آن قرارداد Enterprise می‌خواهد. سند می‌گوید قیمت‌ها ممکن است تغییر کند و عددهای جاری در Developer Console است. سطح‌هایی به نام Free، Basic و Pro دیگر در مستندات دیده نمی‌شوند؛ صفحه رسمی‌ای که بگوید مشترکان قدیمی کی منتقل شدند پیدا نکردیم، پس آن تاریخ‌ها را نمی‌نویسیم.

تمایزی که برای توسعه‌دهنده مهم است این است: محدودیت نرخ و صورت‌حساب دو سیستم جدا هستند. می‌توانید در چارچوب محدودیت‌ها بمانید و باز هم اعتبار خرج کنید، یا بدون خرج کردن چیزی 429 بگیرید. پاسخ 429 رایگان است، چون فقط پاسخ‌های موفقی که داده برمی‌گردانند هزینه دارند؛ اما باز هم وقت شما را می‌گیرد، چون پنجره از دست رفته است.

نمونه عقب‌نشینی: Python

تابع زیر وقتی 429 می‌گیرد، نخست x-rate-limit-reset را بررسی می‌کند و تا بسته شدن پنجره صبر می‌کند؛ اگر هدر نباشد یا به گذشته مربوط باشد، به عقب‌نشینی نمایی برمی‌گردد (5، 10، 20، 40 ثانیه، حداکثر 15 دقیقه). شمار تلاش‌ها محدود است: اگر تلاش پنجم هم 429 برگرداند، پاسخ همان‌طور که هست تحویل داده می‌شود تا فراخواننده بتواند کار را به بعد موکول کند. آن را روی یک سرور شبیه‌سازی‌شده محلی با همین هدرها اجرا کردیم: دو پاسخ 429 با reset، یک 429 بدون هدر و سپس 200؛ کل زمان انتظار 27 ثانیه بود.

python
import time
import requests

def x_get(url, headers, max_tries=5):
    for attempt in range(max_tries):
        r = requests.get(url, headers=headers, timeout=30)
        if r.status_code != 429:
            return r
        # X writes the moment the window closes as Unix seconds
        reset = int(r.headers.get("x-rate-limit-reset", "0"))
        wait = reset - time.time()
        if wait <= 0:                        # no header: exponential backoff
            wait = min(5 * 2 ** attempt, 900)
        time.sleep(wait + 1)                 # one second for clock skew
    return r

دو نکته. نخست، زمان انتظار به یک نقطه اتصال تعلق دارد، اما باید برای هر درخواستی که با همان توکن کاربر بیرون می‌رود اعمال شود؛ بار گذاشتن روی نقاط اتصال دیگر در حالی که یکی بسته است فقط پنجره را زودتر پر می‌کند. دوم، ساعت سرور و ساعت شما ممکن است چند ثانیه اختلاف داشته باشند؛ حاشیه یک ثانیه‌ای نمونه برای همین است و می‌توانید آن را بیشتر کنید.

آدرس IP مشترک و نقش محدود پروکسی

این بخش فقط به یک حالت می‌پردازد: پیام به این دلیل ظاهر می‌شود که آدرس IP شما با افراد زیادی مشترک است. در شبکه‌های اداره، مدرسه، خوابگاه و خروجی‌های شلوغ VPN، شمارنده‌ای که X به‌ازای هر آدرس نگه می‌دارد سطلی مشترک میان همه است و حتی وقتی درخواست‌های خود شما کم است می‌تواند پر شود. راه‌حل آدرسی است که مال شما باشد، ثابت باشد و با کسی مشترک نباشد. پروکسی ISP دقیقاً همین است: آدرسی ثابت که به نام یک ارائه‌دهنده خدمات اینترنت ثبت شده، مثل اتصال خانگی به نظر می‌رسد و فقط شما از آن استفاده می‌کنید. آن‌وقت شمارنده فقط درخواست‌های شما را می‌شمارد.

تیم‌های شبکه‌های اجتماعی این روش را به‌عنوان رویه استاندارد به کار می‌برند: آژانسی که با اجازه، حساب‌های مشتریانش را مدیریت می‌کند به هر حساب یک پروفایل مرورگر جداگانه و یک آدرس ثابت جداگانه می‌دهد تا روز شلوغ یک حساب شمارنده بقیه را پر نکند و هر حساب هر روز از همان جا وارد شود. اینکه حساب‌ها بر اساس قوانین مکتوب X چگونه اداره می‌شوند و پلتفرم چند حساب را مجاز می‌داند، در نوشته ما درباره مدیریت چند حساب شبکه اجتماعی آمده است. برای تیمی که در میدان کار می‌کند، پروکسی موبایل همین کار را انجام می‌دهد؛ آدرسی که از شبکه یک اپراتور موبایل بیرون می‌آید از همان جنس آدرس کاربری است که با گوشی وارد می‌شود.

فهرست کارهایی که پروکسی نمی‌تواند بکند بلندتر است. اگر شمارنده به حساب شما گره خورده باشد، که درباره بیشتر محدودیت‌های اسکرول و عمل‌ها همین‌طور است، عوض کردن آدرس چیزی را تغییر نمی‌دهد؛ درخواستی که از آدرس تازه می‌آید روی شمارنده همان حساب می‌نشیند. استفاده از پروکسی برای پخش کردن محدودیت یک حساب روی چند آدرس، چرخیدن میان حساب‌های متعدد یا دور زدن الزام ورود X، قوانین X و قوانین خودکارسازی آن را نقض می‌کند؛ این نوشته روشی برای آن ندارد و محصولات ما برای این کار فروخته نمی‌شوند. نقش پروکسی در یک جمله خلاصه می‌شود: جایگزین کردن آدرس مشترک با آدرس خودتان، تا شمارنده فقط استفاده شما را ببیند.

اشتباهات رایج

  • تازه کردن پس از دیدن پیام. هر تازه کردن یک درخواست تازه است؛ شمارنده دیرتر باز می‌شود.
  • فرض تعلیق حساب و باز کردن درخواست پشتیبانی. تعلیق با پیامی جداگانه روی صفحه پروفایل می‌آید؛ محدودیت نرخ در 15 تا 30 دقیقه رفع می‌شود.
  • هرگز نگاه نکردن به برنامه‌های متصل. ابزار «تحلیل دنبال‌کننده‌ای» که سال‌ها پیش مجوز گرفته شاید هنوز از طرف شما داده بکشد.
  • ادامه دادن از حساب دوم. عوض کردن حساب روی همان دستگاه و همان آدرس شمارنده را صفر نمی‌کند؛ ظن خودکارسازی را بالا می‌برد.
  • تکرار 429 با فاصله ثابت در API. تلاش دوباره در هر پنج ثانیه پنجره را بسته نگه می‌دارد نه باز؛ x-rate-limit-reset را بخوانید.
  • اشتباه گرفتن محدودیت نرخ با تمام شدن اعتبار. این دو سیستم جدا هستند؛ 429 رایگان است، اما اعتبار تمام‌شده درخواست‌ها را تا شارژ دوباره متوقف می‌کند.

راهنمای انتخاب

وضعیت شماچه باید کرد
نخستین پیام، یک دستگاه، شبکه خانگی15 تا 30 دقیقه صبر کنید
پیام زیاد و بدون دخالت شما ظاهر می‌شودبرنامه‌های متصل و نشست‌ها را پاک‌سازی کنید
پیام فقط در شبکه اداره، مدرسه یا VPN ظاهر می‌شودشبکه را عوض کنید؛ برای کار، آدرس ثابت اختصاصی خودتان
به محدودیت دنبال کردن یا پیام مستقیم رسیده‌ایدمحدودیت روزانه؛ تا روز بعد صبر کنید و آهسته‌تر پیش بروید
توسعه‌دهنده‌اید، API پاسخ 429 می‌دهدتا x-rate-limit-reset صبر کنید، درخواست‌ها را در پنجره پخش کنید
توسعه‌دهنده‌اید، درخواست‌ها به خاطر اعتبار شکست می‌خورندموجودی و سقف هزینه را در Developer Console بررسی کنید
تیمی هستید که حساب‌های مجاز را مدیریت می‌کندبرای هر حساب یک پروفایل مرورگر و یک آدرس ثابت

پرسش‌های متداول

خطای rate limit exceeded در X چقدر طول می‌کشد؟

در برنامه معمولاً ظرف 15 تا 30 دقیقه خودبه‌خود رفع می‌شود؛ X زمان دقیقی به کاربران نمی‌گوید. اگر به محدودیت روزانه یک کار رسیده‌اید، شمارنده روز بعد صفر می‌شود. در API زمان دقیق است و در هدر x-rate-limit-reset نوشته می‌شود؛ بیشتر نقاط اتصال از پنجره 15 دقیقه‌ای استفاده می‌کنند.

آیا rate limit exceeded یعنی حساب من تعلیق شده است؟

خیر. تعلیق تصمیمی بر اساس قوانین است، به شکل پیامی جداگانه روی پروفایل شما دیده می‌شود و خودبه‌خود رفع نمی‌شود. محدودیت نرخ یک شمارنده پر است؛ با صبر کردن باز می‌شود و اثری روی حساب شما نمی‌گذارد.

من کاری نکرده‌ام، پس چرا پیام محدودیت نرخ گرفتم؟

دو علت محتمل وجود دارد. شاید یک برنامه شخص ثالث متصل به حساب شما در پس‌زمینه از طرف شما داده می‌کشد؛ مسیر تنظیمات و حریم خصوصی › امنیت و دسترسی به حساب › برنامه‌ها و نشست‌ها را بررسی کنید. یا در شبکه‌ای مشترک مانند اداره، مدرسه یا VPN هستید و افراد دیگری که همان آدرس را دارند شمارنده‌ای را که X به‌ازای هر آدرس نگه می‌دارد پر کرده‌اند.

آیا خاموش کردن VPN خطای محدودیت نرخ X را رفع می‌کند؟

اگر شمارنده به آدرس IP گره خورده باشد، بله؛ خروجی شلوغ VPN یک آدرس است که صدها کاربر در آن مشترک‌اند. اگر شمارنده به حساب شما گره خورده باشد، خاموش کردن VPN چیزی را تغییر نمی‌دهد و باید صبر کنید. راه عملی تشخیص این دو، رفتن روی اینترنت همراه و امتحان کردن است.

وقتی X API پاسخ 429 می‌دهد چه کنم؟

مقدار x-rate-limit-reset را در پاسخ بخوانید و تا آن لحظه صبر کنید؛ اگر هدر نبود، از عقب‌نشینی نمایی استفاده کنید و شمار تلاش‌ها را محدود کنید. سرعت درخواست‌های دیگری را هم که با همان توکن بیرون می‌روند کم کنید. برای اینکه اصلاً به محدودیت نرسید، پاسخ‌ها را در حافظه پنهان نگه دارید و x-rate-limit-remaining را زیر نظر بگیرید.

آیا پروکسی خطای محدودیت نرخ X را رفع می‌کند؟

فقط در یک حالت: وقتی شمارنده به آدرس IP مشترکی گره خورده که با افراد زیادی از آن استفاده می‌کنید، آدرس ثابت اختصاصی خودتان شمارنده را به استفاده خود شما محدود می‌کند. اگر شمارنده به حساب شما گره خورده باشد، پروکسی چیزی را تغییر نمی‌دهد. پخش کردن محدودیت یک حساب روی چند آدرس یا استفاده از حساب‌های متعدد برای گذشتن از محدودیت، قوانین X را نقض می‌کند.

خلاصه

«Rate limit exceeded» پیامی موقتی است که می‌گوید X در زمانی کوتاه بیش از حد مجاز از شما درخواست دیده است؛ جریمه نیست و با صبر کردن رفع می‌شود. شمارنده معمولاً با اسکرول تند، برنامه‌های پس‌زمینه متصل به حساب شما یا شبکه‌های مشترک مانند اداره و مدرسه پر می‌شود؛ صبر کنید، برنامه‌ها را قطع کنید و در صورت نیاز شبکه را عوض کنید. توسعه‌دهندگان همین محدودیت را به شکل ⁦HTTP 429⁩ با هدرهای x-rate-limit-* می‌بینند، بر اساس x-rate-limit-reset صبر می‌کنند و به یاد دارند که در قیمت‌گذاری اعتباری 2026 محدودیت نرخ و صورت‌حساب دو سیستم جدا هستند. برای تیم‌هایی که مشکلشان آدرس مشترک است، آنچه آدرس ثابت اختصاصی فراهم می‌کند در صفحه پروکسی X ما آمده است.

پرسش از ChatGPTپرسش از Claude