Ijtimoiy tarmoqlar API limitlari: Meta, TikTok, Telegram va LinkedIn
Har platforma limitni boshqacha hisoblaydi. Meta — ilova, foydalanuvchi va biznes obyekti (BUC) bo'yicha soatlik yoki 24 soatlik oynada, qolgan ulushni javob sarlavhalarida ko'rsatadi. TikTok — har endpoint uchun bir daqiqalik sirpanuvchi oyna. Telegram bot — chat bo'yicha tezlik va 429 javobidagi retry_after. LinkedIn — kunlik ilova va a'zo limitlari. Barqaror yechim: webhook, navbat, kesh va jitter'li backoff.
Yangilangan:
API limiti nima va nega "kutib qayta urinish" yetmaydi?
Limit — platforma ma'lum oynada (sekund, daqiqa, soat, 24 soat yoki kun) qabul qiladigan so'rovlar hajmi. Oshsa Meta 4/17/32/613 yoki 800xx kodini, TikTok, Telegram bot va LinkedIn HTTP 429 ni, Telegram MTProto esa FLOOD_WAIT ni qaytaradi. Oyna soatlik yoki kunlik bo'lsa, tez qayta urinish faqat kvotani yana sarflaydi — yuklamani navbat bilan boshqarish kerak.
Platformalar bo'yicha limit modeli
Raqamlar rasmiy hujjatlardan (2026-09-17). Ko'pchiligi formula yoki standart qiymat — ilovangizning haqiqiy kvotasi farq qilishi mumkin.
| Platforma / API | Qanday hisoblanadi | Oyna | Oshganda |
|---|---|---|---|
| Meta, platforma limiti | Ilova: 200 × foydalanuvchilar soni; foydalanuvchi limiti e'lon qilinmaydi | 1 soat | Kod 4 (ilova), 17 (foydalanuvchi) |
| Facebook Pages (BUC) | 4800 × Page bilan faol foydalanuvchilar soni | 24 soat | 80001 (page/system token); 32 (user/app token) |
| Instagram Platform (BUC) | 4800 × impressions soni | 24 soat | 80002 |
| Instagram e'lon qilish | Akkauntga 100 ta API post; karusel — bitta post | 24 soatlik sirpanuvchi | content_publishing_limit bilan tekshiriladi |
| Instagram xabarlar | Send API: matn 100/s, audio/video 10/s; Conversations API 2/s — har professional akkauntga | 1 sekund | yo'q |
| Lead Ads (BUC) | 4800 × yaratilgan lead'lar soni | 24 soat | 80005 |
| Marketing API (BUC) | Ads Management: 300 + 40 × faol reklamalar (Standard Access) | 1 soat | 80004 |
| TikTok API v2 | Har endpoint alohida; user/info, video/list, video/query — 600 | 1 daqiqalik sirpanuvchi | HTTP 429, rate_limit_exceeded |
| TikTok post | video/init — token uchun 6/daq; status/fetch — 30/daq; ijodkorga kuniga odatda ~15 post | 1 daqiqa / 24 soat | spam_risk_too_many_posts |
| Telegram Bot API | Bitta chatga ~1 xabar/s; guruhga 20 xabar/daq; ommaviy ~30 xabar/s | Sekund / daqiqa | HTTP 429 + retry_after |
| Telegram MTProto | Raqamlar e'lon qilinmaydi | yo'q | 420 FLOOD_WAIT_X |
| Ilova va a'zo uchun kunlik limit; raqamlar Developer Portal'da | Kun (00:00 UTC da yangilanadi) | HTTP 429 |
boryo'qJadvalni yon tomonga suring
Facebook API xatolari 4, 17, 32, 613 va 800xx nimani anglatadi?
| Kod | Ma'nosi | Nima qilish kerak |
|---|---|---|
| 4 | Ilova darajasidagi limit | X-App-Usage ni kuzating, fon so'rovlarini to'xtatib turing |
| 17 | Foydalanuvchi darajasidagi limit | Shu token bo'yicha navbatni sekinlashtiring |
| 32 | Pages API limiti (user yoki app token bilan) | Page token ishlating va BUC sarlavhasini kuzating |
| 613 | Maxsus limit; 1996 subkodi — trafikning keskin o'zgarishi | So'rovlarni vaqt bo'yicha tekis tarqating |
| 80001 / 80002 | BUC: Pages / Instagram | estimated_time_to_regain_access tugaguncha shu obyekt bo'yicha kuting |
| 80004 / 80000 | BUC: Ads Management / Ads Insights | Hisobotlarni kamroq va kattaroq oraliq bilan so'rang |
| 80005 / 80006 | BUC: LeadGen / Messenger | Webhook'ga tayaning, polling'ni olib tashlang |
Manba: Meta Graph API Rate Limiting va Error Handling hujjatlari.
Meta javob sarlavhalari: X-App-Usage va X-Business-Use-Case-Usage
Meta limitga yetguncha ogohlantiradi. X-App-Usage sarlavhasida call_count, total_cputime va total_time — ilova kvotasining foizlari. X-Business-Use-Case-Usage esa biznes obyekti ID si bo'yicha kalitlangan JSON: har element type (pages, instagram, ads_management, ...), shu uch foiz va estimated_time_to_regain_access — cheklov necha daqiqada olinishini ko'rsatadi.
Qiymat 100 ga yetganda so'rovlar cheklanishi mumkin. Amaliy qoida: 75–80% dan fon ishlarini sekinlashtiring, 95% dan to'xtating. So'rovga ikkala limit ham tegishli bo'lsa, BUC limiti amal qiladi. Bitta so'rovda bir nechta ID bo'lsa, har bir ID alohida chaqiruv hisoblanadi.
Marketing API uchun eski X-Ad-Account-Usage sarlavhasi hujjatda eski versiyalar (v3.3 va undan oldingi) uchun ko'rsatilgan; hozirgi versiyalarda BUC sarlavhasiga qarang.
BUC sarlavhasini o'qish (toza aiohttp)
Socialift SDK xato obyektida sarlavhalarni bermaydi, shuning uchun kvotani oldindan kuzatish uchun Graph API javobini shunday tekshirish mumkin.
import json
import aiohttp
async def graph_get(session: aiohttp.ClientSession, url: str, params: dict) -> dict:
async with session.get(url, params=params) as r:
usage = json.loads(r.headers.get("X-Business-Use-Case-Usage") or "{}")
for object_id, items in usage.items():
for u in items:
peak = max(u.get("call_count", 0), u.get("total_cputime", 0), u.get("total_time", 0))
if peak >= 80:
await slow_down(object_id, u.get("type"),
minutes=u.get("estimated_time_to_regain_access", 0))
return await r.json()slow_down — sizning funksiyangiz: shu Page yoki Instagram akkaunt navbatini pauza qiladi.
Instagram API limiti: 100 ta post va xabar tezligi
Instagram Platform chaqiruvlari BUC bo'yicha hisoblanadi: 24 soatda 4800 × akkaunt impressions soni. Kichik akkauntda kvota ham kichik — shuning uchun statistikani har daqiqada so'rash o'rniga keshlang.
E'lon qilish uchun alohida limit bor: bitta akkaunt 24 soatlik sirpanuvchi oynada API orqali 100 tagacha post qila oladi, karusel bitta post hisoblanadi. Joriy holatni GET /<IG_ID>/content_publishing_limit ko'rsatadi. SDK'da e'lon ig.publish(...) va ig.publish_carousel(...).
Direct uchun sekundlik limitlar: matn, havola, reaksiya va stikerli xabarlar — har professional akkauntga 100 chaqiruv/s, audio va video — 10/s, Conversations API — 2/s. Suhbatlar ro'yxatini tez-tez o'qish o'rniga messages webhook'iga tayaning.
TikTok API rate limit: endpoint limitlari va kunlik post chegarasi
TikTok limitni har endpoint uchun alohida, bir daqiqalik sirpanuvchi oynada hisoblaydi. Hujjatdagi standart qiymat: /v2/user/info/, /v2/video/query/ va /v2/video/list/ — 600. Oshsa HTTP 429 va rate_limit_exceeded keladi. Ko'proq kerak bo'lsa, TikTok qo'llab-quvvatlash sahifasi orqali so'rash taklif qilinadi.
Content Posting API'ning o'z limitlari bor: /v2/post/publish/video/init/ — har user access token uchun daqiqasiga 6 so'rov, creator_info — 20, status/fetch — 30. Undan tashqari Direct Post uchun ijodkorga kunlik chegara bor (hujjatda odatda kuniga ~15 post, barcha API klientlar uchun umumiy); yetganda spam_risk_too_many_posts qaytadi — buni qayta urinish bilan hal qilib bo'lmaydi, ertaga qoldiring.
Audit'dan o'tmagan klient 24 soatda 5 tagacha foydalanuvchi nomidan va faqat SELF_ONLY ko'rinishda post qila oladi. SDK'da tt.creator_info(token) post oldidan ijodkor sozlamalarini, tt.wait_publish(...) esa statusni kutadi.
Telegram bot limitlari: 429, retry_after va ommaviy tarqatma
Telegram Bot API FAQ'ida: bitta chatga sekundiga bittadan ko'p xabar yubormang (qisqa portlashlarga ruxsat bor, lekin oxir-oqibat 429 keladi); guruhda bot daqiqasiga 20 tadan ko'p xabar yubora olmaydi; ommaviy tarqatma — sekundiga taxminan 30 xabar.
Limit oshsa javobda ok: false, error_code: 429 va parameters.retry_after — necha sekund kutish kerakligi keladi. Shu vaqtdan oldin qayta urinish befoyda. Katta auditoriyaga tarqatmani navbatga qo'yib, sekundiga 30 dan kam tezlikda yuboring.
BotFather'da pullik tarqatma (paid broadcasts) yoqilsa, bot sekundiga 1000 tagacha xabar yubora oladi: bepul 30 dan oshgan har xabar 0.1 Telegram Stars turadi. Buning uchun botda kamida 100 000 Stars balansi va 100 000 oylik faol foydalanuvchi bo'lishi kerak.
Telegram akkaunti (MTProto) limit raqamlarini e'lon qilmaydi: oshganda 420 FLOOD va FLOOD_WAIT_X (X sekund kutish) keladi. SDK TelegramAccount buni RateLimitError ga aylantiradi va retry_after ni beradi, lekin o'zi kutmaydi — qaror sizda.
LinkedIn API limitlari qayerda ko'rinadi?
LinkedIn ikki kunlik limit qo'llaydi: ilova limiti (butun ilova bir kunda qancha chaqiruv qila oladi) va a'zo limiti (bitta a'zo shu ilova orqali qancha). Ular har kuni 00:00 UTC da yangilanadi, oshsa 429 qaytadi.
Standart limitlar hujjatda e'lon qilinmaydi: ularni Developer Portal'da ilovaning Analytics bo'limida ko'rasiz (faqat shu kun kamida bir marta chaqirilgan endpointlar). Ilova limitining 75% dan oshganda administratorlarga email keladi, lekin 1–2 soat kechikish bilan.
Community Management API'ning development tier'ida limit juda kichik: ilovaga 24 soatda 500, a'zoga 100 chaqiruv. Ishlab chiqarishga standard tier talab qilinadi.
Limitga chidamli integratsiya: 6 qadam
Polling o'rniga webhook
Izoh, xabar, lead va post statusini webhook bilan oling (Meta webhooks, TikTok webhooks, Telegram setWebhook). Polling kvotani bekorga sarflaydi.
Token va akkaunt bo'yicha navbat
Limitlar token, Page yoki akkaunt kesimida hisoblanadi — har biriga alohida navbat va parallellik chegarasi qo'ying.
Keshlang
Profil, Page ro'yxati, statistika kabi sekin o'zgaradigan ma'lumotni TTL bilan saqlang; bitta so'rovda kerakli maydonlarnigina so'rang.
Jitter'li eksponensial backoff
Vaqtinchalik xatoda kechikish har urinishda ikki baravar oshsin va tasodifiy qo'shimcha olsin — ko'p ishchi bir vaqtda qaytib urilmasin.
Platforma aytgan vaqtni hurmat qiling
Telegram retry_after, Meta estimated_time_to_regain_access, MTProto FLOOD_WAIT — backoff formulasidan ustun.
Qayta urinib bo'lmaydigan xatolarni ajrating
Kunlik post chegarasi, ruxsat yo'qligi (PermissionError) yoki token yaroqsizligi (AuthError) — navbatga qaytarmang, holatni saqlang va xabar bering.
Socialift SDK: RetryPolicy va RateLimitError
SDK standart bo'yicha jami 3 urinish qiladi. Fon ishchisida SDK ichidagi urinishlarni kamaytirib, kutish qarorini navbatga berish qulayroq.
import os
from socialift import ApiError, Instagram, RateLimitError, RetryPolicy
policy = RetryPolicy(attempts=2, backoff_base=1.0, backoff_max=20.0, jitter=True)
async def publish_job(job: dict) -> None:
async with Instagram.via_facebook(app_secret=os.environ["META_APP_SECRET"],
retry=policy) as ig:
try:
await ig.publish(job["page_token"], ig_user_id=job["ig_user_id"],
image_url=job["image_url"], caption=job["caption"])
except RateLimitError as exc:
await requeue(job, delay=exc.retry_after or 15 * 60)
except ApiError as exc:
if exc.code in (80001, 80002): # BUC — 24 soatlik oyna
await requeue(job, delay=60 * 60)
else:
raiseStandart RetryPolicy: 3 urinish, kechikish min(0.5 × 2^(n−1), 30) sekund va 0.5–1.5 oralig'idagi tasodifiy ko'paytuvchi (jitter). Qayta urinish RateLimitError, HTTP 429/500/502/503/504 va tarmoq xatolarida ishlaydi; retry_after ma'lum bo'lsa, shuncha kutiladi.
SDK Meta'ning 4, 17, 32, 613 kodlari va HTTP 429 ni RateLimitError ga aylantiradi. BUC kodlari (80001, 80002, ...) bu ro'yxatda yo'q — ularni ApiError.code bo'yicha tekshiring.
Ko'p so'raladigan savollar
Instagram API limiti qancha?
Instagram Platform chaqiruvlari BUC bo'yicha hisoblanadi: 24 soatda 4800 × akkaunt impressions soni. E'lon qilish uchun alohida limit: 24 soatlik sirpanuvchi oynada API orqali 100 tagacha post, karusel bitta post hisoblanadi.
Facebook API 4, 17, 32 va 613 xatolari nimani anglatadi?
4 — ilova darajasidagi limit, 17 — foydalanuvchi darajasidagi limit, 32 — user yoki app token bilan Pages API limiti, 613 — maxsus limit (1996 subkodi trafikning keskin o'zgarishini bildiradi). Hammasi vaqtinchalik: so'rovlarni kamaytiring va sarlavhalardagi foizlarni kuzating.
Telegram bot sekundiga nechta xabar yubora oladi?
Rasmiy FAQ bo'yicha bitta chatga sekundiga bittadan ko'p emas, guruhga daqiqasiga 20 ta, ommaviy tarqatmada taxminan sekundiga 30 ta. Pullik tarqatma yoqilsa sekundiga 1000 tagacha, bepul 30 dan oshgan har xabar 0.1 Stars turadi.
TikTok API rate limit qanday?
Har endpoint uchun bir daqiqalik sirpanuvchi oyna: user/info, video/list va video/query uchun standart 600. Post boshlash (video/init) — har token uchun daqiqasiga 6. Oshsa HTTP 429 va rate_limit_exceeded qaytadi.
LinkedIn API limitini qayerdan bilaman?
Standart limitlar hujjatda e'lon qilinmaydi. Developer Portal'da ilovangizning Analytics bo'limida endpointlar bo'yicha kunlik limit va ishlatilgan hajm ko'rinadi. Limitlar har kuni 00:00 UTC da yangilanadi.
429 xatosida darhol qayta urinsam bo'ladimi?
Yo'q. Platforma kutish vaqtini bergan bo'lsa (retry_after, estimated_time_to_regain_access), shuncha kuting. Bermagan bo'lsa, jitter'li eksponensial backoff ishlating. Soatlik yoki kunlik oynada tez qayta urinish faqat kvotani sarflaydi.