Export public Instagram story and highlight metadata, media URLs, timestamps, captions, profile context, and status rows from usernames or profile URLs.
Use this actor when you need a repeatable CSV, JSON, Excel, or API export of Instagram Stories and Highlights data for social media monitoring, creator research, campaign review, content archiving, or AI-agent workflows.
At a glance
- Input: Instagram usernames or profile URLs.
- Output: Profile context, story/highlight metadata, media URLs, thumbnails, captions, timestamps, highlight titles, status rows, and errors.
- Controls: Stories vs highlights, max profiles, max highlights per profile, max items per highlight, no-media profile rows, cookies, and proxy.
- Best for: Public story/highlight exports, creator monitoring, social listening, and Instagram API alternative workflows.
- Authentication-aware: Some profiles or story endpoints may require Instagram cookies.
What can it do?
- Export Instagram story metadata: Save story media IDs, media types, URLs, thumbnails, captions, timestamps, and expiry times when available.
- Export highlights: Save highlight IDs, titles, cover URLs, item media, and owner IDs.
- Collect profile context: Save username, profile URL, profile ID, full name, verification/private flags, and profile image.
- Record status rows: Save status and error fields so failed or no-media profiles can be audited.
- Use as an Instagram Stories API alternative: Run from the Apify UI, API, schedules, webhooks, or the official Apify MCP server.
Common workflows
- Creator monitoring: Track public story/highlight availability for selected profiles.
- Campaign review: Export story media and timestamps for influencer or brand campaigns.
- Content archiving: Save public story/highlight metadata and media URLs before they expire or change.
- Social media research: Compare profile story/highlight activity across creators or brands.
- AI-agent summaries: Let an agent collect story rows before summarizing campaign activity.
Input example
{
"targets": ["natgeo", "https://www.instagram.com/instagram/"],
"includeStories": true,
"includeHighlights": true,
"maxProfiles": 10,
"maxHighlightsPerProfile": 5,
"maxItemsPerHighlight": 20,
"saveProfileOnNoMedia": true,
"instagramCookies": "",
"proxyConfiguration": {
"useApifyProxy": true
}
}
Output example
{
"kind": "story",
"username": "instagram",
"profileUrl": "https://www.instagram.com/instagram/",
"profileId": "25025320",
"fullName": "Instagram",
"isVerified": true,
"isPrivate": false,
"profilePicUrl": "https://instagram.f.../profile.jpg",
"status": "ok",
"sourceUrl": "https://www.instagram.com/instagram/",
"stableId": "story:25025320:123456789",
"mediaId": "123456789",
"mediaType": "image",
"mediaUrl": "https://instagram.f.../media.jpg",
"thumbnailUrl": "https://instagram.f.../thumb.jpg",
"caption": "New update",
"takenAt": "2026-07-03T10:00:00.000Z",
"expiringAt": "2026-07-04T10:00:00.000Z",
"highlightId": null,
"highlightTitle": null,
"ownerId": "25025320"
}
Tips for best results
- Start with public usernames and a small
maxProfilesvalue. - Use cookies only when public requests return
auth_requiredor similar status. - Keep
saveProfileOnNoMediaenabled for monitoring workflows where status rows matter. - Use proxy for larger runs or repeated monitoring.
- Store cookies securely and rotate them if Instagram rate-limits or invalidates the session.
Limits and caveats
- This actor exports metadata and media URLs for public or accessible stories/highlights. It cannot bypass private-profile permissions.
- Stories expire and may disappear between runs.
- Some media URLs may expire or require the same session context later.
- Instagram can require login, rate-limit requests, or change response formats.
- Do not paste sensitive cookies into support messages or public issues.
API usage
curl "https://api.apify.com/v2/acts/fetch_cat~instagram-stories-highlights-scraper/runs?token=$APIFY_TOKEN" \
-H "Content-Type: application/json" \
-d '{
"targets": ["instagram"],
"includeStories": true,
"includeHighlights": true,
"maxProfiles": 1
}'
MCP and AI agents
You can run this actor through the official Apify MCP server at https://mcp.apify.com.
For a focused single-actor tool, use:
https://mcp.apify.com?tools=fetch_cat/instagram-stories-highlights-scraper
Agent-friendly inputs are targets, includeStories, includeHighlights, maxProfiles, maxHighlightsPerProfile, maxItemsPerHighlight, saveProfileOnNoMedia, instagramCookies, and proxyConfiguration.
Support
If a run fails, returns no data, or a field looks wrong, open an issue from the Actor page.
Please include the Apify run ID or run URL, input JSON, one example public URL, query, or input item, what you expected, and what the dataset returned. Small reproducible inputs make parsing or site-layout issues much faster to fix.