curl --request POST \
--url https://api.viddyscribe.com/enterprise/api/generate_ad_text \
--header 'Content-Type: application/json' \
--header 'X-API-Key: <api-key>' \
--data '
{
"input": {
"type": "media_id",
"media_id": "550e8400-e29b-41d4-a716-446655440000"
},
"generation_config": {
"language": "en-US",
"format": "json",
"ad_type": "extended_ad"
}
}
'{
"job_id": "task_abc123xyz",
"status": "queued",
"media_id": "550e8400-e29b-41d4-a716-446655440000"
}Generate Audio Description text (VTT, JSON, etc.) for a video.
Supports Input via media_id, url, or direct file upload.
Returns a job_id for tracking progress.
curl --request POST \
--url https://api.viddyscribe.com/enterprise/api/generate_ad_text \
--header 'Content-Type: application/json' \
--header 'X-API-Key: <api-key>' \
--data '
{
"input": {
"type": "media_id",
"media_id": "550e8400-e29b-41d4-a716-446655440000"
},
"generation_config": {
"language": "en-US",
"format": "json",
"ad_type": "extended_ad"
}
}
'{
"job_id": "task_abc123xyz",
"status": "queued",
"media_id": "550e8400-e29b-41d4-a716-446655440000"
}Documentation Index
Fetch the complete documentation index at: https://docs.viddyscribe.com/llms.txt
Use this file to discover all available pages before exploring further.
media_id, use this method.
curl -X POST https://api.viddyscribe.com/enterprise/api/generate_ad_text \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"input": {
"type": "media_id",
"media_id": "550e8400-e29b-41d4-a716-446655440000"
},
"generation_config": {
"language": "en-US",
"format": "vtt",
"ad_type": "extended_ad"
}
}'
curl -X POST https://api.viddyscribe.com/enterprise/api/generate_ad_text \
-H "X-API-Key: YOUR_API_KEY" \
-H "Content-Type: application/json" \
-d '{
"input": {
"type": "url",
"url": "https://example.com/video.mp4"
},
"generation_config": {
"language": "en-US",
"format": "json",
"ad_type": "extended_ad"
}
}'
curl -X POST https://api.viddyscribe.com/enterprise/api/generate_ad_text \
-H "X-API-Key: YOUR_API_KEY" \
-F 'input={"type": "file"}' \
-F "file=@/path/to/video.mp4" \
-F 'generation_config={"language": "en-US", "format": "srt"}'
| Option | Type | Description |
|---|---|---|
auto_fit | boolean | Fits descriptions into detected no-speech zones when possible. |
allow_descriptions_over_music | boolean | Allows descriptions over detected music when no better timing is available. |
custom_captions | object | Uses provided captions for transcript/context instead of auto-generating them. Send { "content": "<VTT/SRT/plaintext>" }; format and filename are optional hints. The server parses, validates, and normalizes the cues automatically. |
| Error | HTTP Status | Description |
|---|---|---|
upload_not_ready | 409 | Returned in the code field when the referenced media is still being verified after upload. Retry shortly. |
upload_failed | 409 | Returned in the code field when the referenced media failed upload verification. Re-upload the video and try again. |
concurrency_limit_exceeded | 429 | Too many concurrent submissions are being validated for the current team. Retry after a short delay. |
API key for authentication. Obtain from your team admin.
Example: X-API-Key: vsk_abc123def456ghi789jkl012mno345pqr678stu901vwx234yz