Power Automateを動画で学ぼう!Udemyキャンペーン中

【2021年版】Instagram Graph API ver13.0とInstagramビジネスアカウントIDの取得方法

目次

Instagram グラフ APIアクセストークンの取得してみた。

この記事は現在わたしが受講中の「デイトラ Pythonコース(Instagram分析アプリ編)」の備忘録ですが、「Instagram グラフ APIアクセストークン」「InstagramビジネスアカウントID」の2つの取得方法をお探しの方のお役に立てる内容にもなっているかと思います。すべて無料で取得できます。

じょじお

結構時間をかけてしまったので記録として記事にしました。

Instagram グラフ APIアクセストークンの取得に必要なステップ

下記の順番で作業が必要です。

  1. Instagramプロアカウントの作成(プロアカウントへ切り替え)
  2. Facebookページの作成
    1. FacebookページとInstagramプロアカウントの紐づけ
  3. Facebookアプリの作成
  4. Instagram グラフ APIアクセストークンの取得
    1. 1番目のアクセストークンの取得
    2. 2番目のアクセストークンの取得
    3. 3番目(無期限)のアクセストークンの取得
  5. InstagramビジネスアカウントIDの取得

問題なく進めば30分~40分程度で取得できるかと思います。

トークンは3種類あるのですが、最終的に必要なのは3番目の無期限トークンです。

それ以外のトークンはすぐに時間切れで無効になってしまいます。3番目のトークンを取得するためのトークンです。

Instagramプロアカウントへの変更方法

プロアカウントに変更する方法について解説します。無料で変更できます。

STEP
スマホでInstagramアプリを開く。

スマホにてInstagramの設定を開きます。

Instagram設定
STEP
設定を開き、「アカウントタイプの切り替え」を設定する

▼「アカウントタイプの切り替え」を選択します。

Instagram設定画面

▼「プロアカウントに切り替える」を選択します。

プロアカウントに切り替える

プロアカウントは2種類から選べますが、この記事では「クリエイタータイプ」を選択しました。

ダイアログに従いプロアカウント設定を完了します。

Facebook ページの作成方法

既に紐づける予定のFacebookページをお持ちの方はこの項は飛ばしてください。

STEP
PCでFacebookを開く。

Facebookにログインします。個人用アカウントで大丈夫です。

STEP
Facebookページを作成する。

▼「設定」から「ページ」をクリックします。

Facebookページの作成方法

▼Facebookページを作成します。

Facebookページを作成します。

▼ページ名などを入力し「Facebookページを作成」をクリックします。

Facebookページ作成

自分に合った情報を入力して「Facebookページを作成」をクリックします。

FacebookページとInstagramプロアカウントの紐づけ

STEP
FacebookページとInstagramプロアカウントの紐づけ

▼Facebookページの「設定」をクリックします。

Facebookページの作成

▼Instagramをクリックします。

Facebookページの作成

▼アカウントをリンクをクリックします。

Instagramにリンク

1つのInstagramアカウントは、1つのFacebookページにのみリンクが可能です。既に他のFacebookページと連携している場合は解除するか、別のInstagramアカウントを選択する必要があります。

Instagramの認証画面が表示されますので認証をして連携は終わりです。

Facebookアプリ作成

STEP
Facebook for Developersにアクセスする。

Facebook  for Developers」ページからFacebook アプリを作成していきます。

▼画面右上「利用を開始する」をクリックします。

facebook 1st page
STEP
Facebook for Developersアカウントを作成する。

▼「次へ」をクリックします。

facebook dev page

▼メールアドレスを入力して「認証」をクリックします。

facebook dev page

▼当てはまるものを選択して「登録完了」をクリックします。

facebook dev page
STEP
Facebookアプリを作成する。

▼「アプリを作成」をクリックします。(下図ページに遷移しなかった場合はこちらからジャンプできます。)

facebook アプリの登録

▼アプリタイプにビジネスを選択して「次へ」をクリックします。

facebook アプリタイプの選択

各アプリタイプの詳細については、こちらのfacebook for developers公式ドキュメントをご覧ください。

Instagram Graph API(インスタグラム グラフAPI)を使用するにはビジネスを選択する必要があります。

▼アプリを作成画面でパラメータを入力します。

アプリを作成
アプリ表示名:
好きな名前を付けて大丈夫です。「Instagram」という言葉を使うと怒られます。

アプリ連絡先メールアドレス:
メールアドレスを入力してください。

アプリの目的:
代理作成か自分用かを選択してください。

ビジネスマネージャーアカウントをお持ちですか?:
グラフAPIを使うだけであれば設定不要です。デイトラ生も不要です。
STEP
FacebookアプリにInstagram APIを追加する。

▼「InstagramグラフAPI」を追加します。

(図のアプリ設定画面に遷移しなかったときはコチラからジャンプできます。)

▼設定の中の「ベーシック」をクリックします。

FBアプリダッシュボード
STEP
アプリIDとApp Secretキーをメモする。

「アプリID」「app secret」をメモします。のちの設定で必要になります。

FBアプリダッシュボードの設定

メモできましたら「変更を保存」をクリックします。

プライバシーポリシーとアプリアイコンを設定をしないと警告が出ますが無視して問題ありません。

アプリの作成は以上です。

アクセストークンを取得する

STEP
1番目のアクセストークンを取得する。

1番目のアクセストークンの取得方法

▼「InstagramグラフAPIエクスプローラー」を開きます。

(前項の画面右上メニューの中の「ツール」→「InstagramグラフAPIエクスプローラー」からでも行けます。)

InstagramグラフAPI

▼先程作成したアプリを選択し、「ページアクセストークンを取得」をクリックします。

ページアクセストークンを選択

▼認証画面が表示されたらログインします。

Facebook 認証画面

▼先程作成したFacebook ページを選択して「次へ」をクリックします。

(Facebook ページの作成がまだの場合、作成ボタンが表示されますので前項を参考に作成してください。)

Facebook ページ選択して次へ

▼画面が表示されますのでそのまま完了ボタンをクリックします。

アクセス設定

画面上部の「ログインレビューの申請」の警告は無視しても大丈夫でした。

▼グラフAPIエクスプローラーの画面に戻ります。

下記のパラメータを入力してから「Generate Access Token」ボタンをクリックします。

1stアクセストークン
Facebook アプリ:
先ほど作成したアプリを選択します。

ユーザまたはページ:
ページを選択します。

アクセス許可:
アプリで利用するアクセス許可設定をします。(各アクセス許可の詳細はこちらの公式ドキュメントを確認してください。)

▼今回はInstagramの情報を分析したいので、下記のようにInstagram系のアクセス許可をオンにしました。

アクセス許可
  • instagram_basic
  • instagram_manage_comments
  • instagram_manage_insights
  • instagram_manage_messages
  • instagram_content_publish
  • business_management
  • public_profile(Defaultで許可あり)
  • pages_show_list(Defaultで許可あり)
  • ipages_read_engagement(Defaultで許可あり)

▼Instagramプロアカウントを選択して次へをクリックします。

Instagramビジネスアカウントの追加

1番目のアクセストークン取得結果

▼1番目のアクセストークンが発行されますのでコピーします。

1番目のアクセストークン
STEP
2番目のアクセストークンを取得する。

2番目のアクセストークンの取得方法

▼ブラウザで下記URLにアクセスします。

2番目のアクセストークンのURL(v11.0の部分は使用するグラフAPIのバージョンに合わせてください。)
https://graph.facebook.com/v11.0/oauth/access_token?grant_type=fb_exchange_token&client_id=[★アプリID]&client_secret=[★app secret]&fb_exchange_token=[★1番目のトークン]

2番目のアクセストークン取得結果

2番目のアクセストークンが発行されます。
{"access_token":"*******************************************":"bearer"}
STEP
3番目のアクセストークンを取得する。

3番目のアクセストークン(無期限トークン)取得方法

▼ブラウザで下記URLにアクセスします。

URL(v11.0の部分は使用するグラフAPIのバージョンに合わせてください。)
https://graph.facebook.com/v11.0/me?access_token=[★2番目のトークン]

▼下記のような結果が表示されますのでIDをコピーします。

IDをメモ
{
   "name": "****************",
   "id": "*****************"
}

▼上で取得したIDを使って、ブラウザで下記URLにアクセスします。

URL(v11.0の部分は使用するグラフAPIのバージョンに合わせてください。)
https://graph.facebook.com/v11.0/[★ここにIDを入力]/accounts?access_token=[★2番目のトークン]

3番目のアクセストークン(無期限トークン)取得結果

3番目のアクセストークンが発行されます。

{
   "data": [
      {
         "access_token": "*********************************",
         "category": "",
         "category_list": [
            {
               "id": "",
               "name": ""
            },
            {
              以下省略...

以上で3番目のアクセストークン(無期限トークン)が取得できました。

InstagramビジネスアカウントIDの取得

▼「InstagramグラフAPIエクスプローラー」に戻ります。

Instagramビジネスアカウントの取得
  1. 3番目のアクセストークンを張り付けます。
  2. アプリを選択します。
  3. 「me?fields=instagram_business_account」とテキストボックスに入力します。
  4. 送信ボタンをクリックします。

InstagramビジネスアカウントID取得結果

InstagramビジネスアカウントID

これで「無期限アクセストークン」と「InstagramビジネスアカウントID」の取得は終わりです。

トークンを使用したアプリケーションにエラーが発生したら確認すること。

「3番目のトークンをPythonコードに埋め込んだつもりが、コピペミスで2番目のトークンだった・・・」とか、「間違えてページトークンではなくユーザトークンを取得してた・・・」なんてことがあるので、トークンを使用したプログラム・アプリでエラーが起こったら下記を確認してみてください。トークンの正常性を確認してからプログラムコードのデバッグをした方が良いでしょう。

①「アクセストークンデバッガー」でトークンの正常性を確認する。

アクセストークンデバッガーで意図したトークンが取得できているかを確認します。

期限切れていたり、誤ってユーザタイプトークンを取得してしまっていたら1番目から取得しなおしましょう。

アクセストークンデバッガー

▼おもな確認ポイント

  • タイプがPageになっているか。
  • 有効期限が「受け取らない(無期限)」になっているか。
  • スコープに適切なアクセス許可が付与されているか。

②「アクセストークンで良くあるエラー」を確認する。

アクセストークンで良くあるエラー(公式)はコチラ。

上記のようなエラーの場合は1番目から取得しなおしましょう。

③Facebook アプリを作り直す。(can’t decrypt エラーとか)

わたしは最初利用できたトークンが途中で「can’t decrypt」エラーになり使えなくなることがありました。デバッガーでトークンを確認しても正常でトークンを取得し直してもダメ。しかたなくアプリを作成し直したところエラー解消しました。どうしようもなくなったらアプリ作成の手順からやりなおしたほうがいいかもしれません。

(④デイトラ生向け)Key Error : like_countについて

デイトラで作成しているプログラムは、グラフAPIのバージョンが8.0で作成されています。現行最新バージョンをそのまま使おうとするとAPIの仕様変更(参考:仕様変更の公式記事)でエラー(「key error : like_count」)になるので注意が必要です。バージョン10.0以前を使用するか例外処理を入れる必要があります。

まとめ

じょじお

長い作業 おつかれさまでした。
全部一度に実施すると結構複雑な作業なので、ひとつ落としたらハマりがちです。ワタシは半日かかってしまいました(汗)。ひとつずつ確実にこなしていきましょう。

「Instagram分析 Webアプリ」を作成しながら学ぶプログラミング講座

デイトラPythonコース」受講してます。まだ8割程度の進捗ですが、体験した感想やレビューなどを書いてみました。Pythonを学ぶスクールを探している方には参考になるかもしれません。

ノンプログラマーでも自動化スキルを身につける。

この記事が気に入ったら
フォローしてね!

よかったらシェアしてね!
URLをコピーする
URLをコピーしました!
目次
閉じる