Closed5

InstagramのAPI連携のための Meta申請の方法について調査

まさぴょんまさぴょん

InstagramのAPI連携のための申請準備・手順

  • Instagram Graph APIは、管理しているInstagramプロアカウント(ビジネスまたはクリエイター)のプロフィールや投稿している写真・動画を取得したりコメントを返信したりができるAPIです。

https://developers.facebook.com/docs/instagram-api

前提条件

前提として、次の 2つは、準備済みであること。

  • Facebookアプリ作成済み。
  • 開発者アカウント取得済み。
  • 今回の申請する API機能の scope(権限)は、instagram_basic, pages_show_list, pages_read_engagement の3つ。
  • email, public_profile の2つの scope(権限)は、Defaultで承認されている。

If you ask for permissions other than email or public_profile,
you must submit your app for app review so Facebook can confirm that the app uses the data in intended ways and safeguards user privacy.
[ 翻訳 ]
email または public_profile 以外の許可を求める場合は、アプリが意図した方法でデータを使用し、ユーザーのプライバシーを保護していることを Facebook が確認できるように、アプリをアプリレビューに提出する必要があります。
引用元: Metaアプリレビュー

前提知識

Facebookアプリには開発モードとライブモードがあり、ライブモードがいわゆる本番です。
Instagram Graph APIを使う場合、このライブモードへ正常に切り替えるためにアプリレビューの申請が必要です。

申請までの大まかな手順は次の通りです。

  1. 申請対象の連携機能の開発を終わらせる
  2. Facebookログインボタンを実装する
  3. アプリ設定のベーシックの必須項目を埋める
  4. アプリレビューのアクセス許可と機能を選択・使用目的を記述し、レビューリクエストを送信する

開発モード(=開発中)でAPIへアクセスするだけであれば、アプリレビューは不要です。

アプリダッシュボードで役割のあるアカウントであればアクセスのみが可能という以外に、大きな制限はありません(一部のAPIにはあり)。

大きな制限がないがゆえに、トークンさえ取得できていれば開発モードのまま本番運用もできてしまうのですが、「アプリレビューが必要だよ」とドキュメントに書かれているのできちんと申請しましょう。

申請の言語について

  • 日本語だと申請が通りづらいので、英語で申請するのがいい。Meta社のレビュワーに言語を合わせる。

動画について

  • PCとスマートフォンで表示できるサイトでは両方の動画も必要になります。
  • スマートフォンでの動画だけを撮影して提出すると、PCの画面キャプチャ付きでコメントと共にリジェクトされます。
  • MacならiPhoneでも繋いでQuickTimePlayerで録画して、iMovieで軽く編集しましょう。やる気のないバイトが見ても操作方法がわかるようにするとスムーズです。
  • 英語の字幕も入れるといいでしょう。

[ 参考・引用 ]

https://developers.facebook.com/docs/instagram-api

https://dev.classmethod.jp/articles/instagram-graph-api-approved-for-review/

https://qiita.com/ryouhei156/items/215ff94fc430f75f73e3

https://media.next-stage.biz/facebook/facebook-for-developers.php

https://developers.facebook.com/docs/app-review

https://developers.facebook.com/docs/permissions/reference/?translation

まさぴょんまさぴょん

API機能の 各パーミッション・Scope(権限)の項目の申請戦略

  • 今回の申請する API機能の scope(権限)は、instagram_basic, pages_show_list, pages_read_engagement の3つ。

「instagram_basicの使用目的」の項目

instagram_basicのエンドポイントの概要は、次のとおりです。

instagram_basicアクセス許可を使用すると、アプリがInstagramアカウントのプロフィール情報やメディアを読み取れるようになります。
このアクセス許可により許可される使用方法は、Instagram Businessアカウントのプロフィールの基本のメタデータ(ユーザーネーム、IDなど)を取得することです。
その他、このアクセス許可を使用して分析インサイトをリクエストし、集計され、非特定化または匿名化された情報の利用(そのようなデータが再特定されないことを条件とします)を通じて、アプリを改善したり、マーケティングや広告に役立てたりすることもできます。
[ Allowed Usages ]

  • Instagram Businessアカウントのプロフィールの基本のメタデータ(ユーザーネーム、IDなど)を取得する。
    引用元: instagram_basic

「instagram_basicの使用目的」では、最低限次のような項目を記載します。

  • アプリのどの機能がinstagram_basicの許可を必要としているか

  • instagram_basicが許可されると、どのように機能したり、アプリの機能をどのように強化したりするのか

  • instagram_basicが許可されると、エンドユーザーの体験を向上させるか

詳しくはアプリレビューの詳細に書かれていますので、参照してください。

レビューのサンプルでは案外細かく書かれていたため、例えば「サーバーアプリから5分毎にGraph APIへアクセスし〜」といった感じで、文字数(URLなど含めた英文)でおおよそ2,500文字程度を記載しました。

またスクリーンキャストを添付できるので、言葉では説明が難しいものはスクリーンキャストで説明するのもありです。

特にサーバーサイドは目に見えないので、簡単な図でもあれば理解してもらいやすいかと思います。

サンプルを見るとわかりますが、解説を付け加える必要がるので、動画編集に慣れていないと結構時間がかかります。

「pages_show_listの使用目的」の項目

pages_show_listのエンドポイントの概要は、次のとおりです。

pages_show_listアクセス許可を使用すると、利用者が管理しているページのリストにアプリがアクセスできるようになります。
この機能の許可された用途は、利用者が管理しているページのリストをその利用者に表示すること、および利用者がページを管理していることを確認することです。
その他、このアクセス許可を使用して分析インサイトをリクエストし、集計され、非特定化または匿名化された情報の利用(そのようなデータが再特定されないことを条件とします)を通じて、アプリを改善したり、マーケティングや広告に役立てたりすることもできます。
[ Allowed Usages ]

  • 利用者が管理しているページのリストをその利用者に表示する。
  • 利用者がページを管理していることを確認する。
    引用元: pages_show_list

「pages_read_engagementの使用目的」の項目

pages_read_engagementのエンドポイントの概要は、次のとおりです。

pages_read_engagementアクセス許可により、ページが投稿したコンテンツ(投稿、写真、動画、イベント)、フォロワーデータ(名前、PSIDを含む)やプロフィール写真、ページに関するメタデータやその他のインサイトをアプリで読み取ることができます。
このアクセス許可の承認されている使用法は、ページ管理管理者の支援とページの管理です。
その他、このアクセス許可を使用して分析インサイトをリクエストし、集計され、非特定化または匿名化された情報の利用(そのようなデータが再特定されないことを条件とします)を通じて、アプリを改善したり、マーケティングや広告に役立てたりすることもできます。
[ Allowed Usages ]

  • 貴社のページから投稿されたコンテンツを取得する。
  • 貴社のページフォロワーの名前、PSID、プロフィール写真を取得する。
  • 貴社のページについてのメタデータを取得する。
    引用元: pages_read_engagement

[ 参考・引用 ]

https://developers.facebook.com/docs/permissions/reference/?translation

https://developers.facebook.com/docs/permissions/reference/instagram_basic

https://developers.facebook.com/docs/permissions/reference/pages_show_list

https://developers.facebook.com/docs/permissions/reference/pages_read_engagement

まさぴょんまさぴょん

テストユーザーについて

  • Facebookアプリで作成できるテストユーザーで作成したFacebookページからはInstagram_business_accountが取得できません。

  • また、InstagramアプリからテストユーザーではFacebookにログインできません。

  • そのため、レビュワーがテストユーザーを利用してしまうと必ずテストに失敗してしまいます。

  • レビュワーはテストユーザーに関する仕様を把握していないため、必ずリアルアカウントを利用するように指示しましょう。

指示の例)

When creating a Facebook page using a Facebook Test Users account, In Facebook Graph API, Instagram_business_account is not responded even if linked to IG business account from Facebook page setting.
You need a real Facebook account instead of Facebook Test-users account. DO NOT USE Facebook Test Users account for this review.
[ 翻訳 ]
Facebook Test Usersアカウントを使用してFacebookページを作成する場合、Facebook Graph APIにおいて、Facebookページ設定からIGビジネスアカウントに連携してもInstagram_business_accountが応答しません。
Facebook テストユーザー アカウントではなく、実際の Facebook アカウントが必要です。 このレビューには Facebook テスト ユーザー アカウントを使用しないでください。

[ 参考・引用 ]

https://qiita.com/ryouhei156/items/215ff94fc430f75f73e3

このスクラップは2024/01/22にクローズされました