Erste Schritte

In diesem Dokument wird erläutert, wie du die Instagram Graph API mit deiner App erfolgreich aufrufst und ein Instagram Business- oder Creator-Konto-Medienobjekt erhältst. Wir setzen voraus, dass du mit der Graph API und Facebook Login vertraut bist und REST API-Aufrufe tätigen kannst. Wenn du noch keine App hast, kannst du alternativ den Graph API Explorer verwenden und die Schritte 1 und 2 überspringen.

Bevor du beginnst

Du benötigst Zugriff auf Folgendes:

1. Facebook Login konfigurieren

Füge das Facebook Login-Produkt im App-Dashboard zu deiner App hinzu.

Du kannst für alle Einstellungen die Standardwerte übernehmen. Wenn du Facebook Login manuell implementierst (nicht empfohlen), gib deine redirect_uri in das Feld Gültige OAuth Redirect URIs ein. Wenn du eines unserer SDKs verwendest, kannst du das Feld leer lassen.

2. Facebook Login implementieren

Implementiere Facebook Login gemäß den Anweisungen in unserer Facebook Login-Dokumentation für deine Plattform in deine App. Richte deine Implementierung ein, um die folgenden Berechtigungen anzufordern:

3. Nutzer-Zugriffsschlüssel abrufen

Nachdem du Facebook Login implementiert hast, vergewissere dich, dass du bei deinem Facebook-Entwicklerkonto angemeldet bist. Rufe dann deine App auf und löse den modalen Facebook Login-Dialog aus. Denke daran, dass dein Facebook-Entwicklerkonto Aufgaben auf der Facebook-Seite ausführen können muss, die mit dem Instagram-Konto verknüpft ist, für das du eine Abfrage durchführen möchtest.

Klicke nach dem Auslösen des modalen Dialogs auf OK, um deiner App die Berechtigungen instagram_basic und pages_show_list zu gewähren.

Die API sollte einen Nutzer-Zugriffsschlüssel zurückgeben. Nimm den Schlüssel auf, sodass deine App ihn in den nächsten Abfragen verwenden kann. Wenn du den Graph API Explorer verwendest, wird der Schlüssel automatisch aufgenommen und als Referenz im Zugriffsschlüssel-Feld angezeigt:

4. Seiten des Nutzers abrufen

Frage den GET /me/accounts-Endpunkt ab (dieser wird in GET /{user-id}/accounts umgewandelt, was eine GET-Aktion für den Facebook-User-Node basierend auf deinem Zugriffsschlüssel durchführt).

curl -i -X GET \
 "https://graph.facebook.com/v19.0/me/accounts?access_token={access-token}"

Hierdurch sollte eine Collection von Facebook-Seiten zurückgegeben werden, für die der aktuelle Facebook-Nutzer die Aufgaben MANAGE, CREATE_CONTENT, MODERATE oder ADVERTISE ausführen kann.

{
  "data": [
    {
      "access_token": "EAAJjmJ...",
      "category": "App Page",
      "category_list": [
        {
          "id": "2301",
          "name": "App Page"
        }
      ],
      "name": "Metricsaurus",
      "id": "134895793791914",  // capture the Page ID
      "tasks": [
        "ANALYZE",
        "ADVERTISE",
        "MODERATE",
        "CREATE_CONTENT",
        "MANAGE"
      ]
    }
  ]
}

Erfasse die ID der Facebook-Seite, die mit dem Instagram-Konto verknüpft ist, das du abfragen möchtest. Denke daran, dass deine App-Nutzer möglicherweise Aufgaben für mehrere Seiten ausführen können, sodass du eventuell Logik hinzufügen musst, die die zu erfassende richtige Seiten-ID ermitteln kann (oder entwickle eine UI, über die deine App-Nutzer die richtige Seite für dich identifizieren können).

5. Abrufen des Instagram Business-Kontos einer Seite

Führe mit der erfassten Seiten-ID eine Abfrage für den GET /{page-id}?fields=instagram_business_account-Endpunkt durch:

curl -i -X GET \
 "https://graph.facebook.com/v19.0/134895793791914?fields=instagram_business_account&access_token={access-token}"

Damit sollte der IG-Benutzer (ein Instagram Business- oder Creator-Konto) zurückgegeben werden, der mit der Facebook-Seite verknüpft ist.

{
  "instagram_business_account": {
    "id": "17841405822304914"  // Connected IG User ID
  },
  "id": "134895793791914"  // Facebook Page ID
}

Erfasse die IG-Benutzer-ID.

6. Abrufen der Medienobjekte des Instagram Business-Kontos

Führe mit der erfassten IG-Benutzer-ID eine Abfrage für den GET /{ig-user-id}/media-Endpunkt durch:

curl -i -X GET \
 "https://graph.facebook.com/v19.0/17841405822304914/media?access_token={access-token}"

Damit sollten die IDs aller IG-Medienobjekte für den IG-Benutzer zurückgegeben werden:

{
  "data": [
    {
      "id": "17918195224117851"
    },
    {
      "id": "17895695668004550"
    },
    {
      "id": "17899305451014820"
    },
    {
      "id": "17896450804038745"
    },
    {
      "id": "17881042411086627"
    },
    {
      "id": "17869102915168123"
    }
  ],
  "paging": {
    "cursors": {
      "before": "QVFIUkdGRXA2eHNNTUs4T1ZAXNGFxQTAtd3U4QjBLd1B2NXRMM1NkcnhqRFdBcEUzSDVJZATFoLWtXMWZAGU2VrRTk2RHVtTVlDckI2NjN0UERFa2JrUk4yMW13",
      "after": "QVFIUmlwbnFsM3N2cV9lZAFdCa0hDeV9qMVliT0VuMmJyNENxZA180c0t6VjFQVEJaTE9XV085aU92OUFLNFB6Szd2amo5aV9rTlVBcnNlWmEtMzYxcE1HSFR3"
    }
  }
}

Wenn du diese letzte Abfrage erfolgreich durchführen kannst, solltest du auch Abfragen mit jedem beliebigen Instagram Graph API-Endpunkt durchführen können. In unseren verschiedenen Leitfäden und Referenzen findest du Informationen zu den Funktionen der einzelnen Endpunkte und den dafür benötigten Berechtigungen.

Nächste Schritte

  • Entwickle deine App weiter, damit sie alle anderen Endpunkte erfolgreich verwenden kann, die sie benötigt, und verfolge die Berechtigungen, die die einzelnen Endpunkte brauchen.
  • Schließe den App Review-Prozess ab und fordere die Bestätigung aller Berechtigungen an, die deine App benötigt, damit deine App-Nutzer*innen diese gewähren können, wenn die App im Live-Modus ist.
  • Wechsel deine App in den Live-Modus und vermarkte sie an potenzielle Benutzer.

Sobald sich deine App im Live-Modus befindet, können alle Facebook-Benutzer, für die du die App verfügbar gemacht hast, auf die Daten eines Instagram Business- oder Creator-Kontos zugreifen. Dafür müssen sie über ein Facebook-Benutzerkonto verfügen, das für die mit diesem Instagram Business- oder Creator-Konto verknüpfte Seite Aufgaben durchführen kann.