API reference · YouTube
youtube/bulk/video-transcript
Integrate this model through SandBase's unified API, with production-ready schemas and examples.
Production endpoint
Send your first request
OpenAI-compatible endpoint with unified authentication and usage tracking.
POST
https://api.sandbase.ai/v1/runModel ID
youtube/bulk/video-transcript01
Input Schema
7 parameters · 0 required · 7 optional
| Parameter | Type | Required | Description |
|---|---|---|---|
end_date | string | Optional | End date for filtering videos by upload date (format: YYYY-MM-DD or ISO 8601, optional). Only applicable and used with channel_url; ignored for youtube_url. Videos uploaded on or before this date will be fetched. |
language | string | Optional | Language of the subtitles in ISO 639-1 format, e.g., `en`, `fr`. Applicable to both youtube_url and channel_url. Leave blank for default language. |
max_videos | integer | Optional | Maximum number of videos to fetch from the channel (optional, default: 10, range: 1 to 200). Only applicable and used with channel_url; ignored for youtube_url. Combine with start_date/end_date for filtered results. · Min: 1 · Max: 200 · Default: 10 |
start_date | string | Optional | Start date for filtering videos by upload date (format: YYYY-MM-DD or ISO 8601, optional). Only applicable and used with channel_url; ignored for youtube_url. Videos uploaded on or after this date will be fetched. |
channel_url | string | Optional | Enter a valid YouTube channel URL (e.g., https://www.youtube.com/channel/UCxxxxxxxxxxxxxxxxxxxxxx or https://www.youtube.com/@channelhandle). Use this to fetch videos from the channel, paired with 'max_videos', 'start_date', and 'end_date' for limiting and filtering results. |
youtube_url | string | Optional | Enter a valid YouTube video URL (e.g., https://www.youtube.com/watch?v=video_id, https://youtu.be/video_id, or https://www.youtube.com/shorts/video_id). Use this for fetching a single video, paired with 'language' for transcript. Do not combine with channel filtering fields. |
include_transcript_text | boolean | Optional | Include the full transcript as a plain string without timestamps (transcript_text field). Default is off to reduce response size. Enable this if you need the transcript as a single text block. · Default: false |
02
Output Schema
| Field | Type | Description |
|---|---|---|
id | string | Unique identifier for the generation task |
status | string | Task status: pending, running, completed, failed, timeout |
model | string | Model used for the generation |
outputs | array | Array of output items |
outputs[].url | string | URL of the generated artifact |
outputs[].content_type | string | MIME type (e.g. image/png, video/mp4) |
error | object | null | Error details if failed, null on success |
error.type | string | Machine-readable error type code |
error.message | string | Human-readable error description |
Async Workflow
This model uses asynchronous execution. Submit a request and poll for the result.
- Submit — POST to /v1/run, receive an
id - Poll — GET /v1/run/{id} until status is
completed,failed, ortimeout - Retrieve — Read
outputsfrom the completed response
03
Code Examples
Ready-to-run snippets
# Step 1: Submit
curl -X POST https://api.sandbase.ai/v1/run \
-H "Content-Type: application/json" \
-H "Authorization: Bearer YOUR_API_KEY" \
-d '{
"model": "youtube/bulk/video-transcript",
"max_videos": 10,
"include_transcript_text": false,
"prompt": "a beautiful sunset over mountains"
}'
# Step 2: Poll result (replace <id>)
curl https://api.sandbase.ai/v1/run/<id> \
-H "Authorization: Bearer YOUR_API_KEY"
