{
  "openapi": "3.0.1",
  "info": {
    "title": "Instagram Reels Scraper⚡",
    "description": "Scrape public reels & comments. Collects play counts, views, likes, comment counts, video durations, captions, audio info, comment_details, video_versions & owner details. Fully supports profile URLs, User Names & direct reel links ✨Instagram Reels Scraper⚡",
    "version": "1.0",
    "x-build-id": "ITAlMcYq2jcN0rrSl"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/premiumscraper~instagram-reels-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-premiumscraper-instagram-reels-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for its completion, and returns Actor's dataset items in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    },
    "/acts/premiumscraper~instagram-reels-scraper/runs": {
      "post": {
        "operationId": "runs-sync-premiumscraper-instagram-reels-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor and returns information about the initiated run in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK",
            "content": {
              "application/json": {
                "schema": {
                  "$ref": "#/components/schemas/runsResponseSchema"
                }
              }
            }
          }
        }
      }
    },
    "/acts/premiumscraper~instagram-reels-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-premiumscraper-instagram-reels-scraper",
        "x-openai-isConsequential": false,
        "summary": "Executes an Actor, waits for completion, and returns the OUTPUT from Key-value store in response.",
        "tags": [
          "Run Actor"
        ],
        "requestBody": {
          "required": true,
          "content": {
            "application/json": {
              "schema": {
                "$ref": "#/components/schemas/inputSchema"
              }
            }
          }
        },
        "parameters": [
          {
            "name": "token",
            "in": "query",
            "required": true,
            "schema": {
              "type": "string"
            },
            "description": "Enter your Apify token here"
          }
        ],
        "responses": {
          "200": {
            "description": "OK"
          }
        }
      }
    }
  },
  "components": {
    "schemas": {
      "inputSchema": {
        "type": "object",
        "properties": {
          "username": {
            "title": "👤 Instagram Username(s)",
            "type": "array",
            "description": "Enter one or more Instagram usernames such as nba, natgeo, or cristiano. Each username is automatically converted into a profile URL and scraped through the public reels tab.",
            "items": {
              "type": "string"
            }
          },
          "instagram_urls": {
            "title": "🔗 Instagram URLs",
            "type": "array",
            "description": "Add one or more Instagram profile URLs, reels-tab profile URLs, or direct reel URLs. Supported formats:\n• Username: nba\n• Profile URL: https://www.instagram.com/nba/\n• Reels tab URL: https://www.instagram.com/nba/reels/\n• Direct reel URL: https://www.instagram.com/reel/DYFIVfYM4ib/\n\nProfile inputs use the public reels clips API pagination flow. Direct reel URLs are scraped from the public reel page.",
            "items": {
              "type": "object",
              "required": [
                "url"
              ],
              "properties": {
                "url": {
                  "type": "string",
                  "title": "URL of a web page",
                  "format": "uri"
                }
              }
            }
          },
          "reels_count": {
            "title": "🎞️ Reels Per Profile",
            "minimum": 1,
            "type": "integer",
            "description": "How many public reels to return for each profile input. This applies only to profile scraping, not direct reel URLs. If fewer public reels are available, the output clearly shows the requested and returned totals.",
            "default": 10
          },
          "proxyCountry": {
            "title": "🌐 Proxy Country",
            "enum": [
              "US",
              "GB",
              "AU",
              "CA",
              "DE",
              "FR",
              "NL",
              "IT",
              "ES",
              "SE",
              "NO",
              "DK",
              "FI",
              "BE",
              "AT",
              "CH",
              "IE",
              "PL",
              "PT",
              "CZ",
              "HU",
              "RO",
              "GR",
              "JP",
              "KR",
              "SG",
              "IN",
              "BR",
              "MX",
              "AR",
              "TR"
            ],
            "type": "string",
            "description": "Choose the residential proxy exit country for public Instagram requests. US is recommended for the broadest public coverage.",
            "default": "US"
          },
          "skip_pinned_reels": {
            "title": "📌 Skip Pinned Reels",
            "type": "boolean",
            "description": "Turn on to skip pinned reels. Pinned reels will be skipped during profile feed scanning. Skipped pinned reels do not count towards the requested 'Reels Per Profile' limit, and they do NOT incur any pay-per-event charges (skipping them is free).",
            "default": false
          },
          "skip_trial_reels": {
            "title": "🧪 Skip Trial Reels",
            "type": "boolean",
            "description": "Turn on to skip trial/test reels. Trial reels are an Instagram feature creators use to test a video with non-followers temporarily before sharing it with followers. Since these test videos are very rare, keeping this option enabled ensures you only scrape final, permanent public reels. Skipped trial reels do not count towards the requested limit and do NOT incur any pay-per-event charges (skipping them is free).",
            "default": false
          },
          "reels_newer_than": {
            "title": "📅 Extract Reels That Are Newer Than",
            "type": "string",
            "description": "Only keep profile reels created on or after this date. Leave empty for no lower date limit. If fewer public reels match this filter, the output clearly shows the requested and returned totals."
          },
          "include_comments": {
            "title": "💬 Include Comments",
            "type": "boolean",
            "description": "Turn on to collect public comments for each returned reel. Comments are placed under comment_details together with request feedback. ⚠️ Comment collection adds extra requests per reel and can take a significant amount of time — especially with high comment limits. Please be patient and do not stop the run early. Billing is per returned comment.",
            "default": false
          },
          "comments_limit": {
            "title": "💬 Comments Limit Per Reel",
            "minimum": 1,
            "type": "integer",
            "description": "Maximum number of comments to return per reel when comment collection is enabled. ⚠️ Higher limits take proportionally longer — scraping 3000 comments can take 10+ minutes per reel. Please be patient. If fewer public comments are available, the output clearly shows the requested and returned totals.",
            "default": 20
          }
        }
      },
      "runsResponseSchema": {
        "type": "object",
        "properties": {
          "data": {
            "type": "object",
            "properties": {
              "id": {
                "type": "string"
              },
              "actId": {
                "type": "string"
              },
              "userId": {
                "type": "string"
              },
              "startedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "finishedAt": {
                "type": "string",
                "format": "date-time",
                "example": "2025-01-08T00:00:00.000Z"
              },
              "status": {
                "type": "string",
                "example": "READY"
              },
              "meta": {
                "type": "object",
                "properties": {
                  "origin": {
                    "type": "string",
                    "example": "API"
                  },
                  "userAgent": {
                    "type": "string"
                  }
                }
              },
              "stats": {
                "type": "object",
                "properties": {
                  "inputBodyLen": {
                    "type": "integer",
                    "example": 2000
                  },
                  "rebootCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "restartCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "resurrectCount": {
                    "type": "integer",
                    "example": 0
                  },
                  "computeUnits": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "options": {
                "type": "object",
                "properties": {
                  "build": {
                    "type": "string",
                    "example": "latest"
                  },
                  "timeoutSecs": {
                    "type": "integer",
                    "example": 300
                  },
                  "memoryMbytes": {
                    "type": "integer",
                    "example": 1024
                  },
                  "diskMbytes": {
                    "type": "integer",
                    "example": 2048
                  }
                }
              },
              "buildId": {
                "type": "string"
              },
              "defaultKeyValueStoreId": {
                "type": "string"
              },
              "defaultDatasetId": {
                "type": "string"
              },
              "defaultRequestQueueId": {
                "type": "string"
              },
              "buildNumber": {
                "type": "string",
                "example": "1.0.0"
              },
              "containerUrl": {
                "type": "string"
              },
              "usage": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "integer",
                    "example": 1
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              },
              "usageTotalUsd": {
                "type": "number",
                "example": 0.00005
              },
              "usageUsd": {
                "type": "object",
                "properties": {
                  "ACTOR_COMPUTE_UNITS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATASET_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "KEY_VALUE_STORE_WRITES": {
                    "type": "number",
                    "example": 0.00005
                  },
                  "KEY_VALUE_STORE_LISTS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_READS": {
                    "type": "integer",
                    "example": 0
                  },
                  "REQUEST_QUEUE_WRITES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_INTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "DATA_TRANSFER_EXTERNAL_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_RESIDENTIAL_TRANSFER_GBYTES": {
                    "type": "integer",
                    "example": 0
                  },
                  "PROXY_SERPS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}