前回から引き続き、Instagram分析をするためにInstagramグラフAPI利用準備を進めていきます。
前回は4つの前提条件の登録を行いました。
①Instagramプロアカウントの作成
②FacebookページとInstagramプロアカウントの連携
③Facebook開発者アカウントの登録
④Facebookアプリの登録(ベーシック設定からAppIDとAppSecretの取得)
今回はInstagramグラフAPIの利用に必要なアクセストークンをなどを取得していきたいと思います。
今回取得するのはこちらの4つ
・ユーザーアクセストークン
・facebookページID
・InstagramビジネスアカウントID
・ページアクセストークン
アクセストークンの取得
スタートガイドを参考に進めていきます。
アプリが無い場合は1,2のfacebookログイン関連はスキップしてグラフAPIエクスプローラを利用できるとのことで今回もこちらを利用することにします。
’3.ユーザーアクセストークンを取得する’の内容から説明していきます。
ユーザーアクセストークンを取得する
グラフAPIエクスプローラで権限を追加するために「トークンを取得」→「ユーザーアクセストークン」を選択します。
facebookページのログインの許可が問われるのでOKとしてください。
OKとすると自動で「public_profile」という権限が追加されます。
続いて「許可を追加」して今後利用する権限を用途に合わせて追加してください。
リファレンスに何をするには何の権限が必要かが記載してあります。
◇追加しておくと良さそうな権限
pages_read_engagement
instagram_basic
ads_management
business_management
pages_show_list
-
instagram_manage_insights
◇参考
・IGユーザー(ユーザーについてのデータを取得する)
instagram_basic
、およびads_management
、business_management
、pages_show_list
のうちのいずれか・IGメディア(投稿についてのデータを取得する)
instagram_basic
pages_read_engagement
pages_show_list
・ビジネスディスカバリー(ユーザーについてのデータを取得する)
- instagram_basic
- instagram_manage_insights
- pages_read_engagementまたはpages_show_list
続いて「Generate Access Token」をクリック後、右上の「Copy Token」でユーザーアクセストークンを取得できます。
アクセストークンの内容を確認するアクセストークンデバッガーというツールも用意されています。
アクセストークンをコピペして「デバッグ」をクリックすると情報が確認できます。
ユーザーのページIDを取得する
Facebookページの情報を取得するコマンドが下記のようにスタートガイドには載っています。
curlというのは簡単に言うとWEBの内容を取得するコマンドです。
そのため、単純にWEBブラウザにURLを入れても同じ内容を確認することができます。
今回はこちらのWEBブラウザで確認することにします。
スタートガイド 4.ユーザーのページを取得するcurl -i -X GET \ "https://graph.facebook.com/v13.0
/me/accounts?access_token={access-token}"
{access-token}の部分にはユーザーアクセストークンを入れます。※スタートガイドにある{}は不必要で=の後にそのままつなげて問題ないです。
↓こんな感じでWEBブラウザやグラフAPIに直接入力してみてください。(もしくはグラフAPIエクスプローラ)
https://graph.facebook.com/v13.0/me/accounts?access_token=ユーザーアクセストークン
正しく入力されているとページ情報の応答が返ってきます。
これらの項目のうち、”name”と”tasks”の間の”id”を控えてください。FacebookページのIDという意味です。
※Catagory_listの方にあるidではないので注意!
ちなみにUNICODEという文字コードに変換されているため、nameのところが日本語で表示されません。
イメージとしては外国語に翻訳されているという感じで読めるようにするためには変換サイトなどを活用してみてください
※下記のようなエラーが表示されたときはコピペミスや有効期限切れなどを疑ってください。
{ "error": { "message": "Invalid OAuth access token.", "type": "OAuthException", "code": 190, "fbtrace_id": "Aa7PNILdbz5D619nlsul6hq" } }
ページと連携したInstagramビジネスアカウントIDを取得する
同様に下記のURLをブラウザに入力してみてください。
https://graph.facebook.com/v13.0/取得したページのID?fields=instagram_business_account&access_token=取得したアクセストークン
これによりInstagramのビジネスアカウントIDを取得できたのでメモしてください。
ページアクセストークンを取得する
こちらはスタートガイドには載っていませんが後々instagramの情報を取得する際に必要になるため取得しておきます。
グラフAPIエクスプローラからページアクセストークンを選択して先ほどと同様に「Generate Access Token」をクリックしてコピペしておきましょう。
こちらは長期に使いたいのでアクセストークンデバッガーというツールからコピペしたURLの「デバッグ」をクリック後、「アクセストークンを延長する」を実行して表示されるURLをコピペしてメモしておきます。
タイプが「Page」、有効期限が「受け取らない」となっていればOKです。
実際にinstagramデータを取得してみる
これまでの工程で下記のデータが取得できました。
・ユーザーアクセストークン
・facebookページID
・InstagramビジネスアカウントID
・ページアクセストークン
これらを使って試しにデータ取得してみたいと思います。
主に使うのはInstagramビジネスアカウントID、ページアクセストークンの2つです。
ユーザーデータの取得
公式レファレンスを元にユーザーデータ(参考 IGUser、ビジネスディスカバリー)を取得してみます。
今回はフォロワー数(followers_count),フォロー数(follows_count),いいね数(media_count),ユーザー名,WEBサイトを取得してみます。
https://graph.facebook.com/v13.0/インスタグラムビジネスアカウントID?fields=business_discovery.username(ユーザー名){followers_count,follows_count,media_count,
コメント