
目次
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つの作業が必要です。
- InstagramアカウントとFacebookページの連携
- Facebook開発者アカウントとFacebookアプリの作成
- アクセストークンの取得
Instagram Graph APIはFacebookページ経由でInstagramのデータにアクセスします。そのため、InstagramアカウントとFacebookページを連携させる必要があります。
次にAPIを利用するための認証と権限管理に必要なFacebookアプリを作成します。
最後に、実際にAPIを呼び出すための認証キーとなるアクセストークンを生成します。
InstagramアカウントとFacebookページの連携
まずFacebookページを作成し、InstagramアカウントとFacebookページを連携します。
- 任意のFacebookページを作成する
- 作成したFacebookページに切り替える(プロフィールアイコンから選択)
- プロフィールアイコンから「設定とプライバシー」、続いて「設定」に移動
- サイドバーの「❶ リンクするアカウント」をクリック、「❷ Instagram」をクリックして画面の指示に従ってInstagramアカウントと連携する
Facebook開発者アカウントとFacebookアプリの作成
Facebook開発者アカウントの作成
すでにFacebook開発者アカウントを作成済みの場合、この手順は不要です。
- Meta for Developersにアクセス
- 右上の「ログイン」ボタンをクリック
- Facebookアカウントでログイン
- そのまま画面の指示に従ってアカウントを作成する
Facebookアプリの作成
次に、Facebookアプリを作成します。
- Meta for Developersにログイン後、右上の「マイアプリ」をクリックしてアプリ管理画面に移動
- 「❶ アプリを作成」をクリック
- 「❶ アプリ名」と「❷ アプリの連絡先メールアドレス」にそれぞれ任意のアプリ名とメールアドレスを入力し、「❸ 次へ」をクリック
- 「ユースケースを追加」では「❶ その他」を選択し、「❷ 次へ」をクリック
- 「アプリタイプを選択」では「❶ Business」を選択し、「❷ 次へ」をクリック
- これまでの入力内容を確認し、問題なければ「❶ アプリを作成」をクリック
アクセストークンの取得
最後に、アクセストークンを取得します。
Graph API Explorerでの短期トークン取得
- Graph API Explorerにアクセス
- 「アクセストークン」を以下の通り設定し、トークンを生成する
- 「❶ Metaアプリ」に作成したFacebookアプリを設定
- 「❷ ユーザーまたはページ」に
トークンを取得
を設定 - 「❸ アクセス許可」に以下の許可を設定
instagram_basic
pages_show_list
business_management
- 「❹ Generate Access Token」をクリック
- 別ウィンドウで認証後、アクセストークンが生成される
生成されたトークンは1時間で期限切れになる短期トークンです。この短期トークンを長期トークンに変換します。
長期トークンへの変換
- アクセストークン左のアイコン(❶)をクリック、続いて「❷ アクセストークンツールで開く」をクリックしてアクセストークンデバッガーにアクセス
- アクセストークンデバッガーの「❶ アクセストークンを延長」をクリック
- 有効期間2ヶ月の長期トークンが生成される。「❶ デバッグ」をクリックして長期トークンのデバッガーを開く
- 「アクセストークン情報」について以下を確認・操作する
有効期限
が2ヶ月になっていることを確認する(❶)instagram_basic
の値(❷)はこのあとでInstagramビジネスアカウントID
として使用する。コピーして控えておく- 長期トークンをコピーする(❸)
これで長期トークンを取得できました。
無期限アクセストークンへの変換
長期トークンにも有効期限があるので、期限切れのたびに更新する必要があります。
場合によっては有効期限のないトークンを利用したいこともあるでしょう。このセクションでは、長期トークンから無期限トークンを取得します。
無期限トークンには有効期限がないため、流出してしまったときのリスクが大きいです。取り扱いは十分注意してください。
- Graph API Explorerにアクセスして以下の操作をする
- アクセストークンに長期トークンをペーストする(❶)
- APIのパスに
me/accounts
を入力する(❷) - 「❸ 送信」をクリック
- レスポンスの
access_token
(❶)が無期限トークンとなる - このトークンが無期限かどうか、アクセストークンデバッガーで確認する
- 上記で取得した無期限トークンを入力し(❶)、「❷ デバッグ」をクリック
有効期限
が受け取らない
になっていることを確認する(❸)
これで無期限のアクセストークンを取得できました。
Instagram Graph APIで投稿情報を取得する
これでInstagram Graph APIを使用する準備が整いました。ここからは実際にAPIを使用してInstagramの投稿情報を取得します。
以下のコマンドを使って、投稿一覧を取得します。
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_url
やpermalink
を使って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サイトをよりリッチにしてみてください。