Menyematkan Postingan Instagram

Anda dapat mengkueri endpoint oEmbed Instagram untuk mendapatkan HTML sematan dan metadata dasar dari suatu postingan Instagram untuk menampilkan postingan tersebut di situs web atau aplikasi lain. Mendukung postingan foto, video, Reel, dan Kabar.

Kunjungi Pusat Bantuan Instagram untuk mempelajari cara mendapatkan kode sematan dari postingan atau profil Instagram publik.

Penggunaan umum

  • Menyematkan postingan di blog
  • Menyematkan postingan di situs web
  • Merender postingan di sistem manajemen konten
  • Merender postingan di aplikasi berkirim pesan

Persyaratan

Panduan ini mengasumsikan Anda adalah developer Meta terdaftar dan telah membuat aplikasi Meta.

Anda memerlukan hal-hal berikut:

Level akses

Token akses

  • Token akses aplikasi, jika aplikasi Anda mengakses endpoint oEmbed dari server backend
  • Token akses klien, jika aplikasi Anda mengakses endpoint oEmbed dari agen pengguna, seperti perangkat seluler atau browser web

URL Dasar

Semua endpoint dapat diakses melalui host graph.facebook.com.

Endpoint

Fitur

Batasan

  • Endpoint oEmbed Instagram hanya dimaksudkan untuk digunakan dalam menyematkan konten Instagram di situs web dan aplikasi. Endpoint tersebut tidak boleh digunakan untuk tujuan lain. Dilarang keras menggunakan metadata dan konten halaman, postingan, atau video (atau turunannya) dari endpoint untuk tujuan apa pun selain memberikan tampilan front-end halaman, postingan, atau video. Larangan ini mencakup menggunakan, memanipulasi, mengekstraksi, atau mempertahankan metadata dan konten, termasuk tetapi tidak terbatas pada memperoleh informasi tentang postingan dari metadata untuk tujuan analitik.
  • Postingan di akun Instagram pribadi, tidak aktif, dan dibatasi usia tidak didukung.
  • Akun yang telah menonaktifkan Sematan tidak didukung.
  • Cerita tidak didukung.
  • DOM Bayangan tidak didukung.

Batas laju

Batas laju bergantung pada jenis token akses yang disertakan aplikasi Anda di setiap permintaan.

Batas laju token aplikasi

Aplikasi yang mengandalkan token akses aplikasi dapat membuat hingga 5 juta permintaan per 24 jam.

Batas laju token klien

Batas laju token klien secara signifikan lebih rendah daripada batas laju token aplikasi. Kami tidak mengungkapkan batas sebenarnya karena akan berubah, tergantung aktivitas aplikasi Anda. Namun, Anda dapat dengan aman berasumsi bahwa aplikasi Anda tidak akan mencapai batasnya kecuali aplikasi tersebut menunjukkan perilaku seperti bot, seperti mengelompokkan ribuan permintaan, atau mengirimkan ribuan permintaan per agen atau pengguna aplikasi.

Mendapatkan HTML sematan

Anda bisa mendapatkan HTML yang disematkan secara terprogram atau di aplikasi Instagram.

Untuk mendapatkan HTML sematan postingan Instagram secara terprogram, kirimkan permintaan ke:

GET /instagram_oembed?url=<URL_OF_THE_POST>&access_token=<ACCESS_TOKEN>

Ganti <URL_OF_THE_POST> dengan URL postingan Instagram yang ingin Anda kueri dan <ACCESS_TOKEN> dengan token akses aplikasi atau klien Anda atau teruskan kepada kami di header HTTP Authorization.

Authorization: Bearer <ACCESS_TOKEN>

Jika Anda menggunakan token akses klien, ingatlah bahwa Anda harus menggabungkannya dengan ID Aplikasi Meta Anda menggunakan simbol pipa, jika tidak, permintaan akan gagal.

Setelah berhasil, API akan menanggapi dengan objek JSON yang berisi HTML sematan postingan dan data tambahan. HTML sematan akan ditetapkan ke properti html.

Bacalah referensi oEmbed Instagram untuk daftar parameter string kueri yang dapat Anda sertakan untuk menambah permintaan. Anda juga dapat menyertakan parameter string kueri fields untuk menentukan kolom mana yang ingin dikembalikan. Jika dihilangkan, semua Kolom default akan disertakan dalam tanggapan.

Contoh permintaan

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"

Contoh Tanggapan

Beberapa nilai terpotong dengan elipsis (...) agar mudah dibaca.

{
  "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
}

Format URL

Parameter string kueri url menerima format URL berikut ini:

https://www.instagram.com/p/{media-shortcode}/
https://www.instagram.com/tv/{media-shortcode}/https://www.instagram.com/{username}/guide/{slug}/{guide_id}

JS Sematan

HTML sematan berisi referensi ke pustaka JavaScript embed.js Instagram. Ketika galeri memuat, galeri memindai halaman untuk HTML postingan dan menghasilkan postingan yang dirender sepenuhnya. Jika Anda ingin memuat pustaka secara terpisah, sertakan parameter string kueri omitscript=true dalam permintaan Anda. Untuk menginisialisasi HTML sematan secara manual, panggil fungsi instgrm.Embeds.process() setelah memuat pustaka.

Ukuran Postingan

Postingan sematan bersifat responsif dan akan beradaptasi dengan ukuran kontainernya. Ini berarti bahwa tingginya akan bervariasi sesuai lebar kontainernya dan panjang keterangannya. Anda dapat mengatur lebar maksimum dengan menyertakan parameter string kueri maxwidth dalam permintaan Anda.

Dapatkan gambar mini

Kami menyarankan Anda merender semua HTML yang disematkan pada postingan jika memungkinkan. Jika tidak dapat melakukan ini, Anda bisa mendapatkan URL gambar mini postingan dan me-rendernya. Jika Anda melakukan hal ini, Anda harus memberikan atribusi yang jelas di sebelah gambar, termasuk atribusi ke penulis asli dan ke Instagram, serta tautan ke postingan Instagram yang Anda kueri.

Untuk mendapatkan URL gambar mini dan informasi atribusi dari postingan, kirimkan permintaan ke:

GET /instagram_oembed
  ?url=<URL_OF_THE_POST>
  &maxwidth=<MAX_WIDTH>
  &fields=thumbnail_url,author_name,provider_name,provider_url
  &access_token=<ACCESS_TOKEN>

Ganti <URL_OF_THE_POST> dengan URL postingan Instagram yang ingin Anda kueri, <MAX_WIDTH> dengan ukuran maksimum gambar mini yang ingin Anda render, dan <ACCESS_TOKEN> dengan token akses aplikasi atau klien Anda.

Contoh permintaan

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..."

Contoh Tanggapan

Beberapa nilai dipotong dengan elipsis (...) agar mudah dibaca.

{
  "thumbnail_url": "https://scontent.cdninstagram.com/v/t51.288...",
  "author_name": "diegoquinteiro",
  "provider_name": "Instagram",
  "provider_url": "https://www.instagram.com/"
}

Pengajuan Tinjauan Aplikasi

Saat Anda mengirimkan aplikasi untuk ditinjau, pada kolom formulir Beri tahu Kami Alasan Anda Meminta Baca Oembed > Harap berikan URL tempat kami dapat menguji Baca Oembed, gunakan endpoint Instagram oEmbed agar dapat memperoleh HTML sematan untuk setiap postingan publik pada Halaman Facebook atau Halaman Instagram resmi kami. Kemudian, tambahkan HTML sematan yang dikembalikan ke tempat Anda akan menampilkan konten oEmbed dan masukkan URL halaman tersebut di kolom formulir.

Setelah Anda disetujui untuk fitur Baca oEmbed, Anda dapat menyematkan halaman, postingan, atau video Anda sendiri menggunakan URL masing-masing.