メインコンテンツへスキップ
2020 年 3 月 31 日をもって、Facebook は Instagram のレガシー API を廃止し、代わりに次の新しい API 群へ移行しました。
  • エンドユーザー認証用ではなく、Instagram Professional Accounts 向けに設計された Instagram Graph API
  • OAuth2 API であり、サードパーティ製アプリが基本的な Instagram アカウントデータへのアクセスを許可できる Instagram Basic Display API
Facebook は、認証に Facebook Login を実装することをアプリケーションに求めています。Facebook は、認証に Instagram Basic Display API を使用するアプリケーションを承認しません。

Actions

既存のユーザーが引き続きアプリケーションにアクセスできるようにするには、Instagram で認証しているユーザーに別の方法で認証してもらい、Account Linking を使用して新しいIDを既存のIDに紐付ける必要があります。 フローの例を以下に示します。
  • ユーザーが Instagram で認証します。
  • アプリケーションはユーザーに対し、今後は Instagram では認証できなくなるため、別の方法で認証する必要があることを伝えます。
  • アプリケーションは、ユーザーが利用できる認証方法の一覧を表示します。たとえば、次のようなものです。
    • Facebook
    • Username and Password
  • ユーザーが別の方法で認証したら、Account Linking を使用してアカウントをリンクします。
現在の実装を置き換えて Instagram Basic Display OAuth flow を使用することもできますが、これは Facebook のポリシー上認められません。Facebook で Instagram アプリケーションを作成する必要がありますが、そのアプリには次の注意書きが表示されます。
Basic Display は認証ツールではありません。API から返されるデータを使用して、アプリのユーザーを認証したり、アプリにログインさせたりすることはできません。アプリが API データを使用してユーザーを認証している場合、App Review の審査で却下されます。認証ソリューションが必要な場合は、代わりに Facebook Login を使用してください。
つまり、たとえ Auth0 がこのフローを実装したとしても、Instagram アプリケーションについて Facebook の承認は得られません。 Instagram のデータにアクセスする必要がある場合は、別の方法でユーザーを認証し (たとえば Facebook Login や username/password を使用) 、アプリケーションで Instagram の フローを実装する必要があります。