How to access Instagram Basic Display API without user login? - instagram

I am developing a website which would facilitate an end user to see an Instagram user's media such as Profile Pictures, Posts and Stories with the Instagram Basic Display API.
As per the documentation of the API, an Authorization Window needs to be implemented to get Authorization Codes and permissions from app users. Authorization Codes need to be exchanged for Instagram User Access Tokens, which must be included when querying an app user's profile or their media.
Bu there are numerous services which are able to show an Instagram user's media without having to implement the complex pipeline above:
InstaDP
FullInstaDP
InstaFinsta
IZoomYou
InstaDownloader
So, how are these services even able to bypass the Authorization Window and provide a seamless user experience without the end user's login? Especially how is InstaDP able to display reels and InstaDP which are not even support yet in the API?

It's way more sophisticated & costly than official Basic Display API. They are using Instagram private APIs. They use multiple accounts (by its cookies) to fetch those data from Instagram, e.g. for fetching user info, they call endpoints like https://www.instagram.com/washingtonpost/?__a=1. You can open your browser's developer tools to see the endpoints Instagram calls to fetch the details.
By sophistication, I meant
The services that you have mentioned need to emulate human behavior while scraping data from Instagram otherwise Instagram would block those "fake accounts" and it's extremely hard to create accounts in Instagram via automation, you cannot create bulk accounts.
They use residential proxies, and they pay for it.
If you do not want to go all those hassles, you can buy Instagram private APIs but it's not cheap.
Here are some open source projects that might interest you
https://github.com/dilame/instagram-private-api
https://github.com/jlobos/instagram-web-api
https://github.com/ping/instagram_private_api

Related

Using Instagram Graph API to pull information on creators/public account

I'm a little bit confused about how to use the Instagram Graph API. Do I need a business/creator account as well as register my app to be approved by Facebook to use the API itself? Any other requirements? My goal for the app is to be able to enter in someone's Instagram handle and able to get back some information such as name, id, profile picture, followers, as well as metrics such as engagement rate and average likes. Is that possible without needing to be approved to use it by Facebook? Is there an easy way to get that information?

Could I make an API for another website and use it to access that website’s functionality/commands?

For example, let’s say I wanted to create my own Instagram API (I’m aware Instagram has an API but let’s imagine they didn’t and I wanted to make my own for them). Could I make one to post, like photos, DM, etc? Or does Instagram themselves need to make an API to allow me to access these functionality and commands?
You can certainly make one but you could be in violation of the service's Terms of Service (ToS). If you violate the ToS, the service could shut down your access.
In the scenario where someone publishes an unofficial SDK, it can be taken down under DCMA. For example, such a private Instagram API was made and published on GitHub before Facebook filed a DCMA claim with GitHub to have it taken down:
Facebook DCMA Takedown Request:
https://github.com/github/dmca/blob/master/2020/01/2020-01-22-facebook.md
Discussion:
https://news.ycombinator.com/item?id=22209892
Here's an excerpt from the Takedown Request:
Instagram-API repository (and its forks) offers a tool expressly designed to circumvent the Company’s effective access controls and protection measures by avoiding, bypassing, removing, deactivating, or impairing the Company’s technological measures without the authority of the copyright owners or the Company. Mgp25’s Instagram-API is designed to emulate the official Instagram mobile app when communicating with Instagram’s servers, which allows users of mgp25’s Instagram-API to send and receive data (including receiving legitimate, copyrighted posts by Instagram’s users) through Instagram’s private API. Mgp25’s Instagram-API also permits other types of access to, and collection of, Instagram’s users’ copyrighted works in manners that exceed the scope of access and functionality that would be permitted by a user with a legitimate, authorized Instagram account.

Can we use Instagram API for Local Development

I am learning React Native by creating a clone of Instagram (Strictly Local Development). I want to use the Instagram API to get some real time data for my app. I tried registering as Instagram Developer but its asking me for the website and policy page of the website, which I don't have. Is it possible to use Instagram API for learning purpose, if so can you give me the steps for ding it??
Yes, you can. I think you're already in the right way. All you need to do is just integrate things up and follow all the steps in the Instagram Developer website.
You are not required to have policy page or anything to use the sandbox, but you will need it later on if you want to use the API in the production state of your app.
You will need to create an app in the developer site, and generate your access token. Then, add a sandbox user (your Instagram account) and start to use the User Endpoint to retrieve your user data (such as your bio, follower count, etc.) and media (this is what you want, your Instagram post feed).
Hope this helps.

Instagram API on other users

I am new to instagram api usage but this website really thrills me:
https://web.stagram.com/How can this website access all the users profile details (of course only when they are public but still) ?!
They are most likely using the official Instagram API along with some other logic to find the most popular users and display their profile.
They could also be using the unofficial API (reverse engineered) to have untethered access to instagram.

Instagram official public_content API vs unofficial JSON API

It seems that Instagram has two means of scraping public data. There is the official API for which you need to get an API key and permissions, as described in the guide https://www.instagram.com/developer/ For a tag-specific search, the official API uses the endpoint:
https://api.instagram.com/v1/tags/{tag-name}?access_token=ACCESS-TOKEN
But it also seems that many people are scraping Instagram by using a different public API (which I think is the one accessed by the front-end of the website). This "unofficial" API uses the endpoint:
https://www.instagram.com/explore/tags/{tag-name}/?__a=1
I cannot find any information regarding support for the "unofficial" version. Does anybody know what limitations may exist on this API? If this method of retrieving data satisfies the requirements of our application, is there any reason we should still engage the rigorous API token review process to get our application approved for "official" API public_content permissions?
As far as I know
Does anybody know what limitations may exist on this API?
It is a direct violation of Instagram terms of use as in here
10.We prohibit crawling, scraping, caching or otherwise accessing any content on the Service via automated means, including but not
limited
to, user profiles and photos (except as may be the result of standard
search engine protocols or technologies used by a search engine with
Instagram's express consent).
And as a developer there is no grantee that these API remain
unchanged. so you probably experiencing system fail and be forced to
re develop parts of your code times to time.
Also it worth mentioning that users won't easily give you username
and passwords of their account, as the public API just requires
confirmation to access limited account resources.
is there any reason we should still engage the rigorous API token
review process to get our application approved for "official" API
public_content permissions?
Same as a bow

Resources