Social Fetch

Apify

Run Social Fetch TikTok lookups as pay-per-event Apify Actors — profiles, videos, transcripts, and profile feeds without managing API keys in your input.

Use Social Fetch on Apify as four Store Actors under @social-fetch. Each Actor calls the same documented REST routes as the API reference, with Apify dataset export and pay-per-event (PPE) billing. You pay Apify per result — no Social Fetch API key in your input.

Platform key only

Actors use a publisher platform key (SOCIALFETCH_API_KEY secret). End users never paste an sfk_ key into Actor input.

Actors

ActorWhat it returnsApify Store
TikTok Profile ScraperFollowers, bio, avatar, metrics by handleOpen Actor
TikTok Transcript ScraperWebVTT transcript by video URL (+ optional AI fallback)Open Actor
TikTok Profile Videos ScraperPaginated videos from a profile (one dataset row per video)Open Actor
TikTok Video ScraperVideo metadata by URL (+ optional media download URLs)Open Actor

Every Actor maps 1:1 to a /v1/tiktok/** route documented in the API reference.

Pricing (PPE)

Platform API usage is included in the event price.

ActorEventPrice (USD)
Profiletiktok-profile$0.0025 per profile result
Transcript (captions)tiktok-transcript$0.0030 per URL
Transcript (AI fallback)tiktok-transcript-ai$0.0250 per URL
Profile videostiktok-profile-video$0.0025 per video row
Video metadatatiktok-video$0.0025 per URL
Video + media URLstiktok-video-media$0.0250 per URL

You are charged for completed lookups, including lookupStatus: not_found. The synthetic apify-default-dataset-item event is $0.00 on all Actors.

Quick start

  1. Create a free Apify account.
  2. Open an Actor from the table above.
  3. Use the pre-filled input (or paste handles/URLs) and click Start.
  4. Export the default dataset as JSON, CSV, or Excel.

JavaScript

import { ApifyClient } from "apify-client";

const client = new ApifyClient({ token: "YOUR_APIFY_TOKEN" });
const run = await client.actor("social-fetch/tiktok-profile-scraper").call({
  handles: ["n8n"],
});
const { items } = await client.dataset(run.defaultDatasetId).listItems();
console.log(items);

lookupStatus

HTTP 200 does not always mean data was found. Check lookupStatus on each dataset item — not_found and private still exit successfully and are billed. See Get a profile for the same envelope in raw API form.

Compare with the REST API

Apify ActorsREST API / SDK
AuthApify token onlyYour sfk_ API key
BillingApify PPE per resultSocial Fetch credits
Best forNo-code pipelines, Apify ecosystem, scheduled runsProduct backends, custom code

For Instagram, YouTube, X, and the full route surface, use the REST API, TypeScript SDK, or n8n node.

Support

On this page