On September 4, 2024, we announced the deprecation of the Instagram Basic Display API.

Starting December 4, 2024, all requests to the Instagram Basic Display API will return an error message. We recommend that you migrate your app to the Instagram API to avoid any disruption to your services.

Visit our News for Developers blog post to learn more.

取得用戶個人檔案和用戶媒體

本指南說明如何取得 Instagram 用戶的個人檔案和媒體。

取得用戶的個人檔案

請執行下列步驟,以取得 Instagram 用戶在用戶上的個人檔案資料(欄位)。

步驟 1:取得存取權杖和權限

請依照我們的取得存取權杖和權限指南,以取得用戶的 Instagram 用戶存取權杖。您需要有 instagram_graph_user_profile 權限,因此請在取得用戶驗證時要求 user_profile 範圍。

步驟 2:查詢用戶節點

傳送要求至下列端點:

GET /me?fields={fields}&access_token={access-token}

{fields} 換成您想傳回的用戶欄位的逗號分隔清單,並將 {access-token} 換成用戶的存取權杖。GET /me 端點將從權杖判斷用戶的編號,並將要求重新導向至用戶節點。

要求範例

curl -X GET \
  'https://graph.instagram.com/me?fields=id,username&access_token=IGQVJ...'

回應範例

{
  "id": "17841405793187218",
  "username": "jayposiris"
}

取得用戶的媒體

請執行下列步驟,以取得 Instagram 用戶媒體集合。

步驟 1:取得存取權杖和權限

請依照我們的取得存取權杖和權限指南,以取得用戶的 Instagram 用戶存取權杖。您需要有 instagram_graph_user_profileinstagram_graph_user_media permissions,因此請在取得用戶驗證時要求 user_profileuser_media 範圍。

步驟 2:查詢用戶媒體關係連線

傳送要求至下列端點:

GET /me/media?fields={fields}&access_token={access-token}

針對回應中所含的每個媒體,將 {fields} 換成您想傳回的媒體欄位的逗號分隔清單(如果只想要編號,可省略整個 fields 參數),並將 {access-token} 換成用戶的存取權杖。GET /me 端點將從權杖判斷用戶的編號,並將要求重新導向至用戶節點。

要求範例

curl -X GET \
  'https://graph.instagram.com/me/media?fields=id,caption&access_token=IGQVJ...'

回應範例

{
  "data": [
    {
      "id": "17895695668004550",
      "caption": ""
    },
    {
      "id": "17899305451014820",
      "caption": ""
    },
    {
      "id": "17896450804038745",
      "caption": ""
    },
    {
      "id": "17881042411086627",
      "caption": ""
    }
  ],
  "paging": {
    "cursors": {
      "after": "MTAxN...",
      "before": "NDMyN..."
      },
    "next": "https://graph.faceb..."
  }
}

取得媒體資料

請執行下列步驟,以取得圖像、影片或相簿的資料(欄位)。

步驟 1:取得存取權杖和權限

請依照我們的取得存取權杖和權限指南,以取得用戶的 Instagram 用戶存取權杖。您需要有 instagram_graph_user_media 權限,因此請在取得用戶驗證時要求 user_media 範圍。

步驟 2:查詢媒體節點

傳送要求至下列端點:

GET /{media-id}?fields={fields}&access_token={access-token}

{media-id} 換成您想查詢的圖像、影片或相簿的編號,將 {fields} 換成您想傳回的媒體欄位的逗號分隔清單,並將 {access-token} 換成用戶的存取權杖。

要求範例

curl -X GET \
  'https://graph.instagram.com/17895695668004550?fields=id,media_type,media_url,username,timestamp&access_token=IGQVJ...'

回應範例

{
  "id": "17895695668004550",
  "media_type": "IMAGE",
  "media_url": "https://fb-s-b-a.akamaihd.net/...",
  "username": "jayposiris"
  "timestamp": "2017-08-31T18:10:00+0000"
}

步驟 2(替代):查詢用戶媒體關係連線

您可以查詢用戶媒體關係連線,以取得用戶上的媒體集合,並使用欄位擴展取得包含集合中每個媒體媒體欄位的回應。若要執行此動作,請傳送要求至下列端點:

GET /me/media?fields={fields}&access_token={access-token}

針對集合中每個媒體,將 {fields} 換成您想傳回的媒體欄位的逗號分隔清單,並將 {access-token} 換成用戶的存取權杖。GET /me 端點將從權杖判斷用戶的編號,並將要求重新導向至用戶節點。

要求範例

curl -X GET \
  'https://graph.instagram.com/me/media?fields=id,caption&access_token=IGQVJ...'

回應範例

{
  "data": [
    {
      "id": "17895695668004550",
      "caption": ""
    },
    {
      "id": "17899305451014820",
      "caption": ""
    },
    {
      "id": "17896450804038745",
      "caption": ""
    },
    {
      "id": "17881042411086627",
      "caption": ""
    }
  ],
  "paging": {
    "cursors": {
      "after": "MTAxN...",
      "before": "NDMyN..."
      },
    "next": "https://graph.faceb..."
  }
}

取得相簿內容

請執行下列步驟,以取得相簿媒體上圖像和影片媒體的集合。

步驟 1:取得存取權杖和權限

請依照我們的取得存取權杖和權限指南,以取得用戶的 Instagram 用戶存取權杖。您需要有 instagram_graph_user_media 權限,因此請在取得用戶驗證時要求 user_media 範圍。

步驟 2:查詢媒體子物件關係連線

傳送要求至下列端點:

GET /{media-id}/children?fields={fields}&access_token={access-token}

{media-id} 換成您想查詢的相簿編號,將 {fields} 換成集合中每個圖像和影片媒體您想傳回的媒體欄位的逗號分隔清單(如果只想要編號,可省略整個 fields 參數),並將 {access-token} 換成用戶的存取權杖。

要求範例

curl -X GET \
  'https://graph.instagram.com/17896450804038745/children?access_token=IGQVJ...'

回應範例

{
  "data": [
    {
      "id": "17880997618081620"
    },
    {
      "id": "17871527143187462"
    }
  ],
  "paging": {
    "cursors": {
      "after": "MTAxN...",
      "before": "NDMyN..."
      },
    "previous": "https://graph.faceb...",
    "next": "https://graph.faceb..."
  }
}