DEV Community

Cover image for 2026'da Instagram Graph API Nasıl Kullanılır?
Tobias Hoffmann
Tobias Hoffmann

Posted on • Originally published at apidog.com

2026'da Instagram Graph API Nasıl Kullanılır?

Kısaca

Instagram Graph API, geliştiricilere Instagram İşletme ve İçerik Üreticisi hesaplarını programlı olarak yönetme imkanı sağlar. İçerik yayınlama, analizler, yorum yönetimi ve mesajlaşma gibi işlemler için Facebook Girişi (OAuth 2.0) kimlik doğrulaması ve GraphQL tabanlı uç noktalar kullanılır. Saatte 200 çağrı hız sınırı bulunur. Bu rehberde kimlik doğrulama kurulumu, içerik yayınlama, analizleri çekme, yorum yönetimi ve üretim entegrasyon stratejileri adım adım anlatılmaktadır.

Apidog'u bugün deneyin

Giriş

Instagram'ın 2 milyardan fazla aylık aktif kullanıcısı ve 200 milyondan fazla işletme hesabı var. Eğer sosyal medya yönetim araçları, analiz platformları veya e-ticaret entegrasyonları geliştiriyorsanız, Instagram Graph API entegrasyonu kaçınılmazdır.

Özellikle çoklu hesap yöneten sosyal medya yöneticileri için haftalık 20-30 saatlik manuel iş yükü (gönderi, yorum, analiz) API entegrasyonuyla kolayca otomatikleştirilebilir. Sağlam bir Instagram API entegrasyonu; içerik yayınlama, yorum denetimi, duygu analizi ve performans raporlamasını otomatize eder.

Bu rehberde, Instagram Graph API entegrasyonu için kimlik doğrulama, içerik yayınlama, analiz çekme, yorum yönetimi, webhook entegrasyonu ve üretim dağıtım stratejileri pratik olarak gösterilmektedir. Yazının sonunda üretime hazır bir Instagram entegrasyonuna sahip olacaksınız.

💡 Apidog, API entegrasyon testini kolaylaştırır. Instagram uç noktalarınızı test edin, OAuth akışlarını doğrulayın, API yanıtlarını inceleyin ve yayınlama sorunlarını tek panelden ayıklayın. API şemalarını içe aktarın, yanıtları taklit edin ve test senaryolarını ekibinizle paylaşın.

Instagram Graph API Nedir?

Instagram Graph API, Facebook Graph API altyapısı üzerinden Instagram İşletme ve İçerik Üreticisi hesaplarına programlı erişim sağlar. API ile:

  • İçerik yayınlama (fotoğraf, video, Reels, carousel)
  • Medya analizleri ve istatistikleri
  • Yorum/bahsetme yönetimi
  • Doğrudan mesajlaşma (Messenger Platform ile)
  • Hashtag ve bahsetme takibi
  • Hikaye yönetimi
  • Alışveriş ve ürün etiketleme

gibi işlemler yapılabilir.

Temel Özellikler

Özellik Açıklama
Graf tabanlı API Düğüm tabanlı kaynak erişimi
OAuth 2.0 Facebook Girişi kimlik doğrulaması
Web Kancaları Yorumlar, bahsetmeler için gerçek zamanlı bildirimler
Hız Sınırlaması Uygulama başına saatte 200 çağrı
İçerik Yayınlama Fotoğraf, video, Reels, carousel gönderileri
Analizler Etkileşim, erişim, gösterim metrikleri
Denetleme Yorum, bahsetme, mesaj yönetimi

Hesap Gereksinimleri

Hesap Türü API Erişimi
İşletme Hesabı Tam API erişimi
İçerik Üreticisi Hesabı Tam API erişimi
Kişisel Hesap API erişimi yok (dönüştürülmeli)
Gizli Hesap Sınırlı analizler

API Mimarisinin Genel Bakışı

Temel istek URL yapısı:

https://graph.facebook.com/v18.0/
Enter fullscreen mode Exit fullscreen mode

Karşılaştırılan API Sürümleri

Sürüm Durum Bitiş Tarihi Kullanım Durumu
v18.0 Mevcut Mart 2026 Tüm yeni entegrasyonlar
v17.0 Deprecated Ocak 2026 Mevcut entegrasyonlar
v16.0 Emekli Süresi doldu Kullanmayın

Her zaman en güncel kararlı sürümü hedefleyin.

Başlarken: Kimlik Doğrulama Kurulumu

Adım 1: Facebook Geliştirici Hesabı Oluşturun

  1. Facebook Geliştiriciler Portalı’na gidin.
  2. Facebook hesabınızla giriş yapın.
  3. Yeni bir Facebook Uygulaması oluşturun (tip: İşletme).
  4. Instagram Graph API ürününü ekleyin.

Adım 2: Instagram İşletme Hesabını Bağlayın

  1. Facebook Sayfanızda Ayarlar > Instagram bölümüne gidin.
  2. Hesabı Bağla butonunu tıklayın.
  3. Instagram’a giriş yapıp yetkilendirme verin.
  4. Bağlantının başarılı olduğunu doğrulayın.

Kişisel Instagram hesapları API erişimi alamaz. Gerekirse hesabı İşletme/İçerik Üreticisi’ne çevirin.

Adım 3: Erişim Belirteçlerini Alın

Kullanıcı Erişim Belirteci oluşturmak için:

const FB_APP_ID = process.env.FB_APP_ID;
const FB_APP_SECRET = process.env.FB_APP_SECRET;
const FB_REDIRECT_URI = process.env.FB_REDIRECT_URI;

// Yetkilendirme URL'si oluştur
const getAuthUrl = (state) => {
  const params = new URLSearchParams({
    client_id: FB_APP_ID,
    redirect_uri: FB_REDIRECT_URI,
    scope: 'instagram_basic,instagram_content_publish,instagram_manage_comments,instagram_manage_insights,pages_read_engagement',
    state: state
  });
  return `https://www.facebook.com/v18.0/dialog/oauth?${params.toString()}`;
};
Enter fullscreen mode Exit fullscreen mode

Gerekli İzinler

İzin Açıklama
instagram_basic Temel profil ve medya
instagram_content_publish İçerik yayınlama
instagram_manage_comments Yorum okuma/yazma
instagram_manage_insights Analiz verisi erişimi
pages_read_engagement Sayfa erişimi
pages_manage_posts Bağlı sayfaya yayınlama

Adım 4: Belirteci Uzun Ömürlü Belirteçle Değiştirin

Kısa ömürlü belirteçlerin süresi 1 saat. 60 günlük uzun ömürlü belirteç için:

const exchangeForLongLivedToken = async (shortLivedToken) => {
  const response = await fetch(
    `https://graph.facebook.com/v18.0/oauth/access_token?` +
    `grant_type=fb_exchange_token&` +
    `client_id=${FB_APP_ID}&` +
    `client_secret=${FB_APP_SECRET}&` +
    `fb_exchange_token=${shortLivedToken}`
  );
  const data = await response.json();
  return data;
};

// Kullanım
const longLivedToken = await exchangeForLongLivedToken(shortLivedToken);
console.log(`Token expires: ${new Date(longLivedToken.expires_at * 1000)}`);
Enter fullscreen mode Exit fullscreen mode

Adım 5: Instagram İşletme Hesabı Kimliğini Alın

Instagram hesabı kimliğini almak için:

const getInstagramAccountId = async (pageId, accessToken) => {
  const response = await fetch(
    `https://graph.facebook.com/v18.0/${pageId}?fields=instagram_business_account&access_token=${accessToken}`
  );
  const data = await response.json();
  return data.instagram_business_account.id;
};

// Kullanım
const igAccountId = await getInstagramAccountId('12345678', accessToken);
console.log(`Instagram Account ID: ${igAccountId}`);
Enter fullscreen mode Exit fullscreen mode

Adım 6: Kimliği Doğrulanmış API Çağrıları

Yeniden kullanılabilir bir API istemcisi:

const IG_BASE_URL = 'https://graph.facebook.com/v18.0';

const instagramRequest = async (endpoint, params = {}) => {
  const url = new URL(`${IG_BASE_URL}${endpoint}`);
  url.searchParams.append('access_token', process.env.INSTAGRAM_ACCESS_TOKEN);
  Object.entries(params).forEach(([key, value]) => {
    url.searchParams.append(key, value);
  });
  const response = await fetch(url.toString());
  if (!response.ok) {
    const error = await response.json();
    throw new Error(`Instagram API Error: ${error.error.message}`);
  }
  return response.json();
};

// Kullanım
const account = await instagramRequest(`/me`);
console.log(`Instagram Account: ${account.username}`);
Enter fullscreen mode Exit fullscreen mode

İçerik Yayınlama

Fotoğraf Yayınlama

Instagram'a fotoğraf göndermek için:

const publishPhoto = async (igAccountId, photoData) => {
  // 1. Medya konteyneri oluştur
  const containerResponse = await instagramRequest(`/${igAccountId}/media`, {
    method: 'POST',
    image_url: photoData.imageUrl,
    caption: photoData.caption,
    location_id: photoData.locationId, // Opsiyonel
    is_carousel_item: 'false'
  });
  const creationId = containerResponse.id;

  // 2. Medyayı yayınla
  const publishResponse = await instagramRequest(`/${igAccountId}/media_publish`, {
    method: 'POST',
    creation_id: creationId
  });
  return publishResponse;
};

// Kullanım
const post = await publishPhoto({
  igAccountId: '17841400000000000',
  imageUrl: 'https://example.com/image.jpg',
  caption: 'Yeni ürünümüz! 🚀 #launch',
  locationId: '123456789'
});
console.log(`Published media ID: ${post.id}`);
Enter fullscreen mode Exit fullscreen mode

Video Yayınlama

Instagram'a video göndermek için:

const publishVideo = async (igAccountId, videoData) => {
  // 1. Medya konteyneri oluştur
  const containerResponse = await instagramRequest(`/${igAccountId}/media`, {
    method: 'POST',
    video_url: videoData.videoUrl,
    cover_url: videoData.coverUrl, // Kapak görseli opsiyonel
    caption: videoData.caption,
    media_type: 'REELS', // veya 'VIDEO'
    share_to_feed: 'true'
  });
  const creationId = containerResponse.id;

  // Video işlenmesini bekle
  await waitForVideoProcessing(creationId);

  // 2. Yayınla
  const publishResponse = await instagramRequest(`/${igAccountId}/media_publish`, {
    method: 'POST',
    creation_id: creationId
  });
  return publishResponse;
};

const waitForVideoProcessing = async (creationId, maxAttempts = 30) => {
  for (let i = 0; i < maxAttempts; i++) {
    const status = await instagramRequest(`/${creationId}`);
    if (status.status_code === 'FINISHED') return true;
    else if (status.status_code === 'EXPIRED') throw new Error('Video processing expired');
    await new Promise(resolve => setTimeout(resolve, 2000));
  }
  throw new Error('Video processing timeout');
};
Enter fullscreen mode Exit fullscreen mode

Döngüsel Gönderi Yayınlama (Carousel)

Çoklu medya içeren gönderi yayınlamak için:

const publishCarousel = async (igAccountId, carouselData) => {
  const children = [];
  // 1. Her medya için konteyner oluştur
  for (const item of carouselData.items) {
    const containerResponse = await instagramRequest(`/${igAccountId}/media`, {
      method: 'POST',
      [item.type === 'video' ? 'video_url' : 'image_url']: item.url,
      caption: item.caption || '',
      is_carousel_item: 'true'
    });
    children.push(containerResponse.id);
  }
  // 2. Carousel konteyneri oluştur
  const carouselContainerResponse = await instagramRequest(`/${igAccountId}/media`, {
    method: 'POST',
    media_type: 'CAROUSEL',
    children: children.join(','),
    caption: carouselData.caption
  });
  const creationId = carouselContainerResponse.id;
  // 3. Yayınla
  const publishResponse = await instagramRequest(`/${igAccountId}/media_publish`, {
    method: 'POST',
    creation_id: creationId
  });
  return publishResponse;
};

// Kullanım
const carousel = await publishCarousel('17841400000000000', {
  caption: 'Product showcase 2026',
  items: [
    { type: 'image', url: 'https://example.com/img1.jpg', caption: 'Product 1' },
    { type: 'image', url: 'https://example.com/img2.jpg', caption: 'Product 2' },
    { type: 'video', url: 'https://example.com/vid1.mp4', caption: 'Demo' }
  ]
});
Enter fullscreen mode Exit fullscreen mode

Medya Türleri

Medya Türü Parametreler Kullanım
IMAGE image_url, başlık Fotoğraf gönderisi
VIDEO video_url, kapak_url, başlık Video gönderisi
REELS video_url, kapak_url, başlık, akışta_paylaş Reels
CAROUSEL children (dizi), başlık Çoklu medya

Medya ve Analizleri Alma

Kullanıcı Medyasını Alma

Kullanıcının yayınlanan medyasını çekmek için:

const getUserMedia = async (igAccountId, limit = 25) => {
  const response = await instagramRequest(`/${igAccountId}/media`, {
    fields: 'id,caption,media_type,media_url,permalink,timestamp,like_count,comments_count',
    limit: limit.toString()
  });
  return response;
};

// Kullanım
const media = await getUserMedia('17841400000000000');
media.data.forEach(item => {
  console.log(`${item.media_type}: ${item.caption}`);
  console.log(`Likes: ${item.like_count}, Comments: ${item.comments_count}`);
  console.log(`URL: ${item.permalink}`);
});
Enter fullscreen mode Exit fullscreen mode

Medya Analizlerini Alma

Bir medya için analizleri çekmek:

const getMediaInsights = async (mediaId) => {
  const response = await instagramRequest(`/${mediaId}/insights`, {
    fields: 'impressions,reach,engagement,saved,video_views,profile_visits,follows'
  });
  return response;
};

// Kullanım
const insights = await getMediaInsights('17890000000000000');
insights.data.forEach(metric => {
  console.log(`${metric.name}: ${metric.values[0].value}`);
});
Enter fullscreen mode Exit fullscreen mode

Mevcut Analiz Metrikleri

Metrik Açıklama Medya Türleri
impressions Toplam görüntülenme Tümü
reach Benzersiz erişim Tümü
engagement Beğeni + yorum + kaydetme Tümü
saved Kaydetme sayısı Tümü
video_views 3+ sn video izlenme Video, Reels
plays Toplam video oynatma Video, Reels
profile_visits Profil ziyaretleri Tümü
follows Gönderiden takip kazananlar Tümü
comments Yorum sayısı Tümü
like_count Beğeni sayısı Tümü

Hesap Analizlerini Alma

Toplu hesap analizleri çekmek için:

const getAccountInsights = async (igAccountId, metricNames, since = null, until = null) => {
  const params = {
    metric: metricNames.join(','),
    period: 'day'
  };
  if (since) params.since = since;
  if (until) params.until = until;
  const response = await instagramRequest(`/${igAccountId}/insights`, params);
  return response;
};

// Kullanım - Son 30 gün:
const accountInsights = await getAccountInsights(
  '17841400000000000',
  ['impressions', 'reach', 'profile_views', 'email_contacts', 'website_clicks'],
  '2026-02-23',
  '2026-03-25'
);

accountInsights.data.forEach(metric => {
  console.log(`${metric.name}:`);
  metric.values.forEach(value => {
    console.log(`  ${value.end_time}: ${value.value}`);
  });
});
Enter fullscreen mode Exit fullscreen mode

Hesap Düzeyi Metrikleri

Metrik Açıklama
impressions Toplam profil + içerik görüntülemesi
reach Benzersiz erişilen hesaplar
profile_views Profil ziyaretleri
website_clicks Bio link tıklamaları
email_contacts E-posta butonu tıklama
phone_call_clicks Telefon butonu tıklama
text_message_clicks SMS butonu tıklama
get_directions_clicks Konum tıklamaları
follower_count Toplam takipçi
audience_city Şehir bazlı takipçi
audience_country Ülke bazlı takipçi
audience_gender_age Demografi dağılımı

Yorum Yönetimi

Yorumları Alma

Bir medya üzerindeki yorumları çekmek için:

const getMediaComments = async (mediaId, limit = 50) => {
  const response = await instagramRequest(`/${mediaId}/comments`, {
    fields: 'id,text,timestamp,username,hidden',
    limit: limit.toString()
  });
  return response;
};

// Kullanım
const comments = await getMediaComments('17890000000000000');
comments.data.forEach(comment => {
  console.log(`@${comment.username}: ${comment.text}`);
  console.log(`Hidden: ${comment.hidden}`);
});
Enter fullscreen mode Exit fullscreen mode

Yorumlara Yanıtlama

Bir yoruma yanıt göndermek için:

const replyToComment = async (mediaId, commentId, replyText) => {
  const response = await instagramRequest(`/${mediaId}/comments`, {
    method: 'POST',
    response_to: commentId,
    message: replyText
  });
  return response;
};

// Kullanım
const reply = await replyToComment(
  '17890000000000000',
  '17900000000000000',
  'İlginiz için teşekkürler! Detaylar için DM kutunuzu kontrol edin.'
);
console.log(`Reply posted: ${reply.id}`);
Enter fullscreen mode Exit fullscreen mode

Yorumları Gizleme

Uygunsuz bir yorumu gizlemek için:

const hideComment = async (commentId) => {
  const response = await instagramRequest(`/${commentId}`, {
    method: 'POST',
    hide: 'true'
  });
  return response;
};

// Kullanım
await hideComment('17900000000000000');
console.log('Comment hidden');
Enter fullscreen mode Exit fullscreen mode

Yorumları Silme

Bir yorumu silmek için:

const deleteComment = async (commentId) => {
  await instagramRequest(`/${commentId}`, {
    method: 'DELETE'
  });
  console.log('Comment deleted');
};
Enter fullscreen mode Exit fullscreen mode

Web Kancaları

Web Kancalarını Yapılandırma

Instagram olayları için webhook kaydı:

const subscribeToWebhooks = async (appId, pageId, accessToken) => {
  const response = await fetch(
    `https://graph.facebook.com/v18.0/${appId}/subscriptions`,
    {
      method: 'POST',
      headers: { 'Content-Type': 'application/json' },
      body: JSON.stringify({
        object: 'instagram',
        callback_url: 'https://myapp.com/webhooks/instagram',
        verify_token: process.env.WEBHOOK_VERIFY_TOKEN,
        access_token: accessToken,
        fields: ['comments', 'mentions', 'message_reactions']
      })
    }
  );
  return response.json();
};
Enter fullscreen mode Exit fullscreen mode

Web Kancalarını İşleme

Webhook doğrulama ve olay işleme örneği:

const express = require('express');
const app = express();

// Webhook doğrulama
app.get('/webhooks/instagram', (req, res) => {
  const mode = req.query['hub.mode'];
  const token = req.query['hub.verify_token'];
  const challenge = req.query['hub.challenge'];
  if (mode === 'subscribe' && token === process.env.WEBHOOK_VERIFY_TOKEN) {
    res.status(200).send(challenge);
  } else {
    res.status(403).send('Verification failed');
  }
});

// Olay işleme
app.post('/webhooks/instagram', express.json(), async (req, res) => {
  const body = req.body;
  if (body.object !== 'instagram') {
    return res.status(404).send('Not found');
  }
  for (const entry of body.entry) {
    const igId = entry.id;
    const changes = entry.changes;
    for (const change of changes) {
      switch (change.field) {
        case 'comments':
          await handleNewComment(change.value);
          break;
        case 'mentions':
          await handleMention(change.value);
          break;
        case 'message_reactions':
          await handleReaction(change.value);
          break;
      }
    }
  }
  res.status(200).send('OK');
});

async function handleNewComment(data) {
  console.log(`New comment on media ${data.media_id}`);
  console.log(`From: ${data.from_id}`);
  console.log(`Text: ${data.text}`);
  if (isSpam(data.text)) {
    await hideComment(data.id);
  }
}
Enter fullscreen mode Exit fullscreen mode

Web Kancası Alanları

Alan Tetikleyici
comments Yeni yorum/yanıt
mentions Hesaptan bahsetme
message_reactions Hikayeye tepki
story_status Hikaye görüntüleme/yanıt

Hız Sınırlaması

Hız Sınırlarını Anlama

Instagram Graph API'de:

  • Uygulama başına saatte 200 çağrı (tüm kullanıcılar için toplam)
  • İşletme Keşfi: Kullanıcı başına saatte 200 çağrı
  • İçerik Yayınlama: Türüne göre farklı limitler

Aşımda HTTP 400, hata alt kodu 613 döner.

Hız Sınırlaması En İyi Uygulamalar

  1. Yanıtları önbelleğe alın – Değişmeyen verileri tekrar çekmeyin.
  2. Toplu istekler yapınfields parametresi ile.
  3. Web kancalarını kullanın – Yoklama yerine gerçek zamanlı.
  4. Gecikme uygulayın – 429 hatasında üstel geri çekilme.
const makeRateLimitedRequest = async (endpoint, params = {}, maxRetries = 3) => {
  for (let attempt = 1; attempt <= maxRetries; attempt++) {
    try {
      const response = await instagramRequest(endpoint, params);
      return response;
    } catch (error) {
      if (error.message.includes('429') && attempt < maxRetries) {
        const delay = Math.pow(2, attempt) * 1000;
        console.log(`Rate limited. Retrying in ${delay}ms...`);
        await new Promise(resolve => setTimeout(resolve, delay));
      } else {
        throw error;
      }
    }
  }
};
Enter fullscreen mode Exit fullscreen mode

Sık Karşılaşılan Sorunları Giderme

Sorun: OAuth Belirteci Süresi Doldu

Belirti: "Geçersiz OAuth erişim belirteci" hatası.

Çözüm:

  1. 60 gün dolmadan belirteç yenilemeyi uygulayın
  2. Belirteç bitiş tarihini takip edip uyarı gösterin
  3. Süresi dolduysa kullanıcıyı yeniden doğrulayın

Sorun: Medya Yayınlama Başarısız

Belirti: Yayınlama hatası.

Çözüm:

  1. Görsel URL’sinin herkese açık olduğundan emin olun
  2. Formatın (JPEG/PNG) ve boyutun (<8MB) uygunluğunu kontrol edin
  3. Video: MP4, <1GB, <90 sn olmalı
  4. Video işlenmesini tamamlamadan yayınlama yapmayın

Sorun: Analizler Mevcut Değil

Belirti: Analiz API’si boş veri döndürüyor.

Çözüm:

  1. Hesabın İşletme/İçerik Üreticisi olduğundan emin olun
  2. Analizlerin oluşması için 24-48 saat bekleyin
  3. Hesapta yeterli etkileşim olduğundan emin olun

Üretim Dağıtım Kontrol Listesi

Canlıya geçmeden önce:

  • [ ] Tüm test hesaplarını İşletme/İçerik Üreticisi’ne çevirin
  • [ ] Uzun ömürlü belirteçlerle OAuth 2.0 uygulayın
  • [ ] Belirteçleri şifreli saklayın
  • [ ] Otomatik belirteç yenilemeyi ekleyin
  • [ ] Webhook uç noktalarını HTTPS ile sunun
  • [ ] Hız sınırı ve istek kuyruğu ekleyin
  • [ ] Kapsamlı hata yönetimi uygulayın
  • [ ] API çağrıları için loglama ekleyin
  • [ ] İçerik denetim iş akışlarını oluşturun
  • [ ] Farklı hesap türleriyle test edin

Gerçek Dünya Kullanım Durumları

Sosyal Medya Zamanlama Aracı

Bir pazarlama platformunda:

  • Zorluk: 50+ müşteri hesabına manuel gönderim
  • Çözüm: Instagram API ile planlanmış otomatik yayınlama
  • Sonuç: %80 zaman tasarrufu, tutarlı gönderi takvimi

Uygulama başlıkları:

  • Sürükle-bırak takvim
  • Fotoğraf, video, carousel otomatik yayını
  • İçerik tabanlı hashtag önerisi

Müşteri Hizmetleri Otomasyonu

Bir e-ticaret markasında:

  • Zorluk: Yavaş müşteri yanıtları
  • Çözüm: Webhook ile otomatik sıkça sorulan sorular yanıtı
  • Sonuç: Ortalama 5 dk yanıt süresi, %90 memnuniyet

Uygulama başlıkları:

  • Anahtar kelime tespiti (fiyat, stok, gönderim)
  • Ürün bağlantılı otomatik yanıt
  • Karmaşık soruları operatöre yönlendirme

Sonuç

Instagram Graph API ile:

  • 60 günlük belirteçlerle Facebook Girişi OAuth 2.0 kimlik doğrulama
  • Fotoğraf, video, Reels, carousel içerik yayınlama
  • Etkileşim, erişim, demografi analizleri API’sı
  • Yorum/bahsetme için gerçek zamanlı webhook desteği
  • Uygulama başına saatte 200 çağrı hız sınırı – dikkatli yönetim gerekli
  • Apidog ile API test ve iş birliği kolaylaşır

Sıkça Sorulan Sorular

Instagram API'ye nasıl erişebilirim?

Facebook Geliştirici hesabı açıp, İşletme uygulaması oluşturun. Instagram Graph API ürününü ekleyip gerekli izinlerle Facebook Girişi üzerinden kimlik doğrulama yapın.

Instagram'a otomatik gönderi yapabilir miyim?

Evet, İşletme ve İçerik Üreticisi hesaplarında fotoğraf, video, Reels ve carousel gönderileri otomatik olarak API ile yayınlayabilirsiniz.

Hangi Instagram hesapları API’yi destekler?

Sadece İşletme ve İçerik Üreticisi hesapları tam API erişimi sağlar. Kişisel hesapların API erişimi yoktur.

Instagram’dan yorumları nasıl alırım?

Belirli bir medyada yorumları almak için /{media-id}/comments uç noktasını kullanın. Webhook ile gerçek zamanlı bildirim de alabilirsiniz.

Instagram hız sınırları nelerdir?

Saatte uygulama başına 200 çağrı hakkınız var. Bazı uç noktalarda kullanıcı başına ek limitler olabilir.

API ile Hikaye (Story) yayınlayabilir miyim?

Evet, hikayeler için de içerik yayınlama akışı aynıdır.

Instagram analizlerine nasıl erişirim?

OAuth sırasında instagram_manage_insights iznini alın. Medya ve hesap metrikleri için analiz uç noktalarını kullanın.

Yorumlara otomatik yanıt verebilir miyim?

Evet, yorum API’si ile otomatik yanıt gönderebilirsiniz. Birçok marka bunu müşteri hizmetleri otomasyonu için kullanır.

Top comments (0)