Skip to content

Video Info

GET /v2/tiktok/video

Fetches detailed data for a single TikTok video by URL, including its metadata, engagement stats, and optionally its transcript/captions. Returns aweme_detail with desc (caption), statistics (play_count, digg_count/likes, comment_count, share_count, collect_count), video (download URLs including no-watermark), author info, and music info; also returns transcript in WEBVTT format if get_transcript=true.

Authentication

All requests require the x-api-key header. Get your key at scrapecreators.com.

Query Parameters

NameTypeRequiredDescriptionExample
urlstringyesTikTok video URLhttps://www.tiktok.com/@randomspamvideos25/video/7251387037834595630
get_transcriptbooleannoGet transcript of the video
regionstringnoRegion of the proxy. Sometimes you'll need to specify the region if you're not getting a response. Commonly for videos from the Phillipines, in which case you'd use 'PH'. Use 2 letter country codes like US, GB, FR, etcUS
trimbooleannoSet to true to get a trimmed response
download_mediabooleannoSet to true to download the video/images and get back permanent Supabase URLs. Costs 10 credits if media is found, 1 credit otherwise.

Example Request

curl

bash
curl 'https://api.scrapecreators.com/v2/tiktok/video?url=https://www.tiktok.com/@randomspamvideos25/video/7251387037834595630' \
  -H 'x-api-key: $SCRAPECREATORS_API_KEY'

Node / TypeScript

js
const params = new URLSearchParams({ url: 'https://www.tiktok.com/@randomspamvideos25/video/7251387037834595630' });
const res = await fetch(`https://api.scrapecreators.com/v2/tiktok/video?${params}`, {
  headers: { 'x-api-key': process.env.SCRAPECREATORS_API_KEY }
});
const data = await res.json();
console.log(data);

Python

python
import os, requests
r = requests.get(
    'https://api.scrapecreators.com/v2/tiktok/video',
    headers={'x-api-key': os.environ['SCRAPECREATORS_API_KEY']},
    params={'url': 'https://www.tiktok.com/@randomspamvideos25/video/7251387037834595630'},
)
r.raise_for_status()
print(r.json())

CLI

bash
scrapecreators tiktok video --help

Example Response

json
{
  "aweme_detail": {
    "aweme_id": "7517114944362499342",
    "desc": "You can say whatever you want about the WNBA is but it’s never boring",
    "desc_language": "en",
    "region": "US",
    "statistics": {
      "aweme_id": "7517114944362499342",
      "collect_count": 1633,
      "comment_count": 618,
      "digg_count": 62522,
      "download_count": 190,
      "forward_count": 0,
      "lose_comment_count": 0,
      "lose_count": 0,
      "play_count": 589745,
      "repost_count": 0,
      "share_count": 3585,
      "whatsapp_share_count": 8
    },
    "video": {
      "CoverTsp": 140.193500922967,
      "ai_dynamic_cover": {
        "uri": "tos-useast5-p-0068-tx/o0QcUfjIQHA8EQBSBQtAfYqKkCX9eKpMEOHl1H",
        "url_list": [
          "https://p16-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/o0QcUfjIQHA8EQBSBQtAfYqKkCX9eKpMEOHl1H~tplv-tiktokx-origin.image?dr=9229&refresh_token=1d205fbb&x-expires=1750374000&x-signature=3iaAsuyxWAl52xo73%2FzWWOnRFBo%3D&t=bacd0480&ps=4f5296ae&shp=d05b14bd&shcp=1d1a97fc&idc=no1a&biz_tag=tt_video&s=AWEME_DETAIL&sc=dynamic_cover"
        ],
        "url_prefix": null
      },
      "ai_dynamic_cover_bak": {
        "uri": "tos-useast5-p-0068-tx/o0QcUfjIQHA8EQBSBQtAfYqKkCX9eKpMEOHl1H",
        "url_list": [
          "https://p16-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/o0QcUfjIQHA8EQBSBQtAfYqKkCX9eKpMEOHl1H~tplv-tiktokx-origin.image?dr=9229&refresh_token=1d205fbb&x-expires=1750374000&x-signature=3iaAsuyxWAl52xo73%2FzWWOnRFBo%3D&t=bacd0480&ps=4f5296ae&shp=d05b14bd&shcp=1d1a97fc&idc=no1a&biz_tag=tt_video&s=AWEME_DETAIL&sc=dynamic_cover"
        ],
        "url_prefix": null
      },
      "animated_cover": {
        "uri": "tos-useast5-p-0068-tx/o0QcUfjIQHA8EQBSBQtAfYqKkCX9eKpMEOHl1H",
        "url_list": [
          "https://p16-sign.tiktokcdn-us.com/tos-useast5-p-0068-tx/o0QcUfjIQHA8EQBSBQtAfYqKkCX9eKpMEOHl1H~tplv-tiktokx-origin.image?dr=9229&refresh_token=1d205fbb&x-expires=1750374000&x-signature=3iaAsuyxWAl52xo73%2FzWWOnRFBo%3D&t=bacd0480&ps=4f5296ae&shp=d05b14bd&shcp=1d1a97fc&idc=no1a&biz_tag=tt_video&s=AWEME_DETAIL&sc=dynamic_cover"
        ],
        "url_prefix": null
      },
      "bit_rate": [
        {
          "HDR_bit": "",
          "HDR_type": "",
          "bit_rate": 694328,
          "dub_infos": null,
          "fid_profile_labels": "",
          "fps": 30,
          "gear_name": "adapt_lower_720_2",
          "is_bytevc1": 2,
          "play_addr": {
            "data_size": 15073438,
            "file_cs": "c:0-144831-d8fd",
            "file_hash": "bade4c49b717e85095bf288836f2cf41",
            "height": 1280,
            "uri": "v12044gd0000d192fcnog65ouluk5f60",
            "url_key": "v12044gd0000d192fcnog65ouluk5f60_bytevc2_720p_694328",
            "url_list": [
              "https://v45.tiktokcdn-eu.com/181058a705ab5b81ac71c7ec81b7d91c/68549d47/video/tos/maliva/tos-maliva-ve-0068c799-us/oQOIKCXpeQMxlHgA9YwA8fQqQkIfj3UHkctEaC/?a=1233&bti=OUBzOTg7QGo6OjZAL3AjLTAzYCMxNDNg&ch=0&cr
... (truncated)

Credits

Most ScrapeCreators endpoints consume 1 credit per successful response. Some heavier endpoints (transcripts, AI-driven enrichment, ad detail lookups) may cost more. Check GET /v1/credit-balance for your remaining balance.

Errors

StatusMeaningAction
200Success.Use the JSON payload.
400Invalid or missing parameter.Verify required parameters and value format.
401Missing or invalid x-api-key.Pass a valid API key in the header.
402Out of credits.Top up at scrapecreators.com or wait for plan reset.
404Resource not found or private.Confirm the handle, URL, or id and that the resource is public.
429Rate limited.Backoff and retry with exponential delay.
500Server error or upstream platform failure.Retry with backoff; report persistent errors to support.