Authenticate with Instagram

Please note

This is a unified guide for all Social Stream Apps including Flow-Flow for WordPress and Shopify, Grace Instagram Gallery, and all upcoming streaming apps. Here and below by any mention of  Plugin or Social Stream App means one of the apps or plugins listed above.


Basically, to display Instagram feeds you have to authenticate on Instagram on the Plugin AUTH tab. 

Method 1. Use Instagram feeds with Graph API

Since Instagram (owned by Facebook) has decisively shut down its old APIs, we got Facebook approval and implemented the new Instagram Graph API in Flow-Flow. It works as a unified application with fairly simple actions required.

To obtain an API token and get content from Instagram, please connect to our Facebook app under the AUTH tab. This token will be used for pulling BOTH Facebook AND Instagram feeds:

  1. Switch your personal Instagram profile to a business profile. Please visit your mobile Instagram app, open your profile, tap the menu icon in the top right, and then the settings cogwheel at the bottom. Scroll down to the “Switch to business account” option.
  2. Connect your Instagram account to a Facebook business page. You can do this directly when switching to an Instagram Business account or you can do it later under the "Settings -> Linked accounts" section of the mobile Instagram app. If you don’t have a Facebook business page, please create one.
  3. Visit the AUTH tab in the plugin admin dashboard, find the "Facebook and Instagram integration" section, and hit the CONNECT button.
  4. You will be redirected to Facebook application auth processing. Select your Instagram business account and save settings.
  5. On the next page, select your Facebook business page and save settings. Please make sure you checked the only page (currently no multi-pages supported) with the Instagram account connected.
  6. And set access permissions to get posts, comments, etc.
  7. If no mistakes were made, you will get this window. Press OK.
  8. You will be redirected back to the plugin admin page with a token inserted. If you got any issues during these steps, try to disable ad-blockers or wait a couple of minutes before a new try.
  9. Create feeds you need (User of Hashtag) with using of Official API option in feed settings:
    (API METHODS option is not available for Flow-Flow Lite and Grace plugins yet; they're using Open API by default, and we're in process of upgrading them to add Official API too)

Method 2. Authorize from our plugin (Open API)

  1. (Optionally) Enable IPv4 option on the plugin SETTINGS tab.
  2. Add Instagram login data in the Flow-Flow AUTH tab. Avoid using your personal "surfing" account or feed's account, and we advise creating a separate Instagram account to use its login exclusively in the plugin. Register in the browser. Don't use a phone number, only email. Follow some people in a new account.
  3. Enable or create an Instagram feed; in most cases, you will get an error on the first run. Please keep Instagram feeds update period as ONCE A DAY in feed settings to avoid risks of Instagram API overload.
    Don't forget to choose the  Open API option in feed settings:
    (API METHODS option is not available for Flow-Flow Lite and Grace plugins yet; they're using Open API by default, and we're in process of upgrading them to add Official API too)
  4. Go to the Instagram app or website and confirm it was you trying to login (it will show your server physical location and ask for confirmation).
  5. Enable feed you created in step 3. It should work after that.
  6. All next feeds created from this moment should be fine.

WHY WE ARE ASKING FOR PASSWORD?

Is it safe? Yes, as a trusted business we have no interest in doing any shenanigans that can hurt our relationships with customers in the long run and to this day we didn’t ask for any login info. The password is currently being asked so that it can be stored and used on your site exclusively to get Instagram data without limitations (plugin can even work without passwords at all, check above). This will likely change in future versions after full migration to unified Facebook-Instagram API.

OPTIONALLY, you can try to use Instagram feeds without authentication. Enable USE IPV4 PROTOCOL under the Settings tab on the Plugin admin page and set FEED UPDATES FREQUENCY to ONCE A DAY in feed settings to avoid risks of Instagram API overload. Enable or create Instagram feeds again, one by one, and with some pauses between these actions to not generate too many requests.

Instagram API limitations

  • Only Business and Creator accounts feeds can be pulled (you can pull feeds of such accounts even that you don't own).
  • You can query a maximum of 30 unique hashtags on behalf of an Instagram Business or Creator Account within a rolling, 7 day period. Once you query a hashtag, it will count against this limit for 7 days. Subsequent queries on the same hashtag within this time frame will not count against your limit, and will not reset its initial query 7 day timer.
  • Personally, identifiable information will not be included in responses.
  • So, no location feeds available.
  • Emojis in hashtag queries are not supported.
  • The API will return a generic error for any requests that include hashtags that we have deemed sensitive or offensive.

Source: https://developers.facebook.com/docs/instagram-api/guides/hashtag-search.

Troubleshooting

Before re-authentication, try to remove the Flow-Flow app here https://www.facebook.com/settings?tab=business_tools&ref=business_login_reentry. And authenticate after that.

If your feeds are showing the "(#100) Tried accessing nonexisting field (business_discovery) on node type (Page)" error, please make sure that during the authentication process you connected the Facebook page with the Instagram account connected. Also, connecting multiple pages is not supported (so there is no need to do this for proper work).