How to Read TikTok Video Comments Using SteadyAPI
Read TikTok comments 20 at a time. Video 7106594312292453675 has 1269 comments. The next cursor is the string 20.
READ MORECapabilities
For catalogs and research. You get the public record. The file stays on YouTube.
Search returns videos and channels for a query. Suggestions and trending sit beside it. See examples
Title, description, published time, length, and the public counts. Comments and the transcript are separate calls. See examples
Comments and the replies under one comment. A comment has the text, the like count, and the channel that wrote it.
The transcript, when the video has captions. This is the words, not the video.
A channel, its videos, shorts, streams, and playlists. The channel call identifies it. The lists are separate.
Resolve accepts a video, channel, or playlist URL and returns the id the other calls expect.
How a call is made
The key goes in the Authorization header as a bearer token. A watch URL is enough for a video.
GET /api/v1/youtube/search requires q. Optional filters are type, sort, duration, and uploadDate.
GET /api/v1/youtube/video takes id or url. Comments use the same id. The transcript is a separate call and returns text.
A channel takes id, handle, or url. Videos, shorts, streams, and playlists are the next calls.
Shortened examples
Shortened examples of a video, a search hit, a comment, a transcript, a channel, and a trending video. Counts in a sample are not live. None of these is the video file.
{
"id": "MOLZOXqaomM",
"title": "Learn Laravel from Scratch [FULL BOOTCAMP COURSE]",
"publishedAt": "2025-09-16T09:00:06-07:00",
"lengthSeconds": 7395,
"viewCount": 105869,
"likeCount": 2237,
"commentCount": 129,
"category": "Science & Technology"
}{
"id": "Ugzge340dBgB75hWBm54AaABAg",
"text": "can confirm: he never gave us up",
"publishedText": "1 year ago",
"likeCount": 322000,
"replyCount": 962,
"author": {
"name": "@YouTube",
"handle": "@YouTube"
}
}{
"id": "UCBR8-60-B28hp2BmDPdntcQ",
"handle": "@YouTube",
"title": "YouTube",
"country": "United States",
"subscriberCount": 46400000,
"videoCount": 1625
}{
"type": "channel",
"title": "Laravel",
"handle": "@LaravelPHP",
"subscriberCount": 79700
}{
"id": "dQw4w9WgXcQ",
"languageCode": "en",
"autoGenerated": false,
"cues": [
{
"text": "♪ We're no strangers to love ♪",
"startSeconds": 18.64,
"durationSeconds": 3.24
},
{
"text": "♪ You know the rules and so do I ♪",
"startSeconds": 22.64,
"durationSeconds": 4.32
}
]
}{
"type": "video",
"id": "9UQGXUlMYFU",
"title": "comehelpglo - onsra (official music video)",
"viewCount": 236000,
"viewCountText": "236K views",
"lengthSeconds": 132,
"channel": {
"name": "comehelpglo"
}
}Before you integrate
What comes back, and what this API will not return.
No. The response is metadata: title, description, length, and the public counts. A stream URL is not included.
Yes. /api/v1/youtube/video/comments takes the video id or URL. Replies take the comment as well.
No. View counts in a sample are the counts from that example.
Pass the watch URL as url to /api/v1/youtube/video. /api/v1/youtube/resolve accepts a video, channel, or playlist URL when you only need the id.
Only when the video has captions. The transcript call returns text, not media.
Video, channel, and transcript calls are in the YouTube docs, in four languages.
A sample for each endpoint, in Shell, JavaScript, PHP, and Python.
View documentationRelated APIs
Other feeds on the same key. Open one if this page isn't quite what you needed.
A public profile, a video, the comments under it, and search. Pass a username or a link. TikTok API
Public posts, a profile, and the comments under a post. A username is enough to open the account. Instagram API
Posts, a profile, followers, and what's trending. You can read the conversation. The API won't post for you. Twitter / X API
Pricing
Plans cover the whole SteadyAPI catalog, not only this API. The monthly allowance is on the table. For a larger volume, email [email protected].
Starter $14.95 per month | Developer Popular $39.95 per month | Business $89.95 per month | Enterprise $299.95 per month | |
|---|---|---|---|---|
| Start 7-Day Trial | Start 7-Day Trial | Start 7-Day Trial | Start 7-Day Trial | |
| Requests per month | 10,000 | 50,000 | 250,000 | 2,500,000 |
| Stock Market API | ||||
| Options Data API | ||||
| Crypto Data API | ||||
| AliExpress API | ||||
| Reddit API | ||||
| Booking.com API | ||||
| Real Estate API | ||||
| Baseball (MLB) API | ||||
| Hockey API | ||||
| Football API | ||||
| Amazon API | ||||
| eBay API | ||||
| Walmart API | ||||
| Instagram API | ||||
| Twitter / X API | ||||
| TikTok API | ||||
| YouTube API | ||||
| AutoHub API | ||||
| ScrapeFlow | ||||
| Commercial Use | ||||
| Optional overage rate* | $1.50 per 1,000 requests | $1.05 per 1,000 requests | $0.50 per 1,000 requests | $0.09 per 1,000 requests |
| Overage cap | up to 50,000 extra | up to 250,000 extra | up to 1,250,000 extra | up to 12,500,000 extra |
Starter $11.96 per month$143.52 billed yearly | Developer Popular $31.96 per month$383.52 billed yearly | Business $71.96 per month$863.52 billed yearly | Enterprise $320.83 per month$3,849.95 billed yearly | |
|---|---|---|---|---|
| Start 7-Day Trial | Start 7-Day Trial | Start 7-Day Trial | Start 7-Day Trial | |
| Requests per month | 10,000 | 50,000 | 250,000 | 2,500,000 |
| Stock Market API | ||||
| Options Data API | ||||
| Crypto Data API | ||||
| AliExpress API | ||||
| Reddit API | ||||
| Booking.com API | ||||
| Real Estate API | ||||
| Baseball (MLB) API | ||||
| Hockey API | ||||
| Football API | ||||
| Amazon API | ||||
| eBay API | ||||
| Walmart API | ||||
| Instagram API | ||||
| Twitter / X API | ||||
| TikTok API | ||||
| YouTube API | ||||
| AutoHub API | ||||
| ScrapeFlow | ||||
| Commercial Use | ||||
| Optional overage rate* | $1.50 per 1,000 requests | $1.05 per 1,000 requests | $0.50 per 1,000 requests | $0.09 per 1,000 requests |
| Overage cap | up to 50,000 extra | up to 250,000 extra | up to 1,250,000 extra | up to 12,500,000 extra |
* Overage stays off until you turn it on in Billing, and only for Stripe card subscriptions. Usage is counted in monthly periods that start on your billing day, yearly plans included. Requests past the included limit are billed after the period ends, up to the cap. If you switch plans during a period, the limit and overage rate of the plan you are on when that period ends apply to the whole period.
Why SteadyAPI
Title, counts, comments, and a transcript are the product. The video file stays on YouTube.