Skip to main content
GET
/
v1
/
raw
/
youtube
/
channel-transcripts
/
{handle}
cURL
curl --request GET \
  --url https://api.influship.com/v1/raw/youtube/channel-transcripts/{handle} \
  --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.getChannelTranscripts('@techreviews');

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_channel_transcripts(
    handle="@techreviews",
)
print(response.data)
{
  "data": {
    "channel_id": "<string>",
    "handle": "mkbhd",
    "channel_name": "<string>",
    "videos_found": 4503599627370495,
    "transcripts_fetched": 4503599627370495,
    "transcripts_failed": 4503599627370495,
    "items": [
      {
        "video_id": "dQw4w9WgXcQ",
        "url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ",
        "title": "<string>",
        "view_count": 1,
        "published_text": "<string>",
        "language": "<string>",
        "full_text": "<string>",
        "word_count": 1,
        "transcript": [
          {
            "text": "Welcome to my channel!",
            "start": 0.5,
            "duration": 2.3
          }
        ],
        "error": "<string>"
      }
    ],
    "scraped_at": "<string>"
  }
}
{
  "error": {
    "code": "validation_error",
    "message": "Request validation failed",
    "param": "query",
    "request_id": "550e8400-e29b-41d4-a716-446655440000",
    "details": {}
  }
}
{
  "error": {
    "code": "validation_error",
    "message": "Request validation failed",
    "param": "query",
    "request_id": "550e8400-e29b-41d4-a716-446655440000",
    "details": {}
  }
}
{
  "error": {
    "code": "validation_error",
    "message": "Request validation failed",
    "param": "query",
    "request_id": "550e8400-e29b-41d4-a716-446655440000",
    "details": {}
  }
}
{
  "error": {
    "code": "validation_error",
    "message": "Request validation failed",
    "param": "query",
    "request_id": "550e8400-e29b-41d4-a716-446655440000",
    "details": {}
  }
}
{
  "error": {
    "code": "validation_error",
    "message": "Request validation failed",
    "param": "query",
    "request_id": "550e8400-e29b-41d4-a716-446655440000",
    "details": {}
  }
}
{
  "error": {
    "code": "validation_error",
    "message": "Request validation failed",
    "param": "query",
    "request_id": "550e8400-e29b-41d4-a716-446655440000",
    "details": {}
  }
}
{
  "error": {
    "code": "validation_error",
    "message": "Request validation failed",
    "param": "query",
    "request_id": "550e8400-e29b-41d4-a716-446655440000",
    "details": {}
  }
}

Authorizations

X-API-Key
string
header
required

Path Parameters

handle
string
required

YouTube channel handle. Accepts a bare handle (techreviews), an @handle (@techreviews), or a full channel URL (https://youtube.com/@techreviews); surrounding share tokens and trailing paths are ignored. A value that is not a channel handle returns a 400 validation error.

Minimum string length: 1
Example:

"@techreviews"

Query Parameters

video_limit
integer
default:5

Number of videos to fetch transcripts for (max 20)

Required range: 1 <= x <= 20
Example:

5

language
string
default:en

Language code for transcripts

Example:

"en"

sort_by
enum<string>
default:newest

How to sort channel videos before selecting

Available options:
popular,
newest,
oldest
Example:

"newest"

include_segments
boolean

Include timestamped transcript segments in response

Example:

false

Response

Successful response

data
object
required