InsightSocial API
TikTok

TikTok Comment API reference

Your first 10 calls are free, no card needed. Pricing and FAQ

Get a free API key
Example request
curl "https://api.insightsocial.app/v1/tiktok/comment?comment_url=https%3A%2F%2Fwww.tiktok.com%2F%40mrbeast%2Fvideo%2F7654638524729216287%3Fcomment_id%3D7654640784985211670" \
  -H "x-api-key: $INSIGHTSOCIAL_API_KEY"
GET
/v1/tiktok/comment

Returns one TikTok comment with its current like count, reply count, pinned flag, author, and timestamp, found by link, by id, or by its text.

Use it to re-check a single known comment without paging the whole section; use post/comments when you want the section itself.

Metered: 20–60 credits. We reserve the ceiling when the call starts and charge what it actually used when it finishes.

x-api-key<token>

Your key from the dashboard. It starts with isk_.

In: header

Query Parameters

comment_url?string

A TikTok comment URL: https://www.tiktok.com/@{handle}/video/{videoId}?comment_id={cid}, the m.tiktok.com/v/{id}.html?...&share_comment_id={cid} share form, or a vm.tiktok.com/{code} / tiktok.com/t/{code} shortlink. The cid/comment_id/share_comment_id query value may be numeric or the base64 form TikTok's share sheet emits (?cid=NzY1...): both are accepted; base64 is decoded automatically. Mutually exclusive with post_url+comment_id. Provide at least one of: comment_url, post_url.

post_url?string

The post URL (https://www.tiktok.com/@{handle}/video/{videoId}). Combine with comment_id, or with author_username/text_contains for a search. Provide at least one of: comment_url, post_url.

comment_id?string

The target comment's numeric id (the cid from the comments endpoint). Requires post_url. Note that TikTok share links carry a base64-encoded cid: pass such a link as comment_url instead (decoded automatically), or base64-decode the value to its digits before passing it here.

parent_comment_id?string

The parent comment's numeric id: supply this when the target is a reply so it can be resolved directly via the native replies endpoint.

author_username?string

Return up to max comments authored by this username (no comment id needed). Mutually exclusive with text_contains and any comment id.

text_contains?string

Return up to max comments whose text contains this snippet (case-insensitive). Mutually exclusive with author_username and any comment id.

deep_scan?boolean

Widen the scan budget for deeply-buried comments (raises the page ceiling and deadline).

position_hint?string

Opaque token from a prior lookup's lookup.position_hint. Passing it back probes the comment's last-known location first, making a re-check of an already-found comment cheap.

max?integer

For author_username/text_contains search: max matches to return (1-20, default 5).

dry_run?"1"

Set to 1 to get the price of this call without making it: data.dry_run carries credits_min and credits_max. Nothing is charged.

Value in

  • "1"

Response Body

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

application/json

curl -X GET "https://api.insightsocial.app/v1/tiktok/comment"
{  "success": true,  "platform": "string",  "endpoint": "string",  "schema_version": "2",  "pagination": {    "next_cursor": "string",    "has_more": true,    "page_size": 0,    "stopped_at": "since"  },  "unavailable": [    "string"  ],  "credits_used": 0,  "credits_remaining": 0,  "request_id": "string",  "cached": true,  "idempotent_replay": true,  "charge_reason": "string",  "free_call": true,  "data": {    "comment": {      "id": "string",      "url": "http://example.com",      "parent_id": "string",      "post_id": "string",      "text": "string",      "author": {        "id": "string",        "username": "string",        "display_name": "string",        "avatar_url": "http://example.com",        "verified": true      },      "engagement": {        "likes": 0,        "replies": 0      },      "flags": {        "pinned": true,        "deleted": true      },      "published_at": "2019-08-24T14:15:22Z",      "language": "string",      "replies": [        {}      ],      "ext": {        "property1": null,        "property2": null      }    }  }}