{
  "openapi": "3.0.1",
  "info": {
    "title": "Instagram Followers & Following Scraper [From 💰$0.99] No Login",
    "description": "[From 💰$0.99/1k] Scrape the followers and following of any public Instagram account — no login, no cookies, zero risk to your account. Get username, full name, verified & private flags, profile pic and profile URL for every account. Followers, following, or both, many profiles per run.",
    "version": "1.0",
    "x-build-id": "bTuY4EWdCNxyidBF2"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/memo23~instagram-following-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-memo23-instagram-following-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/memo23~instagram-following-scraper/runs": {
      "post": {
        "operationId": "runs-sync-memo23-instagram-following-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/memo23~instagram-following-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-memo23-instagram-following-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",
        "required": [
          "usernames"
        ],
        "properties": {
          "usernames": {
            "title": "Instagram usernames",
            "type": "array",
            "description": "Public Instagram accounts whose followers and/or following lists you want to scrape. Accepts plain handles (zuck), @-handles (@zuck), or profile URLs (https://www.instagram.com/zuck) — one per line, mixed formats are fine. Private accounts return an error item. Example: [\"zuck\", \"https://www.instagram.com/therock\"]. Required, no default.",
            "items": {
              "type": "string"
            }
          },
          "dataToScrape": {
            "title": "Data to scrape",
            "enum": [
              "followings",
              "followers",
              "both"
            ],
            "type": "string",
            "description": "Which list to collect for each account: Followings (accounts they follow), Followers (accounts that follow them), or both at once. Default: Followings.",
            "default": "followings"
          },
          "maxResultsPerUser": {
            "title": "Max results per user",
            "minimum": 1,
            "type": "integer",
            "description": "Maximum number of accounts to collect per username per list. Use it to cap cost or sample a profile. Leave empty to fetch complete lists. Example: 500. Default: unlimited."
          },
          "enrichWithCounts": {
            "title": "Add follower counts to each result (costs extra)",
            "type": "boolean",
            "description": "Off by default. On: every returned account is also looked up individually, adding followersCount, followsCount, postsCount, isBusiness, biography, externalUrl, publicEmail, publicPhone, category and fbId to its row — so you can rank a following list by audience size or pull contact details for the business accounts in it. Instagram's list endpoints do not carry these fields, so each enriched account costs one extra request and is billed as its own event on top of the per-result price. A lookup that fails still returns the account, unenriched and unbilled.",
            "default": false
          },
          "searchQuery": {
            "title": "Search inside the list",
            "type": "string",
            "description": "Keep only accounts whose username or display name contains this text (case-insensitive). Instagram's list is walked until enough matches are found or the list ends — you are not billed for rows that do not match. Example: <code>shop</code>."
          },
          "excludePrivate": {
            "title": "Exclude private accounts",
            "type": "boolean",
            "description": "Drop private accounts before billing. Useful for outreach lists — private profiles cannot be messaged from content. Off by default.",
            "default": false
          },
          "bioKeywords": {
            "title": "Bio must contain",
            "type": "array",
            "description": "Keep only accounts whose biography contains at least one of these keywords (case-insensitive). Turns on profile enrichment automatically; a lookup is billed only when the bio matches and the row is saved. Example: [\"coach\", \"agency\"].",
            "items": {
              "type": "string"
            }
          },
          "includeHistorical": {
            "title": "Include historical (churned) accounts",
            "type": "boolean",
            "description": "Also return accounts seen in this profile's follower/following list on earlier runs that are NOT in it today — i.e. accounts that have since unfollowed or been unfollowed (churn) — tagged source:\"archive\" with firstSeenAt/lastSeenAt. Off by default. Enabling it fetches live (skips the fast cache) so the churn comparison uses the full current list.",
            "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}