{
  "openapi": "3.0.1",
  "info": {
    "title": "YouTube Channel Contact Scraper — Email, Website & Socials",
    "description": "Find YouTube creators and get their contact details in bulk. Search by keyword or paste channel URLs and get channel name, subscribers, views, country, business email, website and all social links. Fast, keyless YouTube influencer & creator lead generation.",
    "version": "0.1",
    "x-build-id": "AtyZWaaiaM6dyHX4j"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/haketa~youtube-contact-scraper/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-haketa-youtube-contact-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/haketa~youtube-contact-scraper/runs": {
      "post": {
        "operationId": "runs-sync-haketa-youtube-contact-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/haketa~youtube-contact-scraper/run-sync": {
      "post": {
        "operationId": "run-sync-haketa-youtube-contact-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": {
          "topicPreset": {
            "title": "Popular niches (pick to get started)",
            "type": "array",
            "description": "Pick one or more popular creator niches and instantly get matching channels with their contact details. No typing needed — just tick the niches you want. Leave everything empty to get a ready-made mix of top niches.",
            "items": {
              "type": "string",
              "enum": [
                "tech reviewer",
                "gaming",
                "beauty and makeup",
                "fitness and workout",
                "cooking and recipes",
                "travel vlogger",
                "personal finance",
                "business and marketing",
                "music",
                "education and tutorials",
                "fashion and style",
                "health and wellness",
                "podcast",
                "real estate",
                "photography",
                "home and DIY",
                "automotive and cars",
                "family and parenting",
                "comedy",
                "science and technology"
              ],
              "enumTitles": [
                "Tech reviewers",
                "Gaming",
                "Beauty & makeup",
                "Fitness & workout",
                "Cooking & recipes",
                "Travel vloggers",
                "Personal finance",
                "Business & marketing",
                "Music",
                "Education & tutorials",
                "Fashion & style",
                "Health & wellness",
                "Podcasters",
                "Real estate",
                "Photography",
                "Home & DIY",
                "Automotive & cars",
                "Family & parenting",
                "Comedy",
                "Science & tech"
              ]
            }
          },
          "searchKeywords": {
            "title": "Search keywords (optional)",
            "type": "array",
            "description": "Type your own niches or topics to find channels by (e.g. \"vegan recipes\", \"home workout\", \"drone reviews\"). Each keyword returns matching channels up to the limit below. Combine freely with the niches picker above.",
            "items": {
              "type": "string"
            }
          },
          "channelUrls": {
            "title": "Specific channels (advanced, optional)",
            "type": "array",
            "description": "Already know which channels you want? Add them here as full URLs, @handles or channel IDs (e.g. \"@mkbhd\", \"https://youtube.com/@LinusTechTips\"). Optional — most users just pick niches or type keywords above.",
            "items": {
              "type": "string"
            }
          },
          "maxChannels": {
            "title": "Max channels (total)",
            "minimum": 0,
            "type": "integer",
            "description": "Overall cap on how many channels to return across all niches and keywords. Keeps runs fast and affordable. 0 = no overall cap.",
            "default": 0
          },
          "maxChannelsPerKeyword": {
            "title": "Max channels per keyword",
            "minimum": 1,
            "maximum": 500,
            "type": "integer",
            "description": "How many channels to collect for each niche or keyword.",
            "default": 40
          },
          "minSubscribers": {
            "title": "Minimum subscribers",
            "type": "integer",
            "description": "Only keep channels with at least this many subscribers, so you can focus on bigger creators. 0 = keep all.",
            "default": 0
          },
          "enrichFromWebsite": {
            "title": "Find email on channel website",
            "type": "boolean",
            "description": "If no email is on the channel page, open the channel's linked website and look for a contact email there — great for higher email coverage.",
            "default": true
          },
          "maxConcurrency": {
            "title": "Max concurrency",
            "minimum": 1,
            "maximum": 30,
            "type": "integer",
            "description": "How many channels to process in parallel. Higher is faster.",
            "default": 10
          },
          "proxyConfiguration": {
            "title": "Proxy configuration",
            "type": "object",
            "description": "Apify Proxy. Off by default; enable (and raise for large runs) if you need extra reliability on very big jobs.",
            "default": {
              "useApifyProxy": 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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}