總覽

含有 Facebook 登入的 Instagram API 是 Facebook 圖形 API 端點集合,可讓應用程式存取 Instagram 專業帳號(包括商業帳號和創作者帳號)的資料。如果您還不熟悉 Facebook 圖形 API,請先參閱我們的圖形 API 說明文件,再繼續進行。

基底網址

可以透過 graph.facebook.com 主機存取所有端點。

應用程式用戶

要存取使用 Instagram 專業帳號,需透過 Facebook 帳號間接進行,因此您的應用程式用戶必須要有 Facebook 帳號,登入您的應用程式時也必須使用這個帳號。此外,在已經與 Instagram 帳號連結(也就是欲使用 Facebook 帳號存取的 Instagram 帳號)的 Facebook 粉絲專頁,這個 Facebook 帳號必須要能夠執行管理員層級的任務

這些必備條件適用於所有應用程式用戶,即使這些用戶在您的應用程式具有角色,或者在聲明擁有您的應用程式之商業帳號具有角色。

驗證

處理應用程式用戶驗證時需透過存取權杖進行。要存取 Instagram 專業帳號需透過 Facebook 帳號間接進行,因此所有 API 要求皆須包含您的應用程式用戶的 Facebook 用戶存取權杖。要取得應用程式用戶的權杖,您可以實作 Facebook 登入。請注意,Facebook 登入不支援 Instagram 憑證,因此應用程式用戶必須使用 Facebook 帳號登入。

授權

要處理端點授權需透過權限功能進行。在您的應用程式能夠使用端點存取應用程式用戶的 Instagram 資料之前,您必須先請應用程式用戶提供這些端點要求的所有權限。之後,應用程式用戶必須同意將這些權限授予您的應用程式。用戶同意後,您就可以查詢端點,以利存取用戶資料。

請記住,權限只開放存取授予該項權限之用戶所建立的資料。有少數端點允許應用程式存取並非由應用程式用戶建立的資料,但只限存取有限的公開資料。

若要請應用程式用戶授予權限,您可以實作 Facebook 登入。在您的應用程式具有角色的應用程式用戶,可以授予您所要求的任何權限。應用程式用戶在您的應用程式若不具有任何角色,只能授予應用程式審查流程已獲准的權限與功能。

這項 API 使用下列權限和功能:

請參閱我們的端點參考資料,判斷您的應用程式需要向應用程式用戶要求哪些權限與功能。

Instagram 傳訊

如果您計畫從 Messenger 平台實作 Instagram 傳訊,則需要包含 instagram_manage_messages 權限。深入瞭解 Instagram 傳訊。

協作者

Instagram Collab 功能允許 Instagram 應用程式用戶和其他帳戶(協作者)共同刊登內容(亦即發佈影音素材)。

除了少數例外,只有發佈影音素材的用戶可以透過 API 存取共同刊登之影音素材的資料或相關資料;協作者無法透過 API 存取這項資料。少數例外包括搜尋成效最佳的影音素材,或最近發佈且標註了特定主題標籤的影音素材時。請參閱主題標籤搜尋

粉絲專頁

Instagram 專業帳號必須先完成與 Facebook 粉絲專頁的連結,才能開放透過 API 存取其資料。完成連結後,任何一位能在該粉絲專頁執行任務的 Facebook 用戶,皆可將存取權杖授予您的應用程式,之後您可以在 API 要求中使用這個存取權杖。

新增或變更已連結至您 Instagram 專業帳號的 Facebook 粉絲專頁說明文章描述如何將 Facebook 粉絲專頁與 Instagram 專業帳號連結。

任務

應用程式用戶必須能夠在已經與欲存取 Instagram 帳號連結的 Facebook 粉絲專頁執行任務,才能將權限授予您的應用程式。應用程式用戶可以根據自己所能執行的任務,將以下權限授予您的應用程式:

權限MANAGECREATE_CONTENTMODERATEADVERTISEANALYZE

instagram_basic

instagram_content_publish

instagram_manage_comments

instagram_manage_insights

您可以判斷應用程式用戶能夠在粉絲專頁執行的任務,方法是以應用程式用戶的用戶存取權杖查詢 GET /me/accounts 端點。端點會傳回粉絲專頁清單,其中列有應用程式用戶能夠執行任務的粉絲專頁,同時會註明用戶在其中每一個粉絲專頁能夠執行的任務。

請參閱參考說明文件,瞭解各個端點要求的權限。此 API 不支援擁有「共同主播」角色的應用程式用戶。

任務用語

如果您需要向應用程式用戶告知任務相關資訊(以及說明要正確您的應用程式所需的任務),以下說明我們的各種用戶介面所採用的任務用語。

經典版粉絲專頁

經典版粉絲專頁將任務稱為角色。擁有粉絲專頁管理員角色的應用程式用戶可以將任何權限授予您的應用程式。擁有其他角色的應用程式用戶則可以授予以下權限:

角色可授予的權限

編輯

instagram_basic
instagram_content_publish

版主

instagram_basic
instagram_manage_comments
instagram_manage_insights

廣告商

instagram_basic
instagram_manage_insights

分析師

instagram_basic
instagram_manage_insights

新版體驗粉絲專頁

新版體驗粉絲專頁將任務稱為 Facebook 管理權限或工作權限。擁有粉絲專頁 Facebook 管理權限的應用程式用戶可以將任何權限授予您的應用程式。擁有工作權限的應用程式用戶則可以授予以下權限:

工作權限可授予的權限

廣告

instagram_basic

內容

instagram_basic
instagram_content_publish

行銷數據

instagram_basic
instagram_manage_insights

訊息與社群動態

instagram_basic
instagram_manage_comments

若要判斷粉絲專頁是否使用新版體驗,請要求其 has_transitioned_to_new_page_experience 欄位。如果粉絲專頁使用新版體驗,此值會傳回 true

應用程式審查

您的應用程式必須先完成應用程式審查,在您的應用程式不具有角色或在聲明擁有您的應用程式之商業帳號不具有角色應用程式用戶,才能使用您的應用程式。若只有在您的應用程式或商業帳號具有角色會使用您的應用程式,您就不需要完成應用程式審查。

您送出的應用程式審查資料不需要包含任何 Facebook 測試用戶憑證,前提是您必須已經實作 Facebook 登入並開放使用您的應用程式。不過,若我們的審查人員需要登入非 Facebook 帳號才能觸發您的 Facebook 登入實作,您送交的資料就必須包含非 Facebook 帳號憑證。

不公開的應用程式

若我們的審查人員無法測試您的應用程式,因為您的應用程式是在不公開的內部網路中、沒有用戶介面,或者尚未實作 Facebook 登入,您只能申請以下權限:

商家驗證

如果在應用程式不具有角色或在聲明擁有應用程式的商業帳號不具有角色的應用程式使用者將會使用您的應用程式,您必須完成商家驗證

限速

所有端點皆須受限於 Instagram 商用限速,只有商家探索端點和主題標籤搜尋端點不在此限,這兩種端點必須以平台限速為準。

Webhooks

您可以使用 Webhooks,只要有人在您的應用程式用戶的影音素材物件留言,或者應用程式用戶的任何一項限時動態到期時,就會發送通知給您。請參閱我們的 Webhooks 說明文件,以瞭解 Webhooks,然後設定 Instagram 主題的 Webhook,並訂閱其 commentsstory_insights 欄位。

Instagram 傳訊

有幾個含有 Facebook 登入的 Instagram API 端點可與 Messenger 開放平台端點搭配使用,讓您的應用程式用戶能夠與傳送至其 Instagram 專業帳號的 Direct 訊息互動。請參閱 Messenger 開放平台的 Instagram 訊息說明文件,瞭解如何存取 Instagram 商業帳號中的訊息。