TikTok Transcript

Get public TikTok captions with timed segments.

GET/api/v1/tiktok/transcript

Alpha: this endpoint is new and its response fields may still change.

Costs 1 credit per request; failed requests are refunded. Authentication, the search_metadata envelope and error codes are the same as for every endpoint (see the API reference). Try it in the playground.

Parameters

Request parameters

ParameterTypeDescription
urlstringTikTok video, photo/slideshow or vm/vt short-link URL.Up to 2,048 characters.
video_idstringTikTok post ID; supply this or url.
languagestringCaption language code, for example eng-US. Defaults to the first available track.

Response

A JSON object with search_metadata (request id, credits used and remaining) and the result groups the page returns. Groups and fields depend on the content of each page, so treat every field as optional.

Examples

cURL
curl "https://serpfast.com/api/v1/tiktok/transcript?url=https%3A%2F%2Fwww.tiktok.com%2F%40davidteathercodes%2Fvideo%2F7106686413101468970" \
  -H "Authorization: Bearer $SERPFAST_KEY"
Node.js 18+
const params = new URLSearchParams({
  "url": "https://www.tiktok.com/@davidteathercodes/video/7106686413101468970"
});
const res = await fetch(`https://serpfast.com/api/v1/tiktok/transcript?${params}`, {
  headers: { Authorization: `Bearer ${process.env.SERPFAST_KEY}` },
});
const data = await res.json();
console.log(data);
Python
import os, requests

params = {
  "url": "https://www.tiktok.com/@davidteathercodes/video/7106686413101468970"
}
res = requests.get(
    "https://serpfast.com/api/v1/tiktok/transcript",
    params=params,
    headers={"Authorization": f"Bearer {os.environ['SERPFAST_KEY']}"},
    timeout=120,
)
print(res.json())