TikTok · Guide

How to get TikTok music posts

TL;DR
To get TikTok music posts, sign up for a free Captapi key, then send one GET request to /v1/tiktok/music-posts with your input. You get clean JSON back in seconds for 2 credits per call — no OAuth, scraping or platform SDKs. List TikTok videos that use a specific sound — caption, author, and engagement for each post.

How to get TikTok music posts (step by step)

  1. 1

    Get a free API key

    Create a free Captapi account (100 credits, no card) and generate an API key from the dashboard.

  2. 2

    Call the TikTok Music Posts API

    Send an authenticated GET request to /v1/tiktok/music-posts with your input. No OAuth, no scraping setup.

  3. 3

    Read the JSON response

    Parse the clean JSON response. Pass cache=true for a free 24h cache hit; default is always fresh.

Code example

curl "https://api.captapi.com/v1/tiktok/music-posts?url=https%3A%2F%2Fwww.tiktok.com%2Fmusic%2Foriginal-sound-7646812079113898783" \
  -H "Authorization: Bearer capt_live_..."
# or: -H "x-api-key: capt_live_..."

What the response looks like

{
  "success": true,
  "data": {
    "url": "https://www.tiktok.com/music/original-sound-7646812079113898783",
    "totalReturned": 4,
    "posts": [
      {
        "platform": "tiktok",
        "url": "https://www.tiktok.com/@khaby.lame/video/7646812028874673439",
        "id": "7646812028874673439",
        "caption": "Thank you, please come again!!!🙋🏿‍♂️💸#learnfromkhaby #comedy",
        "description": "Thank you, please come again!!!🙋🏿‍♂️💸#learnfromkhaby #comedy",
        "publishedAt": "2026-06-02T14:56:35.000Z",
        "durationSeconds": 29.534,
        "thumbnailUrl": "https://p16-common-sign.tiktokcdn.com/tos-useast8-p-0068-tx2/oUAHVIiQDac8uC75AEfyALAA1FrTAqEEQ3GRPe~tplv-tiktokx-cropcenter-q:300:400:q70.webp?dr=14782&refresh_token=dae473d0&x-expires=1785171600&x-signature=fF8KccMCj5i1KJP7krB7JRx2xG0%3D&t=bacd0480&ps=933b5bde&shp=d05b14bd&shcp=f6441914&idc=my2&biz_tag=tt_video&s=MUSIC_AWEME&sc=cover",
        "author": {
          "username": "khaby.lame",
          "displayName": "Khabane lame",
          "url": "https://www.tiktok.com/@khaby.lame",
          "verified": false,
          "profileImage": "https://p16-common-sign.tiktokcdn.com/tos-maliva-avt-0068/08987e23b94057953fd4f1738694bf5f~tplv-tiktokx-cropcenter-q:1080:1080:q70.webp?dr=10796&idc=my2&ps=87d6e48a&refresh_token=bc21b726&s=MUSIC_AWEME&sc=avatar&shcp=f6441914&shp=d05b14bd&t=223449c4&x-expires=1785171600&x-signature=D%2FanX%2BEAwPGclXui5sL48ejAGUk%3D"
        },
        "engagement": {
          "views": 17042375,
          "likes": 1550817,
          "comments": 16306,
          "shares": 16050,
          "saves": 62013
        },
        "hashtags": [
          "learnfromkhaby",
          "comedy"
        ],
        "musicName": "original sound - khaby.lame"
      },
      {
        "platform": "tiktok",
        "url": "https://www.tiktok.com/@ali.chai.wala777/video/7649043187192892703",
        "id": "7649043187192892703",
        "caption": "کربلا دے مدان اندر حسین رتبے ودادیتے ہن#okaratiktokstar #tiktokpakastan #okaralover💪💪❤️ #alichaiwala❤️💫 #tiktok #support #trending #foruyou #1m @kanwal Shahzadi @Rehmani Munda🇸🇦 @Jani 227 @Rock Kuri Rock Kuri @Tayyab Jutt001 @👑 اوکاڑہ آلے 🔥 ملک جی 👑786 @RAJAB EDITS @(◐‿◑)🅼🅴ح🅰🆁 🆂🅷🅾🅰🅸🅱 ヅ @jutti of okara🫣 @☠️Talent of okara ☠️ @AsiM 🔥shah👑372 @👑Asim Ali.777🦁👑 @👑 *B.Ƥu𝗇ᴊa𝚋i* 💸🔥 @Kʜᴀᴍᴏsʜ⚜️Dᴀʀɪɴᴅᴀ🔞🥷 @B Punjabi 💸 @👑★Zαɾί khan★💸🔥 @Mr Motu patlu ❤️777 @Rizwan Honey @M.A.A.N✨ @alirazaofficial3100",
        "description": "کربلا دے مدان اندر حسین رتبے ودادیتے ہن#okaratiktokstar #tiktokpakastan #okaralover💪💪❤️ #alichaiwala❤️💫 #tiktok #support #trending #foruyou #1m @kanwal Shahzadi @Rehmani Munda🇸🇦 @Jani 227 @Rock Kuri Rock Kuri @Tayyab Jutt001 @👑 اوکاڑہ آلے 🔥 ملک جی 👑786 @RAJAB EDITS @(◐‿◑)🅼🅴ح🅰🆁 🆂🅷🅾🅰🅸🅱 ヅ @jutti of okara🫣 @☠️Talent of okara ☠️ @AsiM 🔥shah👑372 @👑Asim Ali.777🦁👑 @👑 *B.Ƥu𝗇ᴊa𝚋i* 💸🔥 @Kʜᴀᴍᴏsʜ⚜️Dᴀʀɪɴᴅᴀ🔞🥷 @B Punjabi 💸 @👑★Zαɾί khan★💸🔥 @Mr Motu patlu ❤️777 @Rizwan Honey @M.A.A.N✨ @alirazaofficial3100",
        "publishedAt": "2026-06-08T15:14:35.000Z",
        "durationSeconds": 30.278,
        "thumbnailUrl": "https://p16-common-sign.tiktokcdn.com/tos-useast8-p-0068-tx2/oYAxEVEDAzfEerjA3qtmExMIFAFo9RAJtYCH0A~tplv-tiktokx-cropcenter-q:300:400:q70.webp?dr=14782&refresh_token=359f3e3f&x-expires=1785171600&x-signature=KMkCqspUhLIxRLEttCZ30drzHpQ%3D&t=bacd0480&ps=933b5bde&shp=d05b14bd&shcp=f6441914&idc=my2&biz_tag=tt_video&s=MUSIC_AWEME&sc=cover",
        "author": {
          "username": "ali.chai.wala777",
          "displayName": "Ali chai wala 777☕☕",
          "url": "https://www.tiktok.com/@ali.chai.wala777",
          "verified": false,
          "profileImage": "https://p16-common-sign.tiktokcdn.com/tos-maliva-avt-0068/7b938fef8c8e68e37c261c961ccc7560~tplv-tiktokx-cropcenter-q:1080:1080:q70.webp?dr=10796&idc=my2&ps=87d6e48a&refresh_token=48c28ab9&s=MUSIC_AWEME&sc=avatar&shcp=f6441914&shp=d05b14bd&t=223449c4&x-expires=1785171600&x-signature=De8%2FtfqqeKjQKCfU%2Bw%2BfTGJFIlU%3D"
        },
        "engagement": {
          "views": 844,
          "likes": 142,
          "comments": 27,
          "shares": 57,
          "saves": 11
        },
        "hashtags": [
          "okaratiktokstar",
          "tiktokpakastan",
          "okaralover💪💪❤️",
          "alichaiwala❤️💫",
          "tiktok",
          "support",
          "trending",
          "foruyou",
          "1m"
        ],
        "musicName": "original sound - khaby.lame"
      },
      {
        "platform": "tiktok",
        "url": "https://www.tiktok.com/@babi_batox/video/7657210703262010631",
        "id": "7657210703262010631",
        "caption": "Obrigado, volte sempre; THank you, come again #aprender #khaby #comed #badi_xatox #humor",
        "description": "Obrigado, volte sempre; THank you, come again #aprender #khaby #comed #badi_xatox #humor",
        "publishedAt": "2026-06-30T15:28:22.000Z",
        "durationSeconds": 16.467,
        "thumbnailUrl": "https://p16-common-sign.tiktokcdn.com/tos-alisg-p-0037/oYw7iFBEEQ6IgRQz9Hf7QL2ARZkHqDcQBBfSBw~tplv-tiktokx-cropcenter-q:300:400:q70.webp?dr=14782&refresh_token=5cbaa5e5&x-expires=1785171600&x-signature=Zg1zQ4AppOFWvrVz6mtVoWf0Bbk%3D&t=bacd0480&ps=933b5bde&shp=d05b14bd&shcp=f6441914&idc=my2&biz_tag=tt_video&s=MUSIC_AWEME&sc=cover",
        "author": {
          "username": "babi_batox",
          "displayName": "Loreno_Cavela",
          "url": "https://www.tiktok.com/@babi_batox",
          "verified": false,
          "profileImage": "https://p16-common-sign.tiktokcdn.com/tos-alisg-avt-0068/12b7a3027b147743a04d2dcd50302b61~tplv-tiktokx-cropcenter-q:1080:1080:q70.webp?dr=10796&idc=my2&ps=87d6e48a&refresh_token=06f16ad2&s=MUSIC_AWEME&sc=avatar&shcp=f6441914&shp=d05b14bd&t=223449c4&x-expires=1785171600&x-signature=QOi7%2FEEgi7Th2wcfyTFLX0QLv%2B4%3D"
        },
        "engagement": {
          "views": 2334,
          "likes": 127,
          "comments": 2,
          "saves": 6
        },
        "hashtags": [
          "aprender",
          "khaby",
          "comed",
          "badi_xatox",
          "humor"
        ],
        "musicName": "original sound - khaby.lame"
      },
      {
        "platform": "tiktok",
        "url": "https://www.tiktok.com/@phearinreber8/video/7651833761398689042",
        "id": "7651833761398689042",
        "caption": "រឿងពិតរបស់មនុស្សយើង🫠🫠🫠",
        "description": "រឿងពិតរបស់មនុស្សយើង🫠🫠🫠",
        "publishedAt": "2026-06-16T03:43:08.000Z",
        "durationSeconds": 41.168,
        "thumbnailUrl": "https://p16-common-sign.tiktokcdn.com/tos-alisg-p-0037/oIiQkNnOBDxMxcVwjmFUgYQERAm0LbmfEeBq8M~tplv-tiktokx-cropcenter-q:300:400:q70.webp?dr=14782&refresh_token=0c1a39cf&x-expires=1785171600&x-signature=9yH9ppdfvM1LDk52rO2O6JWFW0g%3D&t=bacd0480&ps=933b5bde&shp=d05b14bd&shcp=f6441914&idc=my2&biz_tag=tt_video&s=MUSIC_AWEME&sc=cover",
        "author": {
          "username": "phearinreber8",
          "displayName": "Justin__IN🇰🇭",
          "url": "https://www.tiktok.com/@phearinreber8",
          "verified": false,
          "profileImage": "https://p16-common-sign.tiktokcdn.com/tos-alisg-avt-0068/f64c2a74679297804805ec188c038ce1~tplv-tiktokx-cropcenter-q:1080:1080:q70.webp?dr=10796&idc=my2&ps=87d6e48a&refresh_token=880d61dc&s=MUSIC_AWEME&sc=avatar&shcp=f6441914&shp=d05b14bd&t=223449c4&x-expires=1785171600&x-signature=hA%2F33ci0JsXHCAb7jN%2F%2B4NtJEio%3D"
        },
        "engagement": {
          "views": 8542,
          "likes": 372,
          "comments": 6,
          "shares": 2,
          "saves": 6
        },
        "musicName": "original sound - khaby.lame"
      }
    ]
  }
}

Billing metadata (credits charged, cache hit/miss) is returned in the X-Captapi-Credits and X-Captapi-Cache response headers.

Request parameters

NameTypeRequiredDescription
urlstring YesTikTok music/sound URL, e.g. https://tiktok.com/music/name-ID. The URL platform must match this endpoint's platform. Do not pass cross-platform URLs, e.g. YouTube to TikTok, Instagram to Facebook, LinkedIn to X/Twitter, or Pinterest to Rumble.
limitintegerNoMax items to return (default 20, max 200). Flat 2 credits per call.
cachebooleanNoSet true to serve from the 24h response cache. Default false — always fetch fresh data.

Frequently asked questions

What does the TikTok Music Posts API do?

The TikTok Music Posts API lets you list items in bulk with metadata from a public TikTok sound or track using one GET request to /v1/tiktok/music-posts. It returns clean JSON — no OAuth or infrastructure setup required.

How many credits does the TikTok Music Posts API cost?

Each successful call costs 2 credits. Pass cache=true to serve from the 24h shared cache (0 credits on hit); default is always fresh. Failed or empty results are never charged.

Do I need a TikTok API key or OAuth?

No. A single Captapi key works across every platform Captapi supports — YouTube, TikTok, Instagram, Facebook, Twitter/X, Reddit, Threads, Bluesky, Pinterest, LinkedIn, Rumble, Spotify, Kwai, and more. We handle proxies, rate limits, retries, and authentication for you.

Is the TikTok Music Posts API suitable for production use?

Yes. It is a stable REST endpoint with predictable JSON and automatic retries. Pass cache=true to serve from the 24h shared cache (0 credits on hit); default is always fresh. Use it for analytics, monitoring, and content automation.

Ready to get TikTok music posts?

Start free with 100 credits — no credit card required.

Get your free API key