zapi.
APIsPricingDocsMCP
APIsPricingDocsMCPSign in
zapi.
APIsPricingDocsMCP
APIsPricingDocsMCPSign in
On this page
  • Playground
  • Code examples
  • Full reference
  • Related APIs
Social Media/TikTok Scraper
Logo TikTok Scraper

TikTok Scraper

Dapatkan data profile, postingan, comment, dan lainnya dengan lengkap dan konsisten.

BULK
Endpoints
22
Requests
41.2k
Updated
3 months ago
For LLMs
llms.txt
Endpoint health10 hours ago
  • profilefailed the last check
  • postspassing, 1.6s
  • postpassing, 1.7s
  • commentspassing, 0.8s
  • followingpassing, 5.9s
+ 17 more endpointsShow less
  • hashtagpassing, 1.2s
  • hashtag-postspassing, 3.0s
  • searchpassing, 3.2s
  • search-userspassing, 1.4s
  • musicpassing, 2.5s
  • music-postspassing, 3.5s
  • trendingpassing, 4.3s
  • likedfailed the last check
  • comment-repliespassing, 0.6s
  • repostspassing, 2.4s
  • storypassing, 1.0s
  • search-photosslow, 3.5s
  • playlistspassing, 1.2s
  • playlist-postspassing, 1.5s
  • top-adspassing, 0.1s
  • ad-detailpassing, 0.8s
  • top-ads-filterspassing, 0.6s
20/22 passingdaily 01:00 WIB

Playground

22 endpoints
GET/v1/social-media:tiktok-scraper/profile/:username10m cache1 paramchecking key…
Parameters
usernamestringrequired

Username (with/without @) or full TikTok URL

·
Response
EXAMPLE
{
  "ftc": false,
  "url": "https://www.tiktok.com/@mrbeast",
  "secUid": "MS4wLjABAAAABKjQkOz_IIzXXzEAl_9LGsWhvK-gBnlczwRPXK8EmxAp6K3X0qiaP5_OEqmm0XwG",
  "secret": false,
  "userId": "6614519312189947909",
  "nickname": "MrBeast",
  "username": "mrbeast",
  "verified": true,
  "diggCount": 0,
  "signature": "Checkout My New Book!👇",
  "createTime": 1540063576,
  "heartCount": 1318098041,
  "shareTitle": "MrBeast on TikTok",
  "videoCount": 462,
  "avatarThumb": "https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/1e2348ca19d394037718e3b1d3fc2958~tplv-tiktokx-cropcenter:100:100.webp?dr=9640&refresh_token=0e0885f5&x-expires=1784…",
  "isADVirtual": false,
  "avatarLarger": "https://p19-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/1e2348ca19d394037718e3b1d3fc2958~tplv-tiktokx-cropcenter:1080:1080.webp?dr=9640&refresh_token=94682d9d&x-expires=17…",
  "avatarMedium": "https://p19-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/1e2348ca19d394037718e3b1d3fc2958~tplv-tiktokx-cropcenter:720:720.webp?dr=9640&refresh_token=d95050c9&x-expires=1784…",
  "isUnderAge18": false,
  "openFavorite": false,
  "followerCount": 129273832,
  "followingCount": 353,
  "privateAccount": false,
  "shareDescription": "Checkout My New Book!👇"
}

Code examples

Get User Profile
zpi-sdkrecommended
// npm i zpi-sdk
import { ZpiClient } from "zpi-sdk";

const client = new ZpiClient({ apiKey: "zpi_xxxxxxxxxxxxxxxxxxxxxxxx" });

const data = await client.run("social-media:tiktok-scraper", "profile", {
  "username": "tiktok"
});
console.log(data);
Full SDK reference →
request.sh
curl -X GET "https://api.zpi.web.id/v1/social-media:tiktok-scraper/profile/tiktok" \
  -H "x-api-key: zpi_xxxxxxxxxxxxxxxxxxxxxxxx"

Full reference

22 endpoints · plain text
GETGet User Profile/v1/social-media:tiktok-scraper/profile/:usernameDapatkan data profile, postingan, comment, dan lainnya dengan lengkap dan konsisten.

Parameters

usernamestringrequiredin path
Username (with/without @) or full TikTok URL

Request

curl -X GET "https://api.zpi.web.id/v1/social-media:tiktok-scraper/profile/tiktok" \
  -H "x-api-key: zpi_xxxxxxxxxxxxxxxxxxxxxxxx"

Example response

{
  "ftc": false,
  "url": "https://www.tiktok.com/@mrbeast",
  "secUid": "MS4wLjABAAAABKjQkOz_IIzXXzEAl_9LGsWhvK-gBnlczwRPXK8EmxAp6K3X0qiaP5_OEqmm0XwG",
  "secret": false,
  "userId": "6614519312189947909",
  "nickname": "MrBeast",
  "username": "mrbeast",
  "verified": true,
  "diggCount": 0,
  "signature": "Checkout My New Book!👇",
  "createTime": 1540063576,
  "heartCount": 1318098041,
  "shareTitle": "MrBeast on TikTok",
  "videoCount": 462,
  "avatarThumb": "https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/1e2348ca19d394037718e3b1d3fc2958~tplv-tiktokx-cropcenter:100:100.webp?dr=9640&refresh_token=0e0885f5&x-expires=1784…",
  "isADVirtual": false,
  "avatarLarger": "https://p19-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/1e2348ca19d394037718e3b1d3fc2958~tplv-tiktokx-cropcenter:1080:1080.webp?dr=9640&refresh_token=94682d9d&x-expires=17…",
  "avatarMedium": "https://p19-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/1e2348ca19d394037718e3b1d3fc2958~tplv-tiktokx-cropcenter:720:720.webp?dr=9640&refresh_token=d95050c9&x-expires=1784…",
  "isUnderAge18": false,
  "openFavorite": false,
  "followerCount": 129273832,
  "followingCount": 353,
  "privateAccount": false,
  "shareDescription": "Checkout My New Book!👇"
}
GETGet User Posts/v1/social-media:tiktok-scraper/posts/:usernameDapatkan data profile, postingan, comment, dan lainnya dengan lengkap dan konsisten.

Parameters

usernamestringrequiredin path
Username (with/without @) atau full TikTok URL
pagenumberoptional
Nomor halaman. Default 1
countnumberoptional
Jumlah post per page. Default 30, max 35

Request

curl -X GET "https://api.zpi.web.id/v1/social-media:tiktok-scraper/posts/tiktok?page=1&count=30" \
  -H "x-api-key: zpi_xxxxxxxxxxxxxxxxxxxxxxxx"

Example response

{
  "page": 1,
  "count": 30,
  "videos": [
    {
      "url": "https://www.tiktok.com/@paulmccartney/video/7642802052485106974",
      "isAd": false,
      "play": "https://v19.tiktokcdn-eu.com/bf00efeba74f2a9f98b05624f3524bc5/6a1314d3/video/tos/maliva/tos-maliva-ve-0068c799-us/osjBQAPZKVKFEEEqkEFfEBAPDs1Q9PIfRQDqEg/?a=1233&bti=M0BzMzU8OGYpNzo…",
      "size": 672009,
      "cover": "https://p16-common-sign.tiktokcdn-eu.com/tos-useast8-p-0068-tx2/okRDwthQCFAABIudAiPBasACEiAAAiAE6lCC1~tplv-tiktokx-cropcenter:300:400.jpeg?dr=10399&refresh_token=1d604679&x-expires…",
      "isTop": false,
      "title": "Hi there! I’m going LIVE on TikTok to answer your questions 🐦‍⬛ See you there! 🗓️ May 27th 3:30PM BST / 10:30am EST / 7:30am PST ",
      "author": {
        "id": "6726967538045535237",
        "avatar": "https://p16-common-sign.tiktokcdn-eu.com/tos-maliva-avt-0068/c4168685b31130f0fc5606937e9b3abf~tplv-tiktokx-cropcenter:300:300.jpeg?dr=10397&refresh_token=1a730207&x-expires=1779634…",
        "nickname": "Paul McCartney",
        "username": "paulmccartney"
      },
      "hdSize": 0,
      "images": [],
      "region": "GB",
      "wmSize": 0,
      "wmplay": "https://v19.tiktokcdn-eu.com/bf00efeba74f2a9f98b05624f3524bc5/6a1314d3/video/tos/maliva/tos-maliva-ve-0068c799-us/osjBQAPZKVKFEEEqkEFfEBAPDs1Q9PIfRQDqEg/?a=1233&bti=M0BzMzU8OGYpNzo…",
      "musicId": "7642802074735889182",
      "videoId": "7642802052485106974",
      "duration": 12,
      "diggCount": 72281,
      "playCount": 698882,
      "createTime": 1779478538,
      "musicTitle": "original sound - paulmccartney",
      "shareCount": 9891,
      "isSlideshow": false,
      "musicAuthor": "Paul McCartney",
      "originCover": "https://p16-common-sign.tiktokcdn-eu.com/tos-useast8-p-0068-tx2/oggfhU8IhCVEeAjMrQgAoWQI7YMAMICie88BBq~tplv-tiktokx-360p.webp?dr=10375&refresh_token=46f5ad13&x-expires=1779634800&x…",
      "collectCount": 11289,
      "commentCount": 1713,
      "musicPlayUrl": "https://sf19.tiktokcdn-us.com/obj/ies-music-tx2/7642802131405802270.mp3",
      "createTimeIso": "2026-05-22T19:35:38.000Z",
      "downloadCount": 21,
      "musicDuration": 12,
      "musicOriginal": true
    }
  ],
  "hasMore": true,
  "nextPage": 2,
  "username": "tiktok"
}
GETGet Detail Post/v1/social-media:tiktok-scraper/post/:idDapatkan data profile, postingan, comment, dan lainnya dengan lengkap dan konsisten.

Parameters

idstringoptionalin path
Video ID (numeric) atau full TikTok URL. Auto-inject dari path-param via template :id.
urlstringoptional
Full TikTok video URL — alias untuk id (dipakai bulk async scraping)
hdbooleanoptional
Request HD play URL kalau available. Default true

Request

curl -X GET "https://api.zpi.web.id/v1/social-media:tiktok-scraper/post/7554652158981983544?url=&hd=" \
  -H "x-api-key: zpi_xxxxxxxxxxxxxxxxxxxxxxxx"

Example response

{
  "url": "https://www.tiktok.com/@mrbeast/video/7659558620098465055",
  "isAd": false,
  "play": "https://v16m.tiktokcdn-us.com/7e8db613ae0e5955a19a51b0c4da6daa/6a5f7f52/video/tos/useast8/tos-useast8-ve-0068c004-tx2/oMGgqFDzjIIeIInORYEQQeCAcgQACjHLmUfsFy/?a=1233&bti=OUBzOTg7QGo…",
  "size": 3995654,
  "cover": "https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/oEqAV2YyHCgIDAFRyEvQ8AfAATE1ACfC3gcDEO~tplv-tiktokx-dmt-logoccm:300:400:tos-useast8-i-0068-tx2/o0BEgADaFAEGTOMRARTHA…",
  "music": {
    "id": "7659558591884118814",
    "title": "original sound - mrbeast",
    "author": "MrBeast",
    "playUrl": "https://v19-ies-music.tiktokcdn-us.com/25b1db0166b820dd789512bb4fbf4a31/6a686585/video/tos/useast8/tos-useast8-v-27dcd7-tx2/oQIVMEIcTMwmEMGUJL5FefchiAroXIsAqeHXCZ/?a=583965&bti=OUB…",
    "duration": 19,
    "original": true
  },
  "title": "@riley check your DMs :) @riley ",
  "author": {
    "id": "6614519312189947909",
    "avatar": "https://p19-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/1e2348ca19d394037718e3b1d3fc2958~tplv-tiktokx-cropcenter-q:300:300:q70.jpeg?dr=8834&idc=useast5&ps=87d6e48a&refresh…",
    "nickname": "MrBeast",
    "username": "mrbeast"
  },
  "hdSize": 3639675,
  "hdplay": "https://v16m-default.tiktokcdn-us.com/a3eb63870a349f8e830f1c00f48b3ac9/6a5f7f52/video/tos/useast8/tos-useast8-pve-0068-tx2/oMIeQqsgODAVOQGReGFjIjUgJIQAFC4mILfkME/?a=0&bti=OUBzOTg7Q…",
  "images": [],
  "region": "US",
  "wmSize": 3642568,
  "wmplay": "https://v16m.tiktokcdn-us.com/417dd5b464029631619e71a4d86fc257/6a5f7f52/video/tos/useast8/tos-useast8-pve-0068-tx2/o82IeeUIMQFDUCLOAOqBGfEJFIAjVgmjTsQgGQ/?a=1233&bti=OUBzOTg7QGo6Oj…",
  "anchors": [],
  "videoId": "7659558620098465055",
  "duration": 19,
  "diggCount": 522498,
  "playCount": 7392809,
  "createTime": 1783379976,
  "shareCount": 23433,
  "isSlideshow": false,
  "originCover": "https://p19-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/ooOkMAhua2CIwoVAY4FARtyuEjw3ivBIBBxiI~tplv-tiktokx-shrink-aq:360:360:q75.webp?dr=11731&refresh_token=e01de40c&x-expi…",
  "collectCount": 19752,
  "commentCount": 22379,
  "createTimeIso": "2026-07-06T23:19:36.000Z",
  "downloadCount": 597
}
GETGet Post Comments/v1/social-media:tiktok-scraper/comments/:idKomentar sebuah video TikTok beserta penulisnya. Catatan: statistik penulis komentar (followerCount, videoCount, dan sejenisnya) selalu 0 — sumber datanya tidak mengirim angka itu di daftar komentar. Pakai endpoint profile kalau butuh angka aslinya.

Parameters

idstringoptionalin path
Video ID (numeric) atau full TikTok URL
urlstringoptional
Full TikTok video URL — alias untuk id (dipakai bulk async scraping)
pagenumberoptional
Nomor halaman. Default 1
countnumberoptional
Jumlah komentar per page. Default 20, max 50

Request

curl -X GET "https://api.zpi.web.id/v1/social-media:tiktok-scraper/comments/7554652158981983544?url=&page=&count=" \
  -H "x-api-key: zpi_xxxxxxxxxxxxxxxxxxxxxxxx"

Example response

{
  "page": 1,
  "count": 7,
  "total": 22379,
  "hasMore": true,
  "videoId": "7659558620098465055",
  "comments": [
    {
      "text": "I LOVE YOU OMGGGG THANK YOU",
      "author": {
        "id": "7082730284035130410",
        "avatar": "https://p16-common-sign.tiktokcdn-us.com/tos-useast8-avt-0068-tx2/64c15499b4abf1ae4291fa5141246716~tplv-tiktokx-cropcenter-q:100:100:q70.jpeg?dr=8835&idc=useast5&ps=87d6e48a&refres…",
        "region": "US",
        "nickname": "riley",
        "username": "rileylovesguineapigz",
        "followerCount": 0
      },
      "images": [],
      "videoId": "7659558620098465055",
      "commentId": "7659558849795572511",
      "diggCount": 117418,
      "createTime": 1783380036,
      "replyCount": 85,
      "createTimeIso": "2026-07-06T23:20:36.000Z"
    }
  ],
  "nextPage": 2
}
GETGet User Following/v1/social-media:tiktok-scraper/following/:usernameDapatkan data profile, postingan, comment, dan lainnya dengan lengkap dan konsisten.

Parameters

usernamestringrequiredin path
Username (with/without @) atau full TikTok URL
pagenumberoptional
Nomor halaman. Default 1
countnumberoptional
Jumlah user per page. Default 30, max 50

Request

curl -X GET "https://api.zpi.web.id/v1/social-media:tiktok-scraper/following/youtube?page=&count=" \
  -H "x-api-key: zpi_xxxxxxxxxxxxxxxxxxxxxxxx"

Example response

{
  "page": 1,
  "count": 1,
  "total": 2,
  "userId": "107955",
  "hasMore": false,
  "nextPage": null,
  "username": "tiktok",
  "following": [
    {
      "id": "6551237489917432832",
      "avatar": "https://p19-common-sign.tiktokcdn.com/tos-maliva-avt-0068/7310199914919673862~tplv-tiktokx-cropcenter-q:300:300:q70.webp?dr=10793&idc=my2&ps=87d6e48a&refresh_token=b3070e5f&s=COMMON_RELATION_LIST&sc=avatar&shcp=65db1d19&shp=30310797&t=223449c4&x-expires=1784707200&x-signature=WacTmu6lPZmh%2FfJojSiwAx3lRJk%3D",
      "region": "PH",
      "secUid": "MS4wLjABAAAAXqqA-cLDC0hfQPIrS5APYNsg04zkl-socWCkqkI3UIOaEe6_Qnokg0GcWpLnMNQP",
      "nickname": "tiktok creators",
      "username": "tiktokcreators",
      "verified": true,
      "diggCount": 1857,
      "signature": "The official account for TikTok Creators who inspire creativity and bring joy ✨\n\n⬇️ Creator Growth Challenge 💰⬇️",
      "heartCount": 33288042,
      "videoCount": 1088,
      "followerCount": 8499482,
      "followingCount": 568,
      "privateAccount": false
    }
  ]
}
GETGet Hashtag Info/v1/social-media:tiktok-scraper/hashtag/:nameStatistik hashtag TikTok: jumlah video dan total view.

Parameters

namestringrequiredin path
Hashtag name (with or without #) or a full TikTok tag URL

Request

curl -X GET "https://api.zpi.web.id/v1/social-media:tiktok-scraper/hashtag/fyp" \
  -H "x-api-key: zpi_xxxxxxxxxxxxxxxxxxxxxxxx"

Example response

{
  "url": "https://www.tiktok.com/tag/belajarditiktok",
  "hashtag": "belajarditiktok",
  "hashtagId": "1591477531538433",
  "userCount": 137054,
  "viewCount": 3361168284
}
GETGet Hashtag Posts/v1/social-media:tiktok-scraper/hashtag-posts/:nameVideo yang diposting di bawah sebuah hashtag TikTok.

Parameters

namestringrequiredin path
Hashtag name (with or without #) or a full TikTok tag URL
pagenumberoptional
Page number. Default 1
countnumberoptional
Videos per page. Default 20, max 20

Request

curl -X GET "https://api.zpi.web.id/v1/social-media:tiktok-scraper/hashtag-posts/belajarditiktok?page=1&count=20" \
  -H "x-api-key: zpi_xxxxxxxxxxxxxxxxxxxxxxxx"

Example response

{
  "page": 1,
  "count": 18,
  "videos": [
    {
      "url": "https://www.tiktok.com/@janeelisabet8/video/7670379271004654866",
      "isAd": false,
      "play": "https://v45.tiktokcdn-us.com/08582cdbdb93b94fd0cdf55e75f02dc5/6a74c2ad/video/tos/alisg/tos-alisg-pve-0037c001/o8TyCNwEi9BAOuOiVvAc91qR1BGAICQ1IFWkfG/?a=1233&bti=NXYpNDs8QGo6OjZAOm0…",
      "size": 1932747,
      "cover": "https://p19-common-sign.tiktokcdn-us.com/tos-alisg-p-0037/oYEjeDcDqBUqIANFEwEqFAQMEBalfcVg4RQrD7~tplv-tiktokx-dmt-logom:tos-alisg-i-0068/oEePBOfDcIsUR0qE7UPgDcrqlCqAMElAFAAXQg.imag…",
      "isTop": false,
      "title": "Kalimat singkat bahasa inggris #otodidakbahasainggris #belajarditiktok #bukubahasainggrispemula #bukubahasainggrispemula #lancarbahasainggris ",
      "author": {
        "id": "6865098292344685569",
        "avatar": "https://p16-common-sign.tiktokcdn-us.com/tos-alisg-avt-0068/7d69222d003afbafbdd7cabad68a7afd~tplv-tiktokx-cropcenter:300:300.jpeg?dr=9638&refresh_token=239318e3&x-expires=178610040…",
        "nickname": "Jane Elisabet",
        "username": "janeelisabet8"
      },
      "hdSize": 0,
      "images": [],
      "region": "ID",
      "wmSize": 4283242,
      "wmplay": "https://v45.tiktokcdn-us.com/86ca29563a597c3b0669b235ab65f6d2/6a74c2ad/video/tos/alisg/tos-alisg-pve-0037c001/ocAFACa1ui9QEIRERCyfAiqOZBnXGVI1kUGNcw/?a=1233&bti=NXYpNDs8QGo6OjZAOm0…",
      "musicId": "7670379319407823617",
      "videoId": "7670379271004654866",
      "duration": 35,
      "diggCount": 1297,
      "playCount": 13327,
      "createTime": 1785899352,
      "musicTitle": "original sound - janeelisabet8",
      "shareCount": 60,
      "isSlideshow": false,
      "musicAuthor": "Jane Elisabet",
      "originCover": "https://p19-common-sign.tiktokcdn-us.com/tos-alisg-p-0037/oUrwckq9AGRCV1u1ItCAAGNuViIpIBiyRlOOfB~tplv-tiktokx-shrink-aq:360:360:q75.webp?dr=11731&refresh_token=1ad088f6&x-expires=1…",
      "collectCount": 433,
      "commentCount": 14,
      "musicPlayUrl": "https://sf16.tiktokcdn-us.com/obj/tiktok-obj/7670379324515584788.mp3",
      "createTimeIso": "2026-08-05T03:09:12.000Z",
      "downloadCount": 70,
      "musicDuration": 35,
      "musicOriginal": true
    }
  ],
  "hasMore": true,
  "hashtag": "belajarditiktok",
  "nextPage": 2,
  "hashtagId": "1591477531538433"
}
GETSearch Videos/v1/social-media:tiktok-scraper/searchCari video TikTok berdasarkan kata kunci.

Parameters

keywordsstringrequired
Search keywords for videos
pagenumberoptional
Page number. Default 1
countnumberoptional
Videos per page. Default 20, max 30

Request

curl -X GET "https://api.zpi.web.id/v1/social-media:tiktok-scraper/search?keywords=belajar+bahasa+inggris&page=1&count=20" \
  -H "x-api-key: zpi_xxxxxxxxxxxxxxxxxxxxxxxx"

Example response

{
  "page": 1,
  "count": 19,
  "query": "belajar bahasa inggris",
  "videos": [
    {
      "url": "https://www.tiktok.com/@skilldomain0/video/7670173058879081744",
      "isAd": false,
      "play": "https://v45.tiktokcdn-us.com/ff8b9828136ae12d8ea3f3a636d615b8/6a74c42b/video/tos/alisg/tos-alisg-pve-0037/oktE3fexeA1rDVLEQPqEAlCo7D4FIcQFUs69pR/?a=1233&bti=NEBzNTY6QGo6OjZALnAjNDQ…",
      "size": 12210373,
      "cover": "https://p19-common-sign.tiktokcdn-us.com/tos-alisg-p-0037/osAdDXfDSIuSr5UE82GUD4UejFxAeE2AFAAIQA~tplv-tiktokx-cropcenter:500:800.jpeg?biz_tag=musically_video.video_cover&dr=9638&id…",
      "isTop": false,
      "title": "Trik membaca kalimat dalam bahasa inggris Tetap Semangat dan konsisten belajarnya #belajar #english #pemula #belajarbahasainggris #grammartips #tenses #parts #of #speech #daily #id…",
      "author": {
        "id": "6997955909641798683",
        "avatar": "https://p19-common-sign.tiktokcdn-us.com/tos-alisg-avt-0068/5ede9b379012768dfbaac5d348ac0245~tplv-tiktokx-cropcenter-q:300:300:q70.jpeg?dr=8834&idc=useast5&ps=87d6e48a&refresh_toke…",
        "nickname": "Skill Domain",
        "username": "skilldomain0"
      },
      "hdSize": 0,
      "images": [],
      "region": "SG",
      "wmSize": 15668196,
      "wmplay": "https://v45.tiktokcdn-us.com/11830c25f893197288146aee5feac32b/6a74c42b/video/tos/alisg/tos-alisg-pve-0037/o0fl8sxReUFmIAEx7PeF9EYDCRO34Erx6qoAQD/?a=1233&bti=NEBzNTY6QGo6OjZALnAjNDQ…",
      "musicId": "7670174087350192916",
      "videoId": "7670173058879081744",
      "duration": 414,
      "diggCount": 14619,
      "playCount": 117435,
      "createTime": 1785851560,
      "musicTitle": "original sound - skilldomain0",
      "shareCount": 1007,
      "isSlideshow": false,
      "musicAuthor": "Skill Domain",
      "originCover": "https://p19-common-sign.tiktokcdn-us.com/tos-alisg-p-0037/osurq4EbP190PjoVEF6l3bAQDfAeFDCZ9CzUeQ~tplv-tiktokx-shrink-aq:360:360:q75.webp?dr=11731&refresh_token=1fa35a20&x-expires=1…",
      "collectCount": 6948,
      "commentCount": 51,
      "musicPlayUrl": "https://v16m.tiktokcdn-us.com/db69fda9a0ca7a9a6ff1f2bff3548136/6a7dabe9/video/tos/alisg/tos-alisg-v-27dcd7/oUj9WHAf6IAPTAeUEMAhI3Ije1oDQCDgDGHT4L/?a=1233&bti=NEBzNTY6QGo6OjZALnAjND…",
      "createTimeIso": "2026-08-04T13:52:40.000Z",
      "downloadCount": 788,
      "musicDuration": 414,
      "musicOriginal": true
    }
  ],
  "hasMore": true,
  "nextPage": 2
}
GETSearch Users/v1/social-media:tiktok-scraper/search-usersCari akun TikTok berdasarkan kata kunci.

Parameters

keywordsstringrequired
Search keywords for accounts
pagenumberoptional
Page number. Default 1
countnumberoptional
Accounts per page. Default 20, max 30

Request

curl -X GET "https://api.zpi.web.id/v1/social-media:tiktok-scraper/search-users?keywords=jokowi&page=1&count=20" \
  -H "x-api-key: zpi_xxxxxxxxxxxxxxxxxxxxxxxx"

Example response

{
  "page": 1,
  "count": 20,
  "query": "jokowi",
  "users": [
    {
      "id": "7402175638003581957",
      "url": "https://www.tiktok.com/@jokowi",
      "region": "ID",
      "secUid": "MS4wLjABAAAAHaON31BaJjora7UOm7yefXjZC13shzuRGnOmI61ujIGX5-f3UVR1F0lWFFSWBAnZ",
      "nickname": "Joko Widodo",
      "username": "jokowi",
      "verified": true,
      "heartCount": 6528162,
      "videoCount": 147,
      "followerCount": 812928,
      "followingCount": 0,
      "privateAccount": false
    },
    {
      "id": "7178748628717536282",
      "url": "https://www.tiktok.com/@jokowipresidenterbaik",
      "region": "MY",
      "secUid": "MS4wLjABAAAAzxD3llJAZbuyNCTCJiIqPasR8ng2VnIbhKR7rvG1kYDuuSBQbrOHBhz6r_lJpyqH",
      "nickname": "LOVE PRESIDEN JOKOWI 🇲🇨",
      "username": "jokowipresidenterbaik",
      "verified": false,
      "signature": "INDONESIA MAJU 🇲🇨\nPulih lebih cepat bangkit lebih kuat 🔥",
      "heartCount": 10150634,
      "videoCount": 714,
      "followerCount": 899925,
      "followingCount": 1,
      "privateAccount": false
    }
  ],
  "hasMore": true,
  "nextPage": 2
}
GETGet Sound Info/v1/social-media:tiktok-scraper/music/:idDetail satu sound/musik TikTok beserta jumlah video yang memakainya.

Parameters

idstringrequiredin path
Music/sound ID or a full TikTok music URL

Request

curl -X GET "https://api.zpi.web.id/v1/social-media:tiktok-scraper/music/7016547803243022337" \
  -H "x-api-key: zpi_xxxxxxxxxxxxxxxxxxxxxxxx"

Example response

{
  "play": "https://sf58-ies-music-sg.tiktokcdn.com/obj/tos-alisg-ve-2774/oULlPria4KO2Gj7dInUfNmfFAvxeYwfL1gqAQG",
  "album": "Face Off - Dwayne Johnson",
  "cover": "https://p58-sg.tiktokcdn.com/aweme/200x200/tos-alisg-v-2774/o8ea8AmF1GG4KxwI1fLl7IALGeAvIAFjfsAAhK.jpeg",
  "title": "Face Off - Dwayne Johnson",
  "author": "Tech N9ne & Joey Cool & King Iso & Dwayne Johnson",
  "musicId": "7016547803243022337",
  "duration": 60,
  "original": false,
  "videoCount": 735838
}
GETGet Sound Posts/v1/social-media:tiktok-scraper/music-posts/:musicIdVideo yang memakai sebuah sound TikTok.

Parameters

musicIdstringrequiredin path
Music/sound ID or a full TikTok music URL
pagenumberoptional
Page number. Default 1. Upstream fixes the page size at 12 videos

Request

curl -X GET "https://api.zpi.web.id/v1/social-media:tiktok-scraper/music-posts/7016547803243022337?page=1" \
  -H "x-api-key: zpi_xxxxxxxxxxxxxxxxxxxxxxxx"

Example response

{
  "page": 1,
  "count": 12,
  "videos": [
    {
      "url": "https://www.tiktok.com/@therock/video/7022393040451030278",
      "isAd": false,
      "play": "https://v19.tiktokcdn.com/0ae957417297ae361c832133efef8d5b/6a75bff7/video/tos/alisg/tos-alisg-ve-37c799-sg/8ab57f274ce74a2abfab36b443f320fd/?a=1233&bti=O3YpOjQ0Zik3OjlmOm0uMjM6ZDQ0…",
      "size": 12299811,
      "cover": "https://p16-common-sign.tiktokcdn.com/tos-maliva-p-0068/35765ea83a8c40b895db7b88dad96cad_1635028296~tplv-tiktokx-cropcenter-q:300:400:q70.webp?dr=14782&refresh_token=b321b3a4&x-exp…",
      "isTop": false,
      "title": "#FACEOFFCHALLENGE IS ON🔥🔥🔥Show us what someone says, does or encourages that sends you into OVERdrive👊🏾💪🏾 #faceoff #strangemusicinc",
      "author": {
        "id": "6745191554350760966",
        "avatar": "https://p16-common-sign.tiktokcdn.com/tos-maliva-avt-0068/7310325298631802885~tplv-tiktokx-cropcenter-q:300:300:q70.jpeg?dr=10793&refresh_token=d49dfd27&x-expires=1786100400&x-sign…",
        "nickname": "The Rock",
        "username": "therock"
      },
      "hdSize": 0,
      "images": [],
      "region": "US",
      "wmSize": 12361385,
      "wmplay": "https://v19.tiktokcdn.com/73d3a2b515b4d51d398bd01aab020dc2/6a75bff7/video/tos/alisg/tos-alisg-ve-37c799-sg/98c9878e94444351bfa7bc91d583e63a/?a=1233&bti=O3YpOjQ0Zik3OjlmOm0uMjM6ZDQ0…",
      "musicId": "https://sf16-ies-music-sg.tiktokcdn.com/obj/tos-alisg-ve-2774/oULlPria4KO2Gj7dInUfNmfFAvxeYwfL1gqAQG",
      "videoId": "7022393040451030278",
      "duration": 66,
      "diggCount": 17058114,
      "playCount": 107657922,
      "createTime": 1635028292,
      "shareCount": 275346,
      "isSlideshow": false,
      "originCover": "https://p16-common-sign.tiktokcdn.com/tos-maliva-p-0068/c8d8f9f0a81641a9b62d646881651294_1635028293~tplv-tiktokx-shrink-aq:360:360:q75.webp?dr=17995&refresh_token=e4e6e2be&x-expire…",
      "collectCount": 584235,
      "commentCount": 210408,
      "createTimeIso": "2021-10-23T22:31:32.000Z",
      "downloadCount": 246363,
      "musicDuration": 0,
      "musicOriginal": false
    }
  ],
  "hasMore": true,
  "musicId": "7016547803243022337",
  "nextPage": 2
}
GETGet Trending Feed/v1/social-media:tiktok-scraper/trendingFeed trending TikTok untuk satu negara.

Parameters

regionstringrequired
Two-letter country code (ID, US, JP, GB, BR, VN). Required. This is the trending feed served TO that country, not videos originating from it
countnumberoptional
Number of videos. Default 20, max 20

Request

curl -X GET "https://api.zpi.web.id/v1/social-media:tiktok-scraper/trending?region=ID&count=20" \
  -H "x-api-key: zpi_xxxxxxxxxxxxxxxxxxxxxxxx"

Example response

{
  "count": 21,
  "region": "ID",
  "videos": [
    {
      "url": "https://www.tiktok.com/@gilangfbrnsyh7/video/7670859411795070215",
      "isAd": false,
      "play": "https://v19.tiktokcdn.com/d48122cb820aae85e4a71e6204578f63/6a75bfd8/video/tos/alisg/tos-alisg-pve-0037c001/okYVP1wEAiHi1dR7EXi8nLaZiCFi07AKBIEQB/?a=1233&bti=OHYpOTY0Zik3OjlmOm01MzE…",
      "size": 2291267,
      "cover": "https://p16-common-sign.tiktokcdn.com/tos-alisg-p-0037/ooqowh3EY2RJGQeQLBFqAvbDgyU4JBTAfFdEF3~tplv-tiktokx-shrink_ep:640:640:q78.webp?dr=1346&refresh_token=9c7622f2&x-expires=17861…",
      "isTop": false,
      "title": "hanya ada dalam live join live sekarang juga!!",
      "author": {
        "id": "7151332828915123205",
        "avatar": "https://p16-common-sign.tiktokcdn.com/tos-maliva-avt-0068/d01c8161d8d74a6a56ece91b5909bf41~tplv-tiktokx-cropcenter-q:300:300:q70.webp?dr=10793&refresh_token=d3709233&x-expires=1786…",
        "nickname": "gilwear.id",
        "username": "gilangfbrnsyh7"
      },
      "hdSize": 0,
      "images": [],
      "region": "ID",
      "wmSize": 4416663,
      "wmplay": "https://v19.tiktokcdn.com/bf283d52380a867f7b804a8725b7bf11/6a75bfd8/video/tos/alisg/tos-alisg-pve-0037c001/o0wEYlViaPbENB7iE8dh8AE107nQIARxBXiZn/?a=1233&bti=OHYpOTY0Zik3OjlmOm01MzE…",
      "musicId": "7670859449054333703",
      "videoId": "7670859411795070215",
      "duration": 27,
      "diggCount": 13,
      "playCount": 3943,
      "createTime": 1786011141,
      "musicTitle": "original sound - gilwear.id",
      "shareCount": 0,
      "isSlideshow": false,
      "musicAuthor": "gilwear.id",
      "originCover": "https://p16-common-sign.tiktokcdn.com/tos-alisg-p-0037/oUPgEIBx87BO8ORBBYAIXiVwEc01ia7EZdnAi~tplv-tiktokx-shrink-aq:360:360:q75.webp?dr=17995&refresh_token=1ef26fb1&x-expires=17861…",
      "collectCount": 1,
      "commentCount": 0,
      "musicPlayUrl": "https://v16-ies-music.tiktokcdn.com/529b11f3f9b3ebfa6fc9440ae2732815/6a7daa84/video/tos/alisg/tos-alisg-v-27dcd7/ooU1oHIgQ3CFUEFvDfJ94dfFA4DbBBAIXAAqyo/?a=583965&bti=OHYpOTY0Zik3Oj…",
      "createTimeIso": "2026-08-06T10:12:21.000Z",
      "downloadCount": 0,
      "musicDuration": 27,
      "musicOriginal": false
    }
  ]
}
GETGet Liked Videos/v1/social-media:tiktok-scraper/liked/:usernameVideo yang di-like sebuah akun, kalau akunnya membukanya.

Parameters

usernamestringrequiredin path
Username (with or without @) or a full TikTok URL
pagenumberoptional
Page number. Default 1, max 10 (each page costs one upstream request)
countnumberoptional
Videos per page. Default 20, max 30

Request

curl -X GET "https://api.zpi.web.id/v1/social-media:tiktok-scraper/liked/rileylovesguineapigz?page=1&count=20" \
  -H "x-api-key: zpi_xxxxxxxxxxxxxxxxxxxxxxxx"

Example response

{
  "page": 1,
  "count": 17,
  "userId": "7082730284035130410",
  "videos": [
    {
      "url": "https://www.tiktok.com/@kash.thacker/video/7669516427354819853",
      "isAd": false,
      "play": "https://v45.tiktokcdn-us.com/9dae8be1f8c70d4a6d185125ced4e80d/6a75b9b3/video/tos/no1a/tos-no1a-v-2370-no/oUgEntge9EwvtPQpC4MzYOQgfhUpYBFkyD3JLF/?a=1233&bti=N3YpOzs8Zik3OjlmOm0wMjI6…",
      "size": 0,
      "cover": "https://p16-common-sign.tiktokcdn-us.com/tos-useast5-i-photomode-tx/573e48f4c2ec441eafb2fb237883226b~tplv-photomode-image-cover:480:0:q70.webp?dr=12229&refresh_token=270dae5c&x-exp…",
      "isTop": false,
      "title": "#gspsoftiktok #gsppuppy ",
      "author": {
        "id": "6621213454223998982",
        "avatar": "https://p19-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/a57fadb51c11fa0b51c08ad37f786f7e~tplv-tiktokx-cropcenter-q:300:300:q70.jpeg?dr=8834&refresh_token=604d1dc5&x-expire…",
        "nickname": "kash",
        "username": "kash.thacker"
      },
      "hdSize": 0,
      "images": [
        "https://p16-common-sign.tiktokcdn-us.com/tos-useast5-i-photomode-tx/573e48f4c2ec441eafb2fb237883226b~tplv-photomode-image-v1:q70.jpeg?dr=8793&refresh_token=7206674d&x-expires=17873…"
      ],
      "region": "US",
      "wmSize": 0,
      "wmplay": "https://v45.tiktokcdn-us.com/9dae8be1f8c70d4a6d185125ced4e80d/6a75b9b3/video/tos/no1a/tos-no1a-v-2370-no/oUgEntge9EwvtPQpC4MzYOQgfhUpYBFkyD3JLF/?a=1233&bti=N3YpOzs8Zik3OjlmOm0wMjI6…",
      "musicId": "7578511818520480515",
      "videoId": "7669516427354819853",
      "duration": 0,
      "diggCount": 283227,
      "playCount": 2234796,
      "createTime": 1785698475,
      "musicTitle": "original sound - aniuser_",
      "shareCount": 3574,
      "isSlideshow": true,
      "musicAuthor": "randomm",
      "originCover": "https://p16-common-sign.tiktokcdn-us.com/tos-useast5-i-photomode-tx/573e48f4c2ec441eafb2fb237883226b~tplv-photomode-image-cover:480:0:q70.webp?dr=12229&refresh_token=270dae5c&x-exp…",
      "collectCount": 8489,
      "commentCount": 6479,
      "musicPlayUrl": "https://v45.tiktokcdn-us.com/9dae8be1f8c70d4a6d185125ced4e80d/6a75b9b3/video/tos/no1a/tos-no1a-v-2370-no/oUgEntge9EwvtPQpC4MzYOQgfhUpYBFkyD3JLF/?a=1233&bti=N3YpOzs8Zik3OjlmOm0wMjI6…",
      "createTimeIso": "2026-08-02T19:21:15.000Z",
      "downloadCount": 4263,
      "musicDuration": 25,
      "musicOriginal": true
    }
  ],
  "hasMore": true,
  "nextPage": 2,
  "username": "rileylovesguineapigz"
}
GETGet Comment Replies/v1/social-media:tiktok-scraper/comment-replies/:videoIdNested replies under one top-level comment on a video.

Parameters

videoIdstringrequiredin path
Video ID (numeric) or a full TikTok video URL
commentIdstringrequired
ID of the top-level comment to expand
pagenumberoptional
Page number. Default 1
countnumberoptional
Replies per page. Default 20, max 50

Request

curl -X GET "https://api.zpi.web.id/v1/social-media:tiktok-scraper/comment-replies/7554652158981983544?commentId=7554674610685838096&page=1&count=20" \
  -H "x-api-key: zpi_xxxxxxxxxxxxxxxxxxxxxxxx"

Example response

{
  "page": 1,
  "count": 5,
  "total": 108,
  "hasMore": true,
  "replies": [
    {
      "text": "🤣🤣🤣🤣🤣 Purbaiiiyiaccccchhh",
      "author": {
        "id": "6920828077023446017",
        "avatar": "https://p16-common-sign.tiktokcdn-us.com/tos-alisg-avt-0068/fe3c1764d1489b90e64337df0b0f28c7~tplv-tiktokx-cropcenter-q:100:100:q70.jpeg?dr=8835&idc=useast5&ps=87d6e48a&refresh_toke…",
        "region": "ID",
        "secUid": "MS4wLjABAAAAge3hRhfZDfS4Gy6b1IwvVlktuVmQYT4lNKs_Ap1dzckjIGfF77BS7TrP6Q9u8w7U",
        "nickname": "Larasputri",
        "username": "larasputri888",
        "verified": false,
        "diggCount": 0,
        "signature": "Suka ngopi sambil bikin konten \nlifestyle • home finds • product reviews",
        "heartCount": 0,
        "videoCount": 0,
        "followerCount": 0,
        "followingCount": 0,
        "privateAccount": false
      },
      "images": [],
      "status": 1,
      "videoId": "7554652158981983544",
      "commentId": "7554675002763805458",
      "diggCount": 306,
      "createTime": 1758959850,
      "createTimeIso": "2025-09-27T07:57:30.000Z",
      "replyToCommentId": "7554674610685838096"
    }
  ],
  "videoId": "7554652158981983544",
  "nextPage": 2,
  "commentId": "7554674610685838096"
}
GETGet User Reposts/v1/social-media:tiktok-scraper/reposts/:usernameVideos a creator has reposted to their profile.

Parameters

usernamestringrequiredin path
Username (with or without @) or a full TikTok profile URL
pagenumberoptional
Page number. Default 1
countnumberoptional
Videos per page. Default 20, max 30

Request

curl -X GET "https://api.zpi.web.id/v1/social-media:tiktok-scraper/reposts/tiktok?page=1&count=20" \
  -H "x-api-key: zpi_xxxxxxxxxxxxxxxxxxxxxxxx"

Example response

{
  "page": 1,
  "count": 5,
  "videos": [
    {
      "url": "https://www.tiktok.com/@thedodo/video/7677743868229455135",
      "isAd": false,
      "play": "https://v16m.tiktokcdn-us.com/8b94a17a5bf6a5a72a105ac0c643d9ef/6a92f58f/video/tos/useast8/tos-useast8-ve-0068c001-tx2/oApBEAbGliXs0NMV5zazv03SKoEQBiZIpqRBA/?a=1233&bti=N3YpODQ3QGo6…",
      "size": 1264613,
      "cover": "https://p19-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/oINvVFDhREE4KQAnfZEIYNCApAOAs3AhjqfEXE~tplv-tiktokx-cropcenter-q:300:400:q70.jpeg?dr=8596&refresh_token=bdd3e7fe&x-e…",
      "isTop": false,
      "title": "For International Dog Day 2026, join @TikTok and The Dodo at @Wags & Walks Rescue’s LA headquarters to meet some adoptable rescue dogs and break down common myths around rescuing. …",
      "author": {
        "id": "6516903274669429760",
        "avatar": "https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/2738b68fb2ed3eb936af1cb23f62bb56~tplv-tiktokx-cropcenter-q:300:300:q70.jpeg?dr=8834&refresh_token=150a549a&x-expire…",
        "nickname": "The Dodo",
        "username": "thedodo"
      },
      "hdSize": 0,
      "images": [],
      "region": "CA",
      "wmSize": 0,
      "wmplay": "https://v16m.tiktokcdn-us.com/8b94a17a5bf6a5a72a105ac0c643d9ef/6a92f58f/video/tos/useast8/tos-useast8-ve-0068c001-tx2/oApBEAbGliXs0NMV5zazv03SKoEQBiZIpqRBA/?a=1233&bti=N3YpODQ3QGo6…",
      "musicId": "7677743825783196446",
      "videoId": "7677743868229455135",
      "duration": 20,
      "diggCount": 483,
      "playCount": 13619,
      "createTime": 1787614057,
      "musicCover": "https://p16-common-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/2738b68fb2ed3eb936af1cb23f62bb56~tplv-tiktokx-cropcenter-q:1080:1080:q70.jpeg?dr=8837&refresh_token=3bb01b40&x-expi…",
      "musicTitle": "original sound - thedodo",
      "shareCount": 18,
      "isSlideshow": false,
      "musicAuthor": "The Dodo",
      "originCover": "https://p16-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/oAyvXIbRZIAU1BVm0YlSpASiBoqzaB02ispEM~tplv-tiktokx-shrink-aq:360:360:q75.webp?dr=11731&refresh_token=1c91a090&x-expi…",
      "collectCount": 18,
      "commentCount": 22,
      "dynamicCover": "https://p19-common-sign.tiktokcdn-us.com/tos-useast8-p-0068-tx2/oINvVFDhREE4KQAnfZEIYNCApAOAs3AhjqfEXE~tplv-tiktokx-origin.image?dr=8606&refresh_token=03cc0d5d&x-expires=1788080400…",
      "musicPlayUrl": "https://v19.tiktokcdn-us.com/bb37cde9a661fcde9dd4fea8fedd230e/6a934a2b/video/tos/useast8/tos-useast8-v-27dcd7-tx2/osA7Ii9jioAMl0BRTVxaMnCEVMTzGaKg6Miv2/?a=1233&bti=Mzc5NGYpQHM6OjZA…",
      "createTimeIso": "2026-08-24T23:27:37.000Z",
      "downloadCount": 0,
      "musicDuration": 20,
      "musicOriginal": true
    }
  ],
  "hasMore": true,
  "nextPage": 2,
  "username": "tiktok"
}
GETGet User Story/v1/social-media:tiktok-scraper/story/:usernameA creator's live 24-hour stories. Returns count 0 when none are active.

Parameters

usernamestringrequiredin path
Username (with or without @) or a full TikTok profile URL

Request

curl -X GET "https://api.zpi.web.id/v1/social-media:tiktok-scraper/story/tiktok" \
  -H "x-api-key: zpi_xxxxxxxxxxxxxxxxxxxxxxxx"

Example response

{
  "count": 0,
  "stories": [],
  "username": "tiktok"
}
GETSearch Photos/v1/social-media:tiktok-scraper/search-photosSearch photo/slideshow (carousel) posts by keyword.

Parameters

keywordsstringrequired
Search keywords for photo/slideshow posts
pagenumberoptional
Page number. Default 1
countnumberoptional
Videos per page. Default 20, max 30

Request

curl -X GET "https://api.zpi.web.id/v1/social-media:tiktok-scraper/search-photos?keywords=kucing+lucu&page=1&count=20" \
  -H "x-api-key: zpi_xxxxxxxxxxxxxxxxxxxxxxxx"

Example response

{
  "page": 1,
  "count": 5,
  "query": "kucing lucu",
  "videos": [
    {
      "url": "https://www.tiktok.com/@maomaocat.id/video/7489769170385538325",
      "isAd": false,
      "play": "https://v16m.tiktokcdn-us.com/ad5724a6eb0e60d2454e5fb9c1226066/6a9bdbdf/video/tos/useast5/tos-useast5-ve-27dcd7c799-tx/oMoypWG1ILEEMZCvXDISvIoqCJdaeTfnPDZPge/?a=1233&bti=NEBzNTY6QG…",
      "size": 0,
      "cover": "https://p16-common-sign.tiktokcdn-us.com/tos-alisg-i-photomode-sg/e7e3a387cd824c42bac212f8cda453dc~tplv-photomode-image-cover:640:0:q70.webp?biz_tag=mt_photo.photo_tab_cover&dr=122…",
      "isTop": false,
      "title": "kenalan dulu sama kucing kucing yang staff kantor suka main bareng 😸 #kucinglucu #kucingtiktok #fyp #kucing #kucinggemoy #pecintakucing ",
      "author": {
        "id": "7432154883400827921",
        "avatar": "https://p16-common-sign.tiktokcdn-us.com/tos-alisg-avt-0068/60c798fdd96ff1353c1999a39e3ad027~tplv-tiktokx-cropcenter-q:300:300:q70.jpeg?dr=8834&refresh_token=3bd6833b&x-expires=178…",
        "nickname": "Mao Mao Cat",
        "username": "maomaocat.id"
      },
      "hdSize": 0,
      "images": [
        "https://p19-common-sign.tiktokcdn-us.com/tos-alisg-i-photomode-sg/e7e3a387cd824c42bac212f8cda453dc~tplv-photomode-image-v1:q70.jpeg?dr=8793&refresh_token=401fffc7&x-expires=1789290…"
      ],
      "region": "ID",
      "wmSize": 0,
      "wmplay": "https://v16m.tiktokcdn-us.com/ad5724a6eb0e60d2454e5fb9c1226066/6a9bdbdf/video/tos/useast5/tos-useast5-ve-27dcd7c799-tx/oMoypWG1ILEEMZCvXDISvIoqCJdaeTfnPDZPge/?a=1233&bti=NEBzNTY6QG…",
      "musicId": "7484675347601951543",
      "videoId": "7489769170385538325",
      "duration": 0,
      "diggCount": 43627,
      "playCount": 249823,
      "createTime": 1743847791,
      "musicCover": "https://p16-common-sign.tiktokcdn-us.com/tos-alisg-avt-0068/21a44f004aab048f0188b844acadc61b~tplv-tiktokx-cropcenter-q:1080:1080:q70.jpeg?dr=8837&refresh_token=ae9c8b8d&x-expires=1…",
      "musicTitle": "original sound - shizu.u",
      "shareCount": 2146,
      "isSlideshow": true,
      "musicAuthor": "shizu",
      "originCover": "https://p16-common-sign.tiktokcdn-us.com/tos-alisg-i-photomode-sg/e7e3a387cd824c42bac212f8cda453dc~tplv-photomode-image-cover:640:0:q70.webp?dr=12229&refresh_token=cfd1efd9&x-expir…",
      "collectCount": 0,
      "commentCount": 599,
      "dynamicCover": "https://p16-common-sign.tiktokcdn-us.com/tos-alisg-i-photomode-sg/e7e3a387cd824c42bac212f8cda453dc~tplv-photomode-image-cover:640:0:q70.webp?dr=12229&refresh_token=cfd1efd9&x-expir…",
      "musicPlayUrl": "https://v16m.tiktokcdn-us.com/ad5724a6eb0e60d2454e5fb9c1226066/6a9bdbdf/video/tos/useast5/tos-useast5-ve-27dcd7c799-tx/oMoypWG1ILEEMZCvXDISvIoqCJdaeTfnPDZPge/?a=1233&bti=NEBzNTY6QG…",
      "createTimeIso": "2025-04-05T10:09:51.000Z",
      "downloadCount": 26,
      "musicDuration": 30,
      "musicOriginal": true
    }
  ],
  "hasMore": true,
  "nextPage": 2
}
GETGet User Playlists/v1/social-media:tiktok-scraper/playlists/:usernameThe playlists (mixes) a creator has published.

Parameters

usernamestringrequiredin path
Username (with or without @) or a full TikTok profile URL

Request

curl -X GET "https://api.zpi.web.id/v1/social-media:tiktok-scraper/playlists/tiktok" \
  -H "x-api-key: zpi_xxxxxxxxxxxxxxxxxxxxxxxx"

Example response

{
  "count": 4,
  "username": "tiktok",
  "playlists": [
    {
      "url": "https://www.tiktok.com/@tiktok/playlist/Behind-The-Breakthrough-7659874208872221471",
      "name": "Behind The Breakthrough",
      "type": 1,
      "mixId": "7659874208872221471"
    },
    {
      "url": "https://www.tiktok.com/@tiktok/playlist/In-The-Mix-7516638364301265695",
      "name": "In The Mix",
      "type": 1,
      "mixId": "7516638364301265695"
    },
    {
      "url": "https://www.tiktok.com/@tiktok/playlist/TikTok-Awards-7585292371022088990",
      "name": "TikTok Awards",
      "type": 1,
      "mixId": "7585292371022088990"
    },
    {
      "url": "https://www.tiktok.com/@tiktok/playlist/New-Features-6954279265768639237",
      "name": "New Features",
      "type": 1,
      "mixId": "6954279265768639237"
    }
  ]
}
GETGet Playlist Posts/v1/social-media:tiktok-scraper/playlist-posts/:mixIdVideos inside one playlist (mix).

Parameters

mixIdstringrequiredin path
Playlist/mix ID, from the playlists endpoint or a /playlist/ URL
pagenumberoptional
Page number. Default 1
countnumberoptional
Videos per page. Default 20, max 30

Request

curl -X GET "https://api.zpi.web.id/v1/social-media:tiktok-scraper/playlist-posts/7659874208872221471?page=1&count=20" \
  -H "x-api-key: zpi_xxxxxxxxxxxxxxxxxxxxxxxx"

Example response

{
  "page": 1,
  "count": 5,
  "mixId": "7659874208872221471",
  "videos": [
    {
      "url": "https://www.tiktok.com/@tiktok/video/7641268387934489886",
      "isAd": false,
      "play": "https://v31-jp.tiktokcdn.com/ff014dc0174a1ae2d4bc899153eca555/6a93f32e/video/tos/alisg/tos-alisg-ve-37c799-sg/o4i5WN91BAOMixEQi1sZ8IPAqFLfEisdCv3AIB/?a=1233&bti=NjR2KTM2OWYpNzo5Zi8…",
      "size": 14122525,
      "cover": "https://p16-common-sign.tiktokcdn.com/tos-useast8-p-0068-tx2/oM4EVAFCUEDiowAA0eAAfLEzqLIhR4OEVASzPC~tplv-tiktokx-cropcenter-q:300:400:q70.webp?dr=14782&refresh_token=67199ec4&x-exp…",
      "isTop": false,
      "title": "Before the debut EP and tours, @SIENNA SPIRO had day-one fans supporting her on TikTok, like @KRISTA. Watch the full-circle moment on #BehindTheBreakthrough.",
      "author": {
        "id": "107955",
        "avatar": "https://p19-common-sign.tiktokcdn.com/tos-maliva-avt-0068/ba67b11de451691939223e9d978e613a~tplv-tiktokx-cropcenter-q:300:300:q70.jpeg?dr=10793&refresh_token=35ad8845&x-expires=1788…",
        "nickname": "TikTok",
        "username": "tiktok"
      },
      "hdSize": 0,
      "images": [],
      "region": "US",
      "wmSize": 13130744,
      "wmplay": "https://v31-jp.tiktokcdn.com/5b9d5c9a866e42ec9e917d9f58489fd1/6a93f32e/video/tos/alisg/tos-alisg-ve-37c799-sg/owZ1ALBMiEViMYPAQAsIB3vhI5ssBiQ1CfUExq/?a=1233&bti=NjR2KTM2OWYpNzo5Zi8…",
      "musicId": "https://sf16-ies-music-va.tiktokcdn.com/obj/ies-music-ttp-dup-us/tx27648944154893945630.mp3",
      "videoId": "7641268387934489886",
      "duration": 138,
      "diggCount": 114395,
      "playCount": 10070557,
      "createTime": 1779121449,
      "shareCount": 1891,
      "isSlideshow": false,
      "originCover": "https://p16-common-sign.tiktokcdn.com/tos-useast8-p-0068-tx2/osQIBiAsIv1BM4CSIALlxqibsB3UPifZ19Au5E~tplv-tiktokx-shrink-aq:360:360:q75.webp?dr=17995&refresh_token=b040ae3b&x-expire…",
      "collectCount": 6610,
      "commentCount": 1660,
      "dynamicCover": "https://p16-common-sign.tiktokcdn.com/tos-useast8-p-0068-tx2/oM4EVAFCUEDiowAA0eAAfLEzqLIhR4OEVASzPC~tplv-tiktokx-origin.image?dr=1364&refresh_token=35c79ca2&x-expires=1788080400&x-…",
      "createTimeIso": "2026-05-18T16:24:09.000Z",
      "downloadCount": 291,
      "musicDuration": 0,
      "musicOriginal": false
    }
  ],
  "hasMore": true,
  "nextPage": 2
}
GETGet Top Ads/v1/social-media:tiktok-scraper/top-adsTop-performing ads from TikTok Creative Center, filterable by country, period, industry, objective and language.

Parameters

countryCodestringoptional
ISO country code. Omit for all countries. 28 are supported — see the filters endpoint
periodenumoptional
Trailing window in days. One of 7, 30, 180. Default 7 Values: 7, 30, 180.
orderByenumoptional
Sort field. Default like Values: for_you, like, ctr, play_2s_rate, play_6s_rate, impression.
industrystringoptional
Industry ID from the filters endpoint
objectivestringoptional
Campaign objective ID from the filters endpoint
adLanguagestringoptional
Ad language code from the filters endpoint
patternLabelstringoptional
Creative pattern ID from the filters endpoint
pagenumberoptional
Page number. Default 1
limitnumberoptional
Ads per page. Default 20, max 20 — the upstream rejects more

Request

curl -X GET "https://api.zpi.web.id/v1/social-media:tiktok-scraper/top-ads?countryCode=ID&period=7&orderBy=like&industry=27102000000&objective=1&adLanguage=id&patternLabel=10100100000&page=1&limit=20" \
  -H "x-api-key: zpi_xxxxxxxxxxxxxxxxxxxxxxxx"

Example response

{
  "ads": [
    {
      "ctr": 0.39,
      "adId": "7662986225209704455",
      "cost": 2,
      "cover": "https://p16-common-sign.tiktokcdn.com/tos-alisg-p-0037/ospphM3E3WRTXQlQmBFqAH6DgMcmnBeSfIVE37~tplv-noop.image?dr=18692&refresh_token=44df1c99&x-expires=1788016064&x-signature=4KkPW…",
      "title": "Sekarang bener2 hati-hati bgt nyari produk untuk bayiku, apalagi yang bersentuhan langsung sm kulitnya kaya tissue basah.. kandungan hidden gem di tissue basah ini bikin tenang dan…",
      "width": 576,
      "height": 1024,
      "videoId": "v1c044g50000d9a8rofog65tj2p7nkj0",
      "duration": 58.534,
      "favorited": false,
      "likeCount": 93293,
      "video720p": "https://v16m-default.tiktokcdn.com/3470eda2df024203260c7ddf0f664d49/6a92f5c0/video/tos/alisg/tos-alisg-pve-0037c001/oEASsDYejUIKi4DUCnGpvvLReSfqAA2gYEHRRI/?a=0&bti=NTU4QDM1NGA%3D&&…",
      "industryId": "12999000000",
      "industryKey": "label_12999000000",
      "objectiveKey": "campaign_objective_video_view"
    }
  ],
  "page": 1,
  "count": 5,
  "total": 360,
  "period": 30,
  "hasMore": true,
  "orderBy": "like",
  "nextPage": 2,
  "countryCode": "ID"
}
GETGet Ad Detail/v1/social-media:tiktok-scraper/ad-detail/:materialIdOne Creative Center ad with its landing page, keywords, objectives and engagement counts.

Parameters

materialIdstringrequiredin path
Ad material ID, from the top-ads endpoint

Request

curl -X GET "https://api.zpi.web.id/v1/social-media:tiktok-scraper/ad-detail/7668635011869573138" \
  -H "x-api-key: zpi_xxxxxxxxxxxxxxxxxxxxxxxx"

Example response

{
  "ctr": 0.44,
  "adId": "7668635011869573138",
  "cost": 2,
  "cover": "https://p16-common-sign.tiktokcdn.com/tos-alisg-p-0037/oQBjduVbIAzMAIiiwfIPCR6Am93FZwjSDjACi1~tplv-noop.image?dr=18692&refresh_token=4e8919d3&x-expires=1788016023&x-signature=Fgxer…",
  "title": "Rayakan setiap momen keluarga dengan... BARU! Wall’s Populaire Lychee Yoghurt!  🤗 Segarnya Lychee dan Creamy-nya Yoghurt bikin momen kamu dan keluarga makin manis✨ Yuk, cobain sek…",
  "width": 576,
  "height": 1024,
  "source": "Others",
  "videoId": "v1c044g50000d9hjtdvog65qhkg3732g",
  "duration": 15.019,
  "keywords": [],
  "favorited": false,
  "likeCount": 1615,
  "video720p": "https://v16m-default.tiktokcdn.com/e870771c24062a71cab84e7f229441e7/6a92f597/video/tos/alisg/tos-alisg-pve-0037c001/ogd361gKQEGBcODBzPqEjDwBYIjkcnefgAGFJR/?a=0&bti=NTU4QDM1NGA%3D&&…",
  "voiceOver": false,
  "hasSummary": false,
  "industryId": "27102000000",
  "objectives": [
    {
      "id": 5,
      "key": "campaign_objective_reach"
    }
  ],
  "shareCount": 3,
  "industryKey": "label_27102000000",
  "landingPage": "https://vt.tiktok.com/ZSXr6wsSr/?page=Mall&utm_source=tiktok&utm_medium=social&utm_content=_&utm_campaign=JWL+Sun+Voyage_CN009405_CF1954_BF0870_ID&utm_term=TikTok_Reach_CPM_Auc_NA_…",
  "commentCount": 9,
  "countryCodes": [
    "ID"
  ],
  "objectiveKey": "campaign_objective_reach",
  "patternLabels": []
}
GETGet Top Ads Filters/v1/social-media:tiktok-scraper/top-ads-filtersThe country, industry, objective, language, pattern and period ids the top-ads filters accept.

Parameters

This endpoint takes no parameters.

Request

curl -X GET "https://api.zpi.web.id/v1/social-media:tiktok-scraper/top-ads-filters" \
  -H "x-api-key: zpi_xxxxxxxxxxxxxxxxxxxxxxxx"

Example response

{
  "periods": [
    {
      "id": "7",
      "key": "seven_day",
      "name": "Last 7 days"
    },
    {
      "id": "30",
      "key": "thirty_day",
      "name": "Last 30 days"
    }
  ],
  "patterns": [
    {
      "id": "10100100000",
      "key": "pattern_label_10100100000",
      "name": "pattern_label_10100100000"
    },
    {
      "id": "10100101000",
      "key": "pattern_label_10100101000",
      "name": "pattern_label_10100101000"
    }
  ],
  "countries": [
    {
      "id": "AR",
      "key": "AR",
      "name": "Argentina"
    },
    {
      "id": "AU",
      "key": "AU",
      "name": "Australia"
    }
  ],
  "industries": [
    {
      "id": "12105000000",
      "key": "label_12105000000",
      "name": "Baby Shoes",
      "parentId": "12000000000"
    },
    {
      "id": "15106000000",
      "key": "label_15106000000",
      "name": "Network Products",
      "parentId": "15000000000"
    }
  ],
  "objectives": [
    {
      "id": "1",
      "key": "campaign_objective_traffic",
      "name": "Traffic",
      "hasConversion": false
    },
    {
      "id": "2",
      "key": "campaign_objective_app_install",
      "name": "App Installs",
      "hasConversion": true
    }
  ],
  "adLanguages": [
    {
      "id": "en",
      "key": "language_en",
      "name": "language_en"
    },
    {
      "id": "es",
      "key": "language_es",
      "name": "language_es"
    }
  ]
}

Related APIs

More in social-media

Instagram Scraper

social-media/instagram-scraper

Dapatkan data profile, postingan dan lainnya dengan lengkap dan konsisten.

57.7K calls·15m cache

Youtube Scraper

social-media/youtube-scraper

Dapatkan data profile, postingan, comment, dan lainnya dengan lengkap dan konsisten.

94 calls·30m cache

GitHub User

social-media/github-user

Fetch public profile information for a GitHub user.

73 calls·1h cache

Kaskus

social-media/kaskus

Forum komunitas terbesar Indonesia (kaskus.co.id). Akses detail thread + balasan, daftar thread per sub-forum, pencarian, dan profil user.

114 calls·6h cache

Telegram Channel

social-media/telegram-channel

Fetch public Telegram channel preview information.

54 calls·30m cache

NGL Send

social-media/ngl

NGL anonymous message sender.

31 calls·no cache
Browse APIsPricingDocsMCP serverGet an API key
zapi.One key, one response shape.
TermsPrivacyCookiesAUPRefunds© 2026