Back to Instagram
Apify·Instagram
Instagram Scraper
/apify/instagram-scraperasync$0.00351 / resultExtract Instagram posts, reels, profiles, places, hashtags, carousels, and comments. Get data from Instagram using one or more Instagram URLs or search queries: content, context, metrics, metadata. Export scraped data, run the scraper via API, schedule and monitor runs or integrate with other tools. Runs as an Apify actor (20–120 s); results are dataset rows.
Charged per returned row plus the flat fee.
Input
| Field | Type | Required | Description |
|---|---|---|---|
| resultsType | string (posts, details, comments, reels, mentions, stories) | — | **Posts** returns a feed of content. **Profile, hashtag, or place details** returns metadata about the page: follower count, bio, post count, and profile picture.Comments only work with post URLs, e.g. `instagram.com/p/ABC123xyz/` not `instagram.com/username/`. (default "posts") |
| directUrls | array | — | Add one or more Instagram URLs to scrape.URL format must match your content type:/p/ for posts and comments/reel/ for reels/username/ for profile detailsLeave blank if using the search query instead. |
| resultsLimit | integer | — | Set how many posts or comments to scrape per Instagram URL. Higher values increase compute usage and cost.⚠️ Free usage gets only the top 15 comments, sorted by newest, and around 21 mentions. Upgrade to Starter plan for full access.Use `1` to retrieve a single post per page. |
| onlyPostsNewerThan | string | — | Limit how far back to scrape. Enter a date in `YYYY-MM-DD`, ISO format, or as a relative value, e.g. `1 day`, `2 months`, `3 years`.Times are in UTC, not local time. New York is UTC-5 in winter, UTC-4 in summer. Pinned posts may still appear even with this filter set. |
| search | string | — | Search for Instagram hashtags, profiles, or places.Use `#` for hashtags, e.g. `#travel`. |
| searchType | string (hashtag, profile, place, user) | — | Hashtag search returns posts tagged with that term. Profile search returns matching accounts. Place search returns matching locations. (default "hashtag") |
| searchLimit | integer | — | Set how many profiles, places, or hashtags to find.To limit posts per result, use Results limit per URL.Higher values increase compute usage and cost. |
| addParentData | boolean | — | This applies only to feed items. Adds a dataSource field to each result: profile posts are labeled `profile`, and tag posts are labeled `hashtag`. (default false) |
Run it
curl -s https://sooma.dev/v1/run \
-H "Authorization: Bearer $SOOMA_API_KEY" \
-H "Content-Type: application/json" \
-d '{"provider":"apify","endpoint":"/apify/instagram-scraper","input":{}}'
Or ask your agent: it will call inspect for this schema and run it over MCP.