Instagram Scraper
Get Instagram Reels
Returns a paginated list of a user's public Instagram reels (short-form videos). Each reel includes its shortcode, play count, like count, comment count, video versions with download URLs, thumbnail image, owner info, and the published time in `items[].media.created_at` as an ISO 8601 UTC date. With `trim=true`, use `items[].created_at`. The original Unix timestamp remains available as `taken_at`. Note that reel captions are not returned by this endpoint. Play counts are Instagram-only views and exclude cross-posted Facebook views. Supports cursor-based pagination via max_id; providing a user_id instead of a handle yields faster responses.
Endpoint
Parameters
| Name | Type | Required | Note |
|---|---|---|---|
| trimboolean · optional | boolean | optional | Set to true for a trimmed down version of the response |
| limitnumber · optional | number | optional | Maximum number of results to return from this request. Leave empty for everything this request returns. This trims the response — it does not fetch more; use the returned cursor for the next batch. The price is the same either way. |
| handlestring · optional | string | optional | Instagram handle. Use user_id for faster response times. |
| max_idstring · optional | string | optional | Max id to get more reels. Get 'max_id' from previous response. |
| user_idstring · optional | string | optional | Instagram user id. Use this for faster response times. |
Response schema
{
"type": "object",
"$schema": "http://json-schema.org/draft-07/schema#",
"properties": {
"items": {
"type": "array"
},
"max_id": {
"type": "string"
},
"limitApplied": {
"type": "boolean",
"description": "True when a Limit trimmed the results; there were more in this response."
}
},
"additionalProperties": true
}