fetchproof.

/v1/tiktok/video/comments

GET

Comments

Get comments on public TikTok videos or slideshows. Pages with comments cost 1 credit; empty pages cost 0. An empty page does not prove the post has no comments globally.

Credit cost

Default: 1 credit when no rule matches.

  1. 0 credits when response field comments is empty or absent.

1 credit per page with comments; 0 credits for empty pages

How charges are determined

Cost is decided per call, not per endpoint: the same operation can cost different amounts depending on what it returns.

A call that fails costs 0 credits. A result served from cache costs 0 credits.

`default` is the cost when no rule matches. Rules are evaluated in order and the first whose conditions all hold wins.

A `when` condition is one of: `param` (the request parameter is true), `outcome` (the classifier's outcome), `empty` / `nonEmpty` (a response field is empty and absent, or a non-empty array or string), `flag` (a response field is exactly true).

A cost of `{ perStartedMinute: n, of: [fields] }` is n x max(1, ceil(seconds / 60)), so even a short result bills at least one minute.

Cache supportNot specified in the published contract.
PaginationNo explicit pagination metadata in the published contract. Consult the parameters and response fields below.

Parameters

NameLocation / requiredSchema
url

TikTok video URL

query / required

string

trim

Set to true to get a trimmed response

query / optional

boolean

cursor

Cursor to get more comments. Get 'cursor' from previous response.

query / optional

number

Request examples

Replace placeholder values and supply your own API key. For operations with a request body, populate the body using the schema above.

cURL
curl --request GET 'https://api.fetchproof.com/v1/tiktok/video/comments?url=YOUR_URL' \
  --header 'x-api-key: YOUR_API_KEY'
JavaScript
const response = await fetch("https://api.fetchproof.com/v1/tiktok/video/comments?url=YOUR_URL", {
  method: 'GET',
  headers: { 'x-api-key': process.env.FETCHPROOF_API_KEY }
});
console.log(await response.text());
Python
import os
import requests

response = requests.get("https://api.fetchproof.com/v1/tiktok/video/comments?url=YOUR_URL",
    headers={"x-api-key": os.environ["FETCHPROOF_API_KEY"]})
print(response.text)

Responses

200Success. Envelope: success / credits_remaining / credits_charged.

application/json

object

successrequired

boolean

credits_remainingrequired

integer

alias_comment_deletedoptional

boolean

commentsrequired

array

Array items

object

author_pinoptional

boolean

aweme_idrequired

string

cidoptional

string

collect_statoptional

integer

comment_languagerequired

string

comment_post_item_idsoptional

null

create_timerequired

integer

digg_countrequired

integer

image_listoptional

null

is_author_diggedoptional

boolean

is_comment_translatableoptional

boolean

label_listoptional

null

no_showoptional

boolean

reply_commentoptional

null

reply_comment_totalrequired

integer

reply_idoptional

string

reply_to_reply_idoptional

string

share_infooptional

object

aclrequired

object

coderequired

integer

extrarequired

string

descrequired

string

titlerequired

string

urlrequired

string

sort_extra_scoreoptional

object

reply_scorerequired

number

show_more_scorerequired

number

sort_tagsoptional

string

statusoptional

integer

stick_positionoptional

integer

textrequired

string

text_extraoptional

array

trans_btn_styleoptional

integer

userrequired

object

account_labelsrequired

null

ad_cover_urlrequired

null

advance_feature_item_orderrequired

null

advanced_feature_inforequired

null

avatar_thumbrequired

object

urirequired

string

url_listrequired

array

Array items

string

url_prefixrequired

null

bold_fieldsrequired

null

can_message_follow_status_listrequired

null

can_set_geofencingrequired

null

cha_listrequired

null

cover_urlrequired

null

custom_verifyrequired

string

enterprise_verify_reasonrequired

string

eventsrequired

null

followers_detailrequired

null

geofencingrequired

null

homepage_bottom_toastrequired

null

item_listrequired

null

mutual_relation_avatarsrequired

null

need_pointsrequired

null

nicknamerequired

string

platform_sync_inforequired

null

predicted_age_groupoptional

string

relative_usersrequired

null

search_highlightrequired

null

sec_uidrequired

string

shield_edit_field_inforequired

null

type_labelrequired

null

uidrequired

string

unique_idrequired

string

user_profile_guiderequired

null

user_tagsrequired

null

white_cover_urlrequired

null

user_buriedoptional

boolean

user_diggedoptional

integer

cursorrequired

integer

extraoptional

object

api_debug_inforequired

null

fatal_item_idsrequired

null

nowrequired

integer

has_filtered_commentsoptional

integer

has_moreoptional

schema

anyOf

integer

anyOf

boolean

log_pboptional

object

impr_idrequired

string

reply_styleoptional

integer

status_codeoptional

integer

status_msgoptional

string

top_giftsoptional

null

totaloptional

integer

credits_chargedoptional

integer

end_of_paginationoptional

boolean

401Invalid or missing x-api-key
402No credits remaining
403Upstream denied (age gate, audience controls)
404Resource or endpoint not found
429Rate limited