プログラミング

インスタグラムの無期限アクセストークンの取得でよくある失敗例

この記事は約3分で読めます。

 

スポンサーリンク
スポンサーリンク

発生した問題

Instagram Graph API を使用するための手続き・手順は↓の記事で解説しています

Instagram Graph API を利用するためには、以下の手順を追う必要があります。

  1. Instagram でビジネスアカウントを作る
  2. Facebook でアカウントを作る
  3. Facebook ページを作る
  4. Facebook ページと Instagram のビジネスアカウントを連携させる
  5. アクセストークンを取得する(3段階ステップがある)
  6. Instagram ビジネスアカウントを取得する
  7. ここまで来て、やっと Instagram Graph API が利用可能になる

1つ目:3段階目のアクセストークン取得に失敗する

 

「3段階目のアクセストークン」の取得において、以下のような応答が返ってくる場合があります

{
   "data": [

   ]
}

つまり、空の応答が返ってきたわけです。

これについてかなりハマりました(というかググってもなかなかこの事象がひっかからない、というかそもそもググり方がわからない)。

2つ目:Instagram Graph API を使用してみると、「(#100) Tried accessing nonexisting field~」とかいうエラーが返ってくる

1つ目の問題を無事クリアして、いざInstagram Graph API を使用してみると、以下の応答が返ってきました。

{
  "error": {
    "message": "(#100) Tried accessing nonexisting field (media) on node type (Application)",
    "type": "OAuthException",
    "code": 100,
    "fbtrace_id": "XXXXXXXXXXXXX"
  }
}

 

原因

1つ目:Facebookページを作っていなかった

かなりググって、やっと同じ問題に直面している人を見つけました。

Instagram Graph API設定時、有効期限なしのアクセストークンが取得できません。
こんにちは。 Webサイトを作成しておりますが、インスタグラムの画像を表示させたいのです。 久留米あかつき幼稚園様のサイト

 

この質問者も私と同じところで悩んでいました。
で、結論として Facebookページと Instagram を連携してなかったのです。

この「Facebookページ」というのが曲者でした。

ただ Facebook のアカウントを連携させるだけではなく、「Facebookページ」なるものがあるということを知りませんでした。

この Facebookページを作って、インスタのアプリに登録すると、上記問題は解決しました。

2つ目:Instagram のビジネスアカウントIDをちゃんと取得できていなかった

 

下記のように、3段階目のアクセストークンを取得した後、グラフAPIエクスプローラで、以下のように me?fields=instagram_business_account を送信して、「”instagram_business_account”」を取得する必要がありました。

 

ここでinstagram_business_idというキーがない場合は連携しているインスタグラムアカウントがプロアカウントかどうかを確認してください

 

 


プログラミング・スクレイピングツール作成の相談を受け付けています!

クラウドワークス・ココナラ・MENTAなどでPython・SQL・GASなどのプログラミングに関する相談やツール作成などを承っております!

過去の案件事例:

  • Twitter・インスタグラムの自動化ツール作成
  • ウェブサイトのスクレイピングサポート
  • ダッシュボード・サイト作成
  • データエンジニア転職相談

これまでの案件例を見る

キャリア相談もお気軽に!文系学部卒からエンジニア・データサイエンティストへの転職経験をもとに、未経験者がどう進むべきかのアドバイスを提供します。


スポンサーリンク
/* プログラミング速報関連記事一覧表示 */
ミナピピンの研究室

コメント

タイトルとURLをコピーしました