I'm working on an app that I want to publish. The plan is simple: when someone shares an Instagram post URL in my app, I want it to automatically fetch the full caption text and all images in the post, including carousel images by index. After that, I'd send this data to an LLM to summarize and save it for the user. I've explored some options:
- The oEmbed API only provides the partial caption and HTML, not the full text.
- The Instagram Graph/Basic Display API seems to allow fetching captions, but only for the authenticated user's own posts, not for any public post URL.
So I'm wondering: does an official API exist for this purpose (to get full captions and all images for a public post)? If not, what practical approaches do developers usually take? Would it be legal or practical to scrape this data and release my app, or would it be better to use a third-party service that handles Instagram scraping? I need to understand if scraping poses long-term risks or if there are safer alternatives using official APIs. Thanks!
2 Answers
Unfortunately, you're out of luck. Pulling full captions and carousel images from Instagram directly is definitely against their terms of service. Meta doesn't allow it, and doing so could lead to your app being taken down.
For sure, those kinds of apps break Instagram's ToS. Reporting them could lead to Meta taking action, but they often only deal with high-profile violations. I wouldn't rely on their enforcement; it's more about what you want to risk.
True, it seems like they haven’t prioritized some of these smaller apps yet. It's a gamble too; settling into a comfortable risk zone might be your best bet for now!

But I've seen apps in the App Store that seem to do exactly this! How legal is it really? They might just be skating under the radar since they've got downloads and aren't taken down.