cURL
curl --request GET \
--url 'https://api.keyapi.ai/v1/tiktok/video/captions?video_id=7563511121240395022' \
--header 'Authorization: Bearer <YOUR_API_KEY>'import requests
response = requests.get(
'https://api.keyapi.ai/v1/tiktok/video/captions',
params={"video_id": "7563511121240395022"},
headers={'Authorization': 'Bearer <YOUR_API_KEY>'}
)
print(response.json())const params = new URLSearchParams({"video_id": "7563511121240395022"});
const response = await fetch(`https://api.keyapi.ai/v1/tiktok/video/captions?${params}`, {
method: 'GET',
headers: { 'Authorization': 'Bearer <YOUR_API_KEY>' }
});
const data = await response.json();
console.log(data);{
"message": "success",
"code": 0,
"data": [
{
"data": "WEBVTT\n\n\n00:00:00.060 --> 00:00:03.500\nIt's Thursday, which means it's time to take care of the bathrooms.\n\n00:00:03.501 --> 00:00:05.781\nWipe those mirrors down, clean your toilet,\n\n00:00:05.782 --> 00:00:08.341\nbath sink, vacuum and mop the floor.\n\n00:00:08.342 --> 00:00:09.781\nStock up on toilet paper. Oh,\n\n00:00:09.782 --> 00:00:12.781\nI need to do that. Replace towels and rugs,\n\n00:00:12.782 --> 00:00:15.021\nempty the trash, clean mirrors,\n\n00:00:15.022 --> 00:00:19.781\nand check for spills. Those are your tasks for the day. Again,\n\n00:00:19.782 --> 00:00:22.241\nI love this planner.\n\n00:00:22.300 --> 00:00:25.940\nIf you struggle with all of your word cleaning tasks on the weekend,\n\n00:00:25.941 --> 00:00:28.781\nyou gotta get the ADHD cleaning planner.\n\n00:00:28.782 --> 00:00:30.681\nThis has been a lifesaver.\n\n00:00:30.780 --> 00:00:35.137\nDo a few tasks every day and you'll have a clean house.\n",
"lang": "eng-US"
}
],
"requestId": "eda3b37e-9b0d-4829-8612-43b381ee511a"
}{
"code": 400,
"data": null,
"message": "Missing required parameter: handle"
}{
"code": 401,
"data": null,
"message": "apiKey is null"
}{
"code": 402,
"data": null,
"message": "apiKey quota is not enough"
}{
"code": 429,
"data": null,
"message": "qps limit exceeded"
}{
"code": 500,
"data": null,
"message": "Internal server error"
}TikTok Content
Get Video Captions
Extract text content and subtitles from a TikTok video, useful for content analysis and transcription.
GET
/
v1
/
tiktok
/
video
/
captions
cURL
curl --request GET \
--url 'https://api.keyapi.ai/v1/tiktok/video/captions?video_id=7563511121240395022' \
--header 'Authorization: Bearer <YOUR_API_KEY>'import requests
response = requests.get(
'https://api.keyapi.ai/v1/tiktok/video/captions',
params={"video_id": "7563511121240395022"},
headers={'Authorization': 'Bearer <YOUR_API_KEY>'}
)
print(response.json())const params = new URLSearchParams({"video_id": "7563511121240395022"});
const response = await fetch(`https://api.keyapi.ai/v1/tiktok/video/captions?${params}`, {
method: 'GET',
headers: { 'Authorization': 'Bearer <YOUR_API_KEY>' }
});
const data = await response.json();
console.log(data);{
"message": "success",
"code": 0,
"data": [
{
"data": "WEBVTT\n\n\n00:00:00.060 --> 00:00:03.500\nIt's Thursday, which means it's time to take care of the bathrooms.\n\n00:00:03.501 --> 00:00:05.781\nWipe those mirrors down, clean your toilet,\n\n00:00:05.782 --> 00:00:08.341\nbath sink, vacuum and mop the floor.\n\n00:00:08.342 --> 00:00:09.781\nStock up on toilet paper. Oh,\n\n00:00:09.782 --> 00:00:12.781\nI need to do that. Replace towels and rugs,\n\n00:00:12.782 --> 00:00:15.021\nempty the trash, clean mirrors,\n\n00:00:15.022 --> 00:00:19.781\nand check for spills. Those are your tasks for the day. Again,\n\n00:00:19.782 --> 00:00:22.241\nI love this planner.\n\n00:00:22.300 --> 00:00:25.940\nIf you struggle with all of your word cleaning tasks on the weekend,\n\n00:00:25.941 --> 00:00:28.781\nyou gotta get the ADHD cleaning planner.\n\n00:00:28.782 --> 00:00:30.681\nThis has been a lifesaver.\n\n00:00:30.780 --> 00:00:35.137\nDo a few tasks every day and you'll have a clean house.\n",
"lang": "eng-US"
}
],
"requestId": "eda3b37e-9b0d-4829-8612-43b381ee511a"
}{
"code": 400,
"data": null,
"message": "Missing required parameter: handle"
}{
"code": 401,
"data": null,
"message": "apiKey is null"
}{
"code": 402,
"data": null,
"message": "apiKey quota is not enough"
}{
"code": 429,
"data": null,
"message": "qps limit exceeded"
}{
"code": 500,
"data": null,
"message": "Internal server error"
}🪙1 creditper request
Copy for AI
🤖 Why Code When AI Can Do It For You?
Stop writing code like it’s 1970! Let AI do the heavy lifting - click the sparkles to copy a perfectly formatted prompt for ChatGPT, Claude, or your favorite AI assistant.
⌘I

