{
  "openapi": "3.0.1",
  "info": {
    "title": "Instagram Scraper All-in-One",
    "description": "Scrape Instagram profiles, posts, reels, tagged posts, hashtags, search results, highlights and video transcripts. No login required.",
    "version": "1.0",
    "x-build-id": "rR6YRdKXR95QV81LN"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/scrapeforge~instagram-scraper-all-in-one/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-scrapeforge-instagram-scraper-all-in-one",
        "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/scrapeforge~instagram-scraper-all-in-one/runs": {
      "post": {
        "operationId": "runs-sync-scrapeforge-instagram-scraper-all-in-one",
        "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/scrapeforge~instagram-scraper-all-in-one/run-sync": {
      "post": {
        "operationId": "run-sync-scrapeforge-instagram-scraper-all-in-one",
        "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",
        "required": [
          "scrapeType"
        ],
        "properties": {
          "scrapeType": {
            "title": "What do you want to scrape?",
            "enum": [
              "profile",
              "basicProfile",
              "posts",
              "reels",
              "taggedPosts",
              "highlights",
              "highlightDetail",
              "postDetail",
              "transcript",
              "hashtag",
              "search",
              "searchProfiles",
              "searchReels",
              "trendingReels",
              "audioReels"
            ],
            "type": "string",
            "description": "Pick the type of data to extract. Then fill in ONLY the input field belonging to that type (the field name is shown in brackets).",
            "default": "profile"
          },
          "usernames": {
            "title": "Usernames",
            "type": "array",
            "description": "Instagram usernames or profile URLs. Used by: Profile details, User posts, User reels, Tagged posts, Story highlights list.",
            "items": {
              "type": "string"
            }
          },
          "postUrls": {
            "title": "Post / Reel URLs",
            "type": "array",
            "description": "Full URLs of Instagram posts or reels, e.g. https://www.instagram.com/p/ABC123/ or https://www.instagram.com/reel/ABC123/. Used by: Post / Reel details, Video transcript.",
            "items": {
              "type": "string"
            }
          },
          "queries": {
            "title": "Search queries",
            "type": "array",
            "description": "Keywords to search for. Used by: Search, Search profiles by bio keyword, Search reels by keyword.",
            "items": {
              "type": "string"
            }
          },
          "hashtags": {
            "title": "Hashtags",
            "type": "array",
            "description": "Hashtags to scrape, with or without the # symbol. Used by: Hashtag posts.",
            "items": {
              "type": "string"
            }
          },
          "highlightIds": {
            "title": "Highlight IDs",
            "type": "array",
            "description": "Story highlight IDs (get them first with the 'Story highlights list' scrape type). Used by: Story highlight items.",
            "items": {
              "type": "string"
            }
          },
          "audioIds": {
            "title": "Audio IDs",
            "type": "array",
            "description": "Instagram audio / music IDs. Used by: Reels using an audio.",
            "items": {
              "type": "string"
            }
          },
          "maxItems": {
            "title": "Max results per target",
            "minimum": 1,
            "type": "integer",
            "description": "Maximum number of results to return for each username, hashtag or query. Only applies to scrape types that return lists.",
            "default": 100
          },
          "datePosted": {
            "title": "Only content posted within",
            "enum": [
              "any",
              "last-hour",
              "last-day",
              "last-week",
              "last-month",
              "last-year"
            ],
            "type": "string",
            "description": "Filter results by recency. Used by: Hashtag posts and Search reels by keyword.",
            "default": "any"
          },
          "mediaType": {
            "title": "Hashtag media type",
            "enum": [
              "all",
              "reels"
            ],
            "type": "string",
            "description": "Which media to return for Hashtag posts: everything, or reels only.",
            "default": "all"
          },
          "cacheMaxAge": {
            "title": "Accept recent data up to",
            "enum": [
              "off",
              "1d",
              "3d",
              "7d",
              "14d",
              "30d"
            ],
            "type": "string",
            "description": "Reuse recently collected data when it is available instead of refreshing it. Much faster and cheaper, but results may be a few days old. Applies to: Profile details, Post / Reel details, Video transcript.",
            "default": "off"
          },
          "includeRawData": {
            "title": "Include all available fields",
            "type": "boolean",
            "description": "Add every field Instagram exposes for each result under the 'raw' field, including ones left out of the standard output. Useful when you need something the normalized fields do not cover.",
            "default": false
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}