Instagram Highlights Scraper avatar

Instagram Highlights Scraper

Pricing

$14.99/month + usage

Go to Apify Store
Instagram Highlights Scraper

Instagram Highlights Scraper

Scrapes Instagram Story Highlights from any public profile, capturing highlight titles, cover images, story media, timestamps, and URLs. Ideal for content research, brand analysis, influencer insights, and automated extraction of long-term Instagram story archives

Pricing

$14.99/month + usage

Rating

0.0

(0)

Developer

Scrapio

Scrapio

Maintained by Community

Actor stats

0

Bookmarked

22

Total users

1

Monthly active users

2 days ago

Last modified

Share

Instagram Highlights Scraper Plus πŸ“Έβœ¨

Extract Instagram story highlights from any public Instagram profile β€” in bulk, as clean structured data. Give it a profile URL or username and get every highlight's title, ID, media count, created date, last-updated date, deep link and full-resolution cover image, plus optional per-story media (image/video URLs, timestamps, duration, dimensions, accessibility captions) and profile metadata (followers, verified, bio, category, website).

This is an enhanced Instagram highlights scraper / Instagram stories scraper for marketing research, competitor analysis, content backup, and lead generation.

Features

  • 🎯 Bulk profiles β€” scrape highlights from many Instagram accounts in one run (URL, username, or @handle).
  • ⭐ Highlight metadata β€” id, title, mediaCount, createdAt (ISO), latestReelMediaAt (ISO), reelType, isPinned, highlightUrl deep link.
  • πŸ–ΌοΈ Full-resolution covers β€” all cover image variants, not just the 150px thumbnail (coverImageUrl, coverImageVariants, coverMediaId).
  • πŸ“Ί Story items (optional) β€” the individual stories inside each highlight: mediaType, mediaUrl / videoUrl / imageUrl, takenAt, expiringAt, videoDuration, width, height, accessibilityCaption. Emitted as child rows linked to the parent highlight via parentId, and mirrored to a per-run stories-<runId> dataset.
  • πŸ‘€ Profile metadata (optional) β€” profileFullName, profileBio, profileFollowers, profileFollowing, profileVerified, profileCategory, profileExternalUrl, profilePicUrl.
  • πŸ” Filters β€” include/exclude title keywords, minimum media count, and a max-highlights-per-profile cap (maxItems counts highlights, not stories).
  • πŸ–ΌοΈ Media download (optional) β€” save cover images and story media to the run's key-value store.
  • πŸ›‘οΈ Reliable fetching β€” resolves each profile live; primary private-API tray fetch (no fragile relay tokens) with a paginated GraphQL fallback; automatic proxy escalation (your selection β†’ datacenter β†’ residential) on Instagram rate-limits/blocks.

Input

FieldTypeDescription
startUrlsarrayInstagram profile URLs / usernames / @handles.
maxItemsintegerMax highlights (parent rows) per profile. 0 = unlimited. Stories don't count against it.
keywordsarrayKeep only highlights whose title contains one of these words.
excludeKeywordsarrayDrop highlights whose title contains any of these words.
minMediaCountintegerKeep only highlights with at least this many stories.
includeProfileMetadatabooleanAttach owner profile metadata to each highlight row (default true).
includeStoriesbooleanFetch the stories inside each highlight as child rows (default false).
maxStoriesPerHighlightintegerCap stories fetched per highlight. 0 = all.
downloadMediabooleanSave cover / story media to the key-value store (default false).
proxyConfigurationobjectProxy settings; automatic datacenter β†’ residential fallback on blocks.

Example input

{
"startUrls": ["https://www.instagram.com/nasa/"],
"maxItems": 5,
"includeStories": true,
"maxStoriesPerHighlight": 10,
"includeProfileMetadata": true,
"proxyConfiguration": { "useApifyProxy": true }
}

Output

Each highlight is one parent row (type = "highlight", isChild = false). When includeStories is enabled, each story is a child row (type = "story", isChild = true, parentId = <highlight id>) interleaved right after its highlight and also written to the stories-<runId> dataset.

{
"type": "highlight",
"isChild": false,
"username": "nasa",
"userId": "528817151",
"id": "17895695668004550",
"title": "Artemis",
"mediaCount": 24,
"createdAt": "2021-08-19T18:03:11Z",
"latestReelMediaAt": "2024-05-01T12:00:00Z",
"highlightUrl": "https://www.instagram.com/stories/highlights/17895695668004550/",
"coverImageUrl": "https://scontent.cdninstagram.com/....jpg",
"coverMediaId": "2648...",
"profileFollowers": 97000000,
"profileVerified": true,
"scrapedAt": "2026-07-02T10:00:00Z"
}

Notes & compliance

  • Only public profiles are supported (logged-out access). Private profiles return an error row (not billed).
  • Instagram content URLs (covers, story media) are time-limited CDN links; use downloadMedia if you need to keep the assets.
  • Scrape responsibly and in line with Instagram's terms and applicable laws; use scraped data lawfully.

Keywords

instagram highlights scraper, instagram stories scraper, instagram story highlights, instagram highlight downloader, instagram profile scraper, instagram cover image extractor, instagram highlight metadata, instagram data extraction, social media scraper, instagram marketing research, competitor analysis, instagram bulk scraper.