{
  "openapi": "3.0.1",
  "info": {
    "title": "Twitch Scraper | Streamers, Emails and Clips",
    "description": "Twitch scraper for streamers by username, game or keyword: followers, live viewers, game, business email and X, Instagram, YouTube, TikTok and Discord links, plus clips, videos and top games. Filter by language and followers. 22 streamers in 2 seconds, 38 fields each, no Twitch account needed.",
    "version": "1.0",
    "x-build-id": "aRf89RAZnnx3GgnYm"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/silentflow~twitch-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-silentflow-twitch-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/silentflow~twitch-scraper/runs": {
      "post": {
        "operationId": "runs-sync-silentflow-twitch-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/silentflow~twitch-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-silentflow-twitch-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": {
          "channels": {
            "title": "📺 Channels",
            "type": "array",
            "description": "Twitch usernames (<code>shroud</code>) or links: a channel (<code>https://www.twitch.tv/pokimane</code>), a clip, a video or a category page. Each channel gives one row with its profile, live stream, emails, social links, 5 recent videos and 5 top clips. Pick clips or videos instead in <b>For each channel, get</b> below.",
            "items": {
              "type": "string"
            }
          },
          "categories": {
            "title": "🎮 Games and categories",
            "type": "array",
            "description": "Every channel live right now in a game or category, most watched first, as Twitch names it (<code>Just Chatting</code>, <code>VALORANT</code>, <code>League of Legends</code>) or as a link (<code>https://www.twitch.tv/directory/category/fortnite</code>). A big category has hundreds of live channels: the run reads as many as <b>Max results</b> asks.",
            "items": {
              "type": "string"
            }
          },
          "searchQueries": {
            "title": "🔎 Search channels",
            "type": "array",
            "description": "Channels whose name matches a keyword, as Twitch's search ranks them: <code>valorant</code>, <code>chess</code>, <code>asmr</code>. Each match gets the same full row as a named channel.",
            "items": {
              "type": "string"
            }
          },
          "topList": {
            "title": "🔥 Twitch-wide top list",
            "enum": [
              "none",
              "streams",
              "games"
            ],
            "type": "string",
            "description": "Add the most watched live streams of all of Twitch, one channel row each, or the most watched games and categories with their viewer and channel counts.",
            "default": "none"
          },
          "maxItems": {
            "title": "🔢 Max results per search, category or channel",
            "minimum": 1,
            "type": "integer",
            "description": "Stop each search, category, top list and channel's clips or videos after this many rows. Named channels always give one row each. Two categories at 200 give up to 400 streamers.",
            "default": 100
          },
          "language": {
            "title": "🌐 Stream language",
            "type": "string",
            "description": "Keep channels that stream in this language. Pick one, or type a code (<code>fr</code>, <code>fra</code>) or an English name (<code>French</code>). Empty keeps every language."
          },
          "minFollowers": {
            "title": "👥 Minimum followers",
            "minimum": 0,
            "type": "integer",
            "description": "Skip channels with fewer followers than this, for example <code>10000</code> to keep established streamers. 0 keeps every channel. A high floor makes a category read more of its list to fill your max results.",
            "default": 0
          },
          "channelData": {
            "title": "📋 For each channel, get",
            "enum": [
              "profile",
              "clips",
              "videos"
            ],
            "type": "string",
            "description": "<b>Profile</b>: one row per channel with followers, live stream, emails, social links, panels, 5 recent videos and 5 top clips. <b>Clips</b>: the channel's most viewed clips of the period below, one row each. <b>Videos</b>: its past broadcasts, highlights and uploads, newest first, one row each.",
            "default": "profile"
          },
          "clipPeriod": {
            "title": "📅 Clip period",
            "enum": [
              "day",
              "week",
              "month",
              "all"
            ],
            "type": "string",
            "description": "Which clips count as top clips: created in the last day, week or month, or ever. Applies to clip rows and to the 5 top clips of a profile row.",
            "default": "week"
          }
        }
      },
      "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
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "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
                  },
                  "PROXY_UNBLOCKER_UNITS": {
                    "type": "integer",
                    "example": 0
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}