cURL
curl --request GET \
--url https://api.influship.com/v1/raw/youtube/transcript/{video_id} \
--header 'X-API-Key: <api-key>'import Influship from 'influship';
const client = new Influship({
apiKey: process.env['INFLUSHIP_API_KEY'], // This is the default and can be omitted
});
const response = await client.raw.youtube.getTranscript('dQw4w9WgXcQ');
console.log(response.data);import os
from influship import Influship
client = Influship(
api_key=os.environ.get("INFLUSHIP_API_KEY"), # This is the default and can be omitted
)
response = client.raw.youtube.get_transcript(
video_id="dQw4w9WgXcQ",
)
print(response.data){
"data": {
"video_id": "dQw4w9WgXcQ",
"url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ",
"title": "Full Body Workout | 30 Minutes",
"language": "en",
"source": "manual",
"transcript": [
{
"text": "Welcome to my channel!",
"start": 0.5,
"duration": 2.3
}
],
"full_text": "<string>",
"word_count": 1245,
"available_languages": [
{
"code": "en",
"name": "English",
"is_auto": false
}
],
"scraped_at": "2024-01-15T14:30:00Z"
}
}{
"error": {
"code": "validation_error",
"message": "Invalid value for parameter 'limit': must be between 1 and 100",
"param": "limit",
"request_id": "550e8400-e29b-41d4-a716-446655440000"
}
}{
"error": {
"code": "unauthorized",
"message": "API key missing or invalid",
"request_id": "550e8400-e29b-41d4-a716-446655440000"
}
}{
"error": {
"code": "payment_required",
"message": "Payment authentication is required.",
"status_code": 402,
"reason_code": "PAYMENT_ACTION_REQUIRED",
"next_step": "complete_authentication",
"request_id": "550e8400-e29b-41d4-a716-446655440000"
}
}{
"error": {
"code": "forbidden",
"message": "Your plan does not include access to this endpoint",
"request_id": "550e8400-e29b-41d4-a716-446655440000"
}
}{
"error": {
"code": "not_found",
"message": "Creator with ID '123e4567-e89b-12d3-a456-426614174000' not found",
"request_id": "550e8400-e29b-41d4-a716-446655440000"
}
}{
"error": {
"code": "rate_limit_exceeded",
"message": "Rate limit exceeded (per minute)",
"request_id": "550e8400-e29b-41d4-a716-446655440000"
}
}{
"error": {
"code": "internal_error",
"message": "An unexpected error occurred. Please try again later.",
"request_id": "550e8400-e29b-41d4-a716-446655440000"
}
}{
"error": {
"code": "upstream_contract_broken",
"message": "The upstream source returned data this endpoint cannot process. This is not retryable; it has been reported.",
"request_id": "550e8400-e29b-41d4-a716-446655440000",
"details": {
"upstream_error": "upstream_contract_broken",
"retryable": false
}
}
}{
"error": {
"code": "service_unavailable",
"message": "Live Instagram data is temporarily unavailable. Please retry shortly.",
"request_id": "550e8400-e29b-41d4-a716-446655440000",
"details": {
"retry_after_seconds": 60,
"upstream_error": "upstream_rate_limited"
}
}
}Live Scraping
Get YouTube Video Transcript
Fetch YouTube video transcript/captions. Returns timestamped segments and full text. Useful for content analysis.
Supported sources:
- Manual captions (highest quality)
- Auto-generated captions
- Multiple language tracks
Pricing: 0.5 credits per transcript ($0.005)
GET
/
v1
/
raw
/
youtube
/
transcript
/
{video_id}
cURL
curl --request GET \
--url https://api.influship.com/v1/raw/youtube/transcript/{video_id} \
--header 'X-API-Key: <api-key>'import Influship from 'influship';
const client = new Influship({
apiKey: process.env['INFLUSHIP_API_KEY'], // This is the default and can be omitted
});
const response = await client.raw.youtube.getTranscript('dQw4w9WgXcQ');
console.log(response.data);import os
from influship import Influship
client = Influship(
api_key=os.environ.get("INFLUSHIP_API_KEY"), # This is the default and can be omitted
)
response = client.raw.youtube.get_transcript(
video_id="dQw4w9WgXcQ",
)
print(response.data){
"data": {
"video_id": "dQw4w9WgXcQ",
"url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ",
"title": "Full Body Workout | 30 Minutes",
"language": "en",
"source": "manual",
"transcript": [
{
"text": "Welcome to my channel!",
"start": 0.5,
"duration": 2.3
}
],
"full_text": "<string>",
"word_count": 1245,
"available_languages": [
{
"code": "en",
"name": "English",
"is_auto": false
}
],
"scraped_at": "2024-01-15T14:30:00Z"
}
}{
"error": {
"code": "validation_error",
"message": "Invalid value for parameter 'limit': must be between 1 and 100",
"param": "limit",
"request_id": "550e8400-e29b-41d4-a716-446655440000"
}
}{
"error": {
"code": "unauthorized",
"message": "API key missing or invalid",
"request_id": "550e8400-e29b-41d4-a716-446655440000"
}
}{
"error": {
"code": "payment_required",
"message": "Payment authentication is required.",
"status_code": 402,
"reason_code": "PAYMENT_ACTION_REQUIRED",
"next_step": "complete_authentication",
"request_id": "550e8400-e29b-41d4-a716-446655440000"
}
}{
"error": {
"code": "forbidden",
"message": "Your plan does not include access to this endpoint",
"request_id": "550e8400-e29b-41d4-a716-446655440000"
}
}{
"error": {
"code": "not_found",
"message": "Creator with ID '123e4567-e89b-12d3-a456-426614174000' not found",
"request_id": "550e8400-e29b-41d4-a716-446655440000"
}
}{
"error": {
"code": "rate_limit_exceeded",
"message": "Rate limit exceeded (per minute)",
"request_id": "550e8400-e29b-41d4-a716-446655440000"
}
}{
"error": {
"code": "internal_error",
"message": "An unexpected error occurred. Please try again later.",
"request_id": "550e8400-e29b-41d4-a716-446655440000"
}
}{
"error": {
"code": "upstream_contract_broken",
"message": "The upstream source returned data this endpoint cannot process. This is not retryable; it has been reported.",
"request_id": "550e8400-e29b-41d4-a716-446655440000",
"details": {
"upstream_error": "upstream_contract_broken",
"retryable": false
}
}
}{
"error": {
"code": "service_unavailable",
"message": "Live Instagram data is temporarily unavailable. Please retry shortly.",
"request_id": "550e8400-e29b-41d4-a716-446655440000",
"details": {
"retry_after_seconds": 60,
"upstream_error": "upstream_rate_limited"
}
}
}Authorizations
Path Parameters
YouTube video ID
Pattern:
^[A-Za-z0-9_-]{11}$Example:
"dQw4w9WgXcQ"
Query Parameters
Language code or "auto" for automatic detection
Example:
"en"
Response
Successful response
Show child attributes
Show child attributes
⌘I