API Key Management
Your API Key
Please login to manage your API key.
Getting Started
Authentication
All API requests require authentication using your API key. Include your API key in the request header:
API-KEY: your_api_key_here
TikTok Summarization Endpoint
Full Endpoint URL
POST http://tikneuron.com/api/v1/tiktok/summarize
Generate a synchronous summary of a TikTok video. This endpoint processes the video and returns the summary immediately.
Request Headers:
Content-Type: application/json
API-KEY: your_api_key_here
Request Parameters:
- url (required): TikTok video URL
- summary_type (optional): "bulletpoint" or "textual" (default: "bulletpoint")
- language (optional): Language code - en, es, id, de, fr, da, ar, it (default: "en")
Request Body Example
{
"url": "https://www.tiktok.com/@username/video/7354861484037524768",
"summary_type": "bulletpoint",
"language": "en"
}
Code Examples
curl -X POST http://tikneuron.com/api/v1/tiktok/summarize \
-H "Content-Type: application/json" \
-H "API-KEY: your_api_key_here" \
-d '{
"url": "https://www.tiktok.com/@username/video/7354861484037524768",
"summary_type": "bulletpoint",
"language": "en"
}'
fetch('http://tikneuron.com/api/v1/tiktok/summarize', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'API-KEY': 'your_api_key_here'
},
body: JSON.stringify({
url: 'https://www.tiktok.com/@username/video/7354861484037524768',
summary_type: 'bulletpoint',
language: 'en'
})
})
.then(response => response.json())
.then(data => console.log(data))
.catch(error => console.error('Error:', error));
import requests
import json
url = "http://tikneuron.com/api/v1/tiktok/summarize"
headers = {
"Content-Type": "application/json",
"API-KEY": "your_api_key_here"
}
data = {
"url": "https://www.tiktok.com/@username/video/7354861484037524768",
"summary_type": "bulletpoint",
"language": "en"
}
response = requests.post(url, headers=headers, data=json.dumps(data))
result = response.json()
print(result)
TikTok Subtitle Endpoint
Full Endpoint URL
POST http://tikneuron.com/api/v1/tiktok/subtitle
Get subtitles/transcriptions from a TikTok video in various formats. This endpoint processes the video and returns the subtitles immediately.
Request Headers:
Content-Type: application/json
API-KEY: your_api_key_here
Request Parameters:
- url (required): TikTok video URL
- format (optional): "raw", "srt", "vtt", or "txt" (default: "raw")
Request Body Example
{
"url": "https://www.tiktok.com/@username/video/7354861484037524768",
"format": "srt"
}
Code Examples - Subtitle API
curl -X POST http://tikneuron.com/api/v1/tiktok/subtitle \
-H "Content-Type: application/json" \
-H "API-KEY: your_api_key_here" \
-d '{
"url": "https://www.tiktok.com/@username/video/7354861484037524768",
"format": "srt"
}'
fetch('http://tikneuron.com/api/v1/tiktok/subtitle', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'API-KEY': 'your_api_key_here'
},
body: JSON.stringify({
url: 'https://www.tiktok.com/@username/video/7354861484037524768',
format: 'srt'
})
})
.then(response => response.json())
.then(data => console.log(data))
.catch(error => console.error('Error:', error));
import requests
import json
url = "http://tikneuron.com/api/v1/tiktok/subtitle"
headers = {
"Content-Type": "application/json",
"API-KEY": "your_api_key_here"
}
data = {
"url": "https://www.tiktok.com/@username/video/7354861484037524768",
"format": "srt"
}
response = requests.post(url, headers=headers, data=json.dumps(data))
result = response.json()
print(result)
Subtitle Response Format
{
"video_id": "7354861484037524768",
"subtitle_content": "1\n00:00:00,000 --> 00:00:03,000\nHello everyone, welcome to my video",
"format": "srt",
"cached": false,
"available_formats": ["raw", "srt", "vtt", "txt"]
}
{
"success": false,
"error": "Invalid API Key"
}
Returned when the API-KEY header is missing or invalid.
{
"error_code": "no_subtitle_available",
"message": "No subtitle available for this video"
}
Returned when the TikTok video has no available subtitles.
{
"message": "The given data was invalid.",
"errors": {
"url": [
"Please provide a valid TikTok URL."
],
"format": [
"Format must be one of: raw, srt, vtt, txt."
]
}
}
Returned when request parameters fail validation (invalid URL, unsupported format, etc.).
TikTok Speaker Diarization Endpoint
Full Endpoint URL
POST http://tikneuron.com/api/v1/tiktok/diarization
Get advanced speaker diarization (who spoke when) from a TikTok video. This endpoint processes the video, converts it to audio, and performs AI-powered speaker separation and transcription.
Request Headers:
Content-Type: application/json
API-KEY: your_api_key_here
Request Parameters:
- url (required): TikTok video URL
- format (optional): "raw", "srt", "vtt", or "txt" (default: "raw")
Request Body Example
{
"url": "https://www.tiktok.com/@username/video/7354861484037524768",
"format": "srt"
}
Code Examples - Diarization API
curl -X POST http://tikneuron.com/api/v1/tiktok/diarization \
-H "Content-Type: application/json" \
-H "API-KEY: your_api_key_here" \
-d '{
"url": "https://www.tiktok.com/@username/video/7354861484037524768",
"format": "srt"
}'
fetch('http://tikneuron.com/api/v1/tiktok/diarization', {
method: 'POST',
headers: {
'Content-Type': 'application/json',
'API-KEY': 'your_api_key_here'
},
body: JSON.stringify({
url: 'https://www.tiktok.com/@username/video/7354861484037524768',
format: 'srt'
})
})
.then(response => response.json())
.then(data => console.log(data))
.catch(error => console.error('Error:', error));
import requests
import json
url = "http://tikneuron.com/api/v1/tiktok/diarization"
headers = {
"Content-Type": "application/json",
"API-KEY": "your_api_key_here"
}
data = {
"url": "https://www.tiktok.com/@username/video/7354861484037524768",
"format": "srt"
}
response = requests.post(url, headers=headers, data=json.dumps(data))
result = response.json()
print(result)
Diarization Response Format
{
"video_id": "7354861484037524768",
"transcription_content": "1\n00:00:00,000 --> 00:00:03,500\nSpeaker A: Hey everyone, welcome back to my channel\n\n2\n00:00:03,500 --> 00:00:07,000\nSpeaker B: Thanks for having me on your show today",
"format": "srt",
"cached": false,
"available_formats": ["raw", "srt", "vtt", "txt"]
}
{
"success": false,
"error": "Invalid API Key"
}
Returned when the API-KEY header is missing or invalid.
{
"error_code": "insufficient_credits",
"message": "Insufficient credits"
}
Returned when the user doesn't have enough credits (requires 10 credits).
{
"message": "The given data was invalid.",
"errors": {
"url": [
"Please provide a valid TikTok URL."
],
"format": [
"Format must be one of: raw, srt, vtt, txt."
]
}
}
Returned when request parameters fail validation (invalid URL, unsupported format, etc.).
Response Format
{
"video_id": "7354861484037524768",
"summary": "- Key point 1\n- Key point 2\n- Key point 3",
"summary_type": "bulletpoint",
"language": "en",
"cached": false
}
{
"success": false,
"error": "Invalid API Key"
}
Returned when the API-KEY header is missing or invalid.
{
"error_code": "insufficient_credits",
"message": "Insufficient credits"
}
Returned when the user account has less than 2 credits required for the operation.
{
"message": "The given data was invalid.",
"errors": {
"url": [
"Please provide a valid TikTok URL."
]
}
}
Returned when request parameters fail validation (invalid URL, unsupported language, etc.).
{
"error_code": "processing_failed",
"message": "Failed to process video: No subtitle available for this video"
}
Returned when video processing fails (no subtitles available, API errors, etc.). Credits are automatically refunded.
Pricing
API Credit Costs
Our API uses a credit-based pricing model. Each API endpoint consumes a different number of credits based on the complexity of the operation.
Subtitle API
1
credit per request
- ✓ Basic subtitle extraction
- ✓ Multiple formats (SRT, VTT, TXT)
- ✓ Instant cached results
Summarization API
2
credits per request
- ✓ AI-powered summarization
- ✓ Bullet-point or textual format
- ✓ Multi-language support
Diarization API
10
credits per request
- ✓ Advanced speaker separation
- ✓ AI-powered transcription
- ✓ Multiple export formats
Credit System Benefits:
- No Processing Fees: Cached results are returned instantly at no additional cost
- Automatic Refunds: Credits are refunded if processing fails
- Pay-per-Use: Only pay for successful API calls
💡 Pro Tip: Processing the same video multiple times will use cached results and won't consume additional credits!
Important Notes
Credits & Limitations
- Summarization API: Each call costs 2 credits from your account balance
- Subtitle API: Each call costs 1 credit from your account balance
- Diarization API: Each call costs 10 credits from your account balance
- Response time is typically less than 10-15 seconds.
- Cached responses are returned instantly if the same video was processed before and are not subject to charge
- Keep your API key secure - treat it like a password
Copyright © 2025 TikNeuron