> **For coding agents and LLMs:** This is one Social Fetch marketing page (markdown export). For API orientation start with [`/llms.txt`](https://www.socialfetch.dev/llms.txt); for auth and crawl rules use [`/agents.txt`](https://www.socialfetch.dev/agents.txt); for every operation use [`/llms-endpoints.txt`](https://www.socialfetch.dev/llms-endpoints.txt).

## This page

- **On-site (HTML):** <https://www.socialfetch.dev/platforms/instagram/v2-instagram-highlights-highlightid>
- **Markdown (.mdx) URL:** <https://www.socialfetch.dev/platforms/instagram/v2-instagram-highlights-highlightid.mdx>

---

# Instagram Highlight API

Pass a highlight id and get the highlight plus every story inside it, as the same media object every v2 list uses.

`GET /v2/instagram/highlights/{highlightId}` takes the numeric Instagram highlight id (or an instagram.com `/stories/highlights/` URL). Read `data.lookupStatus` (`found` or `not_found`), then `data.highlight` and `data.media`. The highlight has `id`, `title`, `coverUrl`, `mediaCount`, `createdAt` and `updatedAt`. Each story in `data.media` is the media object every v2 list returns, with `kind: story`, its `owner`, and its extras under `story`: `expiresAt`, `linkStickers` and `mentions`. Every field is always present and `null` when Instagram doesn't say. `meta.version` is `v2`.

This route is one highlight by id. To list a profile's highlights first, use `GET /v2/instagram/profiles/{profile}/highlights`. Live 24-hour stories are `GET /v2/instagram/profiles/{profile}/stories`. Bill from `meta.creditsCharged`.

## Request

- **Endpoint:** `GET /v2/instagram/highlights/{highlightId}`
- **Credits:** 1 credit
Failed requests are free
- **Input:** by highlight id
- **Full reference:** [docs](https://www.socialfetch.dev/docs/api/v2/instagram/highlights/highlightid/get)
- **Platform page:** [/platforms/instagram](https://www.socialfetch.dev/platforms/instagram)

## FAQ

### How do I get the stories in an Instagram highlight with the v2 API?

Call `GET /v2/instagram/highlights/{highlightId}` with your Social Fetch API key (`x-api-key`) and the numeric highlight id in the path. Read `data.lookupStatus`, then `data.highlight` and `data.media`.

### How much does the Instagram Highlight API cost?

Pricing is documented on the operation in the API registry (shown on this page). Confirm on every response with meta.creditsCharged — that field is the billing source of truth.

### Where do I get an Instagram highlight id?

From `data.highlights[].id` on `GET /v2/instagram/profiles/{profile}/highlights`, or from a public highlight URL. Pass the digits in the path, not a username.

### What is in each story of a highlight?

The shared media object: id, `kind: story`, `mediaType`, `createdAt`, the account that posted it as `owner`, image, thumbnail and video URLs, duration and size. Under `story`: `expiresAt` (when the story expired, as it was live for 24 hours), `linkStickers` and `mentions`. Stories have no shortcode, URL or public counts, so those are `null`.

### What does not_found mean for a highlight lookup?

`not_found` means the highlight id could not be resolved into a public highlight, for example because it was deleted or its account is private. `data.highlight` is `null` and `data.media` is empty. It is still a completed lookup. Keep `meta.requestId` if you need support on that row.
