Noël Café : Blog
Noëlの公開備忘録とひとりごと。コメント・トラックバックご自由に

Instagram API トークン取得方法 (2025.1Ver)

以前設定したInstagram 基本表示APIが2024.12に終了してしまったためその対応です。
今度はトークンは手動で無期限のものを取ります。

いつものことですが画像無し、困ったポイントに注力して書いているので
画像付きの解説が欲しい方は他のWebページをご参照ください。
(他のページで見当たらなくてつまづいたことを書くようにしています。)

POINT

  • アクセス許可に「business_management」「pages_show_list」を加える

前提条件

  • Instagram ビジネス or クリエイターアカウント所有
  • Facebook ページ所有
  • 上の2つが連携されていること

この作業については他のWebページさん参照ください。
ここでは触れません。

基本表示APIの時と違うのは、Instagramでビジネスorクリエイターアカウントが必要なことです。

手順

[手順1] Facebookアプリの作成 (2020Ver.と同じ)

まず初めにFacebookアプリを作成します。
Meta for Developers > マイアプリ : https://developers.facebook.com/apps/

以下注意です。

  • アプリ名にInstagram, Insta, gramはInstagramの商標に引っかかるため使えない
  • 「ユースケース」は[その他] → 「アプリタイプ」を[Bussiness]にする
  • FacebookアプリにInstagramを設定は不要 (2020Ver.では必要)
  • Instagramテストユーザーの追加は不要 (2020Ver.では必要)
  • Facebookアプリはずっと「開発中」のままで使える

[手順2] 短期(1h)トークンの発行

  1. グラフ API エクスプローラーにアクセス
  2. [Metaアプリ] 先ほど作成したアプリを選択
  3. [ユーザーまたはページ] → 「ユーザートークン」
  4. アクセス許可
    • business_management : これが無いと無期限ページトークン取得できません
    • pages_show_list : これが無いと無期限ページトークン取得できません
    • instagram_basic : インスタグラムの自分の投稿取得用
    • 他、必要なものがあればそれに応じて。
  5. [Generate Access Token]をクリック
  6. 色々出てくるので必要に応じてログインやPage, Insta. Userを指定
  7. [アクセストークン]に短期(1h)アクセストークンが表示されます

アクセス許可の「business_management」「pages_show_list」がポイントです。

[手順3] 長期(30d)トークンを取得

  1. 先ほど取得した短期(1h)トークンの左に丸囲いの!マークがあるのでクリック
  2. [アクセストークンツールで開く]
  3. 下方に[アクセストークンを延長]ボタンがあるのでクリック
  4. 長期(30d)アクセストークンが表示されるのでコピーする

[手順4] 無期限トークンを取得

  1. グラフ API エクスプローラーに戻る
  2. [アクセストークン]に先ほどの長期アクセストークンを入力
  3. [送信]左のテキストボックスに「me/accounts」を入力し[送信]
  4.  “access_token”: “XXX…XXX” が無期限アクセストークンとなる(どこかにメモをしておくこと)

「me/accounts」→[送信]で中身が表示されないエラーで手こずりました。
アクセス許可に「business_management」「pages_show_list」を入れることで解決できました。
(解決まで時間かかりました。)

[手順5] Instagram User IDを取得

  1. グラフ API エクスプローラーを開く
  2. [アクセストークン]に長期アクセストークンを入力
  3. [送信]左のテキストボックスに「me/accounts?fields=instagram_business_account」を入力し[送信]
  4. “instagram_business_account”:{ “id”: “XXX” がInstagram Business User IDとなる(どこかにメモをしておくこと)

[手順6] 自分の投稿を取得する

最終的にはGoogle Apps Scriptsで対応しますが、問題ないことを確認するために手動で確認しましょう。

https://graph.facebook.com/v21.0/★Instagram Business User ID★/media?fields=id,caption,permalink&access_token=★無期限トークン★

★Instagram Business User IDと★, ★無期限トークン★はこの作業で取得したものを入れてください。
v21.0もその時のバージョンに合わせて変えてください。

Reference

余談

余談 1 トークンの種類

トークンの種類が非常にわかりにくかったです。
ユーザートークン取ってそこから最後に無期限のページトークン取るのね。

  • 短期(1h)アクセストークン → ユーザートークン
  • 長期(30d)アクセストークン → ユーザートークン
  • 無期限アクセストークン → ページトークン

余談 2

Facebook, Instagram周りは変化が激しいですね。
APIも昔の資料ではわからないし、本当の最新版は何かわからないし。
その上、公式の書類はさらにわからない(笑)。
Instagramを久々にクリスマスに投稿したらかなり変わっていて大変でした。
日々投稿していればまだ良いけど、たまに使うと戸惑うね。
使い方忘れない程度に投稿するようにしたいわ。というのが2025年抱負かも。

Leave a Reply

*


CAPTCHA



Trackback URL