@runware/schemas 0.0.0-20260510231619
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/response-map.json +1902 -0
- package/dist/schemas/requests/architectures/exactly-illustrative.json +252 -0
- package/dist/schemas/requests/architectures/flux-1-dev.json +1103 -0
- package/dist/schemas/requests/architectures/flux-1-kontext-dev.json +855 -0
- package/dist/schemas/requests/architectures/flux-1-schnell.json +911 -0
- package/dist/schemas/requests/architectures/illustrious.json +893 -0
- package/dist/schemas/requests/architectures/noobai.json +893 -0
- package/dist/schemas/requests/architectures/pony.json +893 -0
- package/dist/schemas/requests/architectures/sd-1-5-distilled.json +893 -0
- package/dist/schemas/requests/architectures/sd-1-5-hyper.json +893 -0
- package/dist/schemas/requests/architectures/sd-1-5-lcm.json +893 -0
- package/dist/schemas/requests/architectures/sd-1-5.json +893 -0
- package/dist/schemas/requests/architectures/sd-2-1.json +893 -0
- package/dist/schemas/requests/architectures/sd3.json +847 -0
- package/dist/schemas/requests/architectures/sdxl-distilled.json +893 -0
- package/dist/schemas/requests/architectures/sdxl-hyper.json +893 -0
- package/dist/schemas/requests/architectures/sdxl-lcm.json +893 -0
- package/dist/schemas/requests/architectures/sdxl-lightning.json +893 -0
- package/dist/schemas/requests/architectures/sdxl-turbo.json +893 -0
- package/dist/schemas/requests/architectures/sdxl.json +990 -0
- package/dist/schemas/requests/architectures/z-image-turbo.json +730 -0
- package/dist/schemas/requests/architectures/z-image.json +730 -0
- package/dist/schemas/requests/models/alibaba/alibaba-happyhorse-1-0.json +709 -0
- package/dist/schemas/requests/models/alibaba/alibaba-qwen-image-2-0-pro.json +257 -0
- package/dist/schemas/requests/models/alibaba/alibaba-qwen-image-2-0.json +257 -0
- package/dist/schemas/requests/models/alibaba/alibaba-qwen-image-2512.json +740 -0
- package/dist/schemas/requests/models/alibaba/alibaba-qwen-image-edit-plus.json +571 -0
- package/dist/schemas/requests/models/alibaba/alibaba-qwen-image-edit.json +572 -0
- package/dist/schemas/requests/models/alibaba/alibaba-qwen-image-layered.json +571 -0
- package/dist/schemas/requests/models/alibaba/alibaba-qwen-image.json +744 -0
- package/dist/schemas/requests/models/alibaba/alibaba-qwen2-5-vl-3b-instruct.json +136 -0
- package/dist/schemas/requests/models/alibaba/alibaba-qwen2-5-vl-7b-instruct.json +136 -0
- package/dist/schemas/requests/models/alibaba/alibaba-qwen3-5-27b.json +281 -0
- package/dist/schemas/requests/models/alibaba/alibaba-qwen3-5-397b.json +281 -0
- package/dist/schemas/requests/models/alibaba/alibaba-qwen3-tts-1-7b-base.json +815 -0
- package/dist/schemas/requests/models/alibaba/alibaba-qwen3-tts-1-7b-customvoice.json +759 -0
- package/dist/schemas/requests/models/alibaba/alibaba-qwen3-tts-1-7b-voicedesign.json +749 -0
- package/dist/schemas/requests/models/alibaba/alibaba-wan2-2-a14b-turbo.json +829 -0
- package/dist/schemas/requests/models/alibaba/alibaba-wan2-2-a14b.json +829 -0
- package/dist/schemas/requests/models/alibaba/alibaba-wan2-2-animate.json +848 -0
- package/dist/schemas/requests/models/alibaba/alibaba-wan2-5-preview-image.json +191 -0
- package/dist/schemas/requests/models/alibaba/alibaba-wan2-5-preview.json +568 -0
- package/dist/schemas/requests/models/alibaba/alibaba-wan2-6-flash.json +587 -0
- package/dist/schemas/requests/models/alibaba/alibaba-wan2-6-image.json +238 -0
- package/dist/schemas/requests/models/alibaba/alibaba-wan2-6.json +640 -0
- package/dist/schemas/requests/models/alibaba/alibaba-wan2-7-image-pro.json +364 -0
- package/dist/schemas/requests/models/alibaba/alibaba-wan2-7-image.json +340 -0
- package/dist/schemas/requests/models/alibaba/alibaba-wan2-7.json +685 -0
- package/dist/schemas/requests/models/alibaba/alibaba-z-image-turbo.json +730 -0
- package/dist/schemas/requests/models/alibaba/alibaba-z-image.json +730 -0
- package/dist/schemas/requests/models/alibaba/index.json +15134 -0
- package/dist/schemas/requests/models/anthropic/anthropic-claude-haiku-4-5.json +370 -0
- package/dist/schemas/requests/models/anthropic/anthropic-claude-opus-4-7.json +373 -0
- package/dist/schemas/requests/models/anthropic/anthropic-claude-sonnet-4-6.json +372 -0
- package/dist/schemas/requests/models/anthropic/index.json +1117 -0
- package/dist/schemas/requests/models/bfl/bfl-flux-1-1-pro-ultra.json +317 -0
- package/dist/schemas/requests/models/bfl/bfl-flux-1-1-pro.json +214 -0
- package/dist/schemas/requests/models/bfl/bfl-flux-1-dev.json +1103 -0
- package/dist/schemas/requests/models/bfl/bfl-flux-1-expand-pro.json +266 -0
- package/dist/schemas/requests/models/bfl/bfl-flux-1-fill-pro.json +252 -0
- package/dist/schemas/requests/models/bfl/bfl-flux-1-kontext-dev.json +855 -0
- package/dist/schemas/requests/models/bfl/bfl-flux-1-kontext-max.json +345 -0
- package/dist/schemas/requests/models/bfl/bfl-flux-1-kontext-pro.json +345 -0
- package/dist/schemas/requests/models/bfl/bfl-flux-1-schnell.json +911 -0
- package/dist/schemas/requests/models/bfl/bfl-flux-2-dev.json +569 -0
- package/dist/schemas/requests/models/bfl/bfl-flux-2-flex.json +264 -0
- package/dist/schemas/requests/models/bfl/bfl-flux-2-klein-4b-base.json +570 -0
- package/dist/schemas/requests/models/bfl/bfl-flux-2-klein-4b.json +570 -0
- package/dist/schemas/requests/models/bfl/bfl-flux-2-klein-9b-base.json +570 -0
- package/dist/schemas/requests/models/bfl/bfl-flux-2-klein-9b-kv.json +570 -0
- package/dist/schemas/requests/models/bfl/bfl-flux-2-klein-9b.json +570 -0
- package/dist/schemas/requests/models/bfl/bfl-flux-2-max.json +248 -0
- package/dist/schemas/requests/models/bfl/bfl-flux-2-pro.json +248 -0
- package/dist/schemas/requests/models/bfl/index.json +8774 -0
- package/dist/schemas/requests/models/bria/bria-3-2.json +569 -0
- package/dist/schemas/requests/models/bria/bria-fibo-edit-tools.json +401 -0
- package/dist/schemas/requests/models/bria/bria-fibo-edit.json +253 -0
- package/dist/schemas/requests/models/bria/bria-fibo-lite.json +350 -0
- package/dist/schemas/requests/models/bria/bria-fibo.json +358 -0
- package/dist/schemas/requests/models/bria/bria-image-increase-resolution.json +163 -0
- package/dist/schemas/requests/models/bria/bria-image-replace-background.json +264 -0
- package/dist/schemas/requests/models/bria/bria-rmbg-v2-0.json +153 -0
- package/dist/schemas/requests/models/bria/bria-video-background-removal.json +153 -0
- package/dist/schemas/requests/models/bria/bria-video-eraser.json +361 -0
- package/dist/schemas/requests/models/bria/bria-video-increase-resolution.json +129 -0
- package/dist/schemas/requests/models/bria/index.json +3148 -0
- package/dist/schemas/requests/models/bytedance/bytedance-omnihuman-1-5.json +231 -0
- package/dist/schemas/requests/models/bytedance/bytedance-omnihuman-1.json +191 -0
- package/dist/schemas/requests/models/bytedance/bytedance-seedance-1-0-pro-fast.json +513 -0
- package/dist/schemas/requests/models/bytedance/bytedance-seedance-1-0-pro.json +521 -0
- package/dist/schemas/requests/models/bytedance/bytedance-seedance-1-5-pro.json +683 -0
- package/dist/schemas/requests/models/bytedance/bytedance-seedance-2-0-fast.json +634 -0
- package/dist/schemas/requests/models/bytedance/bytedance-seedance-2-0.json +701 -0
- package/dist/schemas/requests/models/bytedance/bytedance-seedream-4-0.json +424 -0
- package/dist/schemas/requests/models/bytedance/bytedance-seedream-4-5.json +321 -0
- package/dist/schemas/requests/models/bytedance/bytedance-seedream-5-0-lite.json +426 -0
- package/dist/schemas/requests/models/bytedance/bytedance-video-upscaler.json +119 -0
- package/dist/schemas/requests/models/bytedance/index.json +4758 -0
- package/dist/schemas/requests/models/creatify/creatify-aurora-v1-fast.json +199 -0
- package/dist/schemas/requests/models/creatify/creatify-aurora-v1.json +199 -0
- package/dist/schemas/requests/models/creatify/index.json +401 -0
- package/dist/schemas/requests/models/elevenlabs/elevenlabs-flash-v2-5.json +833 -0
- package/dist/schemas/requests/models/elevenlabs/elevenlabs-flash-v2.json +802 -0
- package/dist/schemas/requests/models/elevenlabs/elevenlabs-monolingual-v1.json +802 -0
- package/dist/schemas/requests/models/elevenlabs/elevenlabs-multilingual-v1.json +810 -0
- package/dist/schemas/requests/models/elevenlabs/elevenlabs-multilingual-v2.json +830 -0
- package/dist/schemas/requests/models/elevenlabs/elevenlabs-music-v1.json +877 -0
- package/dist/schemas/requests/models/elevenlabs/elevenlabs-turbo-v2-5.json +833 -0
- package/dist/schemas/requests/models/elevenlabs/elevenlabs-turbo-v2.json +802 -0
- package/dist/schemas/requests/models/elevenlabs/elevenlabs-v3.json +875 -0
- package/dist/schemas/requests/models/elevenlabs/index.json +7460 -0
- package/dist/schemas/requests/models/exactly/exactly-illustrative-training.json +112 -0
- package/dist/schemas/requests/models/exactly/exactly-photo-bright-pulse.json +553 -0
- package/dist/schemas/requests/models/exactly/exactly-photo-distant-reality.json +553 -0
- package/dist/schemas/requests/models/exactly/exactly-photo-extreme-contrast.json +553 -0
- package/dist/schemas/requests/models/exactly/exactly-photo-grain-film-look.json +553 -0
- package/dist/schemas/requests/models/exactly/exactly-photo-journey.json +553 -0
- package/dist/schemas/requests/models/exactly/exactly-photo-warm-light.json +553 -0
- package/dist/schemas/requests/models/exactly/index.json +3428 -0
- package/dist/schemas/requests/models/google/google-gemini-3-1-flash-lite.json +400 -0
- package/dist/schemas/requests/models/google/google-gemini-3-1-flash-tts.json +1384 -0
- package/dist/schemas/requests/models/google/google-gemini-3-1-pro.json +398 -0
- package/dist/schemas/requests/models/google/google-gemini-3-flash.json +400 -0
- package/dist/schemas/requests/models/google/google-imagen-3-fast.json +230 -0
- package/dist/schemas/requests/models/google/google-imagen-3.json +230 -0
- package/dist/schemas/requests/models/google/google-imagen-4-fast.json +230 -0
- package/dist/schemas/requests/models/google/google-imagen-4-preview.json +230 -0
- package/dist/schemas/requests/models/google/google-imagen-4-ultra.json +230 -0
- package/dist/schemas/requests/models/google/google-nano-banana-2.json +983 -0
- package/dist/schemas/requests/models/google/google-nano-banana-pro.json +703 -0
- package/dist/schemas/requests/models/google/google-nano-banana.json +373 -0
- package/dist/schemas/requests/models/google/google-veo-2.json +428 -0
- package/dist/schemas/requests/models/google/google-veo-3-1-fast.json +568 -0
- package/dist/schemas/requests/models/google/google-veo-3-1-lite.json +509 -0
- package/dist/schemas/requests/models/google/google-veo-3-1.json +783 -0
- package/dist/schemas/requests/models/google/google-veo-3-fast.json +411 -0
- package/dist/schemas/requests/models/google/google-veo-3.json +454 -0
- package/dist/schemas/requests/models/google/index.json +8876 -0
- package/dist/schemas/requests/models/heygen/heygen-avatar-iv.json +3066 -0
- package/dist/schemas/requests/models/heygen/heygen-video-agent.json +1522 -0
- package/dist/schemas/requests/models/heygen/index.json +4591 -0
- package/dist/schemas/requests/models/hyper3d/hyper3d-rodin-gen-2.json +355 -0
- package/dist/schemas/requests/models/hyper3d/index.json +359 -0
- package/dist/schemas/requests/models/ideogram/ideogram-1-0-remix.json +473 -0
- package/dist/schemas/requests/models/ideogram/ideogram-1-0.json +427 -0
- package/dist/schemas/requests/models/ideogram/ideogram-2-0-edit.json +322 -0
- package/dist/schemas/requests/models/ideogram/ideogram-2-0-reframe.json +1138 -0
- package/dist/schemas/requests/models/ideogram/ideogram-2-0-remix.json +1219 -0
- package/dist/schemas/requests/models/ideogram/ideogram-2-0.json +1173 -0
- package/dist/schemas/requests/models/ideogram/ideogram-2a-remix.json +1148 -0
- package/dist/schemas/requests/models/ideogram/ideogram-2a.json +1102 -0
- package/dist/schemas/requests/models/ideogram/ideogram-3-0-edit.json +538 -0
- package/dist/schemas/requests/models/ideogram/ideogram-3-0-reframe.json +1204 -0
- package/dist/schemas/requests/models/ideogram/ideogram-3-0-remix.json +1325 -0
- package/dist/schemas/requests/models/ideogram/ideogram-3-0-replace-background.json +427 -0
- package/dist/schemas/requests/models/ideogram/ideogram-3-0.json +1225 -0
- package/dist/schemas/requests/models/ideogram/index.json +11713 -0
- package/dist/schemas/requests/models/imagineart/imagineart-1-5-pro.json +283 -0
- package/dist/schemas/requests/models/imagineart/imagineart-1-5.json +272 -0
- package/dist/schemas/requests/models/imagineart/imagineart-2-0.json +486 -0
- package/dist/schemas/requests/models/imagineart/index.json +1043 -0
- package/dist/schemas/requests/models/inworld/index.json +3062 -0
- package/dist/schemas/requests/models/inworld/inworld-tts-1-5-max.json +807 -0
- package/dist/schemas/requests/models/inworld/inworld-tts-1-5-mini.json +807 -0
- package/dist/schemas/requests/models/inworld/inworld-tts-2.json +1446 -0
- package/dist/schemas/requests/models/klingai/index.json +11714 -0
- package/dist/schemas/requests/models/klingai/klingai-1-0-pro.json +319 -0
- package/dist/schemas/requests/models/klingai/klingai-1-0-standard.json +319 -0
- package/dist/schemas/requests/models/klingai/klingai-1-5-pro.json +308 -0
- package/dist/schemas/requests/models/klingai/klingai-1-5-standard.json +296 -0
- package/dist/schemas/requests/models/klingai/klingai-1-6-pro.json +304 -0
- package/dist/schemas/requests/models/klingai/klingai-1-6-standard.json +311 -0
- package/dist/schemas/requests/models/klingai/klingai-2-0-master.json +319 -0
- package/dist/schemas/requests/models/klingai/klingai-2-1-master.json +311 -0
- package/dist/schemas/requests/models/klingai/klingai-2-1-pro.json +320 -0
- package/dist/schemas/requests/models/klingai/klingai-2-1-standard.json +300 -0
- package/dist/schemas/requests/models/klingai/klingai-2-5-turbo-pro.json +319 -0
- package/dist/schemas/requests/models/klingai/klingai-2-5-turbo-standard.json +251 -0
- package/dist/schemas/requests/models/klingai/klingai-avatar-2-0-pro.json +189 -0
- package/dist/schemas/requests/models/klingai/klingai-avatar-2-0-standard.json +189 -0
- package/dist/schemas/requests/models/klingai/klingai-image-3-0.json +443 -0
- package/dist/schemas/requests/models/klingai/klingai-image-o1.json +444 -0
- package/dist/schemas/requests/models/klingai/klingai-image-o3.json +473 -0
- package/dist/schemas/requests/models/klingai/klingai-lip-sync.json +210 -0
- package/dist/schemas/requests/models/klingai/klingai-video-2-6-pro.json +493 -0
- package/dist/schemas/requests/models/klingai/klingai-video-2-6-standard.json +326 -0
- package/dist/schemas/requests/models/klingai/klingai-video-3-0-4k.json +551 -0
- package/dist/schemas/requests/models/klingai/klingai-video-3-0-pro.json +765 -0
- package/dist/schemas/requests/models/klingai/klingai-video-3-0-standard.json +765 -0
- package/dist/schemas/requests/models/klingai/klingai-video-o1-pro.json +534 -0
- package/dist/schemas/requests/models/klingai/klingai-video-o1-standard.json +528 -0
- package/dist/schemas/requests/models/klingai/klingai-video-o3-4k.json +512 -0
- package/dist/schemas/requests/models/klingai/klingai-video-o3-pro.json +819 -0
- package/dist/schemas/requests/models/klingai/klingai-video-o3-standard.json +819 -0
- package/dist/schemas/requests/models/lightricks/index.json +2356 -0
- package/dist/schemas/requests/models/lightricks/lightricks-ltx-2-3-fast.json +438 -0
- package/dist/schemas/requests/models/lightricks/lightricks-ltx-2-3.json +517 -0
- package/dist/schemas/requests/models/lightricks/lightricks-ltx-2-fast.json +328 -0
- package/dist/schemas/requests/models/lightricks/lightricks-ltx-2-pro.json +482 -0
- package/dist/schemas/requests/models/lightricks/lightricks-ltx-2-retake.json +289 -0
- package/dist/schemas/requests/models/lightricks/lightricks-ltx-2.json +303 -0
- package/dist/schemas/requests/models/luma/index.json +1049 -0
- package/dist/schemas/requests/models/luma/luma-uni-1-max.json +523 -0
- package/dist/schemas/requests/models/luma/luma-uni-1.json +523 -0
- package/dist/schemas/requests/models/memories/index.json +241 -0
- package/dist/schemas/requests/models/memories/memories-video-age-detection.json +119 -0
- package/dist/schemas/requests/models/memories/memories-video-captioning.json +119 -0
- package/dist/schemas/requests/models/meshy/index.json +583 -0
- package/dist/schemas/requests/models/meshy/meshy-6.json +579 -0
- package/dist/schemas/requests/models/meta/index.json +298 -0
- package/dist/schemas/requests/models/meta/meta-llava-1-6-mistral-7b.json +136 -0
- package/dist/schemas/requests/models/meta/meta-sam-3d-objects.json +159 -0
- package/dist/schemas/requests/models/microsoft/index.json +326 -0
- package/dist/schemas/requests/models/microsoft/microsoft-trellis-2.json +322 -0
- package/dist/schemas/requests/models/minimax/index.json +5629 -0
- package/dist/schemas/requests/models/minimax/minimax-01-director.json +296 -0
- package/dist/schemas/requests/models/minimax/minimax-01-live.json +296 -0
- package/dist/schemas/requests/models/minimax/minimax-01.json +322 -0
- package/dist/schemas/requests/models/minimax/minimax-hailuo-02.json +345 -0
- package/dist/schemas/requests/models/minimax/minimax-hailuo-2-3-fast.json +383 -0
- package/dist/schemas/requests/models/minimax/minimax-hailuo-2-3.json +362 -0
- package/dist/schemas/requests/models/minimax/minimax-m2-5.json +349 -0
- package/dist/schemas/requests/models/minimax/minimax-m2-7-highspeed.json +291 -0
- package/dist/schemas/requests/models/minimax/minimax-m2-7.json +291 -0
- package/dist/schemas/requests/models/minimax/minimax-music-2-6.json +858 -0
- package/dist/schemas/requests/models/minimax/minimax-music-cover.json +730 -0
- package/dist/schemas/requests/models/minimax/minimax-speech-2-8.json +1113 -0
- package/dist/schemas/requests/models/mirelo/index.json +813 -0
- package/dist/schemas/requests/models/mirelo/mirelo-sfx-1-5.json +809 -0
- package/dist/schemas/requests/models/moonshotai/index.json +415 -0
- package/dist/schemas/requests/models/moonshotai/moonshotai-kimi-k2-6.json +411 -0
- package/dist/schemas/requests/models/openai/index.json +4198 -0
- package/dist/schemas/requests/models/openai/openai-clip-vit-l-14.json +136 -0
- package/dist/schemas/requests/models/openai/openai-dalle-2.json +214 -0
- package/dist/schemas/requests/models/openai/openai-dalle-3.json +252 -0
- package/dist/schemas/requests/models/openai/openai-gpt-5-4-mini.json +331 -0
- package/dist/schemas/requests/models/openai/openai-gpt-5-4-nano.json +331 -0
- package/dist/schemas/requests/models/openai/openai-gpt-5-4-pro.json +331 -0
- package/dist/schemas/requests/models/openai/openai-gpt-5-4.json +331 -0
- package/dist/schemas/requests/models/openai/openai-gpt-5-5.json +318 -0
- package/dist/schemas/requests/models/openai/openai-gpt-image-1-5.json +318 -0
- package/dist/schemas/requests/models/openai/openai-gpt-image-1-mini.json +318 -0
- package/dist/schemas/requests/models/openai/openai-gpt-image-1.json +318 -0
- package/dist/schemas/requests/models/openai/openai-gpt-image-2.json +267 -0
- package/dist/schemas/requests/models/openai/openai-sora-2-pro.json +382 -0
- package/dist/schemas/requests/models/openai/openai-sora-2.json +360 -0
- package/dist/schemas/requests/models/picsart/index.json +125 -0
- package/dist/schemas/requests/models/picsart/picsart-image-vectorizer.json +121 -0
- package/dist/schemas/requests/models/pixverse/index.json +7029 -0
- package/dist/schemas/requests/models/pixverse/pixverse-lipsync.json +222 -0
- package/dist/schemas/requests/models/pixverse/pixverse-modify.json +253 -0
- package/dist/schemas/requests/models/pixverse/pixverse-v3-5.json +911 -0
- package/dist/schemas/requests/models/pixverse/pixverse-v4-5.json +1040 -0
- package/dist/schemas/requests/models/pixverse/pixverse-v4.json +1040 -0
- package/dist/schemas/requests/models/pixverse/pixverse-v5-5.json +732 -0
- package/dist/schemas/requests/models/pixverse/pixverse-v5-6.json +726 -0
- package/dist/schemas/requests/models/pixverse/pixverse-v5-fast.json +573 -0
- package/dist/schemas/requests/models/pixverse/pixverse-v5.json +711 -0
- package/dist/schemas/requests/models/pixverse/pixverse-v6.json +826 -0
- package/dist/schemas/requests/models/prunaai/index.json +1628 -0
- package/dist/schemas/requests/models/prunaai/prunaai-p-image-edit.json +347 -0
- package/dist/schemas/requests/models/prunaai/prunaai-p-image-upscale.json +158 -0
- package/dist/schemas/requests/models/prunaai/prunaai-p-image.json +175 -0
- package/dist/schemas/requests/models/prunaai/prunaai-p-video-avatar.json +393 -0
- package/dist/schemas/requests/models/prunaai/prunaai-p-video.json +555 -0
- package/dist/schemas/requests/models/recraft/index.json +1583 -0
- package/dist/schemas/requests/models/recraft/recraft-v4-pro-vector.json +335 -0
- package/dist/schemas/requests/models/recraft/recraft-v4-pro.json +396 -0
- package/dist/schemas/requests/models/recraft/recraft-v4-vector.json +335 -0
- package/dist/schemas/requests/models/recraft/recraft-v4.json +396 -0
- package/dist/schemas/requests/models/recraft/recraft-vectorize.json +121 -0
- package/dist/schemas/requests/models/rundiffusion/index.json +3849 -0
- package/dist/schemas/requests/models/rundiffusion/rundiffusion-juggernaut-base-flux.json +1103 -0
- package/dist/schemas/requests/models/rundiffusion/rundiffusion-juggernaut-lightning-flux.json +911 -0
- package/dist/schemas/requests/models/rundiffusion/rundiffusion-juggernaut-pro-flux.json +1103 -0
- package/dist/schemas/requests/models/rundiffusion/rundiffusion-juggernaut-z.json +731 -0
- package/dist/schemas/requests/models/runware/ace-step-v1-5-base.json +1005 -0
- package/dist/schemas/requests/models/runware/ace-step-v1-5-turbo.json +1005 -0
- package/dist/schemas/requests/models/runware/birefnet-dis.json +131 -0
- package/dist/schemas/requests/models/runware/birefnet-general-resolution-512x512-fp16.json +131 -0
- package/dist/schemas/requests/models/runware/birefnet-general.json +131 -0
- package/dist/schemas/requests/models/runware/birefnet-hrsod-dhu.json +131 -0
- package/dist/schemas/requests/models/runware/birefnet-massive-tr-dis5k-tr-tes.json +131 -0
- package/dist/schemas/requests/models/runware/birefnet-matting.json +131 -0
- package/dist/schemas/requests/models/runware/birefnet-portrait.json +131 -0
- package/dist/schemas/requests/models/runware/birefnet-v1-base-cod.json +131 -0
- package/dist/schemas/requests/models/runware/birefnet-v1-base.json +131 -0
- package/dist/schemas/requests/models/runware/bria-rmbg-v2-0-open.json +131 -0
- package/dist/schemas/requests/models/runware/ccsr.json +187 -0
- package/dist/schemas/requests/models/runware/clarity.json +277 -0
- package/dist/schemas/requests/models/runware/dia-1-6b.json +742 -0
- package/dist/schemas/requests/models/runware/dia2-2b.json +809 -0
- package/dist/schemas/requests/models/runware/flux-1-dev-srpo.json +1103 -0
- package/dist/schemas/requests/models/runware/flux-krea.json +1103 -0
- package/dist/schemas/requests/models/runware/hidream-i1-dev.json +448 -0
- package/dist/schemas/requests/models/runware/hidream-i1-fast.json +448 -0
- package/dist/schemas/requests/models/runware/hidream-i1-full.json +448 -0
- package/dist/schemas/requests/models/runware/index.json +11773 -0
- package/dist/schemas/requests/models/runware/kandinsky-5-0-image-lite.json +469 -0
- package/dist/schemas/requests/models/runware/kandinsky-5-0-lite.json +312 -0
- package/dist/schemas/requests/models/runware/llama-3-1-8b-prompt-enhancer.json +81 -0
- package/dist/schemas/requests/models/runware/object-eraser.json +221 -0
- package/dist/schemas/requests/models/runware/open-age-detection.json +131 -0
- package/dist/schemas/requests/models/runware/ovi.json +313 -0
- package/dist/schemas/requests/models/runware/qwen2-5-vl-7b-age-detector.json +131 -0
- package/dist/schemas/requests/models/runware/real-esrgan.json +140 -0
- package/dist/schemas/requests/models/runware/rembg-v1-4.json +199 -0
- package/dist/schemas/requests/models/runware/stable-diffusion-latent-upscaler.json +184 -0
- package/dist/schemas/requests/models/runware/swinir.json +140 -0
- package/dist/schemas/requests/models/runware/twinflow-z-image-turbo.json +465 -0
- package/dist/schemas/requests/models/runware/vit-age-classifier.json +131 -0
- package/dist/schemas/requests/models/runway/index.json +1983 -0
- package/dist/schemas/requests/models/runway/runway-aleph.json +359 -0
- package/dist/schemas/requests/models/runway/runway-gen-4-5.json +394 -0
- package/dist/schemas/requests/models/runway/runway-gen-4-image-turbo.json +428 -0
- package/dist/schemas/requests/models/runway/runway-gen-4-image.json +425 -0
- package/dist/schemas/requests/models/runway/runway-gen-4-turbo.json +377 -0
- package/dist/schemas/requests/models/skywork/index.json +811 -0
- package/dist/schemas/requests/models/skywork/skywork-skyreels-v4.json +807 -0
- package/dist/schemas/requests/models/sourceful/index.json +3421 -0
- package/dist/schemas/requests/models/sourceful/sourceful-riverflow-1-1-mini.json +331 -0
- package/dist/schemas/requests/models/sourceful/sourceful-riverflow-1-1-pro.json +331 -0
- package/dist/schemas/requests/models/sourceful/sourceful-riverflow-1-1.json +331 -0
- package/dist/schemas/requests/models/sourceful/sourceful-riverflow-2-0-fast.json +454 -0
- package/dist/schemas/requests/models/sourceful/sourceful-riverflow-2-0-pro.json +564 -0
- package/dist/schemas/requests/models/sourceful/sourceful-riverflow-2-preview-fast.json +471 -0
- package/dist/schemas/requests/models/sourceful/sourceful-riverflow-2-preview-max.json +471 -0
- package/dist/schemas/requests/models/sourceful/sourceful-riverflow-2-preview-standard.json +471 -0
- package/dist/schemas/requests/models/stabilityai/index.json +1832 -0
- package/dist/schemas/requests/models/stabilityai/stabilityai-stable-diffusion-3.json +843 -0
- package/dist/schemas/requests/models/stabilityai/stabilityai-stable-diffusion-xl-v1-0-vae-fix.json +986 -0
- package/dist/schemas/requests/models/sync/index.json +1506 -0
- package/dist/schemas/requests/models/sync/sync-3.json +534 -0
- package/dist/schemas/requests/models/sync/sync-lipsync-2-pro.json +334 -0
- package/dist/schemas/requests/models/sync/sync-lipsync-2.json +334 -0
- package/dist/schemas/requests/models/sync/sync-react-1.json +303 -0
- package/dist/schemas/requests/models/tencent/index.json +1075 -0
- package/dist/schemas/requests/models/tencent/tencent-hunyuan-3d-3-1-pro.json +236 -0
- package/dist/schemas/requests/models/tencent/tencent-hunyuan-3d-3-1-rapid.json +260 -0
- package/dist/schemas/requests/models/tencent/tencent-hunyuanimage-3-0.json +577 -0
- package/dist/schemas/requests/models/topazlabs/index.json +146 -0
- package/dist/schemas/requests/models/topazlabs/topazlabs-starlight-precise-2-5.json +142 -0
- package/dist/schemas/requests/models/tripo/index.json +481 -0
- package/dist/schemas/requests/models/tripo/tripo-v3-1.json +477 -0
- package/dist/schemas/requests/models/veed/index.json +286 -0
- package/dist/schemas/requests/models/veed/veed-fabric-1-0.json +282 -0
- package/dist/schemas/requests/models/vidu/index.json +4290 -0
- package/dist/schemas/requests/models/vidu/vidu-1-5.json +531 -0
- package/dist/schemas/requests/models/vidu/vidu-2-0.json +472 -0
- package/dist/schemas/requests/models/vidu/vidu-q1-classic.json +316 -0
- package/dist/schemas/requests/models/vidu/vidu-q1-image.json +244 -0
- package/dist/schemas/requests/models/vidu/vidu-q1.json +459 -0
- package/dist/schemas/requests/models/vidu/vidu-q2-pro.json +591 -0
- package/dist/schemas/requests/models/vidu/vidu-q2-turbo.json +591 -0
- package/dist/schemas/requests/models/vidu/vidu-q3-turbo.json +537 -0
- package/dist/schemas/requests/models/vidu/vidu-q3.json +553 -0
- package/dist/schemas/requests/models/xai/index.json +2950 -0
- package/dist/schemas/requests/models/xai/xai-grok-imagine-image-pro.json +563 -0
- package/dist/schemas/requests/models/xai/xai-grok-imagine-image-quality.json +563 -0
- package/dist/schemas/requests/models/xai/xai-grok-imagine-image.json +419 -0
- package/dist/schemas/requests/models/xai/xai-grok-imagine-video.json +670 -0
- package/dist/schemas/requests/models/xai/xai-tts.json +735 -0
- package/dist/schemas/requests/models/zai/index.json +794 -0
- package/dist/schemas/requests/models/zai/zai-glm-4-7.json +231 -0
- package/dist/schemas/requests/models/zai/zai-glm-5-1.json +326 -0
- package/dist/schemas/requests/models/zai/zai-glm-image.json +235 -0
- package/dist/schemas/requests/types/3d.json +97 -0
- package/dist/schemas/requests/types/audio.json +676 -0
- package/dist/schemas/requests/types/caption-image.json +132 -0
- package/dist/schemas/requests/types/caption-video.json +120 -0
- package/dist/schemas/requests/types/caption.json +63 -0
- package/dist/schemas/requests/types/image.json +152 -0
- package/dist/schemas/requests/types/prompt-enhance.json +82 -0
- package/dist/schemas/requests/types/remove-background-image.json +132 -0
- package/dist/schemas/requests/types/remove-background-video.json +120 -0
- package/dist/schemas/requests/types/remove-background.json +63 -0
- package/dist/schemas/requests/types/text.json +126 -0
- package/dist/schemas/requests/types/training.json +43 -0
- package/dist/schemas/requests/types/upscale-image.json +132 -0
- package/dist/schemas/requests/types/upscale-video.json +120 -0
- package/dist/schemas/requests/types/upscale.json +63 -0
- package/dist/schemas/requests/types/vectorize.json +91 -0
- package/dist/schemas/requests/types/video.json +151 -0
- package/dist/schemas/requests/utilities/account-management.json +33 -0
- package/dist/schemas/requests/utilities/authentication.json +29 -0
- package/dist/schemas/requests/utilities/get-response.json +24 -0
- package/dist/schemas/requests/utilities/get-task-details.json +24 -0
- package/dist/schemas/requests/utilities/image-upload.json +39 -0
- package/dist/schemas/requests/utilities/model-search.json +357 -0
- package/dist/schemas/requests/utilities/model-upload.json +407 -0
- package/dist/schemas/requests/utilities/ping.json +21 -0
- package/dist/schemas/responses/errors/error.json +49 -0
- package/dist/schemas/responses/utilities/account-management.json +262 -0
- package/dist/schemas/responses/utilities/authentication.json +23 -0
- package/dist/schemas/responses/utilities/get-response.json +59 -0
- package/dist/schemas/responses/utilities/get-task-details.json +41 -0
- package/dist/schemas/responses/utilities/image-upload.json +29 -0
- package/dist/schemas/responses/utilities/model-search.json +111 -0
- package/dist/schemas/responses/utilities/model-upload.json +48 -0
- package/dist/schemas/responses/utilities/ping.json +15 -0
- package/package.json +16 -0
|
@@ -0,0 +1,4290 @@
|
|
|
1
|
+
{
|
|
2
|
+
"$schema": "https://json-schema.org/draft/2019-09/schema",
|
|
3
|
+
"oneOf": [
|
|
4
|
+
{
|
|
5
|
+
"type": "object",
|
|
6
|
+
"properties": {
|
|
7
|
+
"model": {
|
|
8
|
+
"title": "Model",
|
|
9
|
+
"description": "Identifier of the model to use for generation.",
|
|
10
|
+
"type": "string",
|
|
11
|
+
"const": "vidu:1@5"
|
|
12
|
+
},
|
|
13
|
+
"inputs": {
|
|
14
|
+
"title": "Inputs",
|
|
15
|
+
"description": "The unified payload wrapper for complex media assets dictating image, video or audio inference constraints.",
|
|
16
|
+
"type": "object",
|
|
17
|
+
"properties": {
|
|
18
|
+
"referenceImages": {
|
|
19
|
+
"title": "Reference Images",
|
|
20
|
+
"description": "List of reference images (UUID, URL, Data URI, or Base64).",
|
|
21
|
+
"type": "array",
|
|
22
|
+
"minItems": 1,
|
|
23
|
+
"items": {
|
|
24
|
+
"title": "Image",
|
|
25
|
+
"description": "Image input (UUID, URL, Data URI, or Base64).",
|
|
26
|
+
"type": "string",
|
|
27
|
+
"anyOf": [
|
|
28
|
+
{
|
|
29
|
+
"format": "uuid"
|
|
30
|
+
},
|
|
31
|
+
{
|
|
32
|
+
"format": "uri"
|
|
33
|
+
},
|
|
34
|
+
{
|
|
35
|
+
"pattern": "^data:image\\/[a-zA-Z]+;base64,[a-zA-Z0-9+/=]+$"
|
|
36
|
+
},
|
|
37
|
+
{
|
|
38
|
+
"pattern": "^[a-zA-Z0-9+/=]+$"
|
|
39
|
+
}
|
|
40
|
+
]
|
|
41
|
+
},
|
|
42
|
+
"maxItems": 1
|
|
43
|
+
},
|
|
44
|
+
"frameImages": {
|
|
45
|
+
"title": "Frame Images",
|
|
46
|
+
"description": "List of frame-specific image inputs. Each item can be either a plain image input (UUID, URL, Data URI, or Base64) or an object with an image and a target frame position.",
|
|
47
|
+
"type": "array",
|
|
48
|
+
"minItems": 1,
|
|
49
|
+
"items": {
|
|
50
|
+
"anyOf": [
|
|
51
|
+
{
|
|
52
|
+
"title": "Image",
|
|
53
|
+
"description": "Image input (UUID, URL, Data URI, or Base64).",
|
|
54
|
+
"type": "string",
|
|
55
|
+
"anyOf": [
|
|
56
|
+
{
|
|
57
|
+
"format": "uuid"
|
|
58
|
+
},
|
|
59
|
+
{
|
|
60
|
+
"format": "uri"
|
|
61
|
+
},
|
|
62
|
+
{
|
|
63
|
+
"pattern": "^data:image\\/[a-zA-Z]+;base64,[a-zA-Z0-9+/=]+$"
|
|
64
|
+
},
|
|
65
|
+
{
|
|
66
|
+
"pattern": "^[a-zA-Z0-9+/=]+$"
|
|
67
|
+
}
|
|
68
|
+
]
|
|
69
|
+
},
|
|
70
|
+
{
|
|
71
|
+
"type": "object",
|
|
72
|
+
"properties": {
|
|
73
|
+
"image": {
|
|
74
|
+
"title": "Image",
|
|
75
|
+
"description": "Image input (UUID, URL, Data URI, or Base64).",
|
|
76
|
+
"type": "string",
|
|
77
|
+
"anyOf": [
|
|
78
|
+
{
|
|
79
|
+
"format": "uuid"
|
|
80
|
+
},
|
|
81
|
+
{
|
|
82
|
+
"format": "uri"
|
|
83
|
+
},
|
|
84
|
+
{
|
|
85
|
+
"pattern": "^data:image\\/[a-zA-Z]+;base64,[a-zA-Z0-9+/=]+$"
|
|
86
|
+
},
|
|
87
|
+
{
|
|
88
|
+
"pattern": "^[a-zA-Z0-9+/=]+$"
|
|
89
|
+
}
|
|
90
|
+
]
|
|
91
|
+
},
|
|
92
|
+
"frame": {
|
|
93
|
+
"title": "Frame",
|
|
94
|
+
"description": "Target frame position for the image. Supports first and last frame.",
|
|
95
|
+
"oneOf": [
|
|
96
|
+
{
|
|
97
|
+
"const": "first",
|
|
98
|
+
"description": "First frame of the video."
|
|
99
|
+
},
|
|
100
|
+
{
|
|
101
|
+
"const": "last",
|
|
102
|
+
"description": "Last frame of the video."
|
|
103
|
+
},
|
|
104
|
+
{
|
|
105
|
+
"const": 0,
|
|
106
|
+
"description": "Frame index 0 (first frame)."
|
|
107
|
+
},
|
|
108
|
+
{
|
|
109
|
+
"const": -1,
|
|
110
|
+
"description": "Frame index -1 (last frame)."
|
|
111
|
+
}
|
|
112
|
+
]
|
|
113
|
+
}
|
|
114
|
+
},
|
|
115
|
+
"required": [
|
|
116
|
+
"image"
|
|
117
|
+
],
|
|
118
|
+
"additionalProperties": false
|
|
119
|
+
}
|
|
120
|
+
]
|
|
121
|
+
},
|
|
122
|
+
"maxItems": 2
|
|
123
|
+
}
|
|
124
|
+
},
|
|
125
|
+
"additionalProperties": false
|
|
126
|
+
},
|
|
127
|
+
"positivePrompt": {
|
|
128
|
+
"title": "Positive Prompt",
|
|
129
|
+
"description": "Text prompt describing elements to include in the generated output.",
|
|
130
|
+
"type": "string",
|
|
131
|
+
"minLength": 2,
|
|
132
|
+
"maxLength": 3000
|
|
133
|
+
},
|
|
134
|
+
"width": {
|
|
135
|
+
"title": "Width",
|
|
136
|
+
"description": "Width of the generated media in pixels.",
|
|
137
|
+
"type": "integer"
|
|
138
|
+
},
|
|
139
|
+
"height": {
|
|
140
|
+
"title": "Height",
|
|
141
|
+
"description": "Height of the generated media in pixels.",
|
|
142
|
+
"type": "integer"
|
|
143
|
+
},
|
|
144
|
+
"duration": {
|
|
145
|
+
"title": "Duration",
|
|
146
|
+
"description": "Length of the generated video in seconds. The total number of frames produced is determined by duration multiplied by the model's frame rate (fps).",
|
|
147
|
+
"type": "number",
|
|
148
|
+
"enum": [
|
|
149
|
+
4,
|
|
150
|
+
8
|
|
151
|
+
],
|
|
152
|
+
"default": 4
|
|
153
|
+
},
|
|
154
|
+
"seed": {
|
|
155
|
+
"title": "Seed",
|
|
156
|
+
"description": "Random seed for reproducible generation. When not provided, a random seed is generated in the unsigned 32-bit range.",
|
|
157
|
+
"type": "integer",
|
|
158
|
+
"minimum": 0,
|
|
159
|
+
"maximum": 2147483647
|
|
160
|
+
},
|
|
161
|
+
"providerSettings": {
|
|
162
|
+
"title": "Provider Settings",
|
|
163
|
+
"description": "Provider-specific configuration settings.",
|
|
164
|
+
"type": "object",
|
|
165
|
+
"properties": {
|
|
166
|
+
"vidu": {
|
|
167
|
+
"title": "Vidu Settings",
|
|
168
|
+
"description": "Provider-specific settings for Vidu.",
|
|
169
|
+
"type": "object",
|
|
170
|
+
"properties": {
|
|
171
|
+
"bgm": {
|
|
172
|
+
"title": "BGM",
|
|
173
|
+
"description": "Enable background music generation.",
|
|
174
|
+
"type": "boolean",
|
|
175
|
+
"default": false
|
|
176
|
+
},
|
|
177
|
+
"movementAmplitude": {
|
|
178
|
+
"title": "Movement Amplitude",
|
|
179
|
+
"description": "Movement intensity in the generated video.",
|
|
180
|
+
"type": "string",
|
|
181
|
+
"oneOf": [
|
|
182
|
+
{
|
|
183
|
+
"const": "auto",
|
|
184
|
+
"description": "Automatically determines movement level based on content."
|
|
185
|
+
},
|
|
186
|
+
{
|
|
187
|
+
"const": "small",
|
|
188
|
+
"description": "Minimal movement with subtle animations."
|
|
189
|
+
},
|
|
190
|
+
{
|
|
191
|
+
"const": "medium",
|
|
192
|
+
"description": "Moderate movement with balanced dynamics."
|
|
193
|
+
},
|
|
194
|
+
{
|
|
195
|
+
"const": "large",
|
|
196
|
+
"description": "High movement with pronounced animations."
|
|
197
|
+
}
|
|
198
|
+
],
|
|
199
|
+
"default": "auto"
|
|
200
|
+
},
|
|
201
|
+
"style": {
|
|
202
|
+
"title": "Style",
|
|
203
|
+
"description": "Visual style.",
|
|
204
|
+
"type": "string",
|
|
205
|
+
"oneOf": [
|
|
206
|
+
{
|
|
207
|
+
"const": "general",
|
|
208
|
+
"description": "Standard photorealistic style."
|
|
209
|
+
},
|
|
210
|
+
{
|
|
211
|
+
"const": "anime",
|
|
212
|
+
"description": "Anime/manga visual aesthetic."
|
|
213
|
+
}
|
|
214
|
+
],
|
|
215
|
+
"default": "general"
|
|
216
|
+
}
|
|
217
|
+
},
|
|
218
|
+
"additionalProperties": false
|
|
219
|
+
}
|
|
220
|
+
},
|
|
221
|
+
"additionalProperties": false
|
|
222
|
+
},
|
|
223
|
+
"taskType": {
|
|
224
|
+
"title": "Task Type",
|
|
225
|
+
"description": "Identifier for the type of task being performed",
|
|
226
|
+
"type": "string",
|
|
227
|
+
"const": "videoInference"
|
|
228
|
+
},
|
|
229
|
+
"taskUUID": {
|
|
230
|
+
"title": "Task UUID",
|
|
231
|
+
"description": "UUID v4 identifier for tracking tasks and matching async responses. Must be unique per task.",
|
|
232
|
+
"type": "string",
|
|
233
|
+
"format": "uuid"
|
|
234
|
+
},
|
|
235
|
+
"webhookURL": {
|
|
236
|
+
"title": "Webhook URL",
|
|
237
|
+
"description": "Specifies a webhook URL where JSON responses will be sent via HTTP POST when generation tasks complete. For batch requests with multiple results, each completed item triggers a separate webhook call as it becomes available.",
|
|
238
|
+
"type": "string",
|
|
239
|
+
"format": "uri"
|
|
240
|
+
},
|
|
241
|
+
"includeCost": {
|
|
242
|
+
"title": "Include Cost",
|
|
243
|
+
"description": "Include task cost in the response.",
|
|
244
|
+
"type": "boolean",
|
|
245
|
+
"default": false
|
|
246
|
+
},
|
|
247
|
+
"numberResults": {
|
|
248
|
+
"title": "Number of Results",
|
|
249
|
+
"description": "Number of results to generate. Each result uses a different seed, producing variations of the same parameters.",
|
|
250
|
+
"type": "integer",
|
|
251
|
+
"minimum": 1,
|
|
252
|
+
"default": 1,
|
|
253
|
+
"maximum": 4
|
|
254
|
+
},
|
|
255
|
+
"uploadEndpoint": {
|
|
256
|
+
"title": "Upload Endpoint",
|
|
257
|
+
"description": "URL to upload content via HTTP PUT. The request body will contain the raw binary data.",
|
|
258
|
+
"type": "string",
|
|
259
|
+
"format": "uri"
|
|
260
|
+
},
|
|
261
|
+
"ttl": {
|
|
262
|
+
"title": "TTL",
|
|
263
|
+
"description": "Time-to-live (TTL) in seconds for generated content. Only applies when `outputType` is `URL`.",
|
|
264
|
+
"type": "integer",
|
|
265
|
+
"minimum": 60
|
|
266
|
+
},
|
|
267
|
+
"outputType": {
|
|
268
|
+
"title": "Output Type",
|
|
269
|
+
"description": "Video output type.",
|
|
270
|
+
"type": "string",
|
|
271
|
+
"enum": [
|
|
272
|
+
"URL"
|
|
273
|
+
],
|
|
274
|
+
"default": "URL"
|
|
275
|
+
},
|
|
276
|
+
"outputFormat": {
|
|
277
|
+
"title": "Output Format",
|
|
278
|
+
"description": "File format for the generated video.",
|
|
279
|
+
"type": "string",
|
|
280
|
+
"enum": [
|
|
281
|
+
"MP4",
|
|
282
|
+
"WEBM",
|
|
283
|
+
"MOV"
|
|
284
|
+
],
|
|
285
|
+
"default": "MP4"
|
|
286
|
+
},
|
|
287
|
+
"outputQuality": {
|
|
288
|
+
"title": "Output Quality",
|
|
289
|
+
"description": "Compression quality of the output. Higher values preserve quality but increase file size.",
|
|
290
|
+
"type": "integer",
|
|
291
|
+
"minimum": 20,
|
|
292
|
+
"maximum": 99,
|
|
293
|
+
"default": 95
|
|
294
|
+
},
|
|
295
|
+
"deliveryMethod": {
|
|
296
|
+
"title": "Delivery Method",
|
|
297
|
+
"description": "Determines how the API delivers task results.",
|
|
298
|
+
"type": "string",
|
|
299
|
+
"oneOf": [
|
|
300
|
+
{
|
|
301
|
+
"const": "async",
|
|
302
|
+
"description": "Returns an immediate acknowledgment with the task UUID. Poll for results using getResponse. Required for long-running tasks like video generation."
|
|
303
|
+
}
|
|
304
|
+
],
|
|
305
|
+
"default": "async"
|
|
306
|
+
},
|
|
307
|
+
"safety": {
|
|
308
|
+
"type": "object",
|
|
309
|
+
"title": "Safety Settings",
|
|
310
|
+
"description": "Content safety checking configuration for video generation.",
|
|
311
|
+
"properties": {
|
|
312
|
+
"checkContent": {
|
|
313
|
+
"title": "Check Content",
|
|
314
|
+
"description": "Enable or disable content safety checking. When enabled, defaults to `fast` mode.",
|
|
315
|
+
"type": "boolean",
|
|
316
|
+
"default": false
|
|
317
|
+
},
|
|
318
|
+
"mode": {
|
|
319
|
+
"description": "Safety checking mode for video generation.",
|
|
320
|
+
"type": "string",
|
|
321
|
+
"oneOf": [
|
|
322
|
+
{
|
|
323
|
+
"const": "none",
|
|
324
|
+
"title": "None",
|
|
325
|
+
"description": "Disables checking."
|
|
326
|
+
},
|
|
327
|
+
{
|
|
328
|
+
"const": "fast",
|
|
329
|
+
"title": "Fast",
|
|
330
|
+
"description": "Checks key frames."
|
|
331
|
+
},
|
|
332
|
+
{
|
|
333
|
+
"const": "full",
|
|
334
|
+
"title": "Full",
|
|
335
|
+
"description": "Checks all frames."
|
|
336
|
+
}
|
|
337
|
+
],
|
|
338
|
+
"default": "none"
|
|
339
|
+
}
|
|
340
|
+
},
|
|
341
|
+
"additionalProperties": false
|
|
342
|
+
}
|
|
343
|
+
},
|
|
344
|
+
"allOf": [
|
|
345
|
+
{
|
|
346
|
+
"dependentRequired": {
|
|
347
|
+
"width": [
|
|
348
|
+
"height"
|
|
349
|
+
],
|
|
350
|
+
"height": [
|
|
351
|
+
"width"
|
|
352
|
+
]
|
|
353
|
+
}
|
|
354
|
+
},
|
|
355
|
+
{
|
|
356
|
+
"oneOf": [
|
|
357
|
+
{
|
|
358
|
+
"title": "1080p (16:9)",
|
|
359
|
+
"properties": {
|
|
360
|
+
"width": {
|
|
361
|
+
"const": 1920
|
|
362
|
+
},
|
|
363
|
+
"height": {
|
|
364
|
+
"const": 1080
|
|
365
|
+
}
|
|
366
|
+
}
|
|
367
|
+
},
|
|
368
|
+
{
|
|
369
|
+
"title": "1080p (1:1)",
|
|
370
|
+
"properties": {
|
|
371
|
+
"width": {
|
|
372
|
+
"const": 1080
|
|
373
|
+
},
|
|
374
|
+
"height": {
|
|
375
|
+
"const": 1080
|
|
376
|
+
}
|
|
377
|
+
}
|
|
378
|
+
},
|
|
379
|
+
{
|
|
380
|
+
"title": "1080p (9:16)",
|
|
381
|
+
"properties": {
|
|
382
|
+
"width": {
|
|
383
|
+
"const": 1080
|
|
384
|
+
},
|
|
385
|
+
"height": {
|
|
386
|
+
"const": 1920
|
|
387
|
+
}
|
|
388
|
+
}
|
|
389
|
+
},
|
|
390
|
+
{
|
|
391
|
+
"title": "720p (16:9)",
|
|
392
|
+
"properties": {
|
|
393
|
+
"width": {
|
|
394
|
+
"const": 1280
|
|
395
|
+
},
|
|
396
|
+
"height": {
|
|
397
|
+
"const": 720
|
|
398
|
+
}
|
|
399
|
+
}
|
|
400
|
+
},
|
|
401
|
+
{
|
|
402
|
+
"title": "720p (1:1)",
|
|
403
|
+
"properties": {
|
|
404
|
+
"width": {
|
|
405
|
+
"const": 720
|
|
406
|
+
},
|
|
407
|
+
"height": {
|
|
408
|
+
"const": 720
|
|
409
|
+
}
|
|
410
|
+
}
|
|
411
|
+
},
|
|
412
|
+
{
|
|
413
|
+
"title": "720p (9:16)",
|
|
414
|
+
"properties": {
|
|
415
|
+
"width": {
|
|
416
|
+
"const": 720
|
|
417
|
+
},
|
|
418
|
+
"height": {
|
|
419
|
+
"const": 1280
|
|
420
|
+
}
|
|
421
|
+
}
|
|
422
|
+
},
|
|
423
|
+
{
|
|
424
|
+
"title": "360p (16:9)",
|
|
425
|
+
"properties": {
|
|
426
|
+
"width": {
|
|
427
|
+
"const": 640
|
|
428
|
+
},
|
|
429
|
+
"height": {
|
|
430
|
+
"const": 360
|
|
431
|
+
}
|
|
432
|
+
}
|
|
433
|
+
},
|
|
434
|
+
{
|
|
435
|
+
"title": "360p (1:1)",
|
|
436
|
+
"properties": {
|
|
437
|
+
"width": {
|
|
438
|
+
"const": 360
|
|
439
|
+
},
|
|
440
|
+
"height": {
|
|
441
|
+
"const": 360
|
|
442
|
+
}
|
|
443
|
+
}
|
|
444
|
+
},
|
|
445
|
+
{
|
|
446
|
+
"title": "360p (9:16)",
|
|
447
|
+
"properties": {
|
|
448
|
+
"width": {
|
|
449
|
+
"const": 360
|
|
450
|
+
},
|
|
451
|
+
"height": {
|
|
452
|
+
"const": 640
|
|
453
|
+
}
|
|
454
|
+
}
|
|
455
|
+
}
|
|
456
|
+
]
|
|
457
|
+
},
|
|
458
|
+
{
|
|
459
|
+
"not": {
|
|
460
|
+
"allOf": [
|
|
461
|
+
{
|
|
462
|
+
"properties": {
|
|
463
|
+
"providerSettings": {
|
|
464
|
+
"properties": {
|
|
465
|
+
"vidu": {
|
|
466
|
+
"required": [
|
|
467
|
+
"style"
|
|
468
|
+
]
|
|
469
|
+
}
|
|
470
|
+
}
|
|
471
|
+
}
|
|
472
|
+
},
|
|
473
|
+
"required": [
|
|
474
|
+
"providerSettings"
|
|
475
|
+
]
|
|
476
|
+
},
|
|
477
|
+
{
|
|
478
|
+
"properties": {
|
|
479
|
+
"inputs": {
|
|
480
|
+
"anyOf": [
|
|
481
|
+
{
|
|
482
|
+
"required": [
|
|
483
|
+
"frameImages"
|
|
484
|
+
]
|
|
485
|
+
},
|
|
486
|
+
{
|
|
487
|
+
"required": [
|
|
488
|
+
"referenceImages"
|
|
489
|
+
]
|
|
490
|
+
}
|
|
491
|
+
]
|
|
492
|
+
}
|
|
493
|
+
},
|
|
494
|
+
"required": [
|
|
495
|
+
"inputs"
|
|
496
|
+
]
|
|
497
|
+
}
|
|
498
|
+
]
|
|
499
|
+
}
|
|
500
|
+
},
|
|
501
|
+
{
|
|
502
|
+
"if": {
|
|
503
|
+
"properties": {
|
|
504
|
+
"providerSettings": {
|
|
505
|
+
"properties": {
|
|
506
|
+
"vidu": {
|
|
507
|
+
"required": [
|
|
508
|
+
"bgm"
|
|
509
|
+
]
|
|
510
|
+
}
|
|
511
|
+
}
|
|
512
|
+
}
|
|
513
|
+
},
|
|
514
|
+
"required": [
|
|
515
|
+
"providerSettings"
|
|
516
|
+
]
|
|
517
|
+
},
|
|
518
|
+
"then": {
|
|
519
|
+
"properties": {
|
|
520
|
+
"duration": {
|
|
521
|
+
"const": 4
|
|
522
|
+
}
|
|
523
|
+
}
|
|
524
|
+
}
|
|
525
|
+
}
|
|
526
|
+
],
|
|
527
|
+
"additionalProperties": false,
|
|
528
|
+
"required": [
|
|
529
|
+
"taskType",
|
|
530
|
+
"taskUUID",
|
|
531
|
+
"model"
|
|
532
|
+
]
|
|
533
|
+
},
|
|
534
|
+
{
|
|
535
|
+
"type": "object",
|
|
536
|
+
"properties": {
|
|
537
|
+
"model": {
|
|
538
|
+
"title": "Model",
|
|
539
|
+
"description": "Identifier of the model to use for generation.",
|
|
540
|
+
"type": "string",
|
|
541
|
+
"const": "vidu:2@0"
|
|
542
|
+
},
|
|
543
|
+
"inputs": {
|
|
544
|
+
"title": "Inputs",
|
|
545
|
+
"description": "The unified payload wrapper for complex media assets dictating image, video or audio inference constraints.",
|
|
546
|
+
"type": "object",
|
|
547
|
+
"properties": {
|
|
548
|
+
"referenceImages": {
|
|
549
|
+
"title": "Reference Images",
|
|
550
|
+
"description": "List of reference images (UUID, URL, Data URI, or Base64).",
|
|
551
|
+
"type": "array",
|
|
552
|
+
"minItems": 1,
|
|
553
|
+
"items": {
|
|
554
|
+
"title": "Image",
|
|
555
|
+
"description": "Image input (UUID, URL, Data URI, or Base64).",
|
|
556
|
+
"type": "string",
|
|
557
|
+
"anyOf": [
|
|
558
|
+
{
|
|
559
|
+
"format": "uuid"
|
|
560
|
+
},
|
|
561
|
+
{
|
|
562
|
+
"format": "uri"
|
|
563
|
+
},
|
|
564
|
+
{
|
|
565
|
+
"pattern": "^data:image\\/[a-zA-Z]+;base64,[a-zA-Z0-9+/=]+$"
|
|
566
|
+
},
|
|
567
|
+
{
|
|
568
|
+
"pattern": "^[a-zA-Z0-9+/=]+$"
|
|
569
|
+
}
|
|
570
|
+
]
|
|
571
|
+
},
|
|
572
|
+
"maxItems": 1
|
|
573
|
+
},
|
|
574
|
+
"frameImages": {
|
|
575
|
+
"title": "Frame Images",
|
|
576
|
+
"description": "List of frame-specific image inputs. Each item can be either a plain image input (UUID, URL, Data URI, or Base64) or an object with an image and a target frame position.",
|
|
577
|
+
"type": "array",
|
|
578
|
+
"minItems": 1,
|
|
579
|
+
"items": {
|
|
580
|
+
"anyOf": [
|
|
581
|
+
{
|
|
582
|
+
"title": "Image",
|
|
583
|
+
"description": "Image input (UUID, URL, Data URI, or Base64).",
|
|
584
|
+
"type": "string",
|
|
585
|
+
"anyOf": [
|
|
586
|
+
{
|
|
587
|
+
"format": "uuid"
|
|
588
|
+
},
|
|
589
|
+
{
|
|
590
|
+
"format": "uri"
|
|
591
|
+
},
|
|
592
|
+
{
|
|
593
|
+
"pattern": "^data:image\\/[a-zA-Z]+;base64,[a-zA-Z0-9+/=]+$"
|
|
594
|
+
},
|
|
595
|
+
{
|
|
596
|
+
"pattern": "^[a-zA-Z0-9+/=]+$"
|
|
597
|
+
}
|
|
598
|
+
]
|
|
599
|
+
},
|
|
600
|
+
{
|
|
601
|
+
"type": "object",
|
|
602
|
+
"properties": {
|
|
603
|
+
"image": {
|
|
604
|
+
"title": "Image",
|
|
605
|
+
"description": "Image input (UUID, URL, Data URI, or Base64).",
|
|
606
|
+
"type": "string",
|
|
607
|
+
"anyOf": [
|
|
608
|
+
{
|
|
609
|
+
"format": "uuid"
|
|
610
|
+
},
|
|
611
|
+
{
|
|
612
|
+
"format": "uri"
|
|
613
|
+
},
|
|
614
|
+
{
|
|
615
|
+
"pattern": "^data:image\\/[a-zA-Z]+;base64,[a-zA-Z0-9+/=]+$"
|
|
616
|
+
},
|
|
617
|
+
{
|
|
618
|
+
"pattern": "^[a-zA-Z0-9+/=]+$"
|
|
619
|
+
}
|
|
620
|
+
]
|
|
621
|
+
},
|
|
622
|
+
"frame": {
|
|
623
|
+
"title": "Frame",
|
|
624
|
+
"description": "Target frame position for the image. Supports first and last frame.",
|
|
625
|
+
"oneOf": [
|
|
626
|
+
{
|
|
627
|
+
"const": "first",
|
|
628
|
+
"description": "First frame of the video."
|
|
629
|
+
},
|
|
630
|
+
{
|
|
631
|
+
"const": "last",
|
|
632
|
+
"description": "Last frame of the video."
|
|
633
|
+
},
|
|
634
|
+
{
|
|
635
|
+
"const": 0,
|
|
636
|
+
"description": "Frame index 0 (first frame)."
|
|
637
|
+
},
|
|
638
|
+
{
|
|
639
|
+
"const": -1,
|
|
640
|
+
"description": "Frame index -1 (last frame)."
|
|
641
|
+
}
|
|
642
|
+
]
|
|
643
|
+
}
|
|
644
|
+
},
|
|
645
|
+
"required": [
|
|
646
|
+
"image"
|
|
647
|
+
],
|
|
648
|
+
"additionalProperties": false
|
|
649
|
+
}
|
|
650
|
+
]
|
|
651
|
+
},
|
|
652
|
+
"maxItems": 2
|
|
653
|
+
}
|
|
654
|
+
},
|
|
655
|
+
"additionalProperties": false
|
|
656
|
+
},
|
|
657
|
+
"positivePrompt": {
|
|
658
|
+
"title": "Positive Prompt",
|
|
659
|
+
"description": "Text prompt describing elements to include in the generated output.",
|
|
660
|
+
"type": "string",
|
|
661
|
+
"minLength": 2,
|
|
662
|
+
"maxLength": 3000
|
|
663
|
+
},
|
|
664
|
+
"width": {
|
|
665
|
+
"title": "Width",
|
|
666
|
+
"description": "Width of the generated media in pixels.",
|
|
667
|
+
"type": "integer"
|
|
668
|
+
},
|
|
669
|
+
"height": {
|
|
670
|
+
"title": "Height",
|
|
671
|
+
"description": "Height of the generated media in pixels.",
|
|
672
|
+
"type": "integer"
|
|
673
|
+
},
|
|
674
|
+
"duration": {
|
|
675
|
+
"title": "Duration",
|
|
676
|
+
"description": "Length of the generated video in seconds. The total number of frames produced is determined by duration multiplied by the model's frame rate (fps).",
|
|
677
|
+
"type": "number",
|
|
678
|
+
"enum": [
|
|
679
|
+
4,
|
|
680
|
+
8
|
|
681
|
+
],
|
|
682
|
+
"default": 4
|
|
683
|
+
},
|
|
684
|
+
"seed": {
|
|
685
|
+
"title": "Seed",
|
|
686
|
+
"description": "Random seed for reproducible generation. When not provided, a random seed is generated in the unsigned 32-bit range.",
|
|
687
|
+
"type": "integer",
|
|
688
|
+
"minimum": 0,
|
|
689
|
+
"maximum": 2147483647
|
|
690
|
+
},
|
|
691
|
+
"providerSettings": {
|
|
692
|
+
"title": "Provider Settings",
|
|
693
|
+
"description": "Provider-specific configuration settings.",
|
|
694
|
+
"type": "object",
|
|
695
|
+
"properties": {
|
|
696
|
+
"vidu": {
|
|
697
|
+
"title": "Vidu Settings",
|
|
698
|
+
"description": "Provider-specific settings for Vidu.",
|
|
699
|
+
"type": "object",
|
|
700
|
+
"properties": {
|
|
701
|
+
"bgm": {
|
|
702
|
+
"title": "BGM",
|
|
703
|
+
"description": "Enable background music generation.",
|
|
704
|
+
"type": "boolean",
|
|
705
|
+
"default": false
|
|
706
|
+
},
|
|
707
|
+
"movementAmplitude": {
|
|
708
|
+
"title": "Movement Amplitude",
|
|
709
|
+
"description": "Movement intensity in the generated video.",
|
|
710
|
+
"type": "string",
|
|
711
|
+
"oneOf": [
|
|
712
|
+
{
|
|
713
|
+
"const": "auto",
|
|
714
|
+
"description": "Automatically determines movement level based on content."
|
|
715
|
+
},
|
|
716
|
+
{
|
|
717
|
+
"const": "small",
|
|
718
|
+
"description": "Minimal movement with subtle animations."
|
|
719
|
+
},
|
|
720
|
+
{
|
|
721
|
+
"const": "medium",
|
|
722
|
+
"description": "Moderate movement with balanced dynamics."
|
|
723
|
+
},
|
|
724
|
+
{
|
|
725
|
+
"const": "large",
|
|
726
|
+
"description": "High movement with pronounced animations."
|
|
727
|
+
}
|
|
728
|
+
],
|
|
729
|
+
"default": "auto"
|
|
730
|
+
}
|
|
731
|
+
},
|
|
732
|
+
"additionalProperties": false
|
|
733
|
+
}
|
|
734
|
+
},
|
|
735
|
+
"additionalProperties": false
|
|
736
|
+
},
|
|
737
|
+
"taskType": {
|
|
738
|
+
"title": "Task Type",
|
|
739
|
+
"description": "Identifier for the type of task being performed",
|
|
740
|
+
"type": "string",
|
|
741
|
+
"const": "videoInference"
|
|
742
|
+
},
|
|
743
|
+
"taskUUID": {
|
|
744
|
+
"title": "Task UUID",
|
|
745
|
+
"description": "UUID v4 identifier for tracking tasks and matching async responses. Must be unique per task.",
|
|
746
|
+
"type": "string",
|
|
747
|
+
"format": "uuid"
|
|
748
|
+
},
|
|
749
|
+
"webhookURL": {
|
|
750
|
+
"title": "Webhook URL",
|
|
751
|
+
"description": "Specifies a webhook URL where JSON responses will be sent via HTTP POST when generation tasks complete. For batch requests with multiple results, each completed item triggers a separate webhook call as it becomes available.",
|
|
752
|
+
"type": "string",
|
|
753
|
+
"format": "uri"
|
|
754
|
+
},
|
|
755
|
+
"includeCost": {
|
|
756
|
+
"title": "Include Cost",
|
|
757
|
+
"description": "Include task cost in the response.",
|
|
758
|
+
"type": "boolean",
|
|
759
|
+
"default": false
|
|
760
|
+
},
|
|
761
|
+
"numberResults": {
|
|
762
|
+
"title": "Number of Results",
|
|
763
|
+
"description": "Number of results to generate. Each result uses a different seed, producing variations of the same parameters.",
|
|
764
|
+
"type": "integer",
|
|
765
|
+
"minimum": 1,
|
|
766
|
+
"default": 1,
|
|
767
|
+
"maximum": 4
|
|
768
|
+
},
|
|
769
|
+
"uploadEndpoint": {
|
|
770
|
+
"title": "Upload Endpoint",
|
|
771
|
+
"description": "URL to upload content via HTTP PUT. The request body will contain the raw binary data.",
|
|
772
|
+
"type": "string",
|
|
773
|
+
"format": "uri"
|
|
774
|
+
},
|
|
775
|
+
"ttl": {
|
|
776
|
+
"title": "TTL",
|
|
777
|
+
"description": "Time-to-live (TTL) in seconds for generated content. Only applies when `outputType` is `URL`.",
|
|
778
|
+
"type": "integer",
|
|
779
|
+
"minimum": 60
|
|
780
|
+
},
|
|
781
|
+
"outputType": {
|
|
782
|
+
"title": "Output Type",
|
|
783
|
+
"description": "Video output type.",
|
|
784
|
+
"type": "string",
|
|
785
|
+
"enum": [
|
|
786
|
+
"URL"
|
|
787
|
+
],
|
|
788
|
+
"default": "URL"
|
|
789
|
+
},
|
|
790
|
+
"outputFormat": {
|
|
791
|
+
"title": "Output Format",
|
|
792
|
+
"description": "File format for the generated video.",
|
|
793
|
+
"type": "string",
|
|
794
|
+
"enum": [
|
|
795
|
+
"MP4",
|
|
796
|
+
"WEBM",
|
|
797
|
+
"MOV"
|
|
798
|
+
],
|
|
799
|
+
"default": "MP4"
|
|
800
|
+
},
|
|
801
|
+
"outputQuality": {
|
|
802
|
+
"title": "Output Quality",
|
|
803
|
+
"description": "Compression quality of the output. Higher values preserve quality but increase file size.",
|
|
804
|
+
"type": "integer",
|
|
805
|
+
"minimum": 20,
|
|
806
|
+
"maximum": 99,
|
|
807
|
+
"default": 95
|
|
808
|
+
},
|
|
809
|
+
"deliveryMethod": {
|
|
810
|
+
"title": "Delivery Method",
|
|
811
|
+
"description": "Determines how the API delivers task results.",
|
|
812
|
+
"type": "string",
|
|
813
|
+
"oneOf": [
|
|
814
|
+
{
|
|
815
|
+
"const": "async",
|
|
816
|
+
"description": "Returns an immediate acknowledgment with the task UUID. Poll for results using getResponse. Required for long-running tasks like video generation."
|
|
817
|
+
}
|
|
818
|
+
],
|
|
819
|
+
"default": "async"
|
|
820
|
+
},
|
|
821
|
+
"safety": {
|
|
822
|
+
"type": "object",
|
|
823
|
+
"title": "Safety Settings",
|
|
824
|
+
"description": "Content safety checking configuration for video generation.",
|
|
825
|
+
"properties": {
|
|
826
|
+
"checkContent": {
|
|
827
|
+
"title": "Check Content",
|
|
828
|
+
"description": "Enable or disable content safety checking. When enabled, defaults to `fast` mode.",
|
|
829
|
+
"type": "boolean",
|
|
830
|
+
"default": false
|
|
831
|
+
},
|
|
832
|
+
"mode": {
|
|
833
|
+
"description": "Safety checking mode for video generation.",
|
|
834
|
+
"type": "string",
|
|
835
|
+
"oneOf": [
|
|
836
|
+
{
|
|
837
|
+
"const": "none",
|
|
838
|
+
"title": "None",
|
|
839
|
+
"description": "Disables checking."
|
|
840
|
+
},
|
|
841
|
+
{
|
|
842
|
+
"const": "fast",
|
|
843
|
+
"title": "Fast",
|
|
844
|
+
"description": "Checks key frames."
|
|
845
|
+
},
|
|
846
|
+
{
|
|
847
|
+
"const": "full",
|
|
848
|
+
"title": "Full",
|
|
849
|
+
"description": "Checks all frames."
|
|
850
|
+
}
|
|
851
|
+
],
|
|
852
|
+
"default": "none"
|
|
853
|
+
}
|
|
854
|
+
},
|
|
855
|
+
"additionalProperties": false
|
|
856
|
+
}
|
|
857
|
+
},
|
|
858
|
+
"allOf": [
|
|
859
|
+
{
|
|
860
|
+
"dependentRequired": {
|
|
861
|
+
"width": [
|
|
862
|
+
"height"
|
|
863
|
+
],
|
|
864
|
+
"height": [
|
|
865
|
+
"width"
|
|
866
|
+
]
|
|
867
|
+
}
|
|
868
|
+
},
|
|
869
|
+
{
|
|
870
|
+
"oneOf": [
|
|
871
|
+
{
|
|
872
|
+
"title": "1080p (16:9)",
|
|
873
|
+
"properties": {
|
|
874
|
+
"width": {
|
|
875
|
+
"const": 1920
|
|
876
|
+
},
|
|
877
|
+
"height": {
|
|
878
|
+
"const": 1080
|
|
879
|
+
}
|
|
880
|
+
}
|
|
881
|
+
},
|
|
882
|
+
{
|
|
883
|
+
"title": "1080p (1:1)",
|
|
884
|
+
"properties": {
|
|
885
|
+
"width": {
|
|
886
|
+
"const": 1080
|
|
887
|
+
},
|
|
888
|
+
"height": {
|
|
889
|
+
"const": 1080
|
|
890
|
+
}
|
|
891
|
+
}
|
|
892
|
+
},
|
|
893
|
+
{
|
|
894
|
+
"title": "1080p (9:16)",
|
|
895
|
+
"properties": {
|
|
896
|
+
"width": {
|
|
897
|
+
"const": 1080
|
|
898
|
+
},
|
|
899
|
+
"height": {
|
|
900
|
+
"const": 1920
|
|
901
|
+
}
|
|
902
|
+
}
|
|
903
|
+
},
|
|
904
|
+
{
|
|
905
|
+
"title": "720p (16:9)",
|
|
906
|
+
"properties": {
|
|
907
|
+
"width": {
|
|
908
|
+
"const": 1280
|
|
909
|
+
},
|
|
910
|
+
"height": {
|
|
911
|
+
"const": 720
|
|
912
|
+
}
|
|
913
|
+
}
|
|
914
|
+
},
|
|
915
|
+
{
|
|
916
|
+
"title": "720p (1:1)",
|
|
917
|
+
"properties": {
|
|
918
|
+
"width": {
|
|
919
|
+
"const": 720
|
|
920
|
+
},
|
|
921
|
+
"height": {
|
|
922
|
+
"const": 720
|
|
923
|
+
}
|
|
924
|
+
}
|
|
925
|
+
},
|
|
926
|
+
{
|
|
927
|
+
"title": "720p (9:16)",
|
|
928
|
+
"properties": {
|
|
929
|
+
"width": {
|
|
930
|
+
"const": 720
|
|
931
|
+
},
|
|
932
|
+
"height": {
|
|
933
|
+
"const": 1280
|
|
934
|
+
}
|
|
935
|
+
}
|
|
936
|
+
},
|
|
937
|
+
{
|
|
938
|
+
"title": "360p (16:9)",
|
|
939
|
+
"properties": {
|
|
940
|
+
"width": {
|
|
941
|
+
"const": 640
|
|
942
|
+
},
|
|
943
|
+
"height": {
|
|
944
|
+
"const": 360
|
|
945
|
+
}
|
|
946
|
+
}
|
|
947
|
+
},
|
|
948
|
+
{
|
|
949
|
+
"title": "360p (1:1)",
|
|
950
|
+
"properties": {
|
|
951
|
+
"width": {
|
|
952
|
+
"const": 360
|
|
953
|
+
},
|
|
954
|
+
"height": {
|
|
955
|
+
"const": 360
|
|
956
|
+
}
|
|
957
|
+
}
|
|
958
|
+
},
|
|
959
|
+
{
|
|
960
|
+
"title": "360p (9:16)",
|
|
961
|
+
"properties": {
|
|
962
|
+
"width": {
|
|
963
|
+
"const": 360
|
|
964
|
+
},
|
|
965
|
+
"height": {
|
|
966
|
+
"const": 640
|
|
967
|
+
}
|
|
968
|
+
}
|
|
969
|
+
}
|
|
970
|
+
]
|
|
971
|
+
},
|
|
972
|
+
{
|
|
973
|
+
"if": {
|
|
974
|
+
"properties": {
|
|
975
|
+
"providerSettings": {
|
|
976
|
+
"properties": {
|
|
977
|
+
"vidu": {
|
|
978
|
+
"required": [
|
|
979
|
+
"bgm"
|
|
980
|
+
]
|
|
981
|
+
}
|
|
982
|
+
}
|
|
983
|
+
}
|
|
984
|
+
},
|
|
985
|
+
"required": [
|
|
986
|
+
"providerSettings"
|
|
987
|
+
]
|
|
988
|
+
},
|
|
989
|
+
"then": {
|
|
990
|
+
"properties": {
|
|
991
|
+
"duration": {
|
|
992
|
+
"const": 4
|
|
993
|
+
}
|
|
994
|
+
}
|
|
995
|
+
}
|
|
996
|
+
}
|
|
997
|
+
],
|
|
998
|
+
"additionalProperties": false,
|
|
999
|
+
"required": [
|
|
1000
|
+
"taskType",
|
|
1001
|
+
"taskUUID",
|
|
1002
|
+
"model"
|
|
1003
|
+
]
|
|
1004
|
+
},
|
|
1005
|
+
{
|
|
1006
|
+
"type": "object",
|
|
1007
|
+
"properties": {
|
|
1008
|
+
"model": {
|
|
1009
|
+
"title": "Model",
|
|
1010
|
+
"description": "Identifier of the model to use for generation.",
|
|
1011
|
+
"type": "string",
|
|
1012
|
+
"const": "vidu:4@2"
|
|
1013
|
+
},
|
|
1014
|
+
"inputs": {
|
|
1015
|
+
"title": "Inputs",
|
|
1016
|
+
"description": "The unified payload wrapper for complex media assets dictating image, video or audio inference constraints.",
|
|
1017
|
+
"type": "object",
|
|
1018
|
+
"properties": {
|
|
1019
|
+
"frameImages": {
|
|
1020
|
+
"title": "Frame Images",
|
|
1021
|
+
"description": "List of frame-specific image inputs. Each item can be either a plain image input (UUID, URL, Data URI, or Base64) or an object with an image and a target frame position.",
|
|
1022
|
+
"type": "array",
|
|
1023
|
+
"minItems": 1,
|
|
1024
|
+
"items": {
|
|
1025
|
+
"anyOf": [
|
|
1026
|
+
{
|
|
1027
|
+
"title": "Image",
|
|
1028
|
+
"description": "Image input (UUID, URL, Data URI, or Base64).",
|
|
1029
|
+
"type": "string",
|
|
1030
|
+
"anyOf": [
|
|
1031
|
+
{
|
|
1032
|
+
"format": "uuid"
|
|
1033
|
+
},
|
|
1034
|
+
{
|
|
1035
|
+
"format": "uri"
|
|
1036
|
+
},
|
|
1037
|
+
{
|
|
1038
|
+
"pattern": "^data:image\\/[a-zA-Z]+;base64,[a-zA-Z0-9+/=]+$"
|
|
1039
|
+
},
|
|
1040
|
+
{
|
|
1041
|
+
"pattern": "^[a-zA-Z0-9+/=]+$"
|
|
1042
|
+
}
|
|
1043
|
+
]
|
|
1044
|
+
},
|
|
1045
|
+
{
|
|
1046
|
+
"type": "object",
|
|
1047
|
+
"properties": {
|
|
1048
|
+
"image": {
|
|
1049
|
+
"title": "Image",
|
|
1050
|
+
"description": "Image input (UUID, URL, Data URI, or Base64).",
|
|
1051
|
+
"type": "string",
|
|
1052
|
+
"anyOf": [
|
|
1053
|
+
{
|
|
1054
|
+
"format": "uuid"
|
|
1055
|
+
},
|
|
1056
|
+
{
|
|
1057
|
+
"format": "uri"
|
|
1058
|
+
},
|
|
1059
|
+
{
|
|
1060
|
+
"pattern": "^data:image\\/[a-zA-Z]+;base64,[a-zA-Z0-9+/=]+$"
|
|
1061
|
+
},
|
|
1062
|
+
{
|
|
1063
|
+
"pattern": "^[a-zA-Z0-9+/=]+$"
|
|
1064
|
+
}
|
|
1065
|
+
]
|
|
1066
|
+
},
|
|
1067
|
+
"frame": {
|
|
1068
|
+
"title": "Frame",
|
|
1069
|
+
"description": "Target frame position for the image. Supports first and last frame.",
|
|
1070
|
+
"oneOf": [
|
|
1071
|
+
{
|
|
1072
|
+
"const": "first",
|
|
1073
|
+
"description": "First frame of the video."
|
|
1074
|
+
},
|
|
1075
|
+
{
|
|
1076
|
+
"const": "last",
|
|
1077
|
+
"description": "Last frame of the video."
|
|
1078
|
+
},
|
|
1079
|
+
{
|
|
1080
|
+
"const": 0,
|
|
1081
|
+
"description": "Frame index 0 (first frame)."
|
|
1082
|
+
},
|
|
1083
|
+
{
|
|
1084
|
+
"const": -1,
|
|
1085
|
+
"description": "Frame index -1 (last frame)."
|
|
1086
|
+
}
|
|
1087
|
+
]
|
|
1088
|
+
}
|
|
1089
|
+
},
|
|
1090
|
+
"required": [
|
|
1091
|
+
"image"
|
|
1092
|
+
],
|
|
1093
|
+
"additionalProperties": false
|
|
1094
|
+
}
|
|
1095
|
+
]
|
|
1096
|
+
},
|
|
1097
|
+
"maxItems": 2
|
|
1098
|
+
}
|
|
1099
|
+
},
|
|
1100
|
+
"additionalProperties": false
|
|
1101
|
+
},
|
|
1102
|
+
"positivePrompt": {
|
|
1103
|
+
"title": "Positive Prompt",
|
|
1104
|
+
"description": "Text prompt describing elements to include in the generated output.",
|
|
1105
|
+
"type": "string",
|
|
1106
|
+
"minLength": 2,
|
|
1107
|
+
"maxLength": 2000
|
|
1108
|
+
},
|
|
1109
|
+
"width": {
|
|
1110
|
+
"title": "Width",
|
|
1111
|
+
"description": "Width of the generated media in pixels.",
|
|
1112
|
+
"type": "integer"
|
|
1113
|
+
},
|
|
1114
|
+
"height": {
|
|
1115
|
+
"title": "Height",
|
|
1116
|
+
"description": "Height of the generated media in pixels.",
|
|
1117
|
+
"type": "integer"
|
|
1118
|
+
},
|
|
1119
|
+
"duration": {
|
|
1120
|
+
"title": "Duration",
|
|
1121
|
+
"description": "Length of the generated video in seconds. The total number of frames produced is determined by duration multiplied by the model's frame rate (fps).",
|
|
1122
|
+
"type": "integer",
|
|
1123
|
+
"default": 5,
|
|
1124
|
+
"minimum": 1,
|
|
1125
|
+
"maximum": 16
|
|
1126
|
+
},
|
|
1127
|
+
"seed": {
|
|
1128
|
+
"title": "Seed",
|
|
1129
|
+
"description": "Random seed for reproducible generation. When not provided, a random seed is generated in the unsigned 32-bit range.",
|
|
1130
|
+
"type": "integer",
|
|
1131
|
+
"minimum": 0,
|
|
1132
|
+
"maximum": 2147483647
|
|
1133
|
+
},
|
|
1134
|
+
"providerSettings": {
|
|
1135
|
+
"title": "Provider Settings",
|
|
1136
|
+
"description": "Provider-specific configuration settings.",
|
|
1137
|
+
"type": "object",
|
|
1138
|
+
"properties": {
|
|
1139
|
+
"vidu": {
|
|
1140
|
+
"title": "Vidu Settings",
|
|
1141
|
+
"description": "Provider-specific settings for Vidu.",
|
|
1142
|
+
"type": "object",
|
|
1143
|
+
"properties": {
|
|
1144
|
+
"audio": {
|
|
1145
|
+
"title": "Audio",
|
|
1146
|
+
"description": "Enable audio generation.",
|
|
1147
|
+
"type": "boolean",
|
|
1148
|
+
"default": false
|
|
1149
|
+
}
|
|
1150
|
+
},
|
|
1151
|
+
"additionalProperties": false
|
|
1152
|
+
}
|
|
1153
|
+
},
|
|
1154
|
+
"additionalProperties": false
|
|
1155
|
+
},
|
|
1156
|
+
"taskType": {
|
|
1157
|
+
"title": "Task Type",
|
|
1158
|
+
"description": "Identifier for the type of task being performed",
|
|
1159
|
+
"type": "string",
|
|
1160
|
+
"const": "videoInference"
|
|
1161
|
+
},
|
|
1162
|
+
"taskUUID": {
|
|
1163
|
+
"title": "Task UUID",
|
|
1164
|
+
"description": "UUID v4 identifier for tracking tasks and matching async responses. Must be unique per task.",
|
|
1165
|
+
"type": "string",
|
|
1166
|
+
"format": "uuid"
|
|
1167
|
+
},
|
|
1168
|
+
"webhookURL": {
|
|
1169
|
+
"title": "Webhook URL",
|
|
1170
|
+
"description": "Specifies a webhook URL where JSON responses will be sent via HTTP POST when generation tasks complete. For batch requests with multiple results, each completed item triggers a separate webhook call as it becomes available.",
|
|
1171
|
+
"type": "string",
|
|
1172
|
+
"format": "uri"
|
|
1173
|
+
},
|
|
1174
|
+
"includeCost": {
|
|
1175
|
+
"title": "Include Cost",
|
|
1176
|
+
"description": "Include task cost in the response.",
|
|
1177
|
+
"type": "boolean",
|
|
1178
|
+
"default": false
|
|
1179
|
+
},
|
|
1180
|
+
"numberResults": {
|
|
1181
|
+
"title": "Number of Results",
|
|
1182
|
+
"description": "Number of results to generate. Each result uses a different seed, producing variations of the same parameters.",
|
|
1183
|
+
"type": "integer",
|
|
1184
|
+
"minimum": 1,
|
|
1185
|
+
"default": 1,
|
|
1186
|
+
"maximum": 4
|
|
1187
|
+
},
|
|
1188
|
+
"uploadEndpoint": {
|
|
1189
|
+
"title": "Upload Endpoint",
|
|
1190
|
+
"description": "URL to upload content via HTTP PUT. The request body will contain the raw binary data.",
|
|
1191
|
+
"type": "string",
|
|
1192
|
+
"format": "uri"
|
|
1193
|
+
},
|
|
1194
|
+
"ttl": {
|
|
1195
|
+
"title": "TTL",
|
|
1196
|
+
"description": "Time-to-live (TTL) in seconds for generated content. Only applies when `outputType` is `URL`.",
|
|
1197
|
+
"type": "integer",
|
|
1198
|
+
"minimum": 60
|
|
1199
|
+
},
|
|
1200
|
+
"outputType": {
|
|
1201
|
+
"title": "Output Type",
|
|
1202
|
+
"description": "Video output type.",
|
|
1203
|
+
"type": "string",
|
|
1204
|
+
"enum": [
|
|
1205
|
+
"URL"
|
|
1206
|
+
],
|
|
1207
|
+
"default": "URL"
|
|
1208
|
+
},
|
|
1209
|
+
"outputFormat": {
|
|
1210
|
+
"title": "Output Format",
|
|
1211
|
+
"description": "File format for the generated video.",
|
|
1212
|
+
"type": "string",
|
|
1213
|
+
"enum": [
|
|
1214
|
+
"MP4",
|
|
1215
|
+
"WEBM",
|
|
1216
|
+
"MOV"
|
|
1217
|
+
],
|
|
1218
|
+
"default": "MP4"
|
|
1219
|
+
},
|
|
1220
|
+
"outputQuality": {
|
|
1221
|
+
"title": "Output Quality",
|
|
1222
|
+
"description": "Compression quality of the output. Higher values preserve quality but increase file size.",
|
|
1223
|
+
"type": "integer",
|
|
1224
|
+
"minimum": 20,
|
|
1225
|
+
"maximum": 99,
|
|
1226
|
+
"default": 95
|
|
1227
|
+
},
|
|
1228
|
+
"deliveryMethod": {
|
|
1229
|
+
"title": "Delivery Method",
|
|
1230
|
+
"description": "Determines how the API delivers task results.",
|
|
1231
|
+
"type": "string",
|
|
1232
|
+
"oneOf": [
|
|
1233
|
+
{
|
|
1234
|
+
"const": "async",
|
|
1235
|
+
"description": "Returns an immediate acknowledgment with the task UUID. Poll for results using getResponse. Required for long-running tasks like video generation."
|
|
1236
|
+
}
|
|
1237
|
+
],
|
|
1238
|
+
"default": "async"
|
|
1239
|
+
},
|
|
1240
|
+
"safety": {
|
|
1241
|
+
"type": "object",
|
|
1242
|
+
"title": "Safety Settings",
|
|
1243
|
+
"description": "Content safety checking configuration for video generation.",
|
|
1244
|
+
"properties": {
|
|
1245
|
+
"checkContent": {
|
|
1246
|
+
"title": "Check Content",
|
|
1247
|
+
"description": "Enable or disable content safety checking. When enabled, defaults to `fast` mode.",
|
|
1248
|
+
"type": "boolean",
|
|
1249
|
+
"default": false
|
|
1250
|
+
},
|
|
1251
|
+
"mode": {
|
|
1252
|
+
"description": "Safety checking mode for video generation.",
|
|
1253
|
+
"type": "string",
|
|
1254
|
+
"oneOf": [
|
|
1255
|
+
{
|
|
1256
|
+
"const": "none",
|
|
1257
|
+
"title": "None",
|
|
1258
|
+
"description": "Disables checking."
|
|
1259
|
+
},
|
|
1260
|
+
{
|
|
1261
|
+
"const": "fast",
|
|
1262
|
+
"title": "Fast",
|
|
1263
|
+
"description": "Checks key frames."
|
|
1264
|
+
},
|
|
1265
|
+
{
|
|
1266
|
+
"const": "full",
|
|
1267
|
+
"title": "Full",
|
|
1268
|
+
"description": "Checks all frames."
|
|
1269
|
+
}
|
|
1270
|
+
],
|
|
1271
|
+
"default": "none"
|
|
1272
|
+
}
|
|
1273
|
+
},
|
|
1274
|
+
"additionalProperties": false
|
|
1275
|
+
}
|
|
1276
|
+
},
|
|
1277
|
+
"required": [
|
|
1278
|
+
"width",
|
|
1279
|
+
"height",
|
|
1280
|
+
"taskType",
|
|
1281
|
+
"taskUUID",
|
|
1282
|
+
"model"
|
|
1283
|
+
],
|
|
1284
|
+
"allOf": [
|
|
1285
|
+
{
|
|
1286
|
+
"dependentRequired": {
|
|
1287
|
+
"width": [
|
|
1288
|
+
"height"
|
|
1289
|
+
],
|
|
1290
|
+
"height": [
|
|
1291
|
+
"width"
|
|
1292
|
+
]
|
|
1293
|
+
}
|
|
1294
|
+
},
|
|
1295
|
+
{
|
|
1296
|
+
"oneOf": [
|
|
1297
|
+
{
|
|
1298
|
+
"title": "360p (16:9)",
|
|
1299
|
+
"properties": {
|
|
1300
|
+
"width": {
|
|
1301
|
+
"const": 640
|
|
1302
|
+
},
|
|
1303
|
+
"height": {
|
|
1304
|
+
"const": 352
|
|
1305
|
+
}
|
|
1306
|
+
}
|
|
1307
|
+
},
|
|
1308
|
+
{
|
|
1309
|
+
"title": "360p (4:3)",
|
|
1310
|
+
"properties": {
|
|
1311
|
+
"width": {
|
|
1312
|
+
"const": 544
|
|
1313
|
+
},
|
|
1314
|
+
"height": {
|
|
1315
|
+
"const": 400
|
|
1316
|
+
}
|
|
1317
|
+
}
|
|
1318
|
+
},
|
|
1319
|
+
{
|
|
1320
|
+
"title": "360p (1:1)",
|
|
1321
|
+
"properties": {
|
|
1322
|
+
"width": {
|
|
1323
|
+
"const": 480
|
|
1324
|
+
},
|
|
1325
|
+
"height": {
|
|
1326
|
+
"const": 480
|
|
1327
|
+
}
|
|
1328
|
+
}
|
|
1329
|
+
},
|
|
1330
|
+
{
|
|
1331
|
+
"title": "360p (3:4)",
|
|
1332
|
+
"properties": {
|
|
1333
|
+
"width": {
|
|
1334
|
+
"const": 400
|
|
1335
|
+
},
|
|
1336
|
+
"height": {
|
|
1337
|
+
"const": 544
|
|
1338
|
+
}
|
|
1339
|
+
}
|
|
1340
|
+
},
|
|
1341
|
+
{
|
|
1342
|
+
"title": "360p (9:16)",
|
|
1343
|
+
"properties": {
|
|
1344
|
+
"width": {
|
|
1345
|
+
"const": 352
|
|
1346
|
+
},
|
|
1347
|
+
"height": {
|
|
1348
|
+
"const": 640
|
|
1349
|
+
}
|
|
1350
|
+
}
|
|
1351
|
+
},
|
|
1352
|
+
{
|
|
1353
|
+
"title": "540p (16:9)",
|
|
1354
|
+
"properties": {
|
|
1355
|
+
"width": {
|
|
1356
|
+
"const": 960
|
|
1357
|
+
},
|
|
1358
|
+
"height": {
|
|
1359
|
+
"const": 528
|
|
1360
|
+
}
|
|
1361
|
+
}
|
|
1362
|
+
},
|
|
1363
|
+
{
|
|
1364
|
+
"title": "540p (4:3)",
|
|
1365
|
+
"properties": {
|
|
1366
|
+
"width": {
|
|
1367
|
+
"const": 816
|
|
1368
|
+
},
|
|
1369
|
+
"height": {
|
|
1370
|
+
"const": 608
|
|
1371
|
+
}
|
|
1372
|
+
}
|
|
1373
|
+
},
|
|
1374
|
+
{
|
|
1375
|
+
"title": "540p (1:1)",
|
|
1376
|
+
"properties": {
|
|
1377
|
+
"width": {
|
|
1378
|
+
"const": 720
|
|
1379
|
+
},
|
|
1380
|
+
"height": {
|
|
1381
|
+
"const": 720
|
|
1382
|
+
}
|
|
1383
|
+
}
|
|
1384
|
+
},
|
|
1385
|
+
{
|
|
1386
|
+
"title": "540p (3:4)",
|
|
1387
|
+
"properties": {
|
|
1388
|
+
"width": {
|
|
1389
|
+
"const": 608
|
|
1390
|
+
},
|
|
1391
|
+
"height": {
|
|
1392
|
+
"const": 816
|
|
1393
|
+
}
|
|
1394
|
+
}
|
|
1395
|
+
},
|
|
1396
|
+
{
|
|
1397
|
+
"title": "540p (9:16)",
|
|
1398
|
+
"properties": {
|
|
1399
|
+
"width": {
|
|
1400
|
+
"const": 528
|
|
1401
|
+
},
|
|
1402
|
+
"height": {
|
|
1403
|
+
"const": 960
|
|
1404
|
+
}
|
|
1405
|
+
}
|
|
1406
|
+
},
|
|
1407
|
+
{
|
|
1408
|
+
"title": "720p (16:9)",
|
|
1409
|
+
"properties": {
|
|
1410
|
+
"width": {
|
|
1411
|
+
"const": 1280
|
|
1412
|
+
},
|
|
1413
|
+
"height": {
|
|
1414
|
+
"const": 720
|
|
1415
|
+
}
|
|
1416
|
+
}
|
|
1417
|
+
},
|
|
1418
|
+
{
|
|
1419
|
+
"title": "720p (4:3)",
|
|
1420
|
+
"properties": {
|
|
1421
|
+
"width": {
|
|
1422
|
+
"const": 1104
|
|
1423
|
+
},
|
|
1424
|
+
"height": {
|
|
1425
|
+
"const": 816
|
|
1426
|
+
}
|
|
1427
|
+
}
|
|
1428
|
+
},
|
|
1429
|
+
{
|
|
1430
|
+
"title": "720p (1:1)",
|
|
1431
|
+
"properties": {
|
|
1432
|
+
"width": {
|
|
1433
|
+
"const": 960
|
|
1434
|
+
},
|
|
1435
|
+
"height": {
|
|
1436
|
+
"const": 960
|
|
1437
|
+
}
|
|
1438
|
+
}
|
|
1439
|
+
},
|
|
1440
|
+
{
|
|
1441
|
+
"title": "720p (3:4)",
|
|
1442
|
+
"properties": {
|
|
1443
|
+
"width": {
|
|
1444
|
+
"const": 816
|
|
1445
|
+
},
|
|
1446
|
+
"height": {
|
|
1447
|
+
"const": 1104
|
|
1448
|
+
}
|
|
1449
|
+
}
|
|
1450
|
+
},
|
|
1451
|
+
{
|
|
1452
|
+
"title": "720p (9:16)",
|
|
1453
|
+
"properties": {
|
|
1454
|
+
"width": {
|
|
1455
|
+
"const": 720
|
|
1456
|
+
},
|
|
1457
|
+
"height": {
|
|
1458
|
+
"const": 1280
|
|
1459
|
+
}
|
|
1460
|
+
}
|
|
1461
|
+
},
|
|
1462
|
+
{
|
|
1463
|
+
"title": "1080p (16:9)",
|
|
1464
|
+
"properties": {
|
|
1465
|
+
"width": {
|
|
1466
|
+
"const": 1920
|
|
1467
|
+
},
|
|
1468
|
+
"height": {
|
|
1469
|
+
"const": 1080
|
|
1470
|
+
}
|
|
1471
|
+
}
|
|
1472
|
+
},
|
|
1473
|
+
{
|
|
1474
|
+
"title": "1080p (4:3)",
|
|
1475
|
+
"properties": {
|
|
1476
|
+
"width": {
|
|
1477
|
+
"const": 1674
|
|
1478
|
+
},
|
|
1479
|
+
"height": {
|
|
1480
|
+
"const": 1238
|
|
1481
|
+
}
|
|
1482
|
+
}
|
|
1483
|
+
},
|
|
1484
|
+
{
|
|
1485
|
+
"title": "1080p (1:1)",
|
|
1486
|
+
"properties": {
|
|
1487
|
+
"width": {
|
|
1488
|
+
"const": 1440
|
|
1489
|
+
},
|
|
1490
|
+
"height": {
|
|
1491
|
+
"const": 1440
|
|
1492
|
+
}
|
|
1493
|
+
}
|
|
1494
|
+
},
|
|
1495
|
+
{
|
|
1496
|
+
"title": "1080p (3:4)",
|
|
1497
|
+
"properties": {
|
|
1498
|
+
"width": {
|
|
1499
|
+
"const": 1238
|
|
1500
|
+
},
|
|
1501
|
+
"height": {
|
|
1502
|
+
"const": 1674
|
|
1503
|
+
}
|
|
1504
|
+
}
|
|
1505
|
+
},
|
|
1506
|
+
{
|
|
1507
|
+
"title": "1080p (9:16)",
|
|
1508
|
+
"properties": {
|
|
1509
|
+
"width": {
|
|
1510
|
+
"const": 1080
|
|
1511
|
+
},
|
|
1512
|
+
"height": {
|
|
1513
|
+
"const": 1920
|
|
1514
|
+
}
|
|
1515
|
+
}
|
|
1516
|
+
}
|
|
1517
|
+
]
|
|
1518
|
+
}
|
|
1519
|
+
],
|
|
1520
|
+
"anyOf": [
|
|
1521
|
+
{
|
|
1522
|
+
"required": [
|
|
1523
|
+
"positivePrompt"
|
|
1524
|
+
]
|
|
1525
|
+
},
|
|
1526
|
+
{
|
|
1527
|
+
"properties": {
|
|
1528
|
+
"inputs": {
|
|
1529
|
+
"required": [
|
|
1530
|
+
"frameImages"
|
|
1531
|
+
]
|
|
1532
|
+
}
|
|
1533
|
+
},
|
|
1534
|
+
"required": [
|
|
1535
|
+
"inputs"
|
|
1536
|
+
]
|
|
1537
|
+
}
|
|
1538
|
+
],
|
|
1539
|
+
"additionalProperties": false
|
|
1540
|
+
},
|
|
1541
|
+
{
|
|
1542
|
+
"type": "object",
|
|
1543
|
+
"properties": {
|
|
1544
|
+
"model": {
|
|
1545
|
+
"title": "Model",
|
|
1546
|
+
"description": "Identifier of the model to use for generation.",
|
|
1547
|
+
"type": "string",
|
|
1548
|
+
"const": "vidu:1@0"
|
|
1549
|
+
},
|
|
1550
|
+
"inputs": {
|
|
1551
|
+
"title": "Inputs",
|
|
1552
|
+
"description": "The unified payload wrapper for complex media assets dictating image, video or audio inference constraints.",
|
|
1553
|
+
"type": "object",
|
|
1554
|
+
"properties": {
|
|
1555
|
+
"frameImages": {
|
|
1556
|
+
"title": "Frame Images",
|
|
1557
|
+
"description": "List of frame-specific image inputs. Each item can be either a plain image input (UUID, URL, Data URI, or Base64) or an object with an image and a target frame position.",
|
|
1558
|
+
"type": "array",
|
|
1559
|
+
"minItems": 1,
|
|
1560
|
+
"items": {
|
|
1561
|
+
"anyOf": [
|
|
1562
|
+
{
|
|
1563
|
+
"title": "Image",
|
|
1564
|
+
"description": "Image input (UUID, URL, Data URI, or Base64).",
|
|
1565
|
+
"type": "string",
|
|
1566
|
+
"anyOf": [
|
|
1567
|
+
{
|
|
1568
|
+
"format": "uuid"
|
|
1569
|
+
},
|
|
1570
|
+
{
|
|
1571
|
+
"format": "uri"
|
|
1572
|
+
},
|
|
1573
|
+
{
|
|
1574
|
+
"pattern": "^data:image\\/[a-zA-Z]+;base64,[a-zA-Z0-9+/=]+$"
|
|
1575
|
+
},
|
|
1576
|
+
{
|
|
1577
|
+
"pattern": "^[a-zA-Z0-9+/=]+$"
|
|
1578
|
+
}
|
|
1579
|
+
]
|
|
1580
|
+
},
|
|
1581
|
+
{
|
|
1582
|
+
"type": "object",
|
|
1583
|
+
"properties": {
|
|
1584
|
+
"image": {
|
|
1585
|
+
"title": "Image",
|
|
1586
|
+
"description": "Image input (UUID, URL, Data URI, or Base64).",
|
|
1587
|
+
"type": "string",
|
|
1588
|
+
"anyOf": [
|
|
1589
|
+
{
|
|
1590
|
+
"format": "uuid"
|
|
1591
|
+
},
|
|
1592
|
+
{
|
|
1593
|
+
"format": "uri"
|
|
1594
|
+
},
|
|
1595
|
+
{
|
|
1596
|
+
"pattern": "^data:image\\/[a-zA-Z]+;base64,[a-zA-Z0-9+/=]+$"
|
|
1597
|
+
},
|
|
1598
|
+
{
|
|
1599
|
+
"pattern": "^[a-zA-Z0-9+/=]+$"
|
|
1600
|
+
}
|
|
1601
|
+
]
|
|
1602
|
+
},
|
|
1603
|
+
"frame": {
|
|
1604
|
+
"title": "Frame",
|
|
1605
|
+
"description": "Target frame position for the image. Supports first and last frame.",
|
|
1606
|
+
"oneOf": [
|
|
1607
|
+
{
|
|
1608
|
+
"const": "first",
|
|
1609
|
+
"description": "First frame of the video."
|
|
1610
|
+
},
|
|
1611
|
+
{
|
|
1612
|
+
"const": "last",
|
|
1613
|
+
"description": "Last frame of the video."
|
|
1614
|
+
},
|
|
1615
|
+
{
|
|
1616
|
+
"const": 0,
|
|
1617
|
+
"description": "Frame index 0 (first frame)."
|
|
1618
|
+
},
|
|
1619
|
+
{
|
|
1620
|
+
"const": -1,
|
|
1621
|
+
"description": "Frame index -1 (last frame)."
|
|
1622
|
+
}
|
|
1623
|
+
]
|
|
1624
|
+
}
|
|
1625
|
+
},
|
|
1626
|
+
"required": [
|
|
1627
|
+
"image"
|
|
1628
|
+
],
|
|
1629
|
+
"additionalProperties": false
|
|
1630
|
+
}
|
|
1631
|
+
]
|
|
1632
|
+
},
|
|
1633
|
+
"maxItems": 2
|
|
1634
|
+
}
|
|
1635
|
+
},
|
|
1636
|
+
"additionalProperties": false
|
|
1637
|
+
},
|
|
1638
|
+
"width": {
|
|
1639
|
+
"title": "Width",
|
|
1640
|
+
"description": "Width of the generated media in pixels.",
|
|
1641
|
+
"type": "integer"
|
|
1642
|
+
},
|
|
1643
|
+
"height": {
|
|
1644
|
+
"title": "Height",
|
|
1645
|
+
"description": "Height of the generated media in pixels.",
|
|
1646
|
+
"type": "integer"
|
|
1647
|
+
},
|
|
1648
|
+
"duration": {
|
|
1649
|
+
"title": "Duration",
|
|
1650
|
+
"description": "Length of the generated video in seconds. The total number of frames produced is determined by duration multiplied by the model's frame rate (fps).",
|
|
1651
|
+
"type": "number",
|
|
1652
|
+
"const": 5
|
|
1653
|
+
},
|
|
1654
|
+
"seed": {
|
|
1655
|
+
"title": "Seed",
|
|
1656
|
+
"description": "Random seed for reproducible generation. When not provided, a random seed is generated in the unsigned 32-bit range.",
|
|
1657
|
+
"type": "integer",
|
|
1658
|
+
"minimum": 0,
|
|
1659
|
+
"maximum": 2147483647
|
|
1660
|
+
},
|
|
1661
|
+
"providerSettings": {
|
|
1662
|
+
"title": "Provider Settings",
|
|
1663
|
+
"description": "Provider-specific configuration settings.",
|
|
1664
|
+
"type": "object",
|
|
1665
|
+
"properties": {
|
|
1666
|
+
"vidu": {
|
|
1667
|
+
"title": "Vidu Settings",
|
|
1668
|
+
"description": "Provider-specific settings for Vidu.",
|
|
1669
|
+
"type": "object",
|
|
1670
|
+
"properties": {
|
|
1671
|
+
"movementAmplitude": {
|
|
1672
|
+
"title": "Movement Amplitude",
|
|
1673
|
+
"description": "Movement intensity in the generated video.",
|
|
1674
|
+
"type": "string",
|
|
1675
|
+
"oneOf": [
|
|
1676
|
+
{
|
|
1677
|
+
"const": "auto",
|
|
1678
|
+
"description": "Automatically determines movement level based on content."
|
|
1679
|
+
},
|
|
1680
|
+
{
|
|
1681
|
+
"const": "small",
|
|
1682
|
+
"description": "Minimal movement with subtle animations."
|
|
1683
|
+
},
|
|
1684
|
+
{
|
|
1685
|
+
"const": "medium",
|
|
1686
|
+
"description": "Moderate movement with balanced dynamics."
|
|
1687
|
+
},
|
|
1688
|
+
{
|
|
1689
|
+
"const": "large",
|
|
1690
|
+
"description": "High movement with pronounced animations."
|
|
1691
|
+
}
|
|
1692
|
+
],
|
|
1693
|
+
"default": "auto"
|
|
1694
|
+
}
|
|
1695
|
+
},
|
|
1696
|
+
"additionalProperties": false
|
|
1697
|
+
}
|
|
1698
|
+
},
|
|
1699
|
+
"additionalProperties": false
|
|
1700
|
+
},
|
|
1701
|
+
"taskType": {
|
|
1702
|
+
"title": "Task Type",
|
|
1703
|
+
"description": "Identifier for the type of task being performed",
|
|
1704
|
+
"type": "string",
|
|
1705
|
+
"const": "videoInference"
|
|
1706
|
+
},
|
|
1707
|
+
"taskUUID": {
|
|
1708
|
+
"title": "Task UUID",
|
|
1709
|
+
"description": "UUID v4 identifier for tracking tasks and matching async responses. Must be unique per task.",
|
|
1710
|
+
"type": "string",
|
|
1711
|
+
"format": "uuid"
|
|
1712
|
+
},
|
|
1713
|
+
"webhookURL": {
|
|
1714
|
+
"title": "Webhook URL",
|
|
1715
|
+
"description": "Specifies a webhook URL where JSON responses will be sent via HTTP POST when generation tasks complete. For batch requests with multiple results, each completed item triggers a separate webhook call as it becomes available.",
|
|
1716
|
+
"type": "string",
|
|
1717
|
+
"format": "uri"
|
|
1718
|
+
},
|
|
1719
|
+
"includeCost": {
|
|
1720
|
+
"title": "Include Cost",
|
|
1721
|
+
"description": "Include task cost in the response.",
|
|
1722
|
+
"type": "boolean",
|
|
1723
|
+
"default": false
|
|
1724
|
+
},
|
|
1725
|
+
"numberResults": {
|
|
1726
|
+
"title": "Number of Results",
|
|
1727
|
+
"description": "Number of results to generate. Each result uses a different seed, producing variations of the same parameters.",
|
|
1728
|
+
"type": "integer",
|
|
1729
|
+
"minimum": 1,
|
|
1730
|
+
"default": 1,
|
|
1731
|
+
"maximum": 4
|
|
1732
|
+
},
|
|
1733
|
+
"uploadEndpoint": {
|
|
1734
|
+
"title": "Upload Endpoint",
|
|
1735
|
+
"description": "URL to upload content via HTTP PUT. The request body will contain the raw binary data.",
|
|
1736
|
+
"type": "string",
|
|
1737
|
+
"format": "uri"
|
|
1738
|
+
},
|
|
1739
|
+
"ttl": {
|
|
1740
|
+
"title": "TTL",
|
|
1741
|
+
"description": "Time-to-live (TTL) in seconds for generated content. Only applies when `outputType` is `URL`.",
|
|
1742
|
+
"type": "integer",
|
|
1743
|
+
"minimum": 60
|
|
1744
|
+
},
|
|
1745
|
+
"outputType": {
|
|
1746
|
+
"title": "Output Type",
|
|
1747
|
+
"description": "Video output type.",
|
|
1748
|
+
"type": "string",
|
|
1749
|
+
"enum": [
|
|
1750
|
+
"URL"
|
|
1751
|
+
],
|
|
1752
|
+
"default": "URL"
|
|
1753
|
+
},
|
|
1754
|
+
"outputFormat": {
|
|
1755
|
+
"title": "Output Format",
|
|
1756
|
+
"description": "File format for the generated video.",
|
|
1757
|
+
"type": "string",
|
|
1758
|
+
"enum": [
|
|
1759
|
+
"MP4",
|
|
1760
|
+
"WEBM",
|
|
1761
|
+
"MOV"
|
|
1762
|
+
],
|
|
1763
|
+
"default": "MP4"
|
|
1764
|
+
},
|
|
1765
|
+
"outputQuality": {
|
|
1766
|
+
"title": "Output Quality",
|
|
1767
|
+
"description": "Compression quality of the output. Higher values preserve quality but increase file size.",
|
|
1768
|
+
"type": "integer",
|
|
1769
|
+
"minimum": 20,
|
|
1770
|
+
"maximum": 99,
|
|
1771
|
+
"default": 95
|
|
1772
|
+
},
|
|
1773
|
+
"deliveryMethod": {
|
|
1774
|
+
"title": "Delivery Method",
|
|
1775
|
+
"description": "Determines how the API delivers task results.",
|
|
1776
|
+
"type": "string",
|
|
1777
|
+
"oneOf": [
|
|
1778
|
+
{
|
|
1779
|
+
"const": "async",
|
|
1780
|
+
"description": "Returns an immediate acknowledgment with the task UUID. Poll for results using getResponse. Required for long-running tasks like video generation."
|
|
1781
|
+
}
|
|
1782
|
+
],
|
|
1783
|
+
"default": "async"
|
|
1784
|
+
},
|
|
1785
|
+
"safety": {
|
|
1786
|
+
"type": "object",
|
|
1787
|
+
"title": "Safety Settings",
|
|
1788
|
+
"description": "Content safety checking configuration for video generation.",
|
|
1789
|
+
"properties": {
|
|
1790
|
+
"checkContent": {
|
|
1791
|
+
"title": "Check Content",
|
|
1792
|
+
"description": "Enable or disable content safety checking. When enabled, defaults to `fast` mode.",
|
|
1793
|
+
"type": "boolean",
|
|
1794
|
+
"default": false
|
|
1795
|
+
},
|
|
1796
|
+
"mode": {
|
|
1797
|
+
"description": "Safety checking mode for video generation.",
|
|
1798
|
+
"type": "string",
|
|
1799
|
+
"oneOf": [
|
|
1800
|
+
{
|
|
1801
|
+
"const": "none",
|
|
1802
|
+
"title": "None",
|
|
1803
|
+
"description": "Disables checking."
|
|
1804
|
+
},
|
|
1805
|
+
{
|
|
1806
|
+
"const": "fast",
|
|
1807
|
+
"title": "Fast",
|
|
1808
|
+
"description": "Checks key frames."
|
|
1809
|
+
},
|
|
1810
|
+
{
|
|
1811
|
+
"const": "full",
|
|
1812
|
+
"title": "Full",
|
|
1813
|
+
"description": "Checks all frames."
|
|
1814
|
+
}
|
|
1815
|
+
],
|
|
1816
|
+
"default": "none"
|
|
1817
|
+
}
|
|
1818
|
+
},
|
|
1819
|
+
"additionalProperties": false
|
|
1820
|
+
}
|
|
1821
|
+
},
|
|
1822
|
+
"allOf": [
|
|
1823
|
+
{
|
|
1824
|
+
"dependentRequired": {
|
|
1825
|
+
"width": [
|
|
1826
|
+
"height"
|
|
1827
|
+
],
|
|
1828
|
+
"height": [
|
|
1829
|
+
"width"
|
|
1830
|
+
]
|
|
1831
|
+
}
|
|
1832
|
+
},
|
|
1833
|
+
{
|
|
1834
|
+
"oneOf": [
|
|
1835
|
+
{
|
|
1836
|
+
"title": "1080p (16:9)",
|
|
1837
|
+
"properties": {
|
|
1838
|
+
"width": {
|
|
1839
|
+
"const": 1920
|
|
1840
|
+
},
|
|
1841
|
+
"height": {
|
|
1842
|
+
"const": 1080
|
|
1843
|
+
}
|
|
1844
|
+
}
|
|
1845
|
+
}
|
|
1846
|
+
]
|
|
1847
|
+
}
|
|
1848
|
+
],
|
|
1849
|
+
"additionalProperties": false,
|
|
1850
|
+
"required": [
|
|
1851
|
+
"taskType",
|
|
1852
|
+
"taskUUID",
|
|
1853
|
+
"model"
|
|
1854
|
+
]
|
|
1855
|
+
},
|
|
1856
|
+
{
|
|
1857
|
+
"type": "object",
|
|
1858
|
+
"properties": {
|
|
1859
|
+
"model": {
|
|
1860
|
+
"title": "Model",
|
|
1861
|
+
"description": "Identifier of the model to use for generation.",
|
|
1862
|
+
"type": "string",
|
|
1863
|
+
"const": "vidu:q1@image"
|
|
1864
|
+
},
|
|
1865
|
+
"inputs": {
|
|
1866
|
+
"title": "Inputs",
|
|
1867
|
+
"description": "The unified payload wrapper for complex media assets dictating image, video or audio inference constraints.",
|
|
1868
|
+
"type": "object",
|
|
1869
|
+
"properties": {
|
|
1870
|
+
"referenceImages": {
|
|
1871
|
+
"title": "Reference Images",
|
|
1872
|
+
"description": "List of reference images (UUID, URL, Data URI, or Base64).",
|
|
1873
|
+
"type": "array",
|
|
1874
|
+
"minItems": 1,
|
|
1875
|
+
"items": {
|
|
1876
|
+
"title": "Image",
|
|
1877
|
+
"description": "Image input (UUID, URL, Data URI, or Base64).",
|
|
1878
|
+
"type": "string",
|
|
1879
|
+
"anyOf": [
|
|
1880
|
+
{
|
|
1881
|
+
"format": "uuid"
|
|
1882
|
+
},
|
|
1883
|
+
{
|
|
1884
|
+
"format": "uri"
|
|
1885
|
+
},
|
|
1886
|
+
{
|
|
1887
|
+
"pattern": "^data:image\\/[a-zA-Z]+;base64,[a-zA-Z0-9+/=]+$"
|
|
1888
|
+
},
|
|
1889
|
+
{
|
|
1890
|
+
"pattern": "^[a-zA-Z0-9+/=]+$"
|
|
1891
|
+
}
|
|
1892
|
+
]
|
|
1893
|
+
},
|
|
1894
|
+
"maxItems": 7
|
|
1895
|
+
}
|
|
1896
|
+
},
|
|
1897
|
+
"required": [
|
|
1898
|
+
"referenceImages"
|
|
1899
|
+
],
|
|
1900
|
+
"additionalProperties": false
|
|
1901
|
+
},
|
|
1902
|
+
"positivePrompt": {
|
|
1903
|
+
"title": "Positive Prompt",
|
|
1904
|
+
"description": "Text prompt describing elements to include in the generated output.",
|
|
1905
|
+
"type": "string",
|
|
1906
|
+
"minLength": 1,
|
|
1907
|
+
"maxLength": 1500
|
|
1908
|
+
},
|
|
1909
|
+
"width": {
|
|
1910
|
+
"title": "Width",
|
|
1911
|
+
"description": "Width of the generated media in pixels.",
|
|
1912
|
+
"type": "integer"
|
|
1913
|
+
},
|
|
1914
|
+
"height": {
|
|
1915
|
+
"title": "Height",
|
|
1916
|
+
"description": "Height of the generated media in pixels.",
|
|
1917
|
+
"type": "integer"
|
|
1918
|
+
},
|
|
1919
|
+
"taskType": {
|
|
1920
|
+
"title": "Task Type",
|
|
1921
|
+
"description": "Identifier for the type of task being performed",
|
|
1922
|
+
"type": "string",
|
|
1923
|
+
"const": "imageInference"
|
|
1924
|
+
},
|
|
1925
|
+
"taskUUID": {
|
|
1926
|
+
"title": "Task UUID",
|
|
1927
|
+
"description": "UUID v4 identifier for tracking tasks and matching async responses. Must be unique per task.",
|
|
1928
|
+
"type": "string",
|
|
1929
|
+
"format": "uuid"
|
|
1930
|
+
},
|
|
1931
|
+
"webhookURL": {
|
|
1932
|
+
"title": "Webhook URL",
|
|
1933
|
+
"description": "Specifies a webhook URL where JSON responses will be sent via HTTP POST when generation tasks complete. For batch requests with multiple results, each completed item triggers a separate webhook call as it becomes available.",
|
|
1934
|
+
"type": "string",
|
|
1935
|
+
"format": "uri"
|
|
1936
|
+
},
|
|
1937
|
+
"includeCost": {
|
|
1938
|
+
"title": "Include Cost",
|
|
1939
|
+
"description": "Include task cost in the response.",
|
|
1940
|
+
"type": "boolean",
|
|
1941
|
+
"default": false
|
|
1942
|
+
},
|
|
1943
|
+
"numberResults": {
|
|
1944
|
+
"title": "Number of Results",
|
|
1945
|
+
"description": "Number of results to generate. Each result uses a different seed, producing variations of the same parameters.",
|
|
1946
|
+
"type": "integer",
|
|
1947
|
+
"minimum": 1,
|
|
1948
|
+
"default": 1,
|
|
1949
|
+
"maximum": 20
|
|
1950
|
+
},
|
|
1951
|
+
"uploadEndpoint": {
|
|
1952
|
+
"title": "Upload Endpoint",
|
|
1953
|
+
"description": "URL to upload content via HTTP PUT. The request body will contain the raw binary data.",
|
|
1954
|
+
"type": "string",
|
|
1955
|
+
"format": "uri"
|
|
1956
|
+
},
|
|
1957
|
+
"ttl": {
|
|
1958
|
+
"title": "TTL",
|
|
1959
|
+
"description": "Time-to-live (TTL) in seconds for generated content. Only applies when `outputType` is `URL`.",
|
|
1960
|
+
"type": "integer",
|
|
1961
|
+
"minimum": 60
|
|
1962
|
+
},
|
|
1963
|
+
"outputType": {
|
|
1964
|
+
"title": "Output Type",
|
|
1965
|
+
"description": "Image output type.",
|
|
1966
|
+
"type": "string",
|
|
1967
|
+
"enum": [
|
|
1968
|
+
"URL",
|
|
1969
|
+
"base64Data",
|
|
1970
|
+
"dataURI"
|
|
1971
|
+
],
|
|
1972
|
+
"default": "URL"
|
|
1973
|
+
},
|
|
1974
|
+
"outputFormat": {
|
|
1975
|
+
"title": "Output Format",
|
|
1976
|
+
"description": "File format for the generated image.",
|
|
1977
|
+
"type": "string",
|
|
1978
|
+
"enum": [
|
|
1979
|
+
"JPG",
|
|
1980
|
+
"PNG",
|
|
1981
|
+
"WEBP"
|
|
1982
|
+
],
|
|
1983
|
+
"default": "JPG"
|
|
1984
|
+
},
|
|
1985
|
+
"outputQuality": {
|
|
1986
|
+
"title": "Output Quality",
|
|
1987
|
+
"description": "Compression quality of the output. Higher values preserve quality but increase file size.",
|
|
1988
|
+
"type": "integer",
|
|
1989
|
+
"minimum": 20,
|
|
1990
|
+
"maximum": 99,
|
|
1991
|
+
"default": 95
|
|
1992
|
+
},
|
|
1993
|
+
"deliveryMethod": {
|
|
1994
|
+
"title": "Delivery Method",
|
|
1995
|
+
"description": "Determines how the API delivers task results.",
|
|
1996
|
+
"type": "string",
|
|
1997
|
+
"oneOf": [
|
|
1998
|
+
{
|
|
1999
|
+
"const": "sync",
|
|
2000
|
+
"description": "Returns complete results directly in the API response."
|
|
2001
|
+
},
|
|
2002
|
+
{
|
|
2003
|
+
"const": "async",
|
|
2004
|
+
"description": "Returns an immediate acknowledgment with the task UUID. Poll for results using getResponse."
|
|
2005
|
+
}
|
|
2006
|
+
],
|
|
2007
|
+
"default": "sync"
|
|
2008
|
+
},
|
|
2009
|
+
"safety": {
|
|
2010
|
+
"type": "object",
|
|
2011
|
+
"title": "Safety Settings",
|
|
2012
|
+
"description": "Content safety checking configuration for image generation.",
|
|
2013
|
+
"properties": {
|
|
2014
|
+
"checkContent": {
|
|
2015
|
+
"title": "Check Content",
|
|
2016
|
+
"description": "Enable or disable content safety checking. When enabled, defaults to `fast` mode.",
|
|
2017
|
+
"type": "boolean",
|
|
2018
|
+
"default": false
|
|
2019
|
+
},
|
|
2020
|
+
"mode": {
|
|
2021
|
+
"description": "Safety checking mode for image generation.",
|
|
2022
|
+
"type": "string",
|
|
2023
|
+
"oneOf": [
|
|
2024
|
+
{
|
|
2025
|
+
"const": "none",
|
|
2026
|
+
"title": "None",
|
|
2027
|
+
"description": "Disables checking."
|
|
2028
|
+
},
|
|
2029
|
+
{
|
|
2030
|
+
"const": "fast",
|
|
2031
|
+
"title": "Fast",
|
|
2032
|
+
"description": "Performs a single check."
|
|
2033
|
+
}
|
|
2034
|
+
],
|
|
2035
|
+
"default": "none"
|
|
2036
|
+
}
|
|
2037
|
+
},
|
|
2038
|
+
"additionalProperties": false
|
|
2039
|
+
}
|
|
2040
|
+
},
|
|
2041
|
+
"required": [
|
|
2042
|
+
"positivePrompt",
|
|
2043
|
+
"inputs",
|
|
2044
|
+
"taskType",
|
|
2045
|
+
"taskUUID",
|
|
2046
|
+
"model"
|
|
2047
|
+
],
|
|
2048
|
+
"allOf": [
|
|
2049
|
+
{
|
|
2050
|
+
"dependentRequired": {
|
|
2051
|
+
"width": [
|
|
2052
|
+
"height"
|
|
2053
|
+
],
|
|
2054
|
+
"height": [
|
|
2055
|
+
"width"
|
|
2056
|
+
]
|
|
2057
|
+
}
|
|
2058
|
+
},
|
|
2059
|
+
{
|
|
2060
|
+
"oneOf": [
|
|
2061
|
+
{
|
|
2062
|
+
"title": "1080p (16:9)",
|
|
2063
|
+
"properties": {
|
|
2064
|
+
"width": {
|
|
2065
|
+
"const": 1920
|
|
2066
|
+
},
|
|
2067
|
+
"height": {
|
|
2068
|
+
"const": 1080
|
|
2069
|
+
}
|
|
2070
|
+
}
|
|
2071
|
+
},
|
|
2072
|
+
{
|
|
2073
|
+
"title": "1080p (1:1)",
|
|
2074
|
+
"properties": {
|
|
2075
|
+
"width": {
|
|
2076
|
+
"const": 1440
|
|
2077
|
+
},
|
|
2078
|
+
"height": {
|
|
2079
|
+
"const": 1440
|
|
2080
|
+
}
|
|
2081
|
+
}
|
|
2082
|
+
},
|
|
2083
|
+
{
|
|
2084
|
+
"title": "1080p (9:16)",
|
|
2085
|
+
"properties": {
|
|
2086
|
+
"width": {
|
|
2087
|
+
"const": 1080
|
|
2088
|
+
},
|
|
2089
|
+
"height": {
|
|
2090
|
+
"const": 1920
|
|
2091
|
+
}
|
|
2092
|
+
}
|
|
2093
|
+
}
|
|
2094
|
+
]
|
|
2095
|
+
}
|
|
2096
|
+
],
|
|
2097
|
+
"additionalProperties": false
|
|
2098
|
+
},
|
|
2099
|
+
{
|
|
2100
|
+
"type": "object",
|
|
2101
|
+
"properties": {
|
|
2102
|
+
"model": {
|
|
2103
|
+
"title": "Model",
|
|
2104
|
+
"description": "Identifier of the model to use for generation.",
|
|
2105
|
+
"type": "string",
|
|
2106
|
+
"const": "vidu:1@1"
|
|
2107
|
+
},
|
|
2108
|
+
"inputs": {
|
|
2109
|
+
"title": "Inputs",
|
|
2110
|
+
"description": "The unified payload wrapper for complex media assets dictating image, video or audio inference constraints.",
|
|
2111
|
+
"type": "object",
|
|
2112
|
+
"properties": {
|
|
2113
|
+
"frameImages": {
|
|
2114
|
+
"title": "Frame Images",
|
|
2115
|
+
"description": "List of frame-specific image inputs. Each item can be either a plain image input (UUID, URL, Data URI, or Base64) or an object with an image and a target frame position.",
|
|
2116
|
+
"type": "array",
|
|
2117
|
+
"minItems": 1,
|
|
2118
|
+
"items": {
|
|
2119
|
+
"anyOf": [
|
|
2120
|
+
{
|
|
2121
|
+
"title": "Image",
|
|
2122
|
+
"description": "Image input (UUID, URL, Data URI, or Base64).",
|
|
2123
|
+
"type": "string",
|
|
2124
|
+
"anyOf": [
|
|
2125
|
+
{
|
|
2126
|
+
"format": "uuid"
|
|
2127
|
+
},
|
|
2128
|
+
{
|
|
2129
|
+
"format": "uri"
|
|
2130
|
+
},
|
|
2131
|
+
{
|
|
2132
|
+
"pattern": "^data:image\\/[a-zA-Z]+;base64,[a-zA-Z0-9+/=]+$"
|
|
2133
|
+
},
|
|
2134
|
+
{
|
|
2135
|
+
"pattern": "^[a-zA-Z0-9+/=]+$"
|
|
2136
|
+
}
|
|
2137
|
+
]
|
|
2138
|
+
},
|
|
2139
|
+
{
|
|
2140
|
+
"type": "object",
|
|
2141
|
+
"properties": {
|
|
2142
|
+
"image": {
|
|
2143
|
+
"title": "Image",
|
|
2144
|
+
"description": "Image input (UUID, URL, Data URI, or Base64).",
|
|
2145
|
+
"type": "string",
|
|
2146
|
+
"anyOf": [
|
|
2147
|
+
{
|
|
2148
|
+
"format": "uuid"
|
|
2149
|
+
},
|
|
2150
|
+
{
|
|
2151
|
+
"format": "uri"
|
|
2152
|
+
},
|
|
2153
|
+
{
|
|
2154
|
+
"pattern": "^data:image\\/[a-zA-Z]+;base64,[a-zA-Z0-9+/=]+$"
|
|
2155
|
+
},
|
|
2156
|
+
{
|
|
2157
|
+
"pattern": "^[a-zA-Z0-9+/=]+$"
|
|
2158
|
+
}
|
|
2159
|
+
]
|
|
2160
|
+
},
|
|
2161
|
+
"frame": {
|
|
2162
|
+
"title": "Frame",
|
|
2163
|
+
"description": "Target frame position for the image. Supports first and last frame.",
|
|
2164
|
+
"oneOf": [
|
|
2165
|
+
{
|
|
2166
|
+
"const": "first",
|
|
2167
|
+
"description": "First frame of the video."
|
|
2168
|
+
},
|
|
2169
|
+
{
|
|
2170
|
+
"const": "last",
|
|
2171
|
+
"description": "Last frame of the video."
|
|
2172
|
+
},
|
|
2173
|
+
{
|
|
2174
|
+
"const": 0,
|
|
2175
|
+
"description": "Frame index 0 (first frame)."
|
|
2176
|
+
},
|
|
2177
|
+
{
|
|
2178
|
+
"const": -1,
|
|
2179
|
+
"description": "Frame index -1 (last frame)."
|
|
2180
|
+
}
|
|
2181
|
+
]
|
|
2182
|
+
}
|
|
2183
|
+
},
|
|
2184
|
+
"required": [
|
|
2185
|
+
"image"
|
|
2186
|
+
],
|
|
2187
|
+
"additionalProperties": false
|
|
2188
|
+
}
|
|
2189
|
+
]
|
|
2190
|
+
},
|
|
2191
|
+
"maxItems": 2
|
|
2192
|
+
}
|
|
2193
|
+
},
|
|
2194
|
+
"additionalProperties": false
|
|
2195
|
+
},
|
|
2196
|
+
"positivePrompt": {
|
|
2197
|
+
"title": "Positive Prompt",
|
|
2198
|
+
"description": "Text prompt describing elements to include in the generated output.",
|
|
2199
|
+
"type": "string",
|
|
2200
|
+
"minLength": 2,
|
|
2201
|
+
"maxLength": 3000
|
|
2202
|
+
},
|
|
2203
|
+
"width": {
|
|
2204
|
+
"title": "Width",
|
|
2205
|
+
"description": "Width of the generated media in pixels.",
|
|
2206
|
+
"type": "integer"
|
|
2207
|
+
},
|
|
2208
|
+
"height": {
|
|
2209
|
+
"title": "Height",
|
|
2210
|
+
"description": "Height of the generated media in pixels.",
|
|
2211
|
+
"type": "integer"
|
|
2212
|
+
},
|
|
2213
|
+
"duration": {
|
|
2214
|
+
"title": "Duration",
|
|
2215
|
+
"description": "Length of the generated video in seconds. The total number of frames produced is determined by duration multiplied by the model's frame rate (fps).",
|
|
2216
|
+
"type": "number",
|
|
2217
|
+
"enum": [
|
|
2218
|
+
4,
|
|
2219
|
+
5
|
|
2220
|
+
],
|
|
2221
|
+
"default": 5
|
|
2222
|
+
},
|
|
2223
|
+
"seed": {
|
|
2224
|
+
"title": "Seed",
|
|
2225
|
+
"description": "Random seed for reproducible generation. When not provided, a random seed is generated in the unsigned 32-bit range.",
|
|
2226
|
+
"type": "integer",
|
|
2227
|
+
"minimum": 0,
|
|
2228
|
+
"maximum": 2147483647
|
|
2229
|
+
},
|
|
2230
|
+
"providerSettings": {
|
|
2231
|
+
"title": "Provider Settings",
|
|
2232
|
+
"description": "Provider-specific configuration settings.",
|
|
2233
|
+
"type": "object",
|
|
2234
|
+
"properties": {
|
|
2235
|
+
"vidu": {
|
|
2236
|
+
"title": "Vidu Settings",
|
|
2237
|
+
"description": "Provider-specific settings for Vidu.",
|
|
2238
|
+
"type": "object",
|
|
2239
|
+
"properties": {
|
|
2240
|
+
"bgm": {
|
|
2241
|
+
"title": "BGM",
|
|
2242
|
+
"description": "Enable background music generation.",
|
|
2243
|
+
"type": "boolean",
|
|
2244
|
+
"default": false
|
|
2245
|
+
},
|
|
2246
|
+
"movementAmplitude": {
|
|
2247
|
+
"title": "Movement Amplitude",
|
|
2248
|
+
"description": "Movement intensity in the generated video.",
|
|
2249
|
+
"type": "string",
|
|
2250
|
+
"oneOf": [
|
|
2251
|
+
{
|
|
2252
|
+
"const": "auto",
|
|
2253
|
+
"description": "Automatically determines movement level based on content."
|
|
2254
|
+
},
|
|
2255
|
+
{
|
|
2256
|
+
"const": "small",
|
|
2257
|
+
"description": "Minimal movement with subtle animations."
|
|
2258
|
+
},
|
|
2259
|
+
{
|
|
2260
|
+
"const": "medium",
|
|
2261
|
+
"description": "Moderate movement with balanced dynamics."
|
|
2262
|
+
},
|
|
2263
|
+
{
|
|
2264
|
+
"const": "large",
|
|
2265
|
+
"description": "High movement with pronounced animations."
|
|
2266
|
+
}
|
|
2267
|
+
],
|
|
2268
|
+
"default": "auto"
|
|
2269
|
+
},
|
|
2270
|
+
"style": {
|
|
2271
|
+
"title": "Style",
|
|
2272
|
+
"description": "Visual style.",
|
|
2273
|
+
"type": "string",
|
|
2274
|
+
"oneOf": [
|
|
2275
|
+
{
|
|
2276
|
+
"const": "general",
|
|
2277
|
+
"description": "Standard photorealistic style."
|
|
2278
|
+
},
|
|
2279
|
+
{
|
|
2280
|
+
"const": "anime",
|
|
2281
|
+
"description": "Anime/manga visual aesthetic."
|
|
2282
|
+
}
|
|
2283
|
+
],
|
|
2284
|
+
"default": "general"
|
|
2285
|
+
}
|
|
2286
|
+
},
|
|
2287
|
+
"additionalProperties": false
|
|
2288
|
+
}
|
|
2289
|
+
},
|
|
2290
|
+
"additionalProperties": false
|
|
2291
|
+
},
|
|
2292
|
+
"taskType": {
|
|
2293
|
+
"title": "Task Type",
|
|
2294
|
+
"description": "Identifier for the type of task being performed",
|
|
2295
|
+
"type": "string",
|
|
2296
|
+
"const": "videoInference"
|
|
2297
|
+
},
|
|
2298
|
+
"taskUUID": {
|
|
2299
|
+
"title": "Task UUID",
|
|
2300
|
+
"description": "UUID v4 identifier for tracking tasks and matching async responses. Must be unique per task.",
|
|
2301
|
+
"type": "string",
|
|
2302
|
+
"format": "uuid"
|
|
2303
|
+
},
|
|
2304
|
+
"webhookURL": {
|
|
2305
|
+
"title": "Webhook URL",
|
|
2306
|
+
"description": "Specifies a webhook URL where JSON responses will be sent via HTTP POST when generation tasks complete. For batch requests with multiple results, each completed item triggers a separate webhook call as it becomes available.",
|
|
2307
|
+
"type": "string",
|
|
2308
|
+
"format": "uri"
|
|
2309
|
+
},
|
|
2310
|
+
"includeCost": {
|
|
2311
|
+
"title": "Include Cost",
|
|
2312
|
+
"description": "Include task cost in the response.",
|
|
2313
|
+
"type": "boolean",
|
|
2314
|
+
"default": false
|
|
2315
|
+
},
|
|
2316
|
+
"numberResults": {
|
|
2317
|
+
"title": "Number of Results",
|
|
2318
|
+
"description": "Number of results to generate. Each result uses a different seed, producing variations of the same parameters.",
|
|
2319
|
+
"type": "integer",
|
|
2320
|
+
"minimum": 1,
|
|
2321
|
+
"default": 1,
|
|
2322
|
+
"maximum": 4
|
|
2323
|
+
},
|
|
2324
|
+
"uploadEndpoint": {
|
|
2325
|
+
"title": "Upload Endpoint",
|
|
2326
|
+
"description": "URL to upload content via HTTP PUT. The request body will contain the raw binary data.",
|
|
2327
|
+
"type": "string",
|
|
2328
|
+
"format": "uri"
|
|
2329
|
+
},
|
|
2330
|
+
"ttl": {
|
|
2331
|
+
"title": "TTL",
|
|
2332
|
+
"description": "Time-to-live (TTL) in seconds for generated content. Only applies when `outputType` is `URL`.",
|
|
2333
|
+
"type": "integer",
|
|
2334
|
+
"minimum": 60
|
|
2335
|
+
},
|
|
2336
|
+
"outputType": {
|
|
2337
|
+
"title": "Output Type",
|
|
2338
|
+
"description": "Video output type.",
|
|
2339
|
+
"type": "string",
|
|
2340
|
+
"enum": [
|
|
2341
|
+
"URL"
|
|
2342
|
+
],
|
|
2343
|
+
"default": "URL"
|
|
2344
|
+
},
|
|
2345
|
+
"outputFormat": {
|
|
2346
|
+
"title": "Output Format",
|
|
2347
|
+
"description": "File format for the generated video.",
|
|
2348
|
+
"type": "string",
|
|
2349
|
+
"enum": [
|
|
2350
|
+
"MP4",
|
|
2351
|
+
"WEBM",
|
|
2352
|
+
"MOV"
|
|
2353
|
+
],
|
|
2354
|
+
"default": "MP4"
|
|
2355
|
+
},
|
|
2356
|
+
"outputQuality": {
|
|
2357
|
+
"title": "Output Quality",
|
|
2358
|
+
"description": "Compression quality of the output. Higher values preserve quality but increase file size.",
|
|
2359
|
+
"type": "integer",
|
|
2360
|
+
"minimum": 20,
|
|
2361
|
+
"maximum": 99,
|
|
2362
|
+
"default": 95
|
|
2363
|
+
},
|
|
2364
|
+
"deliveryMethod": {
|
|
2365
|
+
"title": "Delivery Method",
|
|
2366
|
+
"description": "Determines how the API delivers task results.",
|
|
2367
|
+
"type": "string",
|
|
2368
|
+
"oneOf": [
|
|
2369
|
+
{
|
|
2370
|
+
"const": "async",
|
|
2371
|
+
"description": "Returns an immediate acknowledgment with the task UUID. Poll for results using getResponse. Required for long-running tasks like video generation."
|
|
2372
|
+
}
|
|
2373
|
+
],
|
|
2374
|
+
"default": "async"
|
|
2375
|
+
},
|
|
2376
|
+
"safety": {
|
|
2377
|
+
"type": "object",
|
|
2378
|
+
"title": "Safety Settings",
|
|
2379
|
+
"description": "Content safety checking configuration for video generation.",
|
|
2380
|
+
"properties": {
|
|
2381
|
+
"checkContent": {
|
|
2382
|
+
"title": "Check Content",
|
|
2383
|
+
"description": "Enable or disable content safety checking. When enabled, defaults to `fast` mode.",
|
|
2384
|
+
"type": "boolean",
|
|
2385
|
+
"default": false
|
|
2386
|
+
},
|
|
2387
|
+
"mode": {
|
|
2388
|
+
"description": "Safety checking mode for video generation.",
|
|
2389
|
+
"type": "string",
|
|
2390
|
+
"oneOf": [
|
|
2391
|
+
{
|
|
2392
|
+
"const": "none",
|
|
2393
|
+
"title": "None",
|
|
2394
|
+
"description": "Disables checking."
|
|
2395
|
+
},
|
|
2396
|
+
{
|
|
2397
|
+
"const": "fast",
|
|
2398
|
+
"title": "Fast",
|
|
2399
|
+
"description": "Checks key frames."
|
|
2400
|
+
},
|
|
2401
|
+
{
|
|
2402
|
+
"const": "full",
|
|
2403
|
+
"title": "Full",
|
|
2404
|
+
"description": "Checks all frames."
|
|
2405
|
+
}
|
|
2406
|
+
],
|
|
2407
|
+
"default": "none"
|
|
2408
|
+
}
|
|
2409
|
+
},
|
|
2410
|
+
"additionalProperties": false
|
|
2411
|
+
}
|
|
2412
|
+
},
|
|
2413
|
+
"allOf": [
|
|
2414
|
+
{
|
|
2415
|
+
"dependentRequired": {
|
|
2416
|
+
"width": [
|
|
2417
|
+
"height"
|
|
2418
|
+
],
|
|
2419
|
+
"height": [
|
|
2420
|
+
"width"
|
|
2421
|
+
]
|
|
2422
|
+
}
|
|
2423
|
+
},
|
|
2424
|
+
{
|
|
2425
|
+
"oneOf": [
|
|
2426
|
+
{
|
|
2427
|
+
"title": "1080p (16:9)",
|
|
2428
|
+
"properties": {
|
|
2429
|
+
"width": {
|
|
2430
|
+
"const": 1920
|
|
2431
|
+
},
|
|
2432
|
+
"height": {
|
|
2433
|
+
"const": 1080
|
|
2434
|
+
}
|
|
2435
|
+
}
|
|
2436
|
+
},
|
|
2437
|
+
{
|
|
2438
|
+
"title": "1080p (1:1)",
|
|
2439
|
+
"properties": {
|
|
2440
|
+
"width": {
|
|
2441
|
+
"const": 1080
|
|
2442
|
+
},
|
|
2443
|
+
"height": {
|
|
2444
|
+
"const": 1080
|
|
2445
|
+
}
|
|
2446
|
+
}
|
|
2447
|
+
},
|
|
2448
|
+
{
|
|
2449
|
+
"title": "1080p (9:16)",
|
|
2450
|
+
"properties": {
|
|
2451
|
+
"width": {
|
|
2452
|
+
"const": 1080
|
|
2453
|
+
},
|
|
2454
|
+
"height": {
|
|
2455
|
+
"const": 1920
|
|
2456
|
+
}
|
|
2457
|
+
}
|
|
2458
|
+
}
|
|
2459
|
+
]
|
|
2460
|
+
},
|
|
2461
|
+
{
|
|
2462
|
+
"not": {
|
|
2463
|
+
"allOf": [
|
|
2464
|
+
{
|
|
2465
|
+
"properties": {
|
|
2466
|
+
"providerSettings": {
|
|
2467
|
+
"properties": {
|
|
2468
|
+
"vidu": {
|
|
2469
|
+
"required": [
|
|
2470
|
+
"style"
|
|
2471
|
+
]
|
|
2472
|
+
}
|
|
2473
|
+
}
|
|
2474
|
+
}
|
|
2475
|
+
},
|
|
2476
|
+
"required": [
|
|
2477
|
+
"providerSettings"
|
|
2478
|
+
]
|
|
2479
|
+
},
|
|
2480
|
+
{
|
|
2481
|
+
"properties": {
|
|
2482
|
+
"inputs": {
|
|
2483
|
+
"anyOf": [
|
|
2484
|
+
{
|
|
2485
|
+
"required": [
|
|
2486
|
+
"frameImages"
|
|
2487
|
+
]
|
|
2488
|
+
}
|
|
2489
|
+
]
|
|
2490
|
+
}
|
|
2491
|
+
},
|
|
2492
|
+
"required": [
|
|
2493
|
+
"inputs"
|
|
2494
|
+
]
|
|
2495
|
+
}
|
|
2496
|
+
]
|
|
2497
|
+
}
|
|
2498
|
+
},
|
|
2499
|
+
{
|
|
2500
|
+
"if": {
|
|
2501
|
+
"properties": {
|
|
2502
|
+
"providerSettings": {
|
|
2503
|
+
"properties": {
|
|
2504
|
+
"vidu": {
|
|
2505
|
+
"required": [
|
|
2506
|
+
"bgm"
|
|
2507
|
+
]
|
|
2508
|
+
}
|
|
2509
|
+
}
|
|
2510
|
+
}
|
|
2511
|
+
},
|
|
2512
|
+
"required": [
|
|
2513
|
+
"providerSettings"
|
|
2514
|
+
]
|
|
2515
|
+
},
|
|
2516
|
+
"then": {
|
|
2517
|
+
"properties": {
|
|
2518
|
+
"duration": {
|
|
2519
|
+
"const": 4
|
|
2520
|
+
}
|
|
2521
|
+
}
|
|
2522
|
+
}
|
|
2523
|
+
},
|
|
2524
|
+
{
|
|
2525
|
+
"if": {
|
|
2526
|
+
"properties": {
|
|
2527
|
+
"duration": {
|
|
2528
|
+
"const": 4
|
|
2529
|
+
}
|
|
2530
|
+
}
|
|
2531
|
+
},
|
|
2532
|
+
"then": {
|
|
2533
|
+
"properties": {
|
|
2534
|
+
"providerSettings": {
|
|
2535
|
+
"properties": {
|
|
2536
|
+
"vidu": {
|
|
2537
|
+
"required": [
|
|
2538
|
+
"bgm"
|
|
2539
|
+
]
|
|
2540
|
+
}
|
|
2541
|
+
}
|
|
2542
|
+
}
|
|
2543
|
+
},
|
|
2544
|
+
"required": [
|
|
2545
|
+
"providerSettings"
|
|
2546
|
+
]
|
|
2547
|
+
}
|
|
2548
|
+
}
|
|
2549
|
+
],
|
|
2550
|
+
"additionalProperties": false,
|
|
2551
|
+
"required": [
|
|
2552
|
+
"taskType",
|
|
2553
|
+
"taskUUID",
|
|
2554
|
+
"model"
|
|
2555
|
+
]
|
|
2556
|
+
},
|
|
2557
|
+
{
|
|
2558
|
+
"type": "object",
|
|
2559
|
+
"properties": {
|
|
2560
|
+
"model": {
|
|
2561
|
+
"title": "Model",
|
|
2562
|
+
"description": "Identifier of the model to use for generation.",
|
|
2563
|
+
"type": "string",
|
|
2564
|
+
"const": "vidu:3@1"
|
|
2565
|
+
},
|
|
2566
|
+
"inputs": {
|
|
2567
|
+
"title": "Inputs",
|
|
2568
|
+
"description": "The unified payload wrapper for complex media assets dictating image, video or audio inference constraints.",
|
|
2569
|
+
"type": "object",
|
|
2570
|
+
"properties": {
|
|
2571
|
+
"referenceImages": {
|
|
2572
|
+
"title": "Reference Images",
|
|
2573
|
+
"description": "List of reference images (UUID, URL, Data URI, or Base64).",
|
|
2574
|
+
"type": "array",
|
|
2575
|
+
"minItems": 1,
|
|
2576
|
+
"items": {
|
|
2577
|
+
"title": "Image",
|
|
2578
|
+
"description": "Image input (UUID, URL, Data URI, or Base64).",
|
|
2579
|
+
"type": "string",
|
|
2580
|
+
"anyOf": [
|
|
2581
|
+
{
|
|
2582
|
+
"format": "uuid"
|
|
2583
|
+
},
|
|
2584
|
+
{
|
|
2585
|
+
"format": "uri"
|
|
2586
|
+
},
|
|
2587
|
+
{
|
|
2588
|
+
"pattern": "^data:image\\/[a-zA-Z]+;base64,[a-zA-Z0-9+/=]+$"
|
|
2589
|
+
},
|
|
2590
|
+
{
|
|
2591
|
+
"pattern": "^[a-zA-Z0-9+/=]+$"
|
|
2592
|
+
}
|
|
2593
|
+
]
|
|
2594
|
+
},
|
|
2595
|
+
"maxItems": 7
|
|
2596
|
+
},
|
|
2597
|
+
"frameImages": {
|
|
2598
|
+
"title": "Frame Images",
|
|
2599
|
+
"description": "List of frame-specific image inputs. Each item can be either a plain image input (UUID, URL, Data URI, or Base64) or an object with an image and a target frame position.",
|
|
2600
|
+
"type": "array",
|
|
2601
|
+
"minItems": 1,
|
|
2602
|
+
"items": {
|
|
2603
|
+
"anyOf": [
|
|
2604
|
+
{
|
|
2605
|
+
"title": "Image",
|
|
2606
|
+
"description": "Image input (UUID, URL, Data URI, or Base64).",
|
|
2607
|
+
"type": "string",
|
|
2608
|
+
"anyOf": [
|
|
2609
|
+
{
|
|
2610
|
+
"format": "uuid"
|
|
2611
|
+
},
|
|
2612
|
+
{
|
|
2613
|
+
"format": "uri"
|
|
2614
|
+
},
|
|
2615
|
+
{
|
|
2616
|
+
"pattern": "^data:image\\/[a-zA-Z]+;base64,[a-zA-Z0-9+/=]+$"
|
|
2617
|
+
},
|
|
2618
|
+
{
|
|
2619
|
+
"pattern": "^[a-zA-Z0-9+/=]+$"
|
|
2620
|
+
}
|
|
2621
|
+
]
|
|
2622
|
+
},
|
|
2623
|
+
{
|
|
2624
|
+
"type": "object",
|
|
2625
|
+
"properties": {
|
|
2626
|
+
"image": {
|
|
2627
|
+
"title": "Image",
|
|
2628
|
+
"description": "Image input (UUID, URL, Data URI, or Base64).",
|
|
2629
|
+
"type": "string",
|
|
2630
|
+
"anyOf": [
|
|
2631
|
+
{
|
|
2632
|
+
"format": "uuid"
|
|
2633
|
+
},
|
|
2634
|
+
{
|
|
2635
|
+
"format": "uri"
|
|
2636
|
+
},
|
|
2637
|
+
{
|
|
2638
|
+
"pattern": "^data:image\\/[a-zA-Z]+;base64,[a-zA-Z0-9+/=]+$"
|
|
2639
|
+
},
|
|
2640
|
+
{
|
|
2641
|
+
"pattern": "^[a-zA-Z0-9+/=]+$"
|
|
2642
|
+
}
|
|
2643
|
+
]
|
|
2644
|
+
},
|
|
2645
|
+
"frame": {
|
|
2646
|
+
"title": "Frame",
|
|
2647
|
+
"description": "Target frame position for the image. Supports first and last frame.",
|
|
2648
|
+
"oneOf": [
|
|
2649
|
+
{
|
|
2650
|
+
"const": "first",
|
|
2651
|
+
"description": "First frame of the video."
|
|
2652
|
+
},
|
|
2653
|
+
{
|
|
2654
|
+
"const": "last",
|
|
2655
|
+
"description": "Last frame of the video."
|
|
2656
|
+
},
|
|
2657
|
+
{
|
|
2658
|
+
"const": 0,
|
|
2659
|
+
"description": "Frame index 0 (first frame)."
|
|
2660
|
+
},
|
|
2661
|
+
{
|
|
2662
|
+
"const": -1,
|
|
2663
|
+
"description": "Frame index -1 (last frame)."
|
|
2664
|
+
}
|
|
2665
|
+
]
|
|
2666
|
+
}
|
|
2667
|
+
},
|
|
2668
|
+
"required": [
|
|
2669
|
+
"image"
|
|
2670
|
+
],
|
|
2671
|
+
"additionalProperties": false
|
|
2672
|
+
}
|
|
2673
|
+
]
|
|
2674
|
+
},
|
|
2675
|
+
"maxItems": 2
|
|
2676
|
+
}
|
|
2677
|
+
},
|
|
2678
|
+
"additionalProperties": false
|
|
2679
|
+
},
|
|
2680
|
+
"positivePrompt": {
|
|
2681
|
+
"title": "Positive Prompt",
|
|
2682
|
+
"description": "Text prompt describing elements to include in the generated output.",
|
|
2683
|
+
"type": "string",
|
|
2684
|
+
"minLength": 2,
|
|
2685
|
+
"maxLength": 3000
|
|
2686
|
+
},
|
|
2687
|
+
"width": {
|
|
2688
|
+
"title": "Width",
|
|
2689
|
+
"description": "Width of the generated media in pixels.",
|
|
2690
|
+
"type": "integer"
|
|
2691
|
+
},
|
|
2692
|
+
"height": {
|
|
2693
|
+
"title": "Height",
|
|
2694
|
+
"description": "Height of the generated media in pixels.",
|
|
2695
|
+
"type": "integer"
|
|
2696
|
+
},
|
|
2697
|
+
"duration": {
|
|
2698
|
+
"title": "Duration",
|
|
2699
|
+
"description": "Length of the generated video in seconds. The total number of frames produced is determined by duration multiplied by the model's frame rate (fps).",
|
|
2700
|
+
"type": "number",
|
|
2701
|
+
"default": 5,
|
|
2702
|
+
"minimum": 1,
|
|
2703
|
+
"maximum": 8
|
|
2704
|
+
},
|
|
2705
|
+
"seed": {
|
|
2706
|
+
"title": "Seed",
|
|
2707
|
+
"description": "Random seed for reproducible generation. When not provided, a random seed is generated in the unsigned 32-bit range.",
|
|
2708
|
+
"type": "integer",
|
|
2709
|
+
"minimum": 0,
|
|
2710
|
+
"maximum": 2147483647
|
|
2711
|
+
},
|
|
2712
|
+
"providerSettings": {
|
|
2713
|
+
"title": "Provider Settings",
|
|
2714
|
+
"description": "Provider-specific configuration settings.",
|
|
2715
|
+
"type": "object",
|
|
2716
|
+
"properties": {
|
|
2717
|
+
"vidu": {
|
|
2718
|
+
"title": "Vidu Settings",
|
|
2719
|
+
"description": "Provider-specific settings for Vidu.",
|
|
2720
|
+
"type": "object",
|
|
2721
|
+
"properties": {
|
|
2722
|
+
"bgm": {
|
|
2723
|
+
"title": "BGM",
|
|
2724
|
+
"description": "Enable background music generation.",
|
|
2725
|
+
"type": "boolean",
|
|
2726
|
+
"default": false
|
|
2727
|
+
},
|
|
2728
|
+
"movementAmplitude": {
|
|
2729
|
+
"title": "Movement Amplitude",
|
|
2730
|
+
"description": "Movement intensity in the generated video.",
|
|
2731
|
+
"type": "string",
|
|
2732
|
+
"oneOf": [
|
|
2733
|
+
{
|
|
2734
|
+
"const": "auto",
|
|
2735
|
+
"description": "Automatically determines movement level based on content."
|
|
2736
|
+
},
|
|
2737
|
+
{
|
|
2738
|
+
"const": "small",
|
|
2739
|
+
"description": "Minimal movement with subtle animations."
|
|
2740
|
+
},
|
|
2741
|
+
{
|
|
2742
|
+
"const": "medium",
|
|
2743
|
+
"description": "Moderate movement with balanced dynamics."
|
|
2744
|
+
},
|
|
2745
|
+
{
|
|
2746
|
+
"const": "large",
|
|
2747
|
+
"description": "High movement with pronounced animations."
|
|
2748
|
+
}
|
|
2749
|
+
],
|
|
2750
|
+
"default": "auto"
|
|
2751
|
+
}
|
|
2752
|
+
},
|
|
2753
|
+
"additionalProperties": false
|
|
2754
|
+
}
|
|
2755
|
+
},
|
|
2756
|
+
"additionalProperties": false
|
|
2757
|
+
},
|
|
2758
|
+
"taskType": {
|
|
2759
|
+
"title": "Task Type",
|
|
2760
|
+
"description": "Identifier for the type of task being performed",
|
|
2761
|
+
"type": "string",
|
|
2762
|
+
"const": "videoInference"
|
|
2763
|
+
},
|
|
2764
|
+
"taskUUID": {
|
|
2765
|
+
"title": "Task UUID",
|
|
2766
|
+
"description": "UUID v4 identifier for tracking tasks and matching async responses. Must be unique per task.",
|
|
2767
|
+
"type": "string",
|
|
2768
|
+
"format": "uuid"
|
|
2769
|
+
},
|
|
2770
|
+
"webhookURL": {
|
|
2771
|
+
"title": "Webhook URL",
|
|
2772
|
+
"description": "Specifies a webhook URL where JSON responses will be sent via HTTP POST when generation tasks complete. For batch requests with multiple results, each completed item triggers a separate webhook call as it becomes available.",
|
|
2773
|
+
"type": "string",
|
|
2774
|
+
"format": "uri"
|
|
2775
|
+
},
|
|
2776
|
+
"includeCost": {
|
|
2777
|
+
"title": "Include Cost",
|
|
2778
|
+
"description": "Include task cost in the response.",
|
|
2779
|
+
"type": "boolean",
|
|
2780
|
+
"default": false
|
|
2781
|
+
},
|
|
2782
|
+
"numberResults": {
|
|
2783
|
+
"title": "Number of Results",
|
|
2784
|
+
"description": "Number of results to generate. Each result uses a different seed, producing variations of the same parameters.",
|
|
2785
|
+
"type": "integer",
|
|
2786
|
+
"minimum": 1,
|
|
2787
|
+
"default": 1,
|
|
2788
|
+
"maximum": 4
|
|
2789
|
+
},
|
|
2790
|
+
"uploadEndpoint": {
|
|
2791
|
+
"title": "Upload Endpoint",
|
|
2792
|
+
"description": "URL to upload content via HTTP PUT. The request body will contain the raw binary data.",
|
|
2793
|
+
"type": "string",
|
|
2794
|
+
"format": "uri"
|
|
2795
|
+
},
|
|
2796
|
+
"ttl": {
|
|
2797
|
+
"title": "TTL",
|
|
2798
|
+
"description": "Time-to-live (TTL) in seconds for generated content. Only applies when `outputType` is `URL`.",
|
|
2799
|
+
"type": "integer",
|
|
2800
|
+
"minimum": 60
|
|
2801
|
+
},
|
|
2802
|
+
"outputType": {
|
|
2803
|
+
"title": "Output Type",
|
|
2804
|
+
"description": "Video output type.",
|
|
2805
|
+
"type": "string",
|
|
2806
|
+
"enum": [
|
|
2807
|
+
"URL"
|
|
2808
|
+
],
|
|
2809
|
+
"default": "URL"
|
|
2810
|
+
},
|
|
2811
|
+
"outputFormat": {
|
|
2812
|
+
"title": "Output Format",
|
|
2813
|
+
"description": "File format for the generated video.",
|
|
2814
|
+
"type": "string",
|
|
2815
|
+
"enum": [
|
|
2816
|
+
"MP4",
|
|
2817
|
+
"WEBM",
|
|
2818
|
+
"MOV"
|
|
2819
|
+
],
|
|
2820
|
+
"default": "MP4"
|
|
2821
|
+
},
|
|
2822
|
+
"outputQuality": {
|
|
2823
|
+
"title": "Output Quality",
|
|
2824
|
+
"description": "Compression quality of the output. Higher values preserve quality but increase file size.",
|
|
2825
|
+
"type": "integer",
|
|
2826
|
+
"minimum": 20,
|
|
2827
|
+
"maximum": 99,
|
|
2828
|
+
"default": 95
|
|
2829
|
+
},
|
|
2830
|
+
"deliveryMethod": {
|
|
2831
|
+
"title": "Delivery Method",
|
|
2832
|
+
"description": "Determines how the API delivers task results.",
|
|
2833
|
+
"type": "string",
|
|
2834
|
+
"oneOf": [
|
|
2835
|
+
{
|
|
2836
|
+
"const": "async",
|
|
2837
|
+
"description": "Returns an immediate acknowledgment with the task UUID. Poll for results using getResponse. Required for long-running tasks like video generation."
|
|
2838
|
+
}
|
|
2839
|
+
],
|
|
2840
|
+
"default": "async"
|
|
2841
|
+
},
|
|
2842
|
+
"safety": {
|
|
2843
|
+
"type": "object",
|
|
2844
|
+
"title": "Safety Settings",
|
|
2845
|
+
"description": "Content safety checking configuration for video generation.",
|
|
2846
|
+
"properties": {
|
|
2847
|
+
"checkContent": {
|
|
2848
|
+
"title": "Check Content",
|
|
2849
|
+
"description": "Enable or disable content safety checking. When enabled, defaults to `fast` mode.",
|
|
2850
|
+
"type": "boolean",
|
|
2851
|
+
"default": false
|
|
2852
|
+
},
|
|
2853
|
+
"mode": {
|
|
2854
|
+
"description": "Safety checking mode for video generation.",
|
|
2855
|
+
"type": "string",
|
|
2856
|
+
"oneOf": [
|
|
2857
|
+
{
|
|
2858
|
+
"const": "none",
|
|
2859
|
+
"title": "None",
|
|
2860
|
+
"description": "Disables checking."
|
|
2861
|
+
},
|
|
2862
|
+
{
|
|
2863
|
+
"const": "fast",
|
|
2864
|
+
"title": "Fast",
|
|
2865
|
+
"description": "Checks key frames."
|
|
2866
|
+
},
|
|
2867
|
+
{
|
|
2868
|
+
"const": "full",
|
|
2869
|
+
"title": "Full",
|
|
2870
|
+
"description": "Checks all frames."
|
|
2871
|
+
}
|
|
2872
|
+
],
|
|
2873
|
+
"default": "none"
|
|
2874
|
+
}
|
|
2875
|
+
},
|
|
2876
|
+
"additionalProperties": false
|
|
2877
|
+
}
|
|
2878
|
+
},
|
|
2879
|
+
"allOf": [
|
|
2880
|
+
{
|
|
2881
|
+
"dependentRequired": {
|
|
2882
|
+
"width": [
|
|
2883
|
+
"height"
|
|
2884
|
+
],
|
|
2885
|
+
"height": [
|
|
2886
|
+
"width"
|
|
2887
|
+
]
|
|
2888
|
+
}
|
|
2889
|
+
},
|
|
2890
|
+
{
|
|
2891
|
+
"oneOf": [
|
|
2892
|
+
{
|
|
2893
|
+
"title": "360p (16:9)",
|
|
2894
|
+
"properties": {
|
|
2895
|
+
"width": {
|
|
2896
|
+
"const": 640
|
|
2897
|
+
},
|
|
2898
|
+
"height": {
|
|
2899
|
+
"const": 352
|
|
2900
|
+
}
|
|
2901
|
+
}
|
|
2902
|
+
},
|
|
2903
|
+
{
|
|
2904
|
+
"title": "360p (4:3)",
|
|
2905
|
+
"properties": {
|
|
2906
|
+
"width": {
|
|
2907
|
+
"const": 544
|
|
2908
|
+
},
|
|
2909
|
+
"height": {
|
|
2910
|
+
"const": 400
|
|
2911
|
+
}
|
|
2912
|
+
}
|
|
2913
|
+
},
|
|
2914
|
+
{
|
|
2915
|
+
"title": "360p (1:1)",
|
|
2916
|
+
"properties": {
|
|
2917
|
+
"width": {
|
|
2918
|
+
"const": 480
|
|
2919
|
+
},
|
|
2920
|
+
"height": {
|
|
2921
|
+
"const": 480
|
|
2922
|
+
}
|
|
2923
|
+
}
|
|
2924
|
+
},
|
|
2925
|
+
{
|
|
2926
|
+
"title": "360p (3:4)",
|
|
2927
|
+
"properties": {
|
|
2928
|
+
"width": {
|
|
2929
|
+
"const": 400
|
|
2930
|
+
},
|
|
2931
|
+
"height": {
|
|
2932
|
+
"const": 544
|
|
2933
|
+
}
|
|
2934
|
+
}
|
|
2935
|
+
},
|
|
2936
|
+
{
|
|
2937
|
+
"title": "360p (9:16)",
|
|
2938
|
+
"properties": {
|
|
2939
|
+
"width": {
|
|
2940
|
+
"const": 352
|
|
2941
|
+
},
|
|
2942
|
+
"height": {
|
|
2943
|
+
"const": 640
|
|
2944
|
+
}
|
|
2945
|
+
}
|
|
2946
|
+
},
|
|
2947
|
+
{
|
|
2948
|
+
"title": "540p (16:9)",
|
|
2949
|
+
"properties": {
|
|
2950
|
+
"width": {
|
|
2951
|
+
"const": 960
|
|
2952
|
+
},
|
|
2953
|
+
"height": {
|
|
2954
|
+
"const": 528
|
|
2955
|
+
}
|
|
2956
|
+
}
|
|
2957
|
+
},
|
|
2958
|
+
{
|
|
2959
|
+
"title": "540p (4:3)",
|
|
2960
|
+
"properties": {
|
|
2961
|
+
"width": {
|
|
2962
|
+
"const": 816
|
|
2963
|
+
},
|
|
2964
|
+
"height": {
|
|
2965
|
+
"const": 608
|
|
2966
|
+
}
|
|
2967
|
+
}
|
|
2968
|
+
},
|
|
2969
|
+
{
|
|
2970
|
+
"title": "540p (1:1)",
|
|
2971
|
+
"properties": {
|
|
2972
|
+
"width": {
|
|
2973
|
+
"const": 720
|
|
2974
|
+
},
|
|
2975
|
+
"height": {
|
|
2976
|
+
"const": 720
|
|
2977
|
+
}
|
|
2978
|
+
}
|
|
2979
|
+
},
|
|
2980
|
+
{
|
|
2981
|
+
"title": "540p (3:4)",
|
|
2982
|
+
"properties": {
|
|
2983
|
+
"width": {
|
|
2984
|
+
"const": 608
|
|
2985
|
+
},
|
|
2986
|
+
"height": {
|
|
2987
|
+
"const": 816
|
|
2988
|
+
}
|
|
2989
|
+
}
|
|
2990
|
+
},
|
|
2991
|
+
{
|
|
2992
|
+
"title": "540p (9:16)",
|
|
2993
|
+
"properties": {
|
|
2994
|
+
"width": {
|
|
2995
|
+
"const": 528
|
|
2996
|
+
},
|
|
2997
|
+
"height": {
|
|
2998
|
+
"const": 960
|
|
2999
|
+
}
|
|
3000
|
+
}
|
|
3001
|
+
},
|
|
3002
|
+
{
|
|
3003
|
+
"title": "720p (16:9)",
|
|
3004
|
+
"properties": {
|
|
3005
|
+
"width": {
|
|
3006
|
+
"const": 1280
|
|
3007
|
+
},
|
|
3008
|
+
"height": {
|
|
3009
|
+
"const": 720
|
|
3010
|
+
}
|
|
3011
|
+
}
|
|
3012
|
+
},
|
|
3013
|
+
{
|
|
3014
|
+
"title": "720p (4:3)",
|
|
3015
|
+
"properties": {
|
|
3016
|
+
"width": {
|
|
3017
|
+
"const": 1104
|
|
3018
|
+
},
|
|
3019
|
+
"height": {
|
|
3020
|
+
"const": 816
|
|
3021
|
+
}
|
|
3022
|
+
}
|
|
3023
|
+
},
|
|
3024
|
+
{
|
|
3025
|
+
"title": "720p (1:1)",
|
|
3026
|
+
"properties": {
|
|
3027
|
+
"width": {
|
|
3028
|
+
"const": 960
|
|
3029
|
+
},
|
|
3030
|
+
"height": {
|
|
3031
|
+
"const": 960
|
|
3032
|
+
}
|
|
3033
|
+
}
|
|
3034
|
+
},
|
|
3035
|
+
{
|
|
3036
|
+
"title": "720p (3:4)",
|
|
3037
|
+
"properties": {
|
|
3038
|
+
"width": {
|
|
3039
|
+
"const": 816
|
|
3040
|
+
},
|
|
3041
|
+
"height": {
|
|
3042
|
+
"const": 1104
|
|
3043
|
+
}
|
|
3044
|
+
}
|
|
3045
|
+
},
|
|
3046
|
+
{
|
|
3047
|
+
"title": "720p (9:16)",
|
|
3048
|
+
"properties": {
|
|
3049
|
+
"width": {
|
|
3050
|
+
"const": 720
|
|
3051
|
+
},
|
|
3052
|
+
"height": {
|
|
3053
|
+
"const": 1280
|
|
3054
|
+
}
|
|
3055
|
+
}
|
|
3056
|
+
},
|
|
3057
|
+
{
|
|
3058
|
+
"title": "1080p (16:9)",
|
|
3059
|
+
"properties": {
|
|
3060
|
+
"width": {
|
|
3061
|
+
"const": 1920
|
|
3062
|
+
},
|
|
3063
|
+
"height": {
|
|
3064
|
+
"const": 1080
|
|
3065
|
+
}
|
|
3066
|
+
}
|
|
3067
|
+
},
|
|
3068
|
+
{
|
|
3069
|
+
"title": "1080p (4:3)",
|
|
3070
|
+
"properties": {
|
|
3071
|
+
"width": {
|
|
3072
|
+
"const": 1674
|
|
3073
|
+
},
|
|
3074
|
+
"height": {
|
|
3075
|
+
"const": 1238
|
|
3076
|
+
}
|
|
3077
|
+
}
|
|
3078
|
+
},
|
|
3079
|
+
{
|
|
3080
|
+
"title": "1080p (1:1)",
|
|
3081
|
+
"properties": {
|
|
3082
|
+
"width": {
|
|
3083
|
+
"const": 1440
|
|
3084
|
+
},
|
|
3085
|
+
"height": {
|
|
3086
|
+
"const": 1440
|
|
3087
|
+
}
|
|
3088
|
+
}
|
|
3089
|
+
},
|
|
3090
|
+
{
|
|
3091
|
+
"title": "1080p (3:4)",
|
|
3092
|
+
"properties": {
|
|
3093
|
+
"width": {
|
|
3094
|
+
"const": 1238
|
|
3095
|
+
},
|
|
3096
|
+
"height": {
|
|
3097
|
+
"const": 1674
|
|
3098
|
+
}
|
|
3099
|
+
}
|
|
3100
|
+
},
|
|
3101
|
+
{
|
|
3102
|
+
"title": "1080p (9:16)",
|
|
3103
|
+
"properties": {
|
|
3104
|
+
"width": {
|
|
3105
|
+
"const": 1080
|
|
3106
|
+
},
|
|
3107
|
+
"height": {
|
|
3108
|
+
"const": 1920
|
|
3109
|
+
}
|
|
3110
|
+
}
|
|
3111
|
+
}
|
|
3112
|
+
]
|
|
3113
|
+
},
|
|
3114
|
+
{
|
|
3115
|
+
"if": {
|
|
3116
|
+
"properties": {
|
|
3117
|
+
"providerSettings": {
|
|
3118
|
+
"properties": {
|
|
3119
|
+
"vidu": {
|
|
3120
|
+
"required": [
|
|
3121
|
+
"bgm"
|
|
3122
|
+
]
|
|
3123
|
+
}
|
|
3124
|
+
}
|
|
3125
|
+
}
|
|
3126
|
+
},
|
|
3127
|
+
"required": [
|
|
3128
|
+
"providerSettings"
|
|
3129
|
+
]
|
|
3130
|
+
},
|
|
3131
|
+
"then": {
|
|
3132
|
+
"properties": {
|
|
3133
|
+
"duration": {
|
|
3134
|
+
"const": 4
|
|
3135
|
+
}
|
|
3136
|
+
}
|
|
3137
|
+
}
|
|
3138
|
+
}
|
|
3139
|
+
],
|
|
3140
|
+
"additionalProperties": false,
|
|
3141
|
+
"required": [
|
|
3142
|
+
"taskType",
|
|
3143
|
+
"taskUUID",
|
|
3144
|
+
"model"
|
|
3145
|
+
]
|
|
3146
|
+
},
|
|
3147
|
+
{
|
|
3148
|
+
"type": "object",
|
|
3149
|
+
"properties": {
|
|
3150
|
+
"model": {
|
|
3151
|
+
"title": "Model",
|
|
3152
|
+
"description": "Identifier of the model to use for generation.",
|
|
3153
|
+
"type": "string",
|
|
3154
|
+
"const": "vidu:3@2"
|
|
3155
|
+
},
|
|
3156
|
+
"inputs": {
|
|
3157
|
+
"title": "Inputs",
|
|
3158
|
+
"description": "The unified payload wrapper for complex media assets dictating image, video or audio inference constraints.",
|
|
3159
|
+
"type": "object",
|
|
3160
|
+
"properties": {
|
|
3161
|
+
"referenceImages": {
|
|
3162
|
+
"title": "Reference Images",
|
|
3163
|
+
"description": "List of reference images (UUID, URL, Data URI, or Base64).",
|
|
3164
|
+
"type": "array",
|
|
3165
|
+
"minItems": 1,
|
|
3166
|
+
"items": {
|
|
3167
|
+
"title": "Image",
|
|
3168
|
+
"description": "Image input (UUID, URL, Data URI, or Base64).",
|
|
3169
|
+
"type": "string",
|
|
3170
|
+
"anyOf": [
|
|
3171
|
+
{
|
|
3172
|
+
"format": "uuid"
|
|
3173
|
+
},
|
|
3174
|
+
{
|
|
3175
|
+
"format": "uri"
|
|
3176
|
+
},
|
|
3177
|
+
{
|
|
3178
|
+
"pattern": "^data:image\\/[a-zA-Z]+;base64,[a-zA-Z0-9+/=]+$"
|
|
3179
|
+
},
|
|
3180
|
+
{
|
|
3181
|
+
"pattern": "^[a-zA-Z0-9+/=]+$"
|
|
3182
|
+
}
|
|
3183
|
+
]
|
|
3184
|
+
},
|
|
3185
|
+
"maxItems": 7
|
|
3186
|
+
},
|
|
3187
|
+
"frameImages": {
|
|
3188
|
+
"title": "Frame Images",
|
|
3189
|
+
"description": "List of frame-specific image inputs. Each item can be either a plain image input (UUID, URL, Data URI, or Base64) or an object with an image and a target frame position.",
|
|
3190
|
+
"type": "array",
|
|
3191
|
+
"minItems": 1,
|
|
3192
|
+
"items": {
|
|
3193
|
+
"anyOf": [
|
|
3194
|
+
{
|
|
3195
|
+
"title": "Image",
|
|
3196
|
+
"description": "Image input (UUID, URL, Data URI, or Base64).",
|
|
3197
|
+
"type": "string",
|
|
3198
|
+
"anyOf": [
|
|
3199
|
+
{
|
|
3200
|
+
"format": "uuid"
|
|
3201
|
+
},
|
|
3202
|
+
{
|
|
3203
|
+
"format": "uri"
|
|
3204
|
+
},
|
|
3205
|
+
{
|
|
3206
|
+
"pattern": "^data:image\\/[a-zA-Z]+;base64,[a-zA-Z0-9+/=]+$"
|
|
3207
|
+
},
|
|
3208
|
+
{
|
|
3209
|
+
"pattern": "^[a-zA-Z0-9+/=]+$"
|
|
3210
|
+
}
|
|
3211
|
+
]
|
|
3212
|
+
},
|
|
3213
|
+
{
|
|
3214
|
+
"type": "object",
|
|
3215
|
+
"properties": {
|
|
3216
|
+
"image": {
|
|
3217
|
+
"title": "Image",
|
|
3218
|
+
"description": "Image input (UUID, URL, Data URI, or Base64).",
|
|
3219
|
+
"type": "string",
|
|
3220
|
+
"anyOf": [
|
|
3221
|
+
{
|
|
3222
|
+
"format": "uuid"
|
|
3223
|
+
},
|
|
3224
|
+
{
|
|
3225
|
+
"format": "uri"
|
|
3226
|
+
},
|
|
3227
|
+
{
|
|
3228
|
+
"pattern": "^data:image\\/[a-zA-Z]+;base64,[a-zA-Z0-9+/=]+$"
|
|
3229
|
+
},
|
|
3230
|
+
{
|
|
3231
|
+
"pattern": "^[a-zA-Z0-9+/=]+$"
|
|
3232
|
+
}
|
|
3233
|
+
]
|
|
3234
|
+
},
|
|
3235
|
+
"frame": {
|
|
3236
|
+
"title": "Frame",
|
|
3237
|
+
"description": "Target frame position for the image. Supports first and last frame.",
|
|
3238
|
+
"oneOf": [
|
|
3239
|
+
{
|
|
3240
|
+
"const": "first",
|
|
3241
|
+
"description": "First frame of the video."
|
|
3242
|
+
},
|
|
3243
|
+
{
|
|
3244
|
+
"const": "last",
|
|
3245
|
+
"description": "Last frame of the video."
|
|
3246
|
+
},
|
|
3247
|
+
{
|
|
3248
|
+
"const": 0,
|
|
3249
|
+
"description": "Frame index 0 (first frame)."
|
|
3250
|
+
},
|
|
3251
|
+
{
|
|
3252
|
+
"const": -1,
|
|
3253
|
+
"description": "Frame index -1 (last frame)."
|
|
3254
|
+
}
|
|
3255
|
+
]
|
|
3256
|
+
}
|
|
3257
|
+
},
|
|
3258
|
+
"required": [
|
|
3259
|
+
"image"
|
|
3260
|
+
],
|
|
3261
|
+
"additionalProperties": false
|
|
3262
|
+
}
|
|
3263
|
+
]
|
|
3264
|
+
},
|
|
3265
|
+
"maxItems": 2
|
|
3266
|
+
}
|
|
3267
|
+
},
|
|
3268
|
+
"additionalProperties": false
|
|
3269
|
+
},
|
|
3270
|
+
"positivePrompt": {
|
|
3271
|
+
"title": "Positive Prompt",
|
|
3272
|
+
"description": "Text prompt describing elements to include in the generated output.",
|
|
3273
|
+
"type": "string",
|
|
3274
|
+
"minLength": 2,
|
|
3275
|
+
"maxLength": 3000
|
|
3276
|
+
},
|
|
3277
|
+
"width": {
|
|
3278
|
+
"title": "Width",
|
|
3279
|
+
"description": "Width of the generated media in pixels.",
|
|
3280
|
+
"type": "integer"
|
|
3281
|
+
},
|
|
3282
|
+
"height": {
|
|
3283
|
+
"title": "Height",
|
|
3284
|
+
"description": "Height of the generated media in pixels.",
|
|
3285
|
+
"type": "integer"
|
|
3286
|
+
},
|
|
3287
|
+
"duration": {
|
|
3288
|
+
"title": "Duration",
|
|
3289
|
+
"description": "Length of the generated video in seconds. The total number of frames produced is determined by duration multiplied by the model's frame rate (fps).",
|
|
3290
|
+
"type": "number",
|
|
3291
|
+
"default": 5,
|
|
3292
|
+
"minimum": 1,
|
|
3293
|
+
"maximum": 8
|
|
3294
|
+
},
|
|
3295
|
+
"seed": {
|
|
3296
|
+
"title": "Seed",
|
|
3297
|
+
"description": "Random seed for reproducible generation. When not provided, a random seed is generated in the unsigned 32-bit range.",
|
|
3298
|
+
"type": "integer",
|
|
3299
|
+
"minimum": 0,
|
|
3300
|
+
"maximum": 2147483647
|
|
3301
|
+
},
|
|
3302
|
+
"providerSettings": {
|
|
3303
|
+
"title": "Provider Settings",
|
|
3304
|
+
"description": "Provider-specific configuration settings.",
|
|
3305
|
+
"type": "object",
|
|
3306
|
+
"properties": {
|
|
3307
|
+
"vidu": {
|
|
3308
|
+
"title": "Vidu Settings",
|
|
3309
|
+
"description": "Provider-specific settings for Vidu.",
|
|
3310
|
+
"type": "object",
|
|
3311
|
+
"properties": {
|
|
3312
|
+
"bgm": {
|
|
3313
|
+
"title": "BGM",
|
|
3314
|
+
"description": "Enable background music generation.",
|
|
3315
|
+
"type": "boolean",
|
|
3316
|
+
"default": false
|
|
3317
|
+
},
|
|
3318
|
+
"movementAmplitude": {
|
|
3319
|
+
"title": "Movement Amplitude",
|
|
3320
|
+
"description": "Movement intensity in the generated video.",
|
|
3321
|
+
"type": "string",
|
|
3322
|
+
"oneOf": [
|
|
3323
|
+
{
|
|
3324
|
+
"const": "auto",
|
|
3325
|
+
"description": "Automatically determines movement level based on content."
|
|
3326
|
+
},
|
|
3327
|
+
{
|
|
3328
|
+
"const": "small",
|
|
3329
|
+
"description": "Minimal movement with subtle animations."
|
|
3330
|
+
},
|
|
3331
|
+
{
|
|
3332
|
+
"const": "medium",
|
|
3333
|
+
"description": "Moderate movement with balanced dynamics."
|
|
3334
|
+
},
|
|
3335
|
+
{
|
|
3336
|
+
"const": "large",
|
|
3337
|
+
"description": "High movement with pronounced animations."
|
|
3338
|
+
}
|
|
3339
|
+
],
|
|
3340
|
+
"default": "auto"
|
|
3341
|
+
}
|
|
3342
|
+
},
|
|
3343
|
+
"additionalProperties": false
|
|
3344
|
+
}
|
|
3345
|
+
},
|
|
3346
|
+
"additionalProperties": false
|
|
3347
|
+
},
|
|
3348
|
+
"taskType": {
|
|
3349
|
+
"title": "Task Type",
|
|
3350
|
+
"description": "Identifier for the type of task being performed",
|
|
3351
|
+
"type": "string",
|
|
3352
|
+
"const": "videoInference"
|
|
3353
|
+
},
|
|
3354
|
+
"taskUUID": {
|
|
3355
|
+
"title": "Task UUID",
|
|
3356
|
+
"description": "UUID v4 identifier for tracking tasks and matching async responses. Must be unique per task.",
|
|
3357
|
+
"type": "string",
|
|
3358
|
+
"format": "uuid"
|
|
3359
|
+
},
|
|
3360
|
+
"webhookURL": {
|
|
3361
|
+
"title": "Webhook URL",
|
|
3362
|
+
"description": "Specifies a webhook URL where JSON responses will be sent via HTTP POST when generation tasks complete. For batch requests with multiple results, each completed item triggers a separate webhook call as it becomes available.",
|
|
3363
|
+
"type": "string",
|
|
3364
|
+
"format": "uri"
|
|
3365
|
+
},
|
|
3366
|
+
"includeCost": {
|
|
3367
|
+
"title": "Include Cost",
|
|
3368
|
+
"description": "Include task cost in the response.",
|
|
3369
|
+
"type": "boolean",
|
|
3370
|
+
"default": false
|
|
3371
|
+
},
|
|
3372
|
+
"numberResults": {
|
|
3373
|
+
"title": "Number of Results",
|
|
3374
|
+
"description": "Number of results to generate. Each result uses a different seed, producing variations of the same parameters.",
|
|
3375
|
+
"type": "integer",
|
|
3376
|
+
"minimum": 1,
|
|
3377
|
+
"default": 1,
|
|
3378
|
+
"maximum": 4
|
|
3379
|
+
},
|
|
3380
|
+
"uploadEndpoint": {
|
|
3381
|
+
"title": "Upload Endpoint",
|
|
3382
|
+
"description": "URL to upload content via HTTP PUT. The request body will contain the raw binary data.",
|
|
3383
|
+
"type": "string",
|
|
3384
|
+
"format": "uri"
|
|
3385
|
+
},
|
|
3386
|
+
"ttl": {
|
|
3387
|
+
"title": "TTL",
|
|
3388
|
+
"description": "Time-to-live (TTL) in seconds for generated content. Only applies when `outputType` is `URL`.",
|
|
3389
|
+
"type": "integer",
|
|
3390
|
+
"minimum": 60
|
|
3391
|
+
},
|
|
3392
|
+
"outputType": {
|
|
3393
|
+
"title": "Output Type",
|
|
3394
|
+
"description": "Video output type.",
|
|
3395
|
+
"type": "string",
|
|
3396
|
+
"enum": [
|
|
3397
|
+
"URL"
|
|
3398
|
+
],
|
|
3399
|
+
"default": "URL"
|
|
3400
|
+
},
|
|
3401
|
+
"outputFormat": {
|
|
3402
|
+
"title": "Output Format",
|
|
3403
|
+
"description": "File format for the generated video.",
|
|
3404
|
+
"type": "string",
|
|
3405
|
+
"enum": [
|
|
3406
|
+
"MP4",
|
|
3407
|
+
"WEBM",
|
|
3408
|
+
"MOV"
|
|
3409
|
+
],
|
|
3410
|
+
"default": "MP4"
|
|
3411
|
+
},
|
|
3412
|
+
"outputQuality": {
|
|
3413
|
+
"title": "Output Quality",
|
|
3414
|
+
"description": "Compression quality of the output. Higher values preserve quality but increase file size.",
|
|
3415
|
+
"type": "integer",
|
|
3416
|
+
"minimum": 20,
|
|
3417
|
+
"maximum": 99,
|
|
3418
|
+
"default": 95
|
|
3419
|
+
},
|
|
3420
|
+
"deliveryMethod": {
|
|
3421
|
+
"title": "Delivery Method",
|
|
3422
|
+
"description": "Determines how the API delivers task results.",
|
|
3423
|
+
"type": "string",
|
|
3424
|
+
"oneOf": [
|
|
3425
|
+
{
|
|
3426
|
+
"const": "async",
|
|
3427
|
+
"description": "Returns an immediate acknowledgment with the task UUID. Poll for results using getResponse. Required for long-running tasks like video generation."
|
|
3428
|
+
}
|
|
3429
|
+
],
|
|
3430
|
+
"default": "async"
|
|
3431
|
+
},
|
|
3432
|
+
"safety": {
|
|
3433
|
+
"type": "object",
|
|
3434
|
+
"title": "Safety Settings",
|
|
3435
|
+
"description": "Content safety checking configuration for video generation.",
|
|
3436
|
+
"properties": {
|
|
3437
|
+
"checkContent": {
|
|
3438
|
+
"title": "Check Content",
|
|
3439
|
+
"description": "Enable or disable content safety checking. When enabled, defaults to `fast` mode.",
|
|
3440
|
+
"type": "boolean",
|
|
3441
|
+
"default": false
|
|
3442
|
+
},
|
|
3443
|
+
"mode": {
|
|
3444
|
+
"description": "Safety checking mode for video generation.",
|
|
3445
|
+
"type": "string",
|
|
3446
|
+
"oneOf": [
|
|
3447
|
+
{
|
|
3448
|
+
"const": "none",
|
|
3449
|
+
"title": "None",
|
|
3450
|
+
"description": "Disables checking."
|
|
3451
|
+
},
|
|
3452
|
+
{
|
|
3453
|
+
"const": "fast",
|
|
3454
|
+
"title": "Fast",
|
|
3455
|
+
"description": "Checks key frames."
|
|
3456
|
+
},
|
|
3457
|
+
{
|
|
3458
|
+
"const": "full",
|
|
3459
|
+
"title": "Full",
|
|
3460
|
+
"description": "Checks all frames."
|
|
3461
|
+
}
|
|
3462
|
+
],
|
|
3463
|
+
"default": "none"
|
|
3464
|
+
}
|
|
3465
|
+
},
|
|
3466
|
+
"additionalProperties": false
|
|
3467
|
+
}
|
|
3468
|
+
},
|
|
3469
|
+
"allOf": [
|
|
3470
|
+
{
|
|
3471
|
+
"dependentRequired": {
|
|
3472
|
+
"width": [
|
|
3473
|
+
"height"
|
|
3474
|
+
],
|
|
3475
|
+
"height": [
|
|
3476
|
+
"width"
|
|
3477
|
+
]
|
|
3478
|
+
}
|
|
3479
|
+
},
|
|
3480
|
+
{
|
|
3481
|
+
"oneOf": [
|
|
3482
|
+
{
|
|
3483
|
+
"title": "360p (16:9)",
|
|
3484
|
+
"properties": {
|
|
3485
|
+
"width": {
|
|
3486
|
+
"const": 640
|
|
3487
|
+
},
|
|
3488
|
+
"height": {
|
|
3489
|
+
"const": 352
|
|
3490
|
+
}
|
|
3491
|
+
}
|
|
3492
|
+
},
|
|
3493
|
+
{
|
|
3494
|
+
"title": "360p (4:3)",
|
|
3495
|
+
"properties": {
|
|
3496
|
+
"width": {
|
|
3497
|
+
"const": 544
|
|
3498
|
+
},
|
|
3499
|
+
"height": {
|
|
3500
|
+
"const": 400
|
|
3501
|
+
}
|
|
3502
|
+
}
|
|
3503
|
+
},
|
|
3504
|
+
{
|
|
3505
|
+
"title": "360p (1:1)",
|
|
3506
|
+
"properties": {
|
|
3507
|
+
"width": {
|
|
3508
|
+
"const": 480
|
|
3509
|
+
},
|
|
3510
|
+
"height": {
|
|
3511
|
+
"const": 480
|
|
3512
|
+
}
|
|
3513
|
+
}
|
|
3514
|
+
},
|
|
3515
|
+
{
|
|
3516
|
+
"title": "360p (3:4)",
|
|
3517
|
+
"properties": {
|
|
3518
|
+
"width": {
|
|
3519
|
+
"const": 400
|
|
3520
|
+
},
|
|
3521
|
+
"height": {
|
|
3522
|
+
"const": 544
|
|
3523
|
+
}
|
|
3524
|
+
}
|
|
3525
|
+
},
|
|
3526
|
+
{
|
|
3527
|
+
"title": "360p (9:16)",
|
|
3528
|
+
"properties": {
|
|
3529
|
+
"width": {
|
|
3530
|
+
"const": 352
|
|
3531
|
+
},
|
|
3532
|
+
"height": {
|
|
3533
|
+
"const": 640
|
|
3534
|
+
}
|
|
3535
|
+
}
|
|
3536
|
+
},
|
|
3537
|
+
{
|
|
3538
|
+
"title": "540p (16:9)",
|
|
3539
|
+
"properties": {
|
|
3540
|
+
"width": {
|
|
3541
|
+
"const": 960
|
|
3542
|
+
},
|
|
3543
|
+
"height": {
|
|
3544
|
+
"const": 528
|
|
3545
|
+
}
|
|
3546
|
+
}
|
|
3547
|
+
},
|
|
3548
|
+
{
|
|
3549
|
+
"title": "540p (4:3)",
|
|
3550
|
+
"properties": {
|
|
3551
|
+
"width": {
|
|
3552
|
+
"const": 816
|
|
3553
|
+
},
|
|
3554
|
+
"height": {
|
|
3555
|
+
"const": 608
|
|
3556
|
+
}
|
|
3557
|
+
}
|
|
3558
|
+
},
|
|
3559
|
+
{
|
|
3560
|
+
"title": "540p (1:1)",
|
|
3561
|
+
"properties": {
|
|
3562
|
+
"width": {
|
|
3563
|
+
"const": 720
|
|
3564
|
+
},
|
|
3565
|
+
"height": {
|
|
3566
|
+
"const": 720
|
|
3567
|
+
}
|
|
3568
|
+
}
|
|
3569
|
+
},
|
|
3570
|
+
{
|
|
3571
|
+
"title": "540p (3:4)",
|
|
3572
|
+
"properties": {
|
|
3573
|
+
"width": {
|
|
3574
|
+
"const": 608
|
|
3575
|
+
},
|
|
3576
|
+
"height": {
|
|
3577
|
+
"const": 816
|
|
3578
|
+
}
|
|
3579
|
+
}
|
|
3580
|
+
},
|
|
3581
|
+
{
|
|
3582
|
+
"title": "540p (9:16)",
|
|
3583
|
+
"properties": {
|
|
3584
|
+
"width": {
|
|
3585
|
+
"const": 528
|
|
3586
|
+
},
|
|
3587
|
+
"height": {
|
|
3588
|
+
"const": 960
|
|
3589
|
+
}
|
|
3590
|
+
}
|
|
3591
|
+
},
|
|
3592
|
+
{
|
|
3593
|
+
"title": "720p (16:9)",
|
|
3594
|
+
"properties": {
|
|
3595
|
+
"width": {
|
|
3596
|
+
"const": 1280
|
|
3597
|
+
},
|
|
3598
|
+
"height": {
|
|
3599
|
+
"const": 720
|
|
3600
|
+
}
|
|
3601
|
+
}
|
|
3602
|
+
},
|
|
3603
|
+
{
|
|
3604
|
+
"title": "720p (4:3)",
|
|
3605
|
+
"properties": {
|
|
3606
|
+
"width": {
|
|
3607
|
+
"const": 1104
|
|
3608
|
+
},
|
|
3609
|
+
"height": {
|
|
3610
|
+
"const": 816
|
|
3611
|
+
}
|
|
3612
|
+
}
|
|
3613
|
+
},
|
|
3614
|
+
{
|
|
3615
|
+
"title": "720p (1:1)",
|
|
3616
|
+
"properties": {
|
|
3617
|
+
"width": {
|
|
3618
|
+
"const": 960
|
|
3619
|
+
},
|
|
3620
|
+
"height": {
|
|
3621
|
+
"const": 960
|
|
3622
|
+
}
|
|
3623
|
+
}
|
|
3624
|
+
},
|
|
3625
|
+
{
|
|
3626
|
+
"title": "720p (3:4)",
|
|
3627
|
+
"properties": {
|
|
3628
|
+
"width": {
|
|
3629
|
+
"const": 816
|
|
3630
|
+
},
|
|
3631
|
+
"height": {
|
|
3632
|
+
"const": 1104
|
|
3633
|
+
}
|
|
3634
|
+
}
|
|
3635
|
+
},
|
|
3636
|
+
{
|
|
3637
|
+
"title": "720p (9:16)",
|
|
3638
|
+
"properties": {
|
|
3639
|
+
"width": {
|
|
3640
|
+
"const": 720
|
|
3641
|
+
},
|
|
3642
|
+
"height": {
|
|
3643
|
+
"const": 1280
|
|
3644
|
+
}
|
|
3645
|
+
}
|
|
3646
|
+
},
|
|
3647
|
+
{
|
|
3648
|
+
"title": "1080p (16:9)",
|
|
3649
|
+
"properties": {
|
|
3650
|
+
"width": {
|
|
3651
|
+
"const": 1920
|
|
3652
|
+
},
|
|
3653
|
+
"height": {
|
|
3654
|
+
"const": 1080
|
|
3655
|
+
}
|
|
3656
|
+
}
|
|
3657
|
+
},
|
|
3658
|
+
{
|
|
3659
|
+
"title": "1080p (4:3)",
|
|
3660
|
+
"properties": {
|
|
3661
|
+
"width": {
|
|
3662
|
+
"const": 1674
|
|
3663
|
+
},
|
|
3664
|
+
"height": {
|
|
3665
|
+
"const": 1238
|
|
3666
|
+
}
|
|
3667
|
+
}
|
|
3668
|
+
},
|
|
3669
|
+
{
|
|
3670
|
+
"title": "1080p (1:1)",
|
|
3671
|
+
"properties": {
|
|
3672
|
+
"width": {
|
|
3673
|
+
"const": 1440
|
|
3674
|
+
},
|
|
3675
|
+
"height": {
|
|
3676
|
+
"const": 1440
|
|
3677
|
+
}
|
|
3678
|
+
}
|
|
3679
|
+
},
|
|
3680
|
+
{
|
|
3681
|
+
"title": "1080p (3:4)",
|
|
3682
|
+
"properties": {
|
|
3683
|
+
"width": {
|
|
3684
|
+
"const": 1238
|
|
3685
|
+
},
|
|
3686
|
+
"height": {
|
|
3687
|
+
"const": 1674
|
|
3688
|
+
}
|
|
3689
|
+
}
|
|
3690
|
+
},
|
|
3691
|
+
{
|
|
3692
|
+
"title": "1080p (9:16)",
|
|
3693
|
+
"properties": {
|
|
3694
|
+
"width": {
|
|
3695
|
+
"const": 1080
|
|
3696
|
+
},
|
|
3697
|
+
"height": {
|
|
3698
|
+
"const": 1920
|
|
3699
|
+
}
|
|
3700
|
+
}
|
|
3701
|
+
}
|
|
3702
|
+
]
|
|
3703
|
+
},
|
|
3704
|
+
{
|
|
3705
|
+
"if": {
|
|
3706
|
+
"properties": {
|
|
3707
|
+
"providerSettings": {
|
|
3708
|
+
"properties": {
|
|
3709
|
+
"vidu": {
|
|
3710
|
+
"required": [
|
|
3711
|
+
"bgm"
|
|
3712
|
+
]
|
|
3713
|
+
}
|
|
3714
|
+
}
|
|
3715
|
+
}
|
|
3716
|
+
},
|
|
3717
|
+
"required": [
|
|
3718
|
+
"providerSettings"
|
|
3719
|
+
]
|
|
3720
|
+
},
|
|
3721
|
+
"then": {
|
|
3722
|
+
"properties": {
|
|
3723
|
+
"duration": {
|
|
3724
|
+
"const": 4
|
|
3725
|
+
}
|
|
3726
|
+
}
|
|
3727
|
+
}
|
|
3728
|
+
}
|
|
3729
|
+
],
|
|
3730
|
+
"additionalProperties": false,
|
|
3731
|
+
"required": [
|
|
3732
|
+
"taskType",
|
|
3733
|
+
"taskUUID",
|
|
3734
|
+
"model"
|
|
3735
|
+
]
|
|
3736
|
+
},
|
|
3737
|
+
{
|
|
3738
|
+
"type": "object",
|
|
3739
|
+
"properties": {
|
|
3740
|
+
"model": {
|
|
3741
|
+
"title": "Model",
|
|
3742
|
+
"description": "Identifier of the model to use for generation.",
|
|
3743
|
+
"type": "string",
|
|
3744
|
+
"const": "vidu:4@1"
|
|
3745
|
+
},
|
|
3746
|
+
"inputs": {
|
|
3747
|
+
"title": "Inputs",
|
|
3748
|
+
"description": "The unified payload wrapper for complex media assets dictating image, video or audio inference constraints.",
|
|
3749
|
+
"type": "object",
|
|
3750
|
+
"properties": {
|
|
3751
|
+
"frameImages": {
|
|
3752
|
+
"title": "Frame Images",
|
|
3753
|
+
"description": "List of frame-specific image inputs. Each item can be either a plain image input (UUID, URL, Data URI, or Base64) or an object with an image and a target frame position.",
|
|
3754
|
+
"type": "array",
|
|
3755
|
+
"minItems": 1,
|
|
3756
|
+
"items": {
|
|
3757
|
+
"anyOf": [
|
|
3758
|
+
{
|
|
3759
|
+
"title": "Image",
|
|
3760
|
+
"description": "Image input (UUID, URL, Data URI, or Base64).",
|
|
3761
|
+
"type": "string",
|
|
3762
|
+
"anyOf": [
|
|
3763
|
+
{
|
|
3764
|
+
"format": "uuid"
|
|
3765
|
+
},
|
|
3766
|
+
{
|
|
3767
|
+
"format": "uri"
|
|
3768
|
+
},
|
|
3769
|
+
{
|
|
3770
|
+
"pattern": "^data:image\\/[a-zA-Z]+;base64,[a-zA-Z0-9+/=]+$"
|
|
3771
|
+
},
|
|
3772
|
+
{
|
|
3773
|
+
"pattern": "^[a-zA-Z0-9+/=]+$"
|
|
3774
|
+
}
|
|
3775
|
+
]
|
|
3776
|
+
},
|
|
3777
|
+
{
|
|
3778
|
+
"type": "object",
|
|
3779
|
+
"properties": {
|
|
3780
|
+
"image": {
|
|
3781
|
+
"title": "Image",
|
|
3782
|
+
"description": "Image input (UUID, URL, Data URI, or Base64).",
|
|
3783
|
+
"type": "string",
|
|
3784
|
+
"anyOf": [
|
|
3785
|
+
{
|
|
3786
|
+
"format": "uuid"
|
|
3787
|
+
},
|
|
3788
|
+
{
|
|
3789
|
+
"format": "uri"
|
|
3790
|
+
},
|
|
3791
|
+
{
|
|
3792
|
+
"pattern": "^data:image\\/[a-zA-Z]+;base64,[a-zA-Z0-9+/=]+$"
|
|
3793
|
+
},
|
|
3794
|
+
{
|
|
3795
|
+
"pattern": "^[a-zA-Z0-9+/=]+$"
|
|
3796
|
+
}
|
|
3797
|
+
]
|
|
3798
|
+
},
|
|
3799
|
+
"frame": {
|
|
3800
|
+
"title": "Frame",
|
|
3801
|
+
"description": "Target frame position for the image. Supports first and last frame.",
|
|
3802
|
+
"oneOf": [
|
|
3803
|
+
{
|
|
3804
|
+
"const": "first",
|
|
3805
|
+
"description": "First frame of the video."
|
|
3806
|
+
},
|
|
3807
|
+
{
|
|
3808
|
+
"const": "last",
|
|
3809
|
+
"description": "Last frame of the video."
|
|
3810
|
+
},
|
|
3811
|
+
{
|
|
3812
|
+
"const": 0,
|
|
3813
|
+
"description": "Frame index 0 (first frame)."
|
|
3814
|
+
},
|
|
3815
|
+
{
|
|
3816
|
+
"const": -1,
|
|
3817
|
+
"description": "Frame index -1 (last frame)."
|
|
3818
|
+
}
|
|
3819
|
+
]
|
|
3820
|
+
}
|
|
3821
|
+
},
|
|
3822
|
+
"required": [
|
|
3823
|
+
"image"
|
|
3824
|
+
],
|
|
3825
|
+
"additionalProperties": false
|
|
3826
|
+
}
|
|
3827
|
+
]
|
|
3828
|
+
},
|
|
3829
|
+
"maxItems": 2
|
|
3830
|
+
}
|
|
3831
|
+
},
|
|
3832
|
+
"additionalProperties": false
|
|
3833
|
+
},
|
|
3834
|
+
"positivePrompt": {
|
|
3835
|
+
"title": "Positive Prompt",
|
|
3836
|
+
"description": "Text prompt describing elements to include in the generated output.",
|
|
3837
|
+
"type": "string",
|
|
3838
|
+
"minLength": 2,
|
|
3839
|
+
"maxLength": 2000
|
|
3840
|
+
},
|
|
3841
|
+
"width": {
|
|
3842
|
+
"title": "Width",
|
|
3843
|
+
"description": "Width of the generated media in pixels.",
|
|
3844
|
+
"type": "integer"
|
|
3845
|
+
},
|
|
3846
|
+
"height": {
|
|
3847
|
+
"title": "Height",
|
|
3848
|
+
"description": "Height of the generated media in pixels.",
|
|
3849
|
+
"type": "integer"
|
|
3850
|
+
},
|
|
3851
|
+
"resolution": {
|
|
3852
|
+
"title": "Resolution",
|
|
3853
|
+
"description": "Resolution preset for the output. When used with input media, automatically matches the aspect ratio from the input.",
|
|
3854
|
+
"type": "string",
|
|
3855
|
+
"enum": [
|
|
3856
|
+
"360p",
|
|
3857
|
+
"540p",
|
|
3858
|
+
"720p",
|
|
3859
|
+
"1080p"
|
|
3860
|
+
],
|
|
3861
|
+
"default": "720p"
|
|
3862
|
+
},
|
|
3863
|
+
"duration": {
|
|
3864
|
+
"title": "Duration",
|
|
3865
|
+
"description": "Length of the generated video in seconds. The total number of frames produced is determined by duration multiplied by the model's frame rate (fps).",
|
|
3866
|
+
"type": "integer",
|
|
3867
|
+
"default": 5,
|
|
3868
|
+
"minimum": 1,
|
|
3869
|
+
"maximum": 16
|
|
3870
|
+
},
|
|
3871
|
+
"seed": {
|
|
3872
|
+
"title": "Seed",
|
|
3873
|
+
"description": "Random seed for reproducible generation. When not provided, a random seed is generated in the unsigned 32-bit range.",
|
|
3874
|
+
"type": "integer",
|
|
3875
|
+
"minimum": 0,
|
|
3876
|
+
"maximum": 2147483647
|
|
3877
|
+
},
|
|
3878
|
+
"providerSettings": {
|
|
3879
|
+
"title": "Provider Settings",
|
|
3880
|
+
"description": "Provider-specific configuration settings.",
|
|
3881
|
+
"type": "object",
|
|
3882
|
+
"properties": {
|
|
3883
|
+
"vidu": {
|
|
3884
|
+
"title": "Vidu Settings",
|
|
3885
|
+
"description": "Provider-specific settings for Vidu.",
|
|
3886
|
+
"type": "object",
|
|
3887
|
+
"properties": {
|
|
3888
|
+
"audio": {
|
|
3889
|
+
"title": "Audio",
|
|
3890
|
+
"description": "Enable audio generation.",
|
|
3891
|
+
"type": "boolean",
|
|
3892
|
+
"default": false
|
|
3893
|
+
}
|
|
3894
|
+
},
|
|
3895
|
+
"additionalProperties": false
|
|
3896
|
+
}
|
|
3897
|
+
},
|
|
3898
|
+
"additionalProperties": false
|
|
3899
|
+
},
|
|
3900
|
+
"taskType": {
|
|
3901
|
+
"title": "Task Type",
|
|
3902
|
+
"description": "Identifier for the type of task being performed",
|
|
3903
|
+
"type": "string",
|
|
3904
|
+
"const": "videoInference"
|
|
3905
|
+
},
|
|
3906
|
+
"taskUUID": {
|
|
3907
|
+
"title": "Task UUID",
|
|
3908
|
+
"description": "UUID v4 identifier for tracking tasks and matching async responses. Must be unique per task.",
|
|
3909
|
+
"type": "string",
|
|
3910
|
+
"format": "uuid"
|
|
3911
|
+
},
|
|
3912
|
+
"webhookURL": {
|
|
3913
|
+
"title": "Webhook URL",
|
|
3914
|
+
"description": "Specifies a webhook URL where JSON responses will be sent via HTTP POST when generation tasks complete. For batch requests with multiple results, each completed item triggers a separate webhook call as it becomes available.",
|
|
3915
|
+
"type": "string",
|
|
3916
|
+
"format": "uri"
|
|
3917
|
+
},
|
|
3918
|
+
"includeCost": {
|
|
3919
|
+
"title": "Include Cost",
|
|
3920
|
+
"description": "Include task cost in the response.",
|
|
3921
|
+
"type": "boolean",
|
|
3922
|
+
"default": false
|
|
3923
|
+
},
|
|
3924
|
+
"numberResults": {
|
|
3925
|
+
"title": "Number of Results",
|
|
3926
|
+
"description": "Number of results to generate. Each result uses a different seed, producing variations of the same parameters.",
|
|
3927
|
+
"type": "integer",
|
|
3928
|
+
"minimum": 1,
|
|
3929
|
+
"default": 1,
|
|
3930
|
+
"maximum": 4
|
|
3931
|
+
},
|
|
3932
|
+
"uploadEndpoint": {
|
|
3933
|
+
"title": "Upload Endpoint",
|
|
3934
|
+
"description": "URL to upload content via HTTP PUT. The request body will contain the raw binary data.",
|
|
3935
|
+
"type": "string",
|
|
3936
|
+
"format": "uri"
|
|
3937
|
+
},
|
|
3938
|
+
"ttl": {
|
|
3939
|
+
"title": "TTL",
|
|
3940
|
+
"description": "Time-to-live (TTL) in seconds for generated content. Only applies when `outputType` is `URL`.",
|
|
3941
|
+
"type": "integer",
|
|
3942
|
+
"minimum": 60
|
|
3943
|
+
},
|
|
3944
|
+
"outputType": {
|
|
3945
|
+
"title": "Output Type",
|
|
3946
|
+
"description": "Video output type.",
|
|
3947
|
+
"type": "string",
|
|
3948
|
+
"enum": [
|
|
3949
|
+
"URL"
|
|
3950
|
+
],
|
|
3951
|
+
"default": "URL"
|
|
3952
|
+
},
|
|
3953
|
+
"outputFormat": {
|
|
3954
|
+
"title": "Output Format",
|
|
3955
|
+
"description": "File format for the generated video.",
|
|
3956
|
+
"type": "string",
|
|
3957
|
+
"enum": [
|
|
3958
|
+
"MP4",
|
|
3959
|
+
"WEBM",
|
|
3960
|
+
"MOV"
|
|
3961
|
+
],
|
|
3962
|
+
"default": "MP4"
|
|
3963
|
+
},
|
|
3964
|
+
"outputQuality": {
|
|
3965
|
+
"title": "Output Quality",
|
|
3966
|
+
"description": "Compression quality of the output. Higher values preserve quality but increase file size.",
|
|
3967
|
+
"type": "integer",
|
|
3968
|
+
"minimum": 20,
|
|
3969
|
+
"maximum": 99,
|
|
3970
|
+
"default": 95
|
|
3971
|
+
},
|
|
3972
|
+
"deliveryMethod": {
|
|
3973
|
+
"title": "Delivery Method",
|
|
3974
|
+
"description": "Determines how the API delivers task results.",
|
|
3975
|
+
"type": "string",
|
|
3976
|
+
"oneOf": [
|
|
3977
|
+
{
|
|
3978
|
+
"const": "async",
|
|
3979
|
+
"description": "Returns an immediate acknowledgment with the task UUID. Poll for results using getResponse. Required for long-running tasks like video generation."
|
|
3980
|
+
}
|
|
3981
|
+
],
|
|
3982
|
+
"default": "async"
|
|
3983
|
+
},
|
|
3984
|
+
"safety": {
|
|
3985
|
+
"type": "object",
|
|
3986
|
+
"title": "Safety Settings",
|
|
3987
|
+
"description": "Content safety checking configuration for video generation.",
|
|
3988
|
+
"properties": {
|
|
3989
|
+
"checkContent": {
|
|
3990
|
+
"title": "Check Content",
|
|
3991
|
+
"description": "Enable or disable content safety checking. When enabled, defaults to `fast` mode.",
|
|
3992
|
+
"type": "boolean",
|
|
3993
|
+
"default": false
|
|
3994
|
+
},
|
|
3995
|
+
"mode": {
|
|
3996
|
+
"description": "Safety checking mode for video generation.",
|
|
3997
|
+
"type": "string",
|
|
3998
|
+
"oneOf": [
|
|
3999
|
+
{
|
|
4000
|
+
"const": "none",
|
|
4001
|
+
"title": "None",
|
|
4002
|
+
"description": "Disables checking."
|
|
4003
|
+
},
|
|
4004
|
+
{
|
|
4005
|
+
"const": "fast",
|
|
4006
|
+
"title": "Fast",
|
|
4007
|
+
"description": "Checks key frames."
|
|
4008
|
+
},
|
|
4009
|
+
{
|
|
4010
|
+
"const": "full",
|
|
4011
|
+
"title": "Full",
|
|
4012
|
+
"description": "Checks all frames."
|
|
4013
|
+
}
|
|
4014
|
+
],
|
|
4015
|
+
"default": "none"
|
|
4016
|
+
}
|
|
4017
|
+
},
|
|
4018
|
+
"additionalProperties": false
|
|
4019
|
+
}
|
|
4020
|
+
},
|
|
4021
|
+
"allOf": [
|
|
4022
|
+
{
|
|
4023
|
+
"dependentRequired": {
|
|
4024
|
+
"width": [
|
|
4025
|
+
"height"
|
|
4026
|
+
],
|
|
4027
|
+
"height": [
|
|
4028
|
+
"width"
|
|
4029
|
+
]
|
|
4030
|
+
}
|
|
4031
|
+
},
|
|
4032
|
+
{
|
|
4033
|
+
"oneOf": [
|
|
4034
|
+
{
|
|
4035
|
+
"title": "360p (16:9)",
|
|
4036
|
+
"properties": {
|
|
4037
|
+
"width": {
|
|
4038
|
+
"const": 640
|
|
4039
|
+
},
|
|
4040
|
+
"height": {
|
|
4041
|
+
"const": 352
|
|
4042
|
+
}
|
|
4043
|
+
}
|
|
4044
|
+
},
|
|
4045
|
+
{
|
|
4046
|
+
"title": "360p (4:3)",
|
|
4047
|
+
"properties": {
|
|
4048
|
+
"width": {
|
|
4049
|
+
"const": 544
|
|
4050
|
+
},
|
|
4051
|
+
"height": {
|
|
4052
|
+
"const": 400
|
|
4053
|
+
}
|
|
4054
|
+
}
|
|
4055
|
+
},
|
|
4056
|
+
{
|
|
4057
|
+
"title": "360p (1:1)",
|
|
4058
|
+
"properties": {
|
|
4059
|
+
"width": {
|
|
4060
|
+
"const": 480
|
|
4061
|
+
},
|
|
4062
|
+
"height": {
|
|
4063
|
+
"const": 480
|
|
4064
|
+
}
|
|
4065
|
+
}
|
|
4066
|
+
},
|
|
4067
|
+
{
|
|
4068
|
+
"title": "360p (3:4)",
|
|
4069
|
+
"properties": {
|
|
4070
|
+
"width": {
|
|
4071
|
+
"const": 400
|
|
4072
|
+
},
|
|
4073
|
+
"height": {
|
|
4074
|
+
"const": 544
|
|
4075
|
+
}
|
|
4076
|
+
}
|
|
4077
|
+
},
|
|
4078
|
+
{
|
|
4079
|
+
"title": "360p (9:16)",
|
|
4080
|
+
"properties": {
|
|
4081
|
+
"width": {
|
|
4082
|
+
"const": 352
|
|
4083
|
+
},
|
|
4084
|
+
"height": {
|
|
4085
|
+
"const": 640
|
|
4086
|
+
}
|
|
4087
|
+
}
|
|
4088
|
+
},
|
|
4089
|
+
{
|
|
4090
|
+
"title": "540p (16:9)",
|
|
4091
|
+
"properties": {
|
|
4092
|
+
"width": {
|
|
4093
|
+
"const": 960
|
|
4094
|
+
},
|
|
4095
|
+
"height": {
|
|
4096
|
+
"const": 528
|
|
4097
|
+
}
|
|
4098
|
+
}
|
|
4099
|
+
},
|
|
4100
|
+
{
|
|
4101
|
+
"title": "540p (4:3)",
|
|
4102
|
+
"properties": {
|
|
4103
|
+
"width": {
|
|
4104
|
+
"const": 816
|
|
4105
|
+
},
|
|
4106
|
+
"height": {
|
|
4107
|
+
"const": 608
|
|
4108
|
+
}
|
|
4109
|
+
}
|
|
4110
|
+
},
|
|
4111
|
+
{
|
|
4112
|
+
"title": "540p (1:1)",
|
|
4113
|
+
"properties": {
|
|
4114
|
+
"width": {
|
|
4115
|
+
"const": 720
|
|
4116
|
+
},
|
|
4117
|
+
"height": {
|
|
4118
|
+
"const": 720
|
|
4119
|
+
}
|
|
4120
|
+
}
|
|
4121
|
+
},
|
|
4122
|
+
{
|
|
4123
|
+
"title": "540p (3:4)",
|
|
4124
|
+
"properties": {
|
|
4125
|
+
"width": {
|
|
4126
|
+
"const": 608
|
|
4127
|
+
},
|
|
4128
|
+
"height": {
|
|
4129
|
+
"const": 816
|
|
4130
|
+
}
|
|
4131
|
+
}
|
|
4132
|
+
},
|
|
4133
|
+
{
|
|
4134
|
+
"title": "540p (9:16)",
|
|
4135
|
+
"properties": {
|
|
4136
|
+
"width": {
|
|
4137
|
+
"const": 528
|
|
4138
|
+
},
|
|
4139
|
+
"height": {
|
|
4140
|
+
"const": 960
|
|
4141
|
+
}
|
|
4142
|
+
}
|
|
4143
|
+
},
|
|
4144
|
+
{
|
|
4145
|
+
"title": "720p (16:9)",
|
|
4146
|
+
"properties": {
|
|
4147
|
+
"width": {
|
|
4148
|
+
"const": 1280
|
|
4149
|
+
},
|
|
4150
|
+
"height": {
|
|
4151
|
+
"const": 720
|
|
4152
|
+
}
|
|
4153
|
+
}
|
|
4154
|
+
},
|
|
4155
|
+
{
|
|
4156
|
+
"title": "720p (4:3)",
|
|
4157
|
+
"properties": {
|
|
4158
|
+
"width": {
|
|
4159
|
+
"const": 1104
|
|
4160
|
+
},
|
|
4161
|
+
"height": {
|
|
4162
|
+
"const": 816
|
|
4163
|
+
}
|
|
4164
|
+
}
|
|
4165
|
+
},
|
|
4166
|
+
{
|
|
4167
|
+
"title": "720p (1:1)",
|
|
4168
|
+
"properties": {
|
|
4169
|
+
"width": {
|
|
4170
|
+
"const": 960
|
|
4171
|
+
},
|
|
4172
|
+
"height": {
|
|
4173
|
+
"const": 960
|
|
4174
|
+
}
|
|
4175
|
+
}
|
|
4176
|
+
},
|
|
4177
|
+
{
|
|
4178
|
+
"title": "720p (3:4)",
|
|
4179
|
+
"properties": {
|
|
4180
|
+
"width": {
|
|
4181
|
+
"const": 816
|
|
4182
|
+
},
|
|
4183
|
+
"height": {
|
|
4184
|
+
"const": 1104
|
|
4185
|
+
}
|
|
4186
|
+
}
|
|
4187
|
+
},
|
|
4188
|
+
{
|
|
4189
|
+
"title": "720p (9:16)",
|
|
4190
|
+
"properties": {
|
|
4191
|
+
"width": {
|
|
4192
|
+
"const": 720
|
|
4193
|
+
},
|
|
4194
|
+
"height": {
|
|
4195
|
+
"const": 1280
|
|
4196
|
+
}
|
|
4197
|
+
}
|
|
4198
|
+
},
|
|
4199
|
+
{
|
|
4200
|
+
"title": "1080p (16:9)",
|
|
4201
|
+
"properties": {
|
|
4202
|
+
"width": {
|
|
4203
|
+
"const": 1920
|
|
4204
|
+
},
|
|
4205
|
+
"height": {
|
|
4206
|
+
"const": 1080
|
|
4207
|
+
}
|
|
4208
|
+
}
|
|
4209
|
+
},
|
|
4210
|
+
{
|
|
4211
|
+
"title": "1080p (4:3)",
|
|
4212
|
+
"properties": {
|
|
4213
|
+
"width": {
|
|
4214
|
+
"const": 1674
|
|
4215
|
+
},
|
|
4216
|
+
"height": {
|
|
4217
|
+
"const": 1238
|
|
4218
|
+
}
|
|
4219
|
+
}
|
|
4220
|
+
},
|
|
4221
|
+
{
|
|
4222
|
+
"title": "1080p (1:1)",
|
|
4223
|
+
"properties": {
|
|
4224
|
+
"width": {
|
|
4225
|
+
"const": 1440
|
|
4226
|
+
},
|
|
4227
|
+
"height": {
|
|
4228
|
+
"const": 1440
|
|
4229
|
+
}
|
|
4230
|
+
}
|
|
4231
|
+
},
|
|
4232
|
+
{
|
|
4233
|
+
"title": "1080p (3:4)",
|
|
4234
|
+
"properties": {
|
|
4235
|
+
"width": {
|
|
4236
|
+
"const": 1238
|
|
4237
|
+
},
|
|
4238
|
+
"height": {
|
|
4239
|
+
"const": 1674
|
|
4240
|
+
}
|
|
4241
|
+
}
|
|
4242
|
+
},
|
|
4243
|
+
{
|
|
4244
|
+
"title": "1080p (9:16)",
|
|
4245
|
+
"properties": {
|
|
4246
|
+
"width": {
|
|
4247
|
+
"const": 1080
|
|
4248
|
+
},
|
|
4249
|
+
"height": {
|
|
4250
|
+
"const": 1920
|
|
4251
|
+
}
|
|
4252
|
+
}
|
|
4253
|
+
}
|
|
4254
|
+
]
|
|
4255
|
+
},
|
|
4256
|
+
{
|
|
4257
|
+
"not": {
|
|
4258
|
+
"allOf": [
|
|
4259
|
+
{
|
|
4260
|
+
"required": [
|
|
4261
|
+
"resolution"
|
|
4262
|
+
]
|
|
4263
|
+
},
|
|
4264
|
+
{
|
|
4265
|
+
"anyOf": [
|
|
4266
|
+
{
|
|
4267
|
+
"required": [
|
|
4268
|
+
"width"
|
|
4269
|
+
]
|
|
4270
|
+
},
|
|
4271
|
+
{
|
|
4272
|
+
"required": [
|
|
4273
|
+
"height"
|
|
4274
|
+
]
|
|
4275
|
+
}
|
|
4276
|
+
]
|
|
4277
|
+
}
|
|
4278
|
+
]
|
|
4279
|
+
}
|
|
4280
|
+
}
|
|
4281
|
+
],
|
|
4282
|
+
"additionalProperties": false,
|
|
4283
|
+
"required": [
|
|
4284
|
+
"taskType",
|
|
4285
|
+
"taskUUID",
|
|
4286
|
+
"model"
|
|
4287
|
+
]
|
|
4288
|
+
}
|
|
4289
|
+
]
|
|
4290
|
+
}
|