Instagram API Limits Valid Use Cases


As of November 17th, 2015, Instagram updated their Platform Policy and instituted a Permission Review that is mandatory for any app or plugin that uses their API. The changes are wide reaching, addressing issues their development team surely had high on the list of things to tackle to give their platform more structure and stability. Unfortunately for those using the API, it places tight restrictions on what it can be used for.

There are now only three valid uses cases for using the Instagram API (source):

  1. to help individuals share their own content with 3rd party apps
  2. to help brands and advertisers understand and manage their audience and digital media rights
  3. to help broadcasters and publishers discover content, get digital rights to media, and share media with proper attribution

Coupled with the new review process, this means some of the most common uses cases are out of luck. A simple feed of images on a website is a non-starter.

Instafeed.js is a popular plugin for listing out a user’s photos, tagged photos, or a hashtag. The plugin is in limbo since the new API restrictions were introduced since apps now need to be validated and approved by Instagram. This issue on GitHub is a good conversation finding out what the problem is, potential workarounds (they don’t work, I tried), and the realization that this use of the Instagram API just can’t work anymore.

I found out about this when trying to use Instafeed to set up a simple gallery of the latest five images from a user’s account. Realizing the only way to get around this is to create an app and get approved, I got started. A day after submitting my app for review, I was declined.

instagram-api-declined

I asked for basic permissions (the minimum an app needs) to be used for the purpose of displaying recent posts on the About Us page of a company website. That doesn’t fit into one of the three use cases above. They also request a screencast of the login process for the app. This app doesn’t need a login so I didn’t provide a screencast.

Once an app is declined, it seems there is no way to resubmit it, but instead you have to create a new app. For the time being, I have no solution to this. If you’ve come across this or have your own solution, please let me know if the comments.



31 comments on “Instagram API Limits Valid Use Cases


  1. Raf January 12th, 2016
    at 9:38 pm

    reply

    Hi,

    I already tried many many times and just got basic permission and not public_content as I need. Im an author at Envato and my plugin is a wordpress plugin gallery. I will keep on trying.. When I get it, because I MUST get it, ill let you know..

  2. Florence January 20th, 2016
    at 8:46 am

    reply

    Hi,

    I’m really interested to know how to get instagram’s approval…

    Thank you very much

  3. vandana February 17th, 2016
    at 11:45 pm

    reply

    we want public content for all user media like in instagram.

  4. Mike Lynch May 24th, 2016
    at 9:48 pm

    reply

    Glad to hear this pissed you off too. In fact, I think it pissed enough people off that they updated their policy. I looked into it recently and apparently you can use the API to get up to 20 pieces of media from the account owner, which really means your app is just permanently in Sandbox mode. I have a new client key but I haven’t actually tested this yet, but let’s hope that’s true!

  5. Scott June 2nd, 2016
    at 4:20 pm

    reply

    Have you been able to get around this? As of yesterday (6/1/16) we now can’t get our third party widget we developed to show any images from Instagram. We tried setting up Sandbox mode but that didn’t seem to make a difference. Any suggestions would be appreciated!

    Thanks!

  6. Yong Kit June 14th, 2016
    at 3:22 am

    reply

    The 20 pieces of medias work in a way that it can only display content from the sandbox users.

    For example, by default you will have your own account automatically added to the sandbox, you can only retrieve #hashtag content from what your account (or any accounts in the sandbox user list) has posted before.

    Another example, if your sandbox list has 3 users where each of them have more than 20 hashtag content for #instagram, your app will be able to retrieve 60 hashtag content in total, 20 from each of the users.

    I have submitted mine and have been waiting for 4 days, hopefully I could get it approved so that I can share it with you guys.

    Hope it helps to clarify some doubt, thanks!

  7. Yong Kit June 15th, 2016
    at 10:28 pm

    reply

    Finally, I got my app approved by Instagram!

  8. Kartik June 16th, 2016
    at 12:41 pm

    reply

    Hi Yong can you please tell us how did you get the approval from instagram?

  9. Yong Kit June 17th, 2016
    at 4:07 am

    reply

    Hi Kartik, I did my video screen cast by referencing a guy’s YouTube video, but unfortunately the video is no longer available in YouTube anymore.

    Basically, I created this app and introduce myself as a company that provide services (hahstag content) for our clients. I explain it in a way that we are not doing this for a one-off project, instead we will be constantly using this Instagram app/API for different clients and different projects.

    FYI, I draft my use case description based on this approved use case, “2. To help brands and advertisers understand and manage their audience and digital media rights”.

    I explain the process and did the video screen cast in the following steps:
    1. Show them my Instagram app screen (I have the Website URL and Redirect URI point back to my company’s website).
    2. I did a simple get access token page, which require user to input Client ID and Client Secret, hosted on my company’s website.
    3. Show them when Instagram login and authorization steps when user try to click on the “Get Access Token” button on the get access token page.
    4. Explain why I needed the stated permissions as shown in the user authorization step. In my case, I need Basic and Public Content permissions, to retrieve hashtag content via Tags endpoint.
    5. I developed a console app that does the retrieving hashtag content work, and explain how the retrieve content is used, managed or stored on my end. In my case, I stored the hashtag content on a CMS.
    6. Explain which fields/content are stored onto the CMS, how the content are handled and moderated (pre/post moderation are fine).
    7. Show them the front facing page that display the hashtag content.

    Not a long explanation but rather clear and most importantly, be sure to tell them that you are not doing this as a one-off purpose.

    Hope this helps and all the best! Thanks!

    • Wulan June 23rd, 2016
      at 12:56 am

      reply

      Hai Yong,

      Can you please share to me your video screencast, i did several time but still rejected :(
      Really appreciate your help.

      Thank you very much :)

      • Yong Kit June 23rd, 2016
        at 4:39 am

        reply

        • Rodrigo July 14th, 2016
          at 6:08 am

          reply

          Hi Yong,

          Thanks for providing us with this info. I couldn’t help but notice that your screencast video seems to show your app’s client id and secret id. You should blur this data out for security.

          Cheers!

        • David July 22nd, 2016
          at 12:24 pm

          reply

          Hi Yong,

          Thank you so much for your assistance. I clicked on the link to watch your video but couldn’t access it. I have submitted my application multiple times, and it continues to be rejected. Would you be available for a quick conversation? I would be happy to compensate you for your time.

          Thank You,
          David

        • Aisha July 26th, 2016
          at 2:13 am

          reply

          Hi Yong,

          Unfortunately, I the link to your video doesn’t work. As I am also applying for the Instagram API and have been rejected many times already it would be very helpful to see what your screencast looks like.

          Could you please share it again?

          Many thanks!

          Aisha

        • ali July 29th, 2016
          at 2:21 am

          reply

          Dear Yong Kit,

          The link doesn’t work. Can you share again or send email?

          Thanks

    • Dave June 29th, 2016
      at 11:05 am

      reply

      Hi Yong Kit
      Great video!
      So just clarify, after your app was approved, you are able to pull ANY publish hash tag of ANY USER from the API?

      • Yong Kit July 1st, 2016
        at 6:44 am

        reply

        Hi Dave

        Yes, I managed to pull the public hashtag content based on any hashtags.

        • Richard July 29th, 2016
          at 3:32 am

          reply

          Hi Yong Kit,

          Congratulations for getting your App approved!
          We too are trying to get ‘public_content’ approved and would like to learn what we are missing in our submission. Would you mind sharing the screen cast video with us again? The URL above doesn’t work any longer.

          Much appreciated!

          PS. Are you available for a quick skype call?

  10. serkan August 4th, 2016
    at 10:17 am

    reply

    Dear Yong Kit,

    Can you share it again, the link does not work.

    Appreciated…

  11. Yong Kit August 5th, 2016
    at 5:33 am

    reply

    Hi guys, sorry for the late reply because I did not check this thread in awhile.

    I have edited and re-uploaded the video to censor some sensitive data, but please bear with me as I’m using free video editor tool to do that, and it comes with watermark.

    Hope you guys get the rough idea on how to do the video screencast.

    http://www.annotateconsulting.com/videos/Social-Media-Scraper.mp4

    Thanks,
    Yong Kit

    • Michael August 23rd, 2016
      at 6:35 am

      reply

      Hi Yong Kit, the video is not available anymore. Could you please provide another upload? I think that would be very valuable for all of us! Thanks, Michael

    • Amy September 26th, 2016
      at 10:11 pm

      reply

      Hi Yong Kit,

      Could you share it again, the link does not work.Thank you very much for your sharing and really appreciate your help!

      Amy

    • blurryssky October 4th, 2016
      at 10:55 pm

      reply

      Hi Yong,

      I want public_content and I read your reply many times, still feel confusing,I wish watch the video so I may understand how to do but the link can’t show the video. Can you upload it on Youtube or send it to my email. Thank you, I think we really need your help!

  12. TeeDee November 9th, 2016
    at 5:37 am

    reply

    Hi all,

    I need users follower and following (count only) for my app, and would like this to be refreshed every hour for each user.

    Will the Basic permission suffice for this? Further more, can anyone here specify precisely what data one can get with the Basic permissions?

    Thanks

  13. TC November 17th, 2016
    at 5:24 pm

    reply

    Is social media aggregation illegal/unable to get approved if I’m using it to connect Instagram users with relevant brands? I’m not using it for embedding in personal websites or hashtag campaigns.

  14. Atul Mandal December 6th, 2016
    at 10:29 am

    reply

    Great article, It will very helpful for me, Thanks.

  15. Ramki February 23rd, 2017
    at 5:10 am

    reply

    Hi Yong,

    I want to get the public_content access but after submitting permission every times it get’s failed.

    “http://www.annotateconsulting.com/videos/Social-Media-Scraper.mp4” >> In this URL video is not available.Please provide the correct one.

    Thanks & Regards,
    Ramki

Leave a Reply