web-dev-qa-db-ja.com

Facebook Graph APIからInstagram BusinessアカウントIDを取得できません

Facebook Graph APIを介してInstagramビジネスアカウントのメディアにアクセスしようとしています。私はこのガイドに従っています: https://developers.facebook.com/docs/instagram-api/getting-started/

リクエストに応じてすべてを設定しました。Instagramのビジネスアカウント、このアカウントに接続されたFacebookページ、およびFacebookアプリがあります。

ステップ5で、InstagramアカウントIDを取得しようとすると

GET /v3.0/{page id}?fields=instagram_business_account

私が受け取る応答は、ガイドの応答とは異なります。 Instagramのビジネスアカウントフィールドがありません。FacebookページのIDのみを取得しますが、既に持っています。

誰がここで何が間違っているのか考えていますか?

10
user3219996

manage_pagesパーミッションで以下のクエリを試してください。

/v3.0/me/accounts?fields=name,id,access_token,instagram_business_account{id,username,profile_picture_url}

レビュープロセスを行っていますが、必要な権限を理解できません

  1. Instagramのビジネスアカウントを取得
  2. Instagram_story_insights webhookを購読する

manage_pages権限を取得することで、1のみを取得できます。しかし、ページを管理するのではなく、Instagram Businessアカウントを取得して、洞察、フィード、プロファイルをリクエストしたいだけです。

2.の場合、/subscribeエンドポイントのみを見つけます。これにはFacebookページアクセストークンが必要であり、manage_pages権限でのみ使用できます。

9
joacar

過去2日間からこの問題に直面していましたが、突然開始されました。

以下の手順を実行することで、この問題を解決できました。

  1. Instagramのビジネスアカウントを個人アカウントに戻します。
  2. 次に、個人アカウントをビジネスアカウントに変換しますInstagramネイティブアプリではなく、唯一のFacebook Web経由

重要:フェイスブックのみで個人アカウントをビジネスアカウントに変換する必要があります。

5
RAVI PATEL

うまくいけば、あなたは今までにこれを理解しました。私はあなたが私のページのIDのみを取得する場合と同じ問題を抱えていました。

解決策は、正しいアクセス許可をユーザーアクセストークンに追加することでした。

API呼び出しを行うときは、manage_pagesおよびinstagram_basic権限でユーザーアクセストークンを使用する必要があります。

GET /v3.0/{page id}?fields=instagram_business_account
1
Suba S

Facebook Graph API 4.0はInstagramビジネスアカウントのみをサポートしています。作成者のInstagramアカウントは、グラフAPIでは機能しません。

グラフAPIからInstagram IDを取得するための写真を以下で確認してください

クリックしてグラフAPIレスポンスを表示

1

Facebookアカウントには、Instagramアカウントにリンクされたページ({page id})があります。ブラウザ(HTTPS Get)経由でIDを取得できました。

https://graph.facebook.com/v3.0/ {page_id}?fields = instagram_business_account&access_token = {適切な権限を持つアクセストークン}

トークンは、FacebookのGraph Explorerを使用して手動で生成されました

https://developers.facebook.com/tools/Explorer/v2/

「ユーザートークン」オプションを選択し、UIを介して権限「business_management」、「manage_pages」、および「instagram_basic」を追加します。 「Get Access Token」ボタンを押して、上記の「instagram_business_account」URLクエリで使用されるトークンを生成します。

リンクされたFacebookページから画像を取得するには、現在

https://graph.facebook.com/v3.0/ {instagram_business_account}/media?fields = id、name、media_url、media_type、timestamp&access_token = {適切な権限を持つトークンにアクセス}

ところで、Facebookアカウントにはその下にアプリが作成されているので、UIが要求したときにFacebook Graph API Explorerツールでこのアプリを選択できます。

適切な権限があれば、これらの手順をコードに変換できます。

0
Alvin Yue

これは2つの理由で発生することがわかりました。

  • InstagramプロフィールがFacebookページに正しく関連付けられていませんでした(つまり、変換された人はあなたのページにアクセスできませんでした)。
  • Instagramをビジネスに変換し、ページに接続した人は、もはやページの管理者ではありません
  • Facebookページ設定を使用してページとInstagramを接続しました-その画面は間違いなく機能しません。
  • アプリがbusiness_management許可を承認し、ユーザーがFacebookを認証するときに要求していることを確認してください。

すべての場合において、Instagramを個人用に変換してからビジネスに再変換すると、問題が修正されます。

0
Chris Bovan

私は同じ問題に直面していますが、これは次の2つの理由のいずれかによるものだと思います。

  1. graph APIはポリシーを更新しており、すべてのアプリがビジネス検証を受ける必要があります。これはアプリレビュープロセスの一部です。アプリが検証されると、それらの呼び出しを行うことができます。

  2. アプリはライブモードです。スイッチをオフにして、アプリのダッシュボードから開発モードにします。これで、すべてのAPI呼び出しにアクセスできます。グラフAPIエクスプローラーからmanage_pagesおよびinstagram_basic権限を選択します。これで、リクエストを作成できます。

0

私は同じ問題に直面していましたが、解決策を見つけました。最初は、Instagramアカウントがビジネスアカウントまたはクリエイターアカウントであることを確認してください。そして、それをFacebook WebのFacebookとリンクします。エラーは、クリエイターまたはビジネスではなく個人アカウントを使用する場合にのみ発生します。

これが私の出力です。

enter image description here