Instagram Graph APIを使用して、Instagramビジネスアカウントのデータにアクセスするためには、アクセストークンとビジネスアカウントIDを取得する必要があります。この記事では、その具体的な手順をステップバイステップで解説します。
前提条件
Instagram Graph APIを使用する前に、以下の条件を満たしている必要があります。
- Facebook Developerアカウントを持っていること。
- Facebookアプリを作成していること。
- Instagramビジネスアカウントを持っていること。
- InstagramビジネスアカウントがFacebookページにリンクされていること。
Facebookアプリの設定
- Facebook Developerダッシュボードにアクセスし、新しいアプリを作成します。
- 作成したアプリの「設定」から「基本」を選択し、アプリIDとアプリシークレットをメモしておきます。
- Instagram Graph APIとFacebook Loginの製品をアプリに追加します。
Facebook Loginの設定
- Facebook Loginの設定からOAuthリダイレクトURIを追加します。このURIはアクセストークンを取得する際にリダイレクトされるURLです。
- Facebook Login設定で有効なOAuthリダイレクトURIにリダイレクトURIを入力します。
ユーザー認証とアクセストークンの取得
ユーザー認証用のURLを構築します。
URLは以下の形式です。
https://www.facebook.com/v17.0/dialog/oauth?
client_id={app-id}
&redirect_uri={redirect-uri}
&scope=instagram_basic,instagram_manage_insights,pages_show_list
&response_type=code
client_id
:FacebookアプリのアプリIDredirect_uri
:OAuthリダイレクトURIscope
:必要なパーミッション(例としてinstagram_basic
とinstagram_manage_insights
)
ユーザーがこのURLにアクセスし、認証を完了すると、リダイレクトURIにcode
が含まれて返されます。
このcode
をメモします。
短期アクセストークンの取得
短期アクセストークンを取得するために、以下のリクエストを送信します。
https://graph.facebook.com/v17.0/oauth/access_token?
client_id={app-id}
&redirect_uri={redirect-uri}
&client_secret={app-secret}
&code={code}
client_id
:FacebookアプリのアプリIDredirect_uri
:OAuthリダイレクトURIclient_secret
:Facebookアプリのアプリシークレットcode
:リダイレクトURIから取得したコード
このリクエストのレスポンスとして、短期アクセストークンが返されます。
長期アクセストークンの取得
長期アクセストークンを取得するために、以下のリクエストを送信します。
https://graph.facebook.com/v17.0/oauth/access_token?
grant_type=fb_exchange_token
&client_id={app-id}
&client_secret={app-secret}
&fb_exchange_token={short-lived-token}
grant_type
:fb_exchange_token
client_id
:FacebookアプリのアプリIDclient_secret
:Facebookアプリのアプリシークレットfb_exchange_token
:短期アクセストークン
このリクエストのレスポンスとして、長期アクセストークンが返されます。
InstagramビジネスアカウントIDの取得
長期アクセストークンを使用して、InstagramビジネスアカウントIDを取得します。
以下のリクエストを送信します。
https://graph.facebook.com/v17.0/me/accounts?
access_token={long-lived-token}
access_token
:長期アクセストークン
このリクエストのレスポンスには、Facebookページの情報が含まれており、その中にinstagram_business_account
フィールドが含まれています。
instagram_business_account
フィールドのid
がInstagramビジネスアカウントIDです。
まとめ
これで、Instagram Graph API ver17.0を使用してアクセストークンとInstagramのビジネスアカウントIDを取得する方法について、具体的な手順を解説しました。
このプロセスを実行することで、Instagramビジネスアカウントのデータにアクセスできるようになります。