GET
/v1/schemas/fal/video/veed/subtitles
Accept:
| field | recorded source |
|---|---|
| schema | Source linked above.Source trace2fb1b8b9b97ca9a4baae1c39521a5164673f9064eaaecc5961764733107d3205{
"fetchedAt": 1783487013,
"extractorVersion": "1",
"verifiedAt": null
} |
Request body
8 properties · 2 required · 4 $defs| property | type | description | constraints |
|---|---|---|---|
| preset* | enum | Each style defines fonts, colors, layout, and animation. Two tiers with different pricing: | glass | whisper | glide2 | fusion | glide | terminal · +24 more |
| video_url* | string | Upload or paste a URL to the video you want to subtitle. | length ≥ 1 · length ≤ 2083 · format: uri |
| translation_language | enum | Translate the subtitles into this language. Omit to keep the original spoken language. If you also pass srt_content or srt_file_url, set `language` to its source language for the most reliable translation. | ab | ace | ach | af-ZA | ak | alz · +208 more · nullable |
| customization | PresetCustomization | Runtime customization of a preset. Fields are Optional all the way down so this block can sit under the playground's 'Additional Settings' section without flagging required-field asterisks the user didn't ask for. | nullable |
| vocabulary | VocabularyEntry[] | Optional list of terms to help auto-transcription correctly recognise brand names and domain jargon that providers commonly mis-spell (e.g. "VEED" → "vid"). Ignored when srt_content / srt_file_url is set. | items ≤ 100 · nullable |
| srt_content | string | Paste raw SRT subtitle text. Alternative to srt_file_url. When provided, transcription is skipped. | nullable |
| language | enum | Improves transcription accuracy, and should match the source audio (not output subtitles). | af-ZA | am-ET | ar-AE | ar-BH | ar-DZ | ar-EG · +158 more · nullable |
| srt_file_url | string | Upload or paste a URL to your .srt subtitles file. When provided, transcription is skipped. | length ≥ 1 · length ≤ 2083 · format: uri · nullable |
Types
4 $defsPresetCustomizationobject
Runtime customization of a preset. Fields are Optional all the way down so this block can sit under the playground's 'Additional Settings' section without flagging required-field asterisks the user didn't ask for.
| shadow | enum | Improves readability over bright or busy backgrounds. | none | min | mid | max · nullable |
| text_customizations | TextCustomizations | Text customization keyed by word-importance tier. | nullable |
| position | enum | Vertical placement of static subtitles on screen. | top | center | bottom · nullable |
TextCustomizationobject
Per-tier text overrides. No italic field (preset-dictated, see ENR-2516).
| font | string | Override the font used for this text tier. Must be a supported Google Font — see https://www.veed.io/api/v1/subtitle-renders/fonts for the canonical list. Unrecognized fonts are rejected with a 400. | nullable |
| weight | integer | Font weight 100-900. Values >= 700 render as bold | 100 ≤ n ≤ 900 · nullable |
| color | string | Override the text color for this tier. | nullable |
TextCustomizationsobject
Text customization keyed by word-importance tier.
| highlighted | TextCustomization | Per-tier text overrides. No italic field (preset-dictated, see ENR-2516). | nullable |
| baseline | TextCustomization | Per-tier text overrides. No italic field (preset-dictated, see ENR-2516). | nullable |
VocabularyEntryobject
A term auto-transcription should recognise correctly, plus its common misspellings.
| word* | string | The correctly-spelled term. Brand names, product names, and domain jargon work best. | length ≥ 1 · length ≤ 100 |
| replaces* | string[] | Misspellings that should be replaced with `word`. Matched whole-word and case-insensitively — list each misspelling once; you don't need to enumerate casings (e.g. `['vid']` already covers `Vid`, `VID`). | items ≥ 1 · items ≤ 20 |
Validate a payload
before you spend tokensshell
$ curl -X POST https://modelschemas.com/v1/validate \
-d '{"provider":"fal","endpointId":"veed/subtitles","payload":{…}}'
→ {"valid": false, "errors": [{"path": "#", "keyword": "required", …}]}