Asosiy mazmunga o'tish
Socialift
Texnik qo'llanma

Meta Graph API asoslari

Instagram va Facebook integratsiyalarining hammasi Meta Graph API ustida quriladi. Uni tushunish uchun to'rt tushuncha yetarli: token turlari, appsecret_proof imzosi, ruxsatlar va limitlar. Instagram'da esa ikki yo'l bor: Facebook Login (sahifa tokeni) va Instagram Login (sahifasiz, Instagram User tokeni) — token modeli shu tanlovga bog'liq.

Nashr etilgan: Yangilangan:

To'rt asosiy tushuncha

Foydalanuvchi tokeni
Odam nomidan ishlaydi. U orqali foydalanuvchining sahifalari ro'yxati olinadi. Qisqa muddatli token uzoq muddatliga almashtiriladi.
Sahifa tokeni
Aniq bir sahifa nomidan amal bajaradi. Facebook Login yo'lida sahifa postlari va izohlari hamda unga bog'langan Instagram akkauntining Direct, post va izohlari shu token bilan ishlaydi. Instagram Login yo'lida sahifa kerak emas — Instagram User tokeni ishlatiladi.
appsecret_proof
Access token'dan app secret kaliti bilan HMAC-SHA256 orqali hisoblanadigan imzo. Ilova sozlamasida «Require App Secret» yoqilgan bo'lsa, usiz so'rov rad etiladi. Himoya: o'g'irlangan tokenni app secret'siz ishlatib bo'lmaydi.
Ruxsat (permission)
Har bir amal uchun alohida ruxsat kerak: pages_show_list, pages_read_engagement, instagram_manage_messages (Instagram Login'da — instagram_business_manage_messages), leads_retrieval va boshqalar.

App Review nima uchun kerak

Standard Access'da ruxsatlar faqat ilovada roli bor odamlar (admin, developer, tester) uchun ishlaydi. Boshqa foydalanuvchilar bilan ishlash uchun har bir ruxsatga Advanced Access kerak — u App Review va Business Verification'dan keyin beriladi. Bu eng ko'p vaqt oladigan bosqich.

Amaliy maslahat: faqat haqiqatan kerak bo'lgan ruxsatlarni so'rang. Har bir qo'shimcha ruxsat ko'rib chiqishni uzaytiradi va rad etilish ehtimolini oshiradi.

Ikkinchi maslahat: ko'rib chiqish uchun aniq va takrorlanadigan stsenariy tayyorlang — Meta jamoasi ruxsat qanday ishlatilishini o'z ko'zi bilan ko'rishi kerak.

Limitlar va ularni boshqarish

Graph API so'rovlarni cheklaydi: ilova darajasida soatiga 200 × foydalanuvchilar soni, Pages, Instagram va Marketing API chaqiruvlarida esa Business Use Case limitlari. Sarf X-App-Usage va X-Business-Use-Case-Usage sarlavhalarida keladi; limitga yetilganda 4, 17, 32, 613 yoki 800xx kodli xato qaytadi.

To'g'ri xatti-harakat — eksponensial backoff bilan qayta urinish, parallel so'rovlarni cheklash va takroriy ma'lumotni keshlash. SDK backoff bilan qayta urinadi (RetryPolicy) va 4/17/32/613 kodlarida RateLimitError beradi; retry_after faqat Retry-After sarlavhasi bo'lsa to'ladi. Meta kutish vaqtini X-Business-Use-Case-Usage sarlavhasidagi estimated_time_to_regain_access da beradi.

Integratsiyadan oldin tekshiring

  • Instagram akkaunt professional (Business yoki Creator) turida; Facebook Login yo'lida — Facebook sahifasiga bog'langan (Instagram Login yo'lida sahifa shart emas).
  • Ilova siri xavfsiz saqlanmoqdami va appsecret_proof qo'shilmoqdami.
  • Kerakli ruxsatlar ro'yxati minimal darajada tuzilganmi.
  • Token muddatini kuzatish mexanizmi bormi.
  • Rate-limit uchun backoff va navbat rejalashtirilganmi.
  • So'rovlarda Graph API versiyasi aniq ko'rsatilganmi va uning muddati kuzatilmoqdami.

← Blogga qaytish

Ko'p so'raladigan savollar

Graph API va Instagram API — ikki xil narsami?

Unchalik emas. Instagram API Meta platformasining bir qismi va Meta developer ilovasi orqali sozlanadi, lekin ikki yo'li bor: Facebook Login (sahifa tokeni, sahifa kerak) va Instagram Login (Instagram User tokeni, sahifasiz). Token modeli tanlangan yo'lga bog'liq.

appsecret_proof shartmi?

Ilova sozlamalariga bog'liq, lekin ishlab chiqarish uchun uni doim qo'shish to'g'ri yondashuv. SDK buni avtomatik bajaradi.

Token muddati tugasa foydalanuvchi qayta login qilishi kerakmi?

Muddati o'tgan tokenni yangilab bo'lmaydi — ha. Shuning uchun muddatidan oldin yangilang: Instagram Login tokeni (60 kun) kamida 24 soatlik bo'lgach yangilanadi (ig.refresh_token); uzoq muddatli foydalanuvchi tokenidan olingan sahifa tokenlarining muddati yo'q. Ruxsat bekor qilinganda baribir «qayta ulash» holati kerak.

Graph API versiyasini qanday tanlash kerak?

Versiya so'rov manzilida ko'rsatiladi (masalan, /v26.0/me). Meta har bir versiya kamida ikki yil ishlashini kafolatlaydi; muddati o'tgan versiyaga chaqiruvlar keyingi qo'llab-quvvatlanadigan versiyaga yo'naltiriladi, shuning uchun o'zgargan endpointlar boshqacha ishlashi mumkin. SDK'da versiya graph_version= parametri bilan beriladi.

Manbalar

  1. Meta: Securing requests (appsecret_proof)
  2. Meta: Access levels
  3. Meta: Graph API rate limiting
  4. Meta: Get long-lived tokens
  5. Meta: Refresh access token (Instagram)
  6. Meta: Graph API versioning

Bog'liq sahifalar