{
  "openapi": "3.0.1",
  "info": {
    "title": "Tiktok Influencer Finder",
    "description": "TikTok Influencer Finder discovers TikTok creators by hashtag, keyword, niche, or seed profile, then returns outreach-ready leads with follower counts, bio details, public contact clues, and profile URLs. Use it for influencer research, lead generation, and creator sourcing.",
    "version": "0.2",
    "x-build-id": "cO0VwaeGhNMBp3gJ3"
  },
  "servers": [
    {
      "url": "https://api.apify.com/v2"
    }
  ],
  "paths": {
    "/acts/coregent~tiktok-influencer-finder/run-sync-get-dataset-items": {
      "post": {
        "operationId": "run-sync-get-dataset-items-coregent-tiktok-influencer-finder",
        "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/coregent~tiktok-influencer-finder/runs": {
      "post": {
        "operationId": "runs-sync-coregent-tiktok-influencer-finder",
        "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/coregent~tiktok-influencer-finder/run-sync": {
      "post": {
        "operationId": "run-sync-coregent-tiktok-influencer-finder",
        "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": {
          "hashtags": {
            "title": "Hashtags",
            "type": "array",
            "description": "Hashtag names or hashtag URLs to discover creators from. Accepts plain text (skincare), with # (#skincare), or full URLs (https://www.tiktok.com/tag/skincare).",
            "items": {
              "type": "string"
            },
            "default": []
          },
          "keywords": {
            "title": "Keywords",
            "type": "array",
            "description": "Keywords or niche phrases to search for creators. Examples: 'fitness coach', 'AI productivity', 'travel creator Australia'.",
            "items": {
              "type": "string"
            },
            "default": [
              "fitness coach"
            ]
          },
          "seedProfiles": {
            "title": "Seed Profiles",
            "type": "array",
            "description": "TikTok profile URLs or usernames to include directly. Accepts @username or full profile URLs.",
            "items": {
              "type": "string"
            },
            "default": []
          },
          "maxCreators": {
            "title": "Max Creators",
            "minimum": 1,
            "maximum": 5000,
            "type": "integer",
            "description": "Maximum number of creators to return in the final output.",
            "default": 500
          },
          "maxCreatorsPerSource": {
            "title": "Max Creators Per Source",
            "minimum": 0,
            "maximum": 5000,
            "type": "integer",
            "description": "Cap how many creators each individual hashtag/keyword/seed contributes, so one broad source can't dominate the run. 0 = no per-source cap (only the overall Max Creators applies).",
            "default": 0
          },
          "minFollowers": {
            "title": "Min Followers",
            "minimum": 0,
            "type": "integer",
            "description": "Minimum follower count. Set to 0 to disable.",
            "default": 0
          },
          "maxFollowers": {
            "title": "Max Followers",
            "minimum": 0,
            "type": "integer",
            "description": "Maximum follower count. Set to 0 to disable.",
            "default": 0
          },
          "verifiedOnly": {
            "title": "Verified Only",
            "type": "boolean",
            "description": "Only return verified creators.",
            "default": false
          },
          "minVideos": {
            "title": "Min Videos",
            "minimum": 0,
            "type": "integer",
            "description": "Minimum number of videos posted. Filters out low-activity creators. Set to 0 to disable.",
            "default": 0
          },
          "minTotalLikes": {
            "title": "Min Total Likes",
            "minimum": 0,
            "type": "integer",
            "description": "Minimum total likes (hearts) received across all videos. Set to 0 to disable.",
            "default": 0
          },
          "excludePrivateAccounts": {
            "title": "Exclude Private Accounts",
            "type": "boolean",
            "description": "Drop creators whose accounts are private.",
            "default": false
          },
          "countryCodes": {
            "title": "Country Filter",
            "type": "array",
            "description": "FILTERS results to creators from these countries (drops the rest). Different from Discovery Region: Region biases what TikTok returns for a hashtag, while this filters the creators actually found — across all discovery modes. Country is best-effort (inferred from bio) — see Country Match Mode. Leave empty to disable.",
            "items": {
              "type": "string",
              "enum": [
                "US",
                "UK",
                "CA",
                "AU",
                "IN",
                "IE",
                "DE",
                "FR",
                "ES",
                "IT",
                "PT",
                "NL",
                "PL",
                "SE",
                "TR",
                "RU",
                "BR",
                "MX",
                "AR",
                "CO",
                "JP",
                "KR",
                "ID",
                "PH",
                "TH",
                "VN",
                "MY",
                "SG",
                "AE",
                "SA",
                "PK",
                "NG",
                "ZA"
              ],
              "enumTitles": [
                "United States",
                "United Kingdom",
                "Canada",
                "Australia",
                "India",
                "Ireland",
                "Germany",
                "France",
                "Spain",
                "Italy",
                "Portugal",
                "Netherlands",
                "Poland",
                "Sweden",
                "Turkey",
                "Russia",
                "Brazil",
                "Mexico",
                "Argentina",
                "Colombia",
                "Japan",
                "South Korea",
                "Indonesia",
                "Philippines",
                "Thailand",
                "Vietnam",
                "Malaysia",
                "Singapore",
                "United Arab Emirates",
                "Saudi Arabia",
                "Pakistan",
                "Nigeria",
                "South Africa"
              ]
            },
            "default": []
          },
          "languages": {
            "title": "Languages",
            "type": "array",
            "description": "Only return creators whose inferred content language is one of these. Best-effort (inferred from bio). Leave empty to disable.",
            "items": {
              "type": "string",
              "enum": [
                "en",
                "es",
                "pt",
                "fr",
                "de",
                "id",
                "tr",
                "ru",
                "ar",
                "hi",
                "th",
                "ja",
                "ko",
                "zh"
              ],
              "enumTitles": [
                "English",
                "Spanish",
                "Portuguese",
                "French",
                "German",
                "Indonesian",
                "Turkish",
                "Russian",
                "Arabic",
                "Hindi",
                "Thai",
                "Japanese",
                "Korean",
                "Chinese"
              ]
            },
            "default": []
          },
          "countryMatchMode": {
            "title": "Country / Language Match Mode",
            "enum": [
              "best_effort",
              "strict"
            ],
            "type": "string",
            "description": "How to treat creators with unknown country/language when a Country Codes or Languages filter is set. 'Best effort' keeps unknowns (drops only confirmed mismatches); 'Strict' drops anything not confidently matched.",
            "default": "best_effort"
          },
          "sortBy": {
            "title": "Sort By",
            "enum": [
              "qualificationScore",
              "relevanceScore",
              "followers",
              "brandFitScore"
            ],
            "type": "string",
            "description": "Sort results by this field.",
            "default": "qualificationScore"
          },
          "region": {
            "title": "Discovery Region (hashtags only)",
            "enum": [
              "US",
              "GB",
              "FR",
              "JP",
              "VN",
              "SG"
            ],
            "type": "string",
            "description": "Biases WHICH creators TikTok returns for a hashtag search — it does not filter results. Applies to hashtag discovery only (not keyword or seed profiles). To keep only creators from specific countries, use the Country Filter instead. Defaults to US.",
            "default": "US"
          },
          "enrichBio": {
            "title": "Enrich Bio & Contact Fields",
            "type": "boolean",
            "description": "Fetch each creator's full profile to fill bio-derived fields — email, Instagram, YouTube, link-in-bio, language (and any missing follower stats). Recommended for outreach. Adds one extra API call per enriched creator, so runs are slower and each enriched creator is billed via the 'bio-enrichment' event. Turn OFF for faster, cheaper runs that return identity + follower stats only. NOTE: this option requires a paid Apify plan. On the Free plan it is skipped and you are not charged for it — creator discovery, filtering and scoring are unrestricted.",
            "default": true
          },
          "includePerformance": {
            "title": "Analyze Recent Performance",
            "type": "boolean",
            "description": "Fetch each creator's recent videos to compute median views/likes/comments, an estimated engagement rate, and activity/recency (latest video, active/dormant). Adds one extra API call per creator (slower) and bills each analyzed creator via the 'performance-sample' event. Off by default. NOTE: this option requires a paid Apify plan. On the Free plan it is skipped and you are not charged for it.",
            "default": false
          },
          "followBioLinks": {
            "title": "Follow Bio Links",
            "type": "boolean",
            "description": "For creators with an external link (Linktree/Beacons/personal site) but no email in their TikTok bio, fetch that page and try to extract an email. Adds one external page fetch per such creator; billed via the 'bio-link-follow' event only when an email is actually resolved. Off by default.",
            "default": false
          },
          "campaignBrief": {
            "title": "Campaign Brief",
            "type": "string",
            "description": "Describe your campaign / brand / ideal creator in plain text (e.g. 'affordable vegan skincare for Gen-Z, US-based, authentic reviewers'). Each creator gets a brand-fit score (0-100) with reasons, based on how well their bio, niche, audience size, and engagement match your brief. Leave empty to skip. No extra cost.",
            "default": ""
          }
        }
      },
      "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
                  }
                }
              }
            }
          }
        }
      }
    }
  }
}