{
  "openapi": "3.0.1",
  "info": {
    "title": "Instagram Influencer Analyzer & Sponsored Post Tracker",
    "description": "Rank Instagram creators by real engagement rate. Flag sponsored posts and paid partnerships. Track brand mentions across posts, reels, comments, profiles, hashtags, places, and user search. For agencies, brand marketers, and ad intelligence teams. JSON. Pay per result.",
    "version": "0.1",
    "x-build-id": "r4hvaldoAYo4GvjzY"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/scrapemint~instagram-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-scrapemint-instagram-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/scrapemint~instagram-scraper/runs": {
      "post": {
        "operationId": "runs-sync-scrapemint-instagram-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/scrapemint~instagram-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-scrapemint-instagram-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": {
          "contentType": {
            "title": "Content to scrape",
            "enum": [
              "posts",
              "reels",
              "comments",
              "mentions",
              "profile",
              "hashtag",
              "place",
              "user-search"
            ],
            "type": "string",
            "description": "What kind of data you want. Each type expects a matching URL or search query.",
            "default": "posts"
          },
          "urls": {
            "title": "Instagram URLs",
            "type": "array",
            "description": "Instagram URLs to scrape. URLs take priority over search queries and cannot be combined. Use /p/ for posts, /reel/ for reels, /username/ for profiles, /explore/tags/ for hashtags, /explore/locations/ for places.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "searchQueries": {
            "title": "Search queries",
            "type": "array",
            "description": "Keywords to search (hashtags, users, or places depending on content type). Enter multiple terms as separate items. Ignored when URLs are provided.",
            "default": [],
            "items": {
              "type": "string"
            }
          },
          "resultsLimit": {
            "title": "Results limit per URL",
            "minimum": 1,
            "maximum": 5000,
            "type": "integer",
            "description": "Cap on results returned per URL or query. Controls cost and runtime.",
            "default": 100
          },
          "filterByDate": {
            "title": "Filter by date",
            "type": "string",
            "description": "Only return posts newer than this date. UTC, not local time. Format YYYY-MM-DD for absolute, or a relative like '7 days ago', '1 month ago'. Leave blank for no filter.",
            "default": ""
          },
          "includeEngagementMetrics": {
            "title": "Include engagement rate + posting cadence",
            "type": "boolean",
            "description": "On profile and hashtag runs, compute avg likes per post, avg comments per post, engagement rate as a percentage of followers, and posts per week. Built in. No extra cost.",
            "default": true
          },
          "detectSponsoredPosts": {
            "title": "Flag sponsored and paid partnership posts",
            "type": "boolean",
            "description": "Mark each post with isSponsored true or false based on #ad, #sponsored, #paidpartnership, Instagram's paid partnership label, and brand tag patterns. Built in. No extra cost.",
            "default": true
          },
          "downloadMedia": {
            "title": "Download images and videos",
            "type": "boolean",
            "description": "Save every image and video to the key value store and include a downloadUrl per post. Adds storage cost.",
            "default": false
          },
          "scrapeCommentsPerPost": {
            "title": "Also scrape top comments per post",
            "minimum": 0,
            "maximum": 200,
            "type": "integer",
            "description": "Pull the top N comments from each post or reel in the run. 0 disables. Only runs for posts and reels content types.",
            "default": 0
          },
          "includeMediaMetadata": {
            "title": "Include image dimensions, alt text, and location",
            "type": "boolean",
            "description": "Enrich each row with width, height, alt text (accessibility caption), and tagged location when available.",
            "default": true
          },
          "dedupe": {
            "title": "Deduplicate across runs",
            "type": "boolean",
            "description": "Skip post and profile IDs already pushed in previous runs. Turn off to refresh counts on the same items.",
            "default": true
          },
          "maxItemsTotal": {
            "title": "Max items per run",
            "minimum": 1,
            "maximum": 50000,
            "type": "integer",
            "description": "Hard cap across all URLs and queries. Controls total cost.",
            "default": 500
          },
          "proxyConfiguration": {
            "title": "Proxy configuration",
            "type": "object",
            "description": "Apify proxy. Residential strongly recommended. Instagram blocks datacenter IPs aggressively.",
            "default": {
              "useApifyProxy": true,
              "apifyProxyGroups": [
                "RESIDENTIAL"
              ]
            }
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}