Youtube Video, Audio and Transcript Downloader Actor avatar

Youtube Video, Audio and Transcript Downloader Actor

Pricing

Pay per usage

Go to Apify Store
Youtube Video, Audio and Transcript Downloader Actor

Youtube Video, Audio and Transcript Downloader Actor

Easily download YouTube videos in MP4/Webm, audio (separate), subtitles and transcript.

Pricing

Pay per usage

Rating

0.0

(0)

Developer

Docsie Inc.

Docsie Inc.

Maintained by Community

Actor stats

1

Bookmarked

28

Total users

12

Monthly active users

13 days ago

Last modified

Share

Dokuta YouTube Downloader

Download YouTube videos, audio, and transcripts using yt-dlp with residential proxy support.

Features

  • Video Download: MP4, WebM, MKV formats (360p to 4K)
  • Audio Download: Separate MP3 extraction
  • Transcript Download: YouTube captions/subtitles + plain text
  • H.264 Codec: Universal playback compatibility
  • Residential Proxies: Bypass YouTube IP blocks
  • Batch Downloads: Process multiple URLs in one run

Input

{
"urls": [
{"url": "https://www.youtube.com/watch?v=VIDEO_ID"}
],
"quality": "720",
"format": "mp4",
"audioOnly": false,
"downloadAudio": true,
"downloadTranscript": true,
"transcriptLanguage": "en"
}

Input Parameters

ParameterTypeDefaultDescription
urlsarrayrequiredList of YouTube URLs to download
qualitystring"720"Video quality: 360, 480, 720, 1080, 1440, 2160
formatstring"mp4"Output format: mp4, webm, mkv
audioOnlybooleanfalseDownload audio only (MP3), skip video
downloadAudiobooleanfalseDownload separate MP3 alongside video
downloadTranscriptbooleanfalseDownload subtitles/captions
transcriptLanguagestring"en"Transcript language code (en, es, fr, de, etc.)
maxDurationinteger2400Maximum video duration in seconds (default 40 min, max 2 hours)

Output

Results are pushed to the dataset:

{
"id": "VIDEO_ID",
"title": "Video Title",
"duration": 123,
"thumbnail": "https://...",
"description": "Video description...",
"uploader": "Channel Name",
"view_count": 12345,
"fileSize": 12345678,
"fileKey": "video_VIDEO_ID",
"format": "mp4",
"quality": "720",
"sourceUrl": "https://www.youtube.com/watch?v=...",
"status": "success",
"transcriptKey": "transcript_VIDEO_ID",
"transcriptTextKey": "transcript_text_VIDEO_ID",
"transcriptPreview": "First 500 chars of transcript...",
"transcriptFormat": "srt",
"audioKey": "audio_VIDEO_ID",
"audioSize": 1234567
}

Output Files (Key-Value Store)

KeyDescription
video_VIDEO_IDVideo file (MP4/WebM)
audio_VIDEO_IDAudio file (MP3) - if downloadAudio: true
transcript_VIDEO_IDSubtitle file (SRT/VTT) - if downloadTranscript: true
transcript_text_VIDEO_IDPlain text transcript - if downloadTranscript: true

Usage Examples

Download video only

{
"urls": [{"url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ"}],
"quality": "1080"
}

Download video + transcript

{
"urls": [{"url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ"}],
"quality": "720",
"downloadTranscript": true,
"transcriptLanguage": "en"
}

Download video + audio + transcript

{
"urls": [{"url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ"}],
"quality": "720",
"downloadAudio": true,
"downloadTranscript": true
}

Download audio only

{
"urls": [{"url": "https://www.youtube.com/watch?v=dQw4w9WgXcQ"}],
"audioOnly": true
}

API Usage

import requests
# Start the actor
response = requests.post(
"https://api.apify.com/v2/acts/philippe.trounev~dokuta-youtube-actor/runs",
headers={"Authorization": "Bearer YOUR_API_TOKEN"},
json={
"urls": [{"url": "https://www.youtube.com/watch?v=VIDEO_ID"}],
"quality": "720",
"downloadTranscript": True
}
)
run_id = response.json()["data"]["id"]
# Wait for completion, then get results
results = requests.get(
f"https://api.apify.com/v2/actor-runs/{run_id}/dataset/items",
headers={"Authorization": "Bearer YOUR_API_TOKEN"}
).json()
# Download video file
video_key = results[0]["fileKey"]
video_url = f"https://api.apify.com/v2/actor-runs/{run_id}/key-value-store/records/{video_key}"
# Download transcript (plain text)
transcript_key = results[0].get("transcriptTextKey")
if transcript_key:
transcript_url = f"https://api.apify.com/v2/actor-runs/{run_id}/key-value-store/records/{transcript_key}"

Cost

You pay for:

  • Actor usage: Based on your pricing tier
  • Apify compute: ~$0.05-0.10 per video
  • Residential proxy bandwidth: ~$12.50/GB (Apify's rate)

Typical 720p video (50-100MB) costs ~$0.60-1.25 in proxy bandwidth.

Support

Built by Docsie Inc. - AI-powered documentation platform.

Questions? Visit docsie.io