TikTok Comments API: export comments of public videos as JSON

Send a public TikTok video URL and get its comments back as JSON. Profile endpoints run on the same API key, so you can go from a comment to the creator behind it in one workflow.

Buy credits

Use cases

Endpoints and cost

EndpointWhat it returnsCredits/callUSD/call (starter plan)
/v1/tiktok/video_commentsComments1$0.0017
/v1/tiktok/video_comment_repliesComment Replies1$0.0017

Endpoint details

/v1/tiktok/video_comments

Comments 1,000 calls = 1,000 credits = $1.67 on the starter plan.

ParameterTypeRequiredDescription
urlstringyesTikTok video URL
trimbooleannoSet to true to get a trimmed response
next_cursornumbernoCursor to get more comments. Get 'cursor' from previous response.

Sample response (trimmed):

{
 "comments": [
  {
   "video_id": "7517114944362499342",
   "text": "DAVE BUY A TEAM",
   "user": {
    "account_labels": null,
    "ad_cover_url": null,
    "advance_feature_item_order": null,
    "advanced_feature_info": null,
    "avatar_thumb": {
     "uri": "tos-useast5-avt-0068-tx/446370164449562d1008889225530f6d",
     "url_list": [
      "https://p16-sign.tiktokcdn-us.com/tos-useast5-avt-0068-tx/446370164449562d1008889225530f6d~tplv-tiktokx-cropcenter:100:100.jpg?dr=9640&refresh_token=662e5e49..."
     ],
     "url_prefix": null
    },
    "bold_fields": null,
    "can_message_follow_status_list": null,
    "can_set_geofencing": null,
    "cha_list": null,
    "cover_url": null,
    "custom_verify": "",
    "enterprise_verify_reason": "",
    "events": null,
    "followers_detail": null,
    "geofencing": null,
    "homepage_bottom_toast": null,
    "item_list": null,
    "mutual_relation_avatars": null,
    "need_points": null,
    "display_name": "Robert Lessner",
    "platform_sync_info": null,
    "relative_users": null,
    "search_highlight": null,
    "secure_user_id": "MS4wLjABAAAA9rB4k_Ei3NexA5p2lb8naaa4LTgNCOdY0W9NHVo63016XkdsuZgvjkgolBnUkG8W",
    "shield_edit_field_info": null,
    "...": "6 more fields"
   },
   "created_at": 1750216932,
   "reply_comment_total": 14,
   "like_count": 3322,
   "comment_language": "en"
  }
 ],
 "next_cursor": 20,
 "total": 

/v1/tiktok/video_comment_replies

Comment Replies 1,000 calls = 1,000 credits = $1.67 on the starter plan.

ParameterTypeRequiredDescription
comment_idstringyesTikTok comment ID. This is the cid from the comments endpoint.
urlstringyesTikTok video URL. This is the url from the comments endpoint.
next_cursornumbernoCursor to get more replies. Get 'cursor' from previous response.

Example: curl

curl -H "X-Scapi-Key: $SCAPI_KEY" "https://api.scrapall.bipsport.com/scapi/v1/tiktok/video_comments"

Example: Python

import os, requests
r = requests.get("https://api.scrapall.bipsport.com/scapi/v1/tiktok/video_comments",
    headers={"X-Scapi-Key": os.environ["SCAPI_KEY"]})
print(r.json())

FAQ

Is there a separate plan per platform?

No. One credit balance works on every listed endpoint across platforms. Costs per call differ by endpoint, see the cost table on this page.

Can I get replies as well as top-level comments?

Check the sample response below for the exact fields the endpoint returns before you rely on reply data.

How do I pay and get my API key?

Open the Buy page, pick the starter plan and pay in USDT on TRC20 or ERC20. The key is shown once, right after the payment is confirmed on-chain.

How many credits does one call use?

The cost table on this page lists credits per call for each endpoint. The starter plan is $45 for 27,000 credits per 30 days.

Get an API key and credits

Full reference: all tiktok endpoints.