# Instagram API

Public Instagram profiles, media, comments, reels, audio, embeds, and discovery.

- Platform ID: `instagram`
- Capabilities: 20
- Execute endpoint: `POST https://data.upscrape.com/execute`



## Capabilities

### [List Reels by audio](https://docs.upscrape.com/docs/platforms/instagram/instagram.audio-reels.list)

- Capability ID: `instagram.audio-reels.list`
- Cost: 1 credit per request

Streams public reels attached to an Instagram audio page with bounded cursor pagination.
### [List comments](https://docs.upscrape.com/docs/platforms/instagram/instagram.comments.list)

- Capability ID: `instagram.comments.list`
- Cost: 1 credit per request

List the public comment preview with cursor pagination. This is not the complete comment history: is_complete is false and stop_reason explains the limit.
### [Get embed](https://docs.upscrape.com/docs/platforms/instagram/instagram.embed.get)

- Capability ID: `instagram.embed.get`
- Cost: 1 credit per request

Fetches Instagram's public profile or post embed HTML, including the captioned post variant.
### [Get Explore](https://docs.upscrape.com/docs/platforms/instagram/instagram.explore.list)

- Capability ID: `instagram.explore.list`
- Cost: 1 credit per request

Returns public Explore home sections or paginates a selected section.
### [Search hashtag posts](https://docs.upscrape.com/docs/platforms/instagram/instagram.hashtag-posts.search)

- Capability ID: `instagram.hashtag-posts.search`
- Cost: 1 credit per request

Find hashtag media via web indexes or a labelled keyword fallback. Filter by verified dates; confirmed no matches return not found. Failed requests are free.
### [Search hashtag keyword](https://docs.upscrape.com/docs/platforms/instagram/instagram.hashtag.search)

- Capability ID: `instagram.hashtag.search`
- Cost: 1 credit per request

Discover popular content for a hashtag keyword, with available dates and engagement counts. match_mode is keyword_popular; this is not an exact hashtag feed.
### [List highlights](https://docs.upscrape.com/docs/platforms/instagram/instagram.highlights.list)

- Capability ID: `instagram.highlights.list`
- Cost: 1 credit per request

Lists up to 10 public highlight collection titles and covers from a profile tray. Returns collection metadata without further-page continuation.
### [List location posts](https://docs.upscrape.com/docs/platforms/instagram/instagram.location-posts.list)

- Capability ID: `instagram.location-posts.list`
- Cost: 1 credit per request

Lists the reproducible first page of public ranked posts embedded in an Instagram location page.
### [Get location](https://docs.upscrape.com/docs/platforms/instagram/instagram.location.get)

- Capability ID: `instagram.location.get`
- Cost: 1 credit per request

Get location
### [Search popular](https://docs.upscrape.com/docs/platforms/instagram/instagram.popular.search)

- Capability ID: `instagram.popular.search`
- Cost: 1 credit per request

Search popular Instagram content by keyword, including available post dates and engagement counts. No matches returns a failed, uncharged request.
### [Get post](https://docs.upscrape.com/docs/platforms/instagram/instagram.post.get)

- Capability ID: `instagram.post.get`
- Cost: 1 credit per request

Fetches rich public post, reel, or carousel metadata plus backward-compatible oEmbed fields.
### [List profile posts](https://docs.upscrape.com/docs/platforms/instagram/instagram.profile-posts.list)

- Capability ID: `instagram.profile-posts.list`
- Cost: 1 credit per request

Lists public profile posts with bounded cursor pagination, deduplication, and optional timestamp filtering.
### [Get basic profile by ID](https://docs.upscrape.com/docs/platforms/instagram/instagram.profile.basic)

- Capability ID: `instagram.profile.basic`
- Cost: 1 credit per request

Fetch public profile metadata by numeric user ID. Unavailable metadata is listed in missing_fields.
### [Get profile](https://docs.upscrape.com/docs/platforms/instagram/instagram.profile.get)

- Capability ID: `instagram.profile.get`
- Cost: 1 credit per request

Get public profile counts, bio, links, category and business status, with up to 12 recent posts and a list of unavailable metadata.
### [Search profiles](https://docs.upscrape.com/docs/platforms/instagram/instagram.profile.search)

- Capability ID: `instagram.profile.search`
- Cost: 1 credit per request

Find public profiles through web indexing. Enrichment adds detail without replacing or reordering results. An unavailable index fails.
### [List Reels](https://docs.upscrape.com/docs/platforms/instagram/instagram.reels.list)

- Capability ID: `instagram.reels.list`
- Cost: 1 credit per request

Lists public profile reels with bounded cursor pagination, deduplication, and optional timestamp filtering.
### [Search Reels](https://docs.upscrape.com/docs/platforms/instagram/instagram.reels.search)

- Capability ID: `instagram.reels.search`
- Cost: 1 credit per request

Discovers public Instagram reels through web indexing with bounded page traversal and optional enrichment.
### [List trending Reels](https://docs.upscrape.com/docs/platforms/instagram/instagram.reels.trending)

- Capability ID: `instagram.reels.trending`
- Cost: 1 credit per request

List public trending reels up to limit or max_pages. stop_reason identifies the reached bound; next_cursor resumes after the last returned reel.
### [Search topic](https://docs.upscrape.com/docs/platforms/instagram/instagram.topic.search)

- Capability ID: `instagram.topic.search`
- Cost: 1 credit per request

Search public popular content by topic keyword, legacy topic ID or topic URL, with available dates and engagement counts.
### [List topics](https://docs.upscrape.com/docs/platforms/instagram/instagram.topics.list)

- Capability ID: `instagram.topics.list`
- Cost: 1 credit per request

Discover current public Explore topics, grouped by section, with available media counts. Results are fetched live from Instagram.

## Common uses

- Monitor public creator and brand profiles
- Build public post and reel datasets
- Analyze public comments and audio usage
- Research popular content by keyword or topic
- Track public publishing activity over time

## Integration contract

All capabilities use the shared `POST /execute` envelope. A `200` response completed inline; a `202` response must be polled through `GET /jobs/{id}`.

See [authentication](https://docs.upscrape.com/docs/api/authentication), [jobs and results](https://docs.upscrape.com/docs/api/jobs), and [errors and retries](https://docs.upscrape.com/docs/api/errors).
