公開日:
更新日:
  • WEB制作

Instagram Graph APIで投稿情報を取得する

目次

Instagram Graph APIはInstagramの投稿データを取得するためのAPIです。

API経由で投稿情報を取得でき、WEBサイトでInstagramの投稿の画像やリンクを表示できます。

この記事では、Instagram Graph APIの準備からAPIを使って投稿情報を取得するまでの手順を画像付きで解説します。

APIのバージョンについて

この記事では執筆時点(2025年7月)の最新バージョンv23.0を使用しています。

Instagram Graph APIは頻繁に更新され、古いバージョンは廃止されることがあります。実装前に必ず公式ドキュメントを確認してください。

必要なアカウント

Instagram Graph APIを利用するためには以下のアカウントが必要です。

  • Facebookアカウント
  • Instagramプロアカウント
  • Facebook開発者アカウント(作成手順は後述)

Instagram Graph APIの準備

Instagram Graph APIを利用するにはおおまかに以下の3つの作業が必要です。

  1. InstagramアカウントとFacebookページの連携
  2. Facebook開発者アカウントとFacebookアプリの作成
  3. アクセストークンの取得

Instagram Graph APIはFacebookページ経由でInstagramのデータにアクセスします。そのため、InstagramアカウントとFacebookページを連携させる必要があります。

次にAPIを利用するための認証と権限管理に必要なFacebookアプリを作成します。

最後に、実際にAPIを呼び出すための認証キーとなるアクセストークンを生成します。

InstagramアカウントとFacebookページの連携

まずFacebookページを作成し、InstagramアカウントとFacebookページを連携します。

  1. 任意のFacebookページを作成する
  2. 作成したFacebookページに切り替える(プロフィールアイコンから選択)
  3. プロフィールアイコンから「設定とプライバシー」、続いて「設定」に移動
  4. サイドバーの「❶ リンクするアカウント」をクリック、「❷ Instagram」をクリックして画面の指示に従ってInstagramアカウントと連携する

Facebook開発者アカウントとFacebookアプリの作成

Facebook開発者アカウントの作成

すでにFacebook開発者アカウントを作成済みの場合、この手順は不要です。

  1. Meta for Developersにアクセス
  2. 右上の「ログイン」ボタンをクリック
  3. Facebookアカウントでログイン
  4. そのまま画面の指示に従ってアカウントを作成する

Facebookアプリの作成

次に、Facebookアプリを作成します。

  1. Meta for Developersにログイン後、右上の「マイアプリ」をクリックしてアプリ管理画面に移動
  2. ❶ アプリを作成」をクリック
  3. ❶ アプリ名」と「❷ アプリの連絡先メールアドレス」にそれぞれ任意のアプリ名とメールアドレスを入力し、「❸ 次へ」をクリック
  4. 「ユースケースを追加」では「❶ その他」を選択し、「❷ 次へ」をクリック
  5. 「アプリタイプを選択」では「❶ Business」を選択し、「❷ 次へ」をクリック
  6. これまでの入力内容を確認し、問題なければ「❶ アプリを作成」をクリック

アクセストークンの取得

最後に、アクセストークンを取得します。

Graph API Explorerでの短期トークン取得

  1. Graph API Explorerにアクセス
  2. 「アクセストークン」を以下の通り設定し、トークンを生成する
    1. ❶ Metaアプリ」に作成したFacebookアプリを設定
    2. ❷ ユーザーまたはページ」にトークンを取得を設定
    3. ❸ アクセス許可」に以下の許可を設定
      1. instagram_basic
      2. pages_show_list
      3. business_management
    4. ❹ Generate Access Token」をクリック
  3. 別ウィンドウで認証後、アクセストークンが生成される

生成されたトークンは1時間で期限切れになる短期トークンです。この短期トークンを長期トークンに変換します。

長期トークンへの変換

  1. アクセストークン左のアイコン()をクリック、続いて「❷ アクセストークンツールで開く」をクリックしてアクセストークンデバッガーにアクセス
  2. アクセストークンデバッガーの「❶ アクセストークンを延長」をクリック
  3. 有効期間2ヶ月の長期トークンが生成される。「❶ デバッグ」をクリックして長期トークンのデバッガーを開く
  4. 「アクセストークン情報」について以下を確認・操作する
    1. 有効期限が2ヶ月になっていることを確認する(
    2. instagram_basicの値()はこのあとでInstagramビジネスアカウントIDとして使用する。コピーして控えておく
    3. 長期トークンをコピーする(

これで長期トークンを取得できました。

無期限アクセストークンへの変換

長期トークンにも有効期限があるので、期限切れのたびに更新する必要があります。

場合によっては有効期限のないトークンを利用したいこともあるでしょう。このセクションでは、長期トークンから無期限トークンを取得します。

無期限トークンには有効期限がないため、流出してしまったときのリスクが大きいです。取り扱いは十分注意してください。

  1. Graph API Explorerにアクセスして以下の操作をする
    1. アクセストークンに長期トークンをペーストする(
    2. APIのパスにme/accountsを入力する(
    3. ❸ 送信」をクリック
  2. レスポンスのaccess_token)が無期限トークンとなる
  3. このトークンが無期限かどうか、アクセストークンデバッガーで確認する
    1. 上記で取得した無期限トークンを入力し()、「❷ デバッグ」をクリック
    2. 有効期限受け取らないになっていることを確認する(

これで無期限のアクセストークンを取得できました。

Instagram Graph APIで投稿情報を取得する

これでInstagram Graph APIを使用する準備が整いました。ここからは実際にAPIを使用してInstagramの投稿情報を取得します。

以下のコマンドを使って、投稿一覧を取得します。

Terminal window
curl -X GET "https://graph.facebook.com/v23.0/InstagramビジネスアカウントID/media?fields=id,caption,media_type,media_url,timestamp,permalink&access_token=アクセストークン"

InstagramビジネスアカウントIDは長期トークンを取得する過程で控えておいた値に、アクセストークンは実際のアクセストークンに置き換えてください。

以下のようなレスポンスが取得できたら投稿情報は正常に取得できています。media_urlpermalinkを使ってWEBサイトにInstagramの投稿情報を表示しましょう。

{
"data": [
{
"id": "17XXXXXXXXXXXXX",
"media_type": "IMAGE",
"media_url": "https://xxx",
"timestamp": "2025-04-21T12:19:29+0000",
"permalink": "https://www.instagram.com/xxx/"
}
]
}

まとめ

この記事ではInstagram Graph APIを使って投稿情報を取得する方法を解説しました。準備は複雑ですが、一度設定してしまえばあとはAPIを呼び出すだけです。Instagram Graph APIで取得したデータを使って、WEBサイトをよりリッチにしてみてください。

記事をシェアする
記事がお役に立てたらシェアしていただけると嬉しいです!
松田 拓也
エンジニア

フロントエンドエンジニア。制作会社および事業会社での実務経験を経て、greenciderに参画。コーディングから保守運用まで、WEBサイト制作における実装業務を担当。趣味は読書、登山、野球観戦、美術鑑賞など。