Du kannst den oEmbed-Endpunkt von Instagram abfragen, um den HTML-Einbettungscode und grundlegende Metadaten eines Instagram-Beitrags zu erhalten und den Beitrag auf einer anderen Webseite oder in einer anderen App anzuzeigen. Das Posten von Fotos, Videos, Reels und Feeds wird unterstützt.
Informationen zum Abrufen des Einbettungscodes eines öffentlichen Instagram-Beitrags oder -Profils findest du im Instagram-Hilfebereich.
Bei diesem Leitfaden wird vorausgesetzt, dass du ein*eine registrierte*r Meta-Entwickler*in bist und eine Meta-App erstellt hast.
Voraussetzungen:
für die oEmbed Read-Funktion – Erfordert
Meta-App-ReviewAlle Endpunkte können über den graph.facebook.com
-Host aufgerufen werden.
Durchsatzratenbegrenzungen hängen von der Art des Zugriffstokens ab, den deine App in der jeweiligen Anfrage enthält.
Apps, die App-Zugriffstoken verwenden, können innerhalb von 24 Stunden bis zu 5 Millionen Anfragen durchführen.
Durchsatzratenbegrenzungen für Client Token sind erheblich niedriger als Durchsatzratenbegrenzungen für App-Token. Wir geben die tatsächliche Grenze nicht an, da sie sich je nach deinen App-Aktivitäten ändert. Du kannst jedoch davon ausgehen, dass deine App die Grenze nur dann erreicht, wenn sie sich wie ein Bot verhält und etwa Tausende von Anfragen im Batch sendet oder Tausende von Anfragen pro Agent oder App-Nutzer*in sendet.
Du kannst HTML-Einbettungscode programmgesteuert oder in der Instagram-App abrufen.
Um den HTML-Einbettungscode eines Instagram-Beitrags programmgesteuert abzurufen, sende eine Anfrage an:
GET /instagram_oembed?url=<URL_OF_THE_POST>&access_token=<ACCESS_TOKEN>
Ersetze <URL_OF_THE_POST>
durch die URL des Instagram-Beitrags, den du abfragen möchtest, und <ACCESS_TOKEN>
durch deinen App- oder Client-Zugriffstoken oder übergib ihn in einem Authorization
-HTTP-Header an uns.
Authorization: Bearer <ACCESS_TOKEN>
Wenn du einen Client-Zugriffstoken verwendest, denke daran, ihn unter Verwendung eines Senkrechtstrichs mit deiner Meta-App-ID zu kombinieren. Ansonsten schlägt die Anfrage fehl.
Ist die Anfrage erfolgreich, antwortet die API mit einem JSON-Objekt, das den HTML-Einbettungscode des Beitrags und zusätzliche Daten enthält. Der HTML-Einbettungscode wird der Eigenschaft html
zugewiesen.
In der Referenz zu oEmbed von Instagram findest du eine Liste der Abfrage-String-Parameter, die du einschließen kannst, um die Anfrage zu erweitern. Du kannst auch den Abfrage-String-Parameter fields
einschließen, um anzugeben, welche Felder zurückgegeben werden sollen. Wird keine Angabe gemacht, sind in der Antwort alle Standardfelder enthalten.
curl -X GET \
"https://graph.facebook.com/v21.0
/instagram_oembed?url=https://www.instagram.com/p/fA9uwTtkSN/&access_token=IGQVJ..."
curl -i -X GET \
--header "Authorization: Bearer 96481..." \
"https://graph.facebook.com/v21.0
/instagram_oembed?url=https%3A%2F%2Fwww.instagram.com%2Fp%2FfA9uwTtkSN"
Einige Werte sind zur besseren Lesbarkeit mit Auslassungszeichen (...
) abgeschnitten.
{ "version": "1.0", "author_name": "diegoquinteiro", "provider_name": "Instagram", "provider_url": "https://www.instagram.com/", "type": "rich", "width": 658, "html": "<blockquote class=\"instagram-media\" data-instgrm-ca...", "thumbnail_width": 640, "thumbnail_height": 640 }
Der Abfrage-String-Parameter url
akzeptiert die folgenden URL-Formate:
https://www.instagram.com/p/{media-shortcode}/
https://www.instagram.com/tv/{media-shortcode}/
https://www.instagram.com/{username}/guide/{slug}/{guide_id}
Der HTML-Einbettungscode enthält eine Referenz zur JavaScript-Bibliothek embed.js von Instagram. Wenn die Bibliothek geladen wird, scannt sie die Seite nach dem Beitrags-HTML-Code und generiert den vollständig gerenderten Beitrag. Wenn du die Bibliothek separat laden möchtest, schließe den Abfrage-String-Parameter omitscript=true
in deine Abfrage ein. Um den HTML-Einbettungscode manuell zu initialisieren, rufe die Funktion instgrm.Embeds.process()
auf, nachdem die Bibliothek geladen wurde.
Der eingebettete Beitrag ist responsiv und wird an die Größe des Containers angepasst. Das bedeutet, dass die Höhe je nach Containerbreite und Länge der Bildunterschrift variiert. Du kannst die maximale Breite festlegen, indem du den Abfrage-String-Parameter maxwidth
in deine Abfrage einschließt.
Wir empfehlen dir, nach Möglichkeit den gesamten HTML-Einbettungscode des Beitrags zu rendern. Wenn dir das nicht möglich ist, kannst du die URL des Miniaturbilds eines Beitrags abrufen und stattdessen dieses rendern. Wenn du das tust, musst du aber neben dem Bild eine klare Attribution angeben. Dazu zählen eine Attribution des ursprünglichen Autors und von Instagram sowie ein Link zum Instagram-Beitrag, den du abfragst.
Um die URL des Miniaturbilds und die Attributionsinformationen eines Beitrags abzurufen, sende eine Anfrage an:
GET /instagram_oembed ?url=<URL_OF_THE_POST> &maxwidth=<MAX_WIDTH> &fields=thumbnail_url,author_name,provider_name,provider_url &access_token=<ACCESS_TOKEN>
Ersetze <URL_OF_THE_POST>
durch die URL des Instagram-Beitrags, den du abfragen möchtest, <MAX_WIDTH>
durch die maximale Größe des Miniaturbilds, das du rendern möchtest, und <ACCESS_TOKEN>
durch dein App- oder Client-Zugriffstoken.
curl -i -X GET \
"https://graph.facebook.com/v21.0
/instagram_oembed?url=https%3A%2F%2Fwww.instagram.com%2Fp%2FfA9uwTtkSN&maxwidth=320&fields=thumbnail_url%2Cauthor_name%2Cprovider_name%2Cprovider_url&access_token=96481..."
Einige Werte sind zur besseren Lesbarkeit mit Auslassungszeichen (...
) abgeschnitten.
{ "thumbnail_url": "https://scontent.cdninstagram.com/v/t51.288...", "author_name": "diegoquinteiro", "provider_name": "Instagram", "provider_url": "https://www.instagram.com/" }
Wenn du eine App zur Review einreichst, verwende im Formularfeld Teile uns mit, weshalb du Oembed Read anforderst > Bitte gib eine URL an, mit der wir Oembed Read testen können den oEmbed-Endpunkt von Instagram, um den HTML-Einbettungscode für einen öffentlichen Beitrag auf unserer offiziellen Facebook-Seite oder Instagram-Seite abzurufen. Füge anschließend den zurückgegebenen HTML-Einbettungscode an der Stelle ein, an der der oEmbed-Inhalt angezeigt werden soll, und gib die URL dieser Seite in das Formularfeld ein.
Sobald du eine Genehmigung für die oEmbed Read-Funktion erhalten hast, kannst du deine eigenen Seiten, Beiträge oder Videos einbetten, indem du die entsprechenden URLs verwendest.