@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.
Files changed (401) hide show
  1. package/dist/response-map.json +1902 -0
  2. package/dist/schemas/requests/architectures/exactly-illustrative.json +252 -0
  3. package/dist/schemas/requests/architectures/flux-1-dev.json +1103 -0
  4. package/dist/schemas/requests/architectures/flux-1-kontext-dev.json +855 -0
  5. package/dist/schemas/requests/architectures/flux-1-schnell.json +911 -0
  6. package/dist/schemas/requests/architectures/illustrious.json +893 -0
  7. package/dist/schemas/requests/architectures/noobai.json +893 -0
  8. package/dist/schemas/requests/architectures/pony.json +893 -0
  9. package/dist/schemas/requests/architectures/sd-1-5-distilled.json +893 -0
  10. package/dist/schemas/requests/architectures/sd-1-5-hyper.json +893 -0
  11. package/dist/schemas/requests/architectures/sd-1-5-lcm.json +893 -0
  12. package/dist/schemas/requests/architectures/sd-1-5.json +893 -0
  13. package/dist/schemas/requests/architectures/sd-2-1.json +893 -0
  14. package/dist/schemas/requests/architectures/sd3.json +847 -0
  15. package/dist/schemas/requests/architectures/sdxl-distilled.json +893 -0
  16. package/dist/schemas/requests/architectures/sdxl-hyper.json +893 -0
  17. package/dist/schemas/requests/architectures/sdxl-lcm.json +893 -0
  18. package/dist/schemas/requests/architectures/sdxl-lightning.json +893 -0
  19. package/dist/schemas/requests/architectures/sdxl-turbo.json +893 -0
  20. package/dist/schemas/requests/architectures/sdxl.json +990 -0
  21. package/dist/schemas/requests/architectures/z-image-turbo.json +730 -0
  22. package/dist/schemas/requests/architectures/z-image.json +730 -0
  23. package/dist/schemas/requests/models/alibaba/alibaba-happyhorse-1-0.json +709 -0
  24. package/dist/schemas/requests/models/alibaba/alibaba-qwen-image-2-0-pro.json +257 -0
  25. package/dist/schemas/requests/models/alibaba/alibaba-qwen-image-2-0.json +257 -0
  26. package/dist/schemas/requests/models/alibaba/alibaba-qwen-image-2512.json +740 -0
  27. package/dist/schemas/requests/models/alibaba/alibaba-qwen-image-edit-plus.json +571 -0
  28. package/dist/schemas/requests/models/alibaba/alibaba-qwen-image-edit.json +572 -0
  29. package/dist/schemas/requests/models/alibaba/alibaba-qwen-image-layered.json +571 -0
  30. package/dist/schemas/requests/models/alibaba/alibaba-qwen-image.json +744 -0
  31. package/dist/schemas/requests/models/alibaba/alibaba-qwen2-5-vl-3b-instruct.json +136 -0
  32. package/dist/schemas/requests/models/alibaba/alibaba-qwen2-5-vl-7b-instruct.json +136 -0
  33. package/dist/schemas/requests/models/alibaba/alibaba-qwen3-5-27b.json +281 -0
  34. package/dist/schemas/requests/models/alibaba/alibaba-qwen3-5-397b.json +281 -0
  35. package/dist/schemas/requests/models/alibaba/alibaba-qwen3-tts-1-7b-base.json +815 -0
  36. package/dist/schemas/requests/models/alibaba/alibaba-qwen3-tts-1-7b-customvoice.json +759 -0
  37. package/dist/schemas/requests/models/alibaba/alibaba-qwen3-tts-1-7b-voicedesign.json +749 -0
  38. package/dist/schemas/requests/models/alibaba/alibaba-wan2-2-a14b-turbo.json +829 -0
  39. package/dist/schemas/requests/models/alibaba/alibaba-wan2-2-a14b.json +829 -0
  40. package/dist/schemas/requests/models/alibaba/alibaba-wan2-2-animate.json +848 -0
  41. package/dist/schemas/requests/models/alibaba/alibaba-wan2-5-preview-image.json +191 -0
  42. package/dist/schemas/requests/models/alibaba/alibaba-wan2-5-preview.json +568 -0
  43. package/dist/schemas/requests/models/alibaba/alibaba-wan2-6-flash.json +587 -0
  44. package/dist/schemas/requests/models/alibaba/alibaba-wan2-6-image.json +238 -0
  45. package/dist/schemas/requests/models/alibaba/alibaba-wan2-6.json +640 -0
  46. package/dist/schemas/requests/models/alibaba/alibaba-wan2-7-image-pro.json +364 -0
  47. package/dist/schemas/requests/models/alibaba/alibaba-wan2-7-image.json +340 -0
  48. package/dist/schemas/requests/models/alibaba/alibaba-wan2-7.json +685 -0
  49. package/dist/schemas/requests/models/alibaba/alibaba-z-image-turbo.json +730 -0
  50. package/dist/schemas/requests/models/alibaba/alibaba-z-image.json +730 -0
  51. package/dist/schemas/requests/models/alibaba/index.json +15134 -0
  52. package/dist/schemas/requests/models/anthropic/anthropic-claude-haiku-4-5.json +370 -0
  53. package/dist/schemas/requests/models/anthropic/anthropic-claude-opus-4-7.json +373 -0
  54. package/dist/schemas/requests/models/anthropic/anthropic-claude-sonnet-4-6.json +372 -0
  55. package/dist/schemas/requests/models/anthropic/index.json +1117 -0
  56. package/dist/schemas/requests/models/bfl/bfl-flux-1-1-pro-ultra.json +317 -0
  57. package/dist/schemas/requests/models/bfl/bfl-flux-1-1-pro.json +214 -0
  58. package/dist/schemas/requests/models/bfl/bfl-flux-1-dev.json +1103 -0
  59. package/dist/schemas/requests/models/bfl/bfl-flux-1-expand-pro.json +266 -0
  60. package/dist/schemas/requests/models/bfl/bfl-flux-1-fill-pro.json +252 -0
  61. package/dist/schemas/requests/models/bfl/bfl-flux-1-kontext-dev.json +855 -0
  62. package/dist/schemas/requests/models/bfl/bfl-flux-1-kontext-max.json +345 -0
  63. package/dist/schemas/requests/models/bfl/bfl-flux-1-kontext-pro.json +345 -0
  64. package/dist/schemas/requests/models/bfl/bfl-flux-1-schnell.json +911 -0
  65. package/dist/schemas/requests/models/bfl/bfl-flux-2-dev.json +569 -0
  66. package/dist/schemas/requests/models/bfl/bfl-flux-2-flex.json +264 -0
  67. package/dist/schemas/requests/models/bfl/bfl-flux-2-klein-4b-base.json +570 -0
  68. package/dist/schemas/requests/models/bfl/bfl-flux-2-klein-4b.json +570 -0
  69. package/dist/schemas/requests/models/bfl/bfl-flux-2-klein-9b-base.json +570 -0
  70. package/dist/schemas/requests/models/bfl/bfl-flux-2-klein-9b-kv.json +570 -0
  71. package/dist/schemas/requests/models/bfl/bfl-flux-2-klein-9b.json +570 -0
  72. package/dist/schemas/requests/models/bfl/bfl-flux-2-max.json +248 -0
  73. package/dist/schemas/requests/models/bfl/bfl-flux-2-pro.json +248 -0
  74. package/dist/schemas/requests/models/bfl/index.json +8774 -0
  75. package/dist/schemas/requests/models/bria/bria-3-2.json +569 -0
  76. package/dist/schemas/requests/models/bria/bria-fibo-edit-tools.json +401 -0
  77. package/dist/schemas/requests/models/bria/bria-fibo-edit.json +253 -0
  78. package/dist/schemas/requests/models/bria/bria-fibo-lite.json +350 -0
  79. package/dist/schemas/requests/models/bria/bria-fibo.json +358 -0
  80. package/dist/schemas/requests/models/bria/bria-image-increase-resolution.json +163 -0
  81. package/dist/schemas/requests/models/bria/bria-image-replace-background.json +264 -0
  82. package/dist/schemas/requests/models/bria/bria-rmbg-v2-0.json +153 -0
  83. package/dist/schemas/requests/models/bria/bria-video-background-removal.json +153 -0
  84. package/dist/schemas/requests/models/bria/bria-video-eraser.json +361 -0
  85. package/dist/schemas/requests/models/bria/bria-video-increase-resolution.json +129 -0
  86. package/dist/schemas/requests/models/bria/index.json +3148 -0
  87. package/dist/schemas/requests/models/bytedance/bytedance-omnihuman-1-5.json +231 -0
  88. package/dist/schemas/requests/models/bytedance/bytedance-omnihuman-1.json +191 -0
  89. package/dist/schemas/requests/models/bytedance/bytedance-seedance-1-0-pro-fast.json +513 -0
  90. package/dist/schemas/requests/models/bytedance/bytedance-seedance-1-0-pro.json +521 -0
  91. package/dist/schemas/requests/models/bytedance/bytedance-seedance-1-5-pro.json +683 -0
  92. package/dist/schemas/requests/models/bytedance/bytedance-seedance-2-0-fast.json +634 -0
  93. package/dist/schemas/requests/models/bytedance/bytedance-seedance-2-0.json +701 -0
  94. package/dist/schemas/requests/models/bytedance/bytedance-seedream-4-0.json +424 -0
  95. package/dist/schemas/requests/models/bytedance/bytedance-seedream-4-5.json +321 -0
  96. package/dist/schemas/requests/models/bytedance/bytedance-seedream-5-0-lite.json +426 -0
  97. package/dist/schemas/requests/models/bytedance/bytedance-video-upscaler.json +119 -0
  98. package/dist/schemas/requests/models/bytedance/index.json +4758 -0
  99. package/dist/schemas/requests/models/creatify/creatify-aurora-v1-fast.json +199 -0
  100. package/dist/schemas/requests/models/creatify/creatify-aurora-v1.json +199 -0
  101. package/dist/schemas/requests/models/creatify/index.json +401 -0
  102. package/dist/schemas/requests/models/elevenlabs/elevenlabs-flash-v2-5.json +833 -0
  103. package/dist/schemas/requests/models/elevenlabs/elevenlabs-flash-v2.json +802 -0
  104. package/dist/schemas/requests/models/elevenlabs/elevenlabs-monolingual-v1.json +802 -0
  105. package/dist/schemas/requests/models/elevenlabs/elevenlabs-multilingual-v1.json +810 -0
  106. package/dist/schemas/requests/models/elevenlabs/elevenlabs-multilingual-v2.json +830 -0
  107. package/dist/schemas/requests/models/elevenlabs/elevenlabs-music-v1.json +877 -0
  108. package/dist/schemas/requests/models/elevenlabs/elevenlabs-turbo-v2-5.json +833 -0
  109. package/dist/schemas/requests/models/elevenlabs/elevenlabs-turbo-v2.json +802 -0
  110. package/dist/schemas/requests/models/elevenlabs/elevenlabs-v3.json +875 -0
  111. package/dist/schemas/requests/models/elevenlabs/index.json +7460 -0
  112. package/dist/schemas/requests/models/exactly/exactly-illustrative-training.json +112 -0
  113. package/dist/schemas/requests/models/exactly/exactly-photo-bright-pulse.json +553 -0
  114. package/dist/schemas/requests/models/exactly/exactly-photo-distant-reality.json +553 -0
  115. package/dist/schemas/requests/models/exactly/exactly-photo-extreme-contrast.json +553 -0
  116. package/dist/schemas/requests/models/exactly/exactly-photo-grain-film-look.json +553 -0
  117. package/dist/schemas/requests/models/exactly/exactly-photo-journey.json +553 -0
  118. package/dist/schemas/requests/models/exactly/exactly-photo-warm-light.json +553 -0
  119. package/dist/schemas/requests/models/exactly/index.json +3428 -0
  120. package/dist/schemas/requests/models/google/google-gemini-3-1-flash-lite.json +400 -0
  121. package/dist/schemas/requests/models/google/google-gemini-3-1-flash-tts.json +1384 -0
  122. package/dist/schemas/requests/models/google/google-gemini-3-1-pro.json +398 -0
  123. package/dist/schemas/requests/models/google/google-gemini-3-flash.json +400 -0
  124. package/dist/schemas/requests/models/google/google-imagen-3-fast.json +230 -0
  125. package/dist/schemas/requests/models/google/google-imagen-3.json +230 -0
  126. package/dist/schemas/requests/models/google/google-imagen-4-fast.json +230 -0
  127. package/dist/schemas/requests/models/google/google-imagen-4-preview.json +230 -0
  128. package/dist/schemas/requests/models/google/google-imagen-4-ultra.json +230 -0
  129. package/dist/schemas/requests/models/google/google-nano-banana-2.json +983 -0
  130. package/dist/schemas/requests/models/google/google-nano-banana-pro.json +703 -0
  131. package/dist/schemas/requests/models/google/google-nano-banana.json +373 -0
  132. package/dist/schemas/requests/models/google/google-veo-2.json +428 -0
  133. package/dist/schemas/requests/models/google/google-veo-3-1-fast.json +568 -0
  134. package/dist/schemas/requests/models/google/google-veo-3-1-lite.json +509 -0
  135. package/dist/schemas/requests/models/google/google-veo-3-1.json +783 -0
  136. package/dist/schemas/requests/models/google/google-veo-3-fast.json +411 -0
  137. package/dist/schemas/requests/models/google/google-veo-3.json +454 -0
  138. package/dist/schemas/requests/models/google/index.json +8876 -0
  139. package/dist/schemas/requests/models/heygen/heygen-avatar-iv.json +3066 -0
  140. package/dist/schemas/requests/models/heygen/heygen-video-agent.json +1522 -0
  141. package/dist/schemas/requests/models/heygen/index.json +4591 -0
  142. package/dist/schemas/requests/models/hyper3d/hyper3d-rodin-gen-2.json +355 -0
  143. package/dist/schemas/requests/models/hyper3d/index.json +359 -0
  144. package/dist/schemas/requests/models/ideogram/ideogram-1-0-remix.json +473 -0
  145. package/dist/schemas/requests/models/ideogram/ideogram-1-0.json +427 -0
  146. package/dist/schemas/requests/models/ideogram/ideogram-2-0-edit.json +322 -0
  147. package/dist/schemas/requests/models/ideogram/ideogram-2-0-reframe.json +1138 -0
  148. package/dist/schemas/requests/models/ideogram/ideogram-2-0-remix.json +1219 -0
  149. package/dist/schemas/requests/models/ideogram/ideogram-2-0.json +1173 -0
  150. package/dist/schemas/requests/models/ideogram/ideogram-2a-remix.json +1148 -0
  151. package/dist/schemas/requests/models/ideogram/ideogram-2a.json +1102 -0
  152. package/dist/schemas/requests/models/ideogram/ideogram-3-0-edit.json +538 -0
  153. package/dist/schemas/requests/models/ideogram/ideogram-3-0-reframe.json +1204 -0
  154. package/dist/schemas/requests/models/ideogram/ideogram-3-0-remix.json +1325 -0
  155. package/dist/schemas/requests/models/ideogram/ideogram-3-0-replace-background.json +427 -0
  156. package/dist/schemas/requests/models/ideogram/ideogram-3-0.json +1225 -0
  157. package/dist/schemas/requests/models/ideogram/index.json +11713 -0
  158. package/dist/schemas/requests/models/imagineart/imagineart-1-5-pro.json +283 -0
  159. package/dist/schemas/requests/models/imagineart/imagineart-1-5.json +272 -0
  160. package/dist/schemas/requests/models/imagineart/imagineart-2-0.json +486 -0
  161. package/dist/schemas/requests/models/imagineart/index.json +1043 -0
  162. package/dist/schemas/requests/models/inworld/index.json +3062 -0
  163. package/dist/schemas/requests/models/inworld/inworld-tts-1-5-max.json +807 -0
  164. package/dist/schemas/requests/models/inworld/inworld-tts-1-5-mini.json +807 -0
  165. package/dist/schemas/requests/models/inworld/inworld-tts-2.json +1446 -0
  166. package/dist/schemas/requests/models/klingai/index.json +11714 -0
  167. package/dist/schemas/requests/models/klingai/klingai-1-0-pro.json +319 -0
  168. package/dist/schemas/requests/models/klingai/klingai-1-0-standard.json +319 -0
  169. package/dist/schemas/requests/models/klingai/klingai-1-5-pro.json +308 -0
  170. package/dist/schemas/requests/models/klingai/klingai-1-5-standard.json +296 -0
  171. package/dist/schemas/requests/models/klingai/klingai-1-6-pro.json +304 -0
  172. package/dist/schemas/requests/models/klingai/klingai-1-6-standard.json +311 -0
  173. package/dist/schemas/requests/models/klingai/klingai-2-0-master.json +319 -0
  174. package/dist/schemas/requests/models/klingai/klingai-2-1-master.json +311 -0
  175. package/dist/schemas/requests/models/klingai/klingai-2-1-pro.json +320 -0
  176. package/dist/schemas/requests/models/klingai/klingai-2-1-standard.json +300 -0
  177. package/dist/schemas/requests/models/klingai/klingai-2-5-turbo-pro.json +319 -0
  178. package/dist/schemas/requests/models/klingai/klingai-2-5-turbo-standard.json +251 -0
  179. package/dist/schemas/requests/models/klingai/klingai-avatar-2-0-pro.json +189 -0
  180. package/dist/schemas/requests/models/klingai/klingai-avatar-2-0-standard.json +189 -0
  181. package/dist/schemas/requests/models/klingai/klingai-image-3-0.json +443 -0
  182. package/dist/schemas/requests/models/klingai/klingai-image-o1.json +444 -0
  183. package/dist/schemas/requests/models/klingai/klingai-image-o3.json +473 -0
  184. package/dist/schemas/requests/models/klingai/klingai-lip-sync.json +210 -0
  185. package/dist/schemas/requests/models/klingai/klingai-video-2-6-pro.json +493 -0
  186. package/dist/schemas/requests/models/klingai/klingai-video-2-6-standard.json +326 -0
  187. package/dist/schemas/requests/models/klingai/klingai-video-3-0-4k.json +551 -0
  188. package/dist/schemas/requests/models/klingai/klingai-video-3-0-pro.json +765 -0
  189. package/dist/schemas/requests/models/klingai/klingai-video-3-0-standard.json +765 -0
  190. package/dist/schemas/requests/models/klingai/klingai-video-o1-pro.json +534 -0
  191. package/dist/schemas/requests/models/klingai/klingai-video-o1-standard.json +528 -0
  192. package/dist/schemas/requests/models/klingai/klingai-video-o3-4k.json +512 -0
  193. package/dist/schemas/requests/models/klingai/klingai-video-o3-pro.json +819 -0
  194. package/dist/schemas/requests/models/klingai/klingai-video-o3-standard.json +819 -0
  195. package/dist/schemas/requests/models/lightricks/index.json +2356 -0
  196. package/dist/schemas/requests/models/lightricks/lightricks-ltx-2-3-fast.json +438 -0
  197. package/dist/schemas/requests/models/lightricks/lightricks-ltx-2-3.json +517 -0
  198. package/dist/schemas/requests/models/lightricks/lightricks-ltx-2-fast.json +328 -0
  199. package/dist/schemas/requests/models/lightricks/lightricks-ltx-2-pro.json +482 -0
  200. package/dist/schemas/requests/models/lightricks/lightricks-ltx-2-retake.json +289 -0
  201. package/dist/schemas/requests/models/lightricks/lightricks-ltx-2.json +303 -0
  202. package/dist/schemas/requests/models/luma/index.json +1049 -0
  203. package/dist/schemas/requests/models/luma/luma-uni-1-max.json +523 -0
  204. package/dist/schemas/requests/models/luma/luma-uni-1.json +523 -0
  205. package/dist/schemas/requests/models/memories/index.json +241 -0
  206. package/dist/schemas/requests/models/memories/memories-video-age-detection.json +119 -0
  207. package/dist/schemas/requests/models/memories/memories-video-captioning.json +119 -0
  208. package/dist/schemas/requests/models/meshy/index.json +583 -0
  209. package/dist/schemas/requests/models/meshy/meshy-6.json +579 -0
  210. package/dist/schemas/requests/models/meta/index.json +298 -0
  211. package/dist/schemas/requests/models/meta/meta-llava-1-6-mistral-7b.json +136 -0
  212. package/dist/schemas/requests/models/meta/meta-sam-3d-objects.json +159 -0
  213. package/dist/schemas/requests/models/microsoft/index.json +326 -0
  214. package/dist/schemas/requests/models/microsoft/microsoft-trellis-2.json +322 -0
  215. package/dist/schemas/requests/models/minimax/index.json +5629 -0
  216. package/dist/schemas/requests/models/minimax/minimax-01-director.json +296 -0
  217. package/dist/schemas/requests/models/minimax/minimax-01-live.json +296 -0
  218. package/dist/schemas/requests/models/minimax/minimax-01.json +322 -0
  219. package/dist/schemas/requests/models/minimax/minimax-hailuo-02.json +345 -0
  220. package/dist/schemas/requests/models/minimax/minimax-hailuo-2-3-fast.json +383 -0
  221. package/dist/schemas/requests/models/minimax/minimax-hailuo-2-3.json +362 -0
  222. package/dist/schemas/requests/models/minimax/minimax-m2-5.json +349 -0
  223. package/dist/schemas/requests/models/minimax/minimax-m2-7-highspeed.json +291 -0
  224. package/dist/schemas/requests/models/minimax/minimax-m2-7.json +291 -0
  225. package/dist/schemas/requests/models/minimax/minimax-music-2-6.json +858 -0
  226. package/dist/schemas/requests/models/minimax/minimax-music-cover.json +730 -0
  227. package/dist/schemas/requests/models/minimax/minimax-speech-2-8.json +1113 -0
  228. package/dist/schemas/requests/models/mirelo/index.json +813 -0
  229. package/dist/schemas/requests/models/mirelo/mirelo-sfx-1-5.json +809 -0
  230. package/dist/schemas/requests/models/moonshotai/index.json +415 -0
  231. package/dist/schemas/requests/models/moonshotai/moonshotai-kimi-k2-6.json +411 -0
  232. package/dist/schemas/requests/models/openai/index.json +4198 -0
  233. package/dist/schemas/requests/models/openai/openai-clip-vit-l-14.json +136 -0
  234. package/dist/schemas/requests/models/openai/openai-dalle-2.json +214 -0
  235. package/dist/schemas/requests/models/openai/openai-dalle-3.json +252 -0
  236. package/dist/schemas/requests/models/openai/openai-gpt-5-4-mini.json +331 -0
  237. package/dist/schemas/requests/models/openai/openai-gpt-5-4-nano.json +331 -0
  238. package/dist/schemas/requests/models/openai/openai-gpt-5-4-pro.json +331 -0
  239. package/dist/schemas/requests/models/openai/openai-gpt-5-4.json +331 -0
  240. package/dist/schemas/requests/models/openai/openai-gpt-5-5.json +318 -0
  241. package/dist/schemas/requests/models/openai/openai-gpt-image-1-5.json +318 -0
  242. package/dist/schemas/requests/models/openai/openai-gpt-image-1-mini.json +318 -0
  243. package/dist/schemas/requests/models/openai/openai-gpt-image-1.json +318 -0
  244. package/dist/schemas/requests/models/openai/openai-gpt-image-2.json +267 -0
  245. package/dist/schemas/requests/models/openai/openai-sora-2-pro.json +382 -0
  246. package/dist/schemas/requests/models/openai/openai-sora-2.json +360 -0
  247. package/dist/schemas/requests/models/picsart/index.json +125 -0
  248. package/dist/schemas/requests/models/picsart/picsart-image-vectorizer.json +121 -0
  249. package/dist/schemas/requests/models/pixverse/index.json +7029 -0
  250. package/dist/schemas/requests/models/pixverse/pixverse-lipsync.json +222 -0
  251. package/dist/schemas/requests/models/pixverse/pixverse-modify.json +253 -0
  252. package/dist/schemas/requests/models/pixverse/pixverse-v3-5.json +911 -0
  253. package/dist/schemas/requests/models/pixverse/pixverse-v4-5.json +1040 -0
  254. package/dist/schemas/requests/models/pixverse/pixverse-v4.json +1040 -0
  255. package/dist/schemas/requests/models/pixverse/pixverse-v5-5.json +732 -0
  256. package/dist/schemas/requests/models/pixverse/pixverse-v5-6.json +726 -0
  257. package/dist/schemas/requests/models/pixverse/pixverse-v5-fast.json +573 -0
  258. package/dist/schemas/requests/models/pixverse/pixverse-v5.json +711 -0
  259. package/dist/schemas/requests/models/pixverse/pixverse-v6.json +826 -0
  260. package/dist/schemas/requests/models/prunaai/index.json +1628 -0
  261. package/dist/schemas/requests/models/prunaai/prunaai-p-image-edit.json +347 -0
  262. package/dist/schemas/requests/models/prunaai/prunaai-p-image-upscale.json +158 -0
  263. package/dist/schemas/requests/models/prunaai/prunaai-p-image.json +175 -0
  264. package/dist/schemas/requests/models/prunaai/prunaai-p-video-avatar.json +393 -0
  265. package/dist/schemas/requests/models/prunaai/prunaai-p-video.json +555 -0
  266. package/dist/schemas/requests/models/recraft/index.json +1583 -0
  267. package/dist/schemas/requests/models/recraft/recraft-v4-pro-vector.json +335 -0
  268. package/dist/schemas/requests/models/recraft/recraft-v4-pro.json +396 -0
  269. package/dist/schemas/requests/models/recraft/recraft-v4-vector.json +335 -0
  270. package/dist/schemas/requests/models/recraft/recraft-v4.json +396 -0
  271. package/dist/schemas/requests/models/recraft/recraft-vectorize.json +121 -0
  272. package/dist/schemas/requests/models/rundiffusion/index.json +3849 -0
  273. package/dist/schemas/requests/models/rundiffusion/rundiffusion-juggernaut-base-flux.json +1103 -0
  274. package/dist/schemas/requests/models/rundiffusion/rundiffusion-juggernaut-lightning-flux.json +911 -0
  275. package/dist/schemas/requests/models/rundiffusion/rundiffusion-juggernaut-pro-flux.json +1103 -0
  276. package/dist/schemas/requests/models/rundiffusion/rundiffusion-juggernaut-z.json +731 -0
  277. package/dist/schemas/requests/models/runware/ace-step-v1-5-base.json +1005 -0
  278. package/dist/schemas/requests/models/runware/ace-step-v1-5-turbo.json +1005 -0
  279. package/dist/schemas/requests/models/runware/birefnet-dis.json +131 -0
  280. package/dist/schemas/requests/models/runware/birefnet-general-resolution-512x512-fp16.json +131 -0
  281. package/dist/schemas/requests/models/runware/birefnet-general.json +131 -0
  282. package/dist/schemas/requests/models/runware/birefnet-hrsod-dhu.json +131 -0
  283. package/dist/schemas/requests/models/runware/birefnet-massive-tr-dis5k-tr-tes.json +131 -0
  284. package/dist/schemas/requests/models/runware/birefnet-matting.json +131 -0
  285. package/dist/schemas/requests/models/runware/birefnet-portrait.json +131 -0
  286. package/dist/schemas/requests/models/runware/birefnet-v1-base-cod.json +131 -0
  287. package/dist/schemas/requests/models/runware/birefnet-v1-base.json +131 -0
  288. package/dist/schemas/requests/models/runware/bria-rmbg-v2-0-open.json +131 -0
  289. package/dist/schemas/requests/models/runware/ccsr.json +187 -0
  290. package/dist/schemas/requests/models/runware/clarity.json +277 -0
  291. package/dist/schemas/requests/models/runware/dia-1-6b.json +742 -0
  292. package/dist/schemas/requests/models/runware/dia2-2b.json +809 -0
  293. package/dist/schemas/requests/models/runware/flux-1-dev-srpo.json +1103 -0
  294. package/dist/schemas/requests/models/runware/flux-krea.json +1103 -0
  295. package/dist/schemas/requests/models/runware/hidream-i1-dev.json +448 -0
  296. package/dist/schemas/requests/models/runware/hidream-i1-fast.json +448 -0
  297. package/dist/schemas/requests/models/runware/hidream-i1-full.json +448 -0
  298. package/dist/schemas/requests/models/runware/index.json +11773 -0
  299. package/dist/schemas/requests/models/runware/kandinsky-5-0-image-lite.json +469 -0
  300. package/dist/schemas/requests/models/runware/kandinsky-5-0-lite.json +312 -0
  301. package/dist/schemas/requests/models/runware/llama-3-1-8b-prompt-enhancer.json +81 -0
  302. package/dist/schemas/requests/models/runware/object-eraser.json +221 -0
  303. package/dist/schemas/requests/models/runware/open-age-detection.json +131 -0
  304. package/dist/schemas/requests/models/runware/ovi.json +313 -0
  305. package/dist/schemas/requests/models/runware/qwen2-5-vl-7b-age-detector.json +131 -0
  306. package/dist/schemas/requests/models/runware/real-esrgan.json +140 -0
  307. package/dist/schemas/requests/models/runware/rembg-v1-4.json +199 -0
  308. package/dist/schemas/requests/models/runware/stable-diffusion-latent-upscaler.json +184 -0
  309. package/dist/schemas/requests/models/runware/swinir.json +140 -0
  310. package/dist/schemas/requests/models/runware/twinflow-z-image-turbo.json +465 -0
  311. package/dist/schemas/requests/models/runware/vit-age-classifier.json +131 -0
  312. package/dist/schemas/requests/models/runway/index.json +1983 -0
  313. package/dist/schemas/requests/models/runway/runway-aleph.json +359 -0
  314. package/dist/schemas/requests/models/runway/runway-gen-4-5.json +394 -0
  315. package/dist/schemas/requests/models/runway/runway-gen-4-image-turbo.json +428 -0
  316. package/dist/schemas/requests/models/runway/runway-gen-4-image.json +425 -0
  317. package/dist/schemas/requests/models/runway/runway-gen-4-turbo.json +377 -0
  318. package/dist/schemas/requests/models/skywork/index.json +811 -0
  319. package/dist/schemas/requests/models/skywork/skywork-skyreels-v4.json +807 -0
  320. package/dist/schemas/requests/models/sourceful/index.json +3421 -0
  321. package/dist/schemas/requests/models/sourceful/sourceful-riverflow-1-1-mini.json +331 -0
  322. package/dist/schemas/requests/models/sourceful/sourceful-riverflow-1-1-pro.json +331 -0
  323. package/dist/schemas/requests/models/sourceful/sourceful-riverflow-1-1.json +331 -0
  324. package/dist/schemas/requests/models/sourceful/sourceful-riverflow-2-0-fast.json +454 -0
  325. package/dist/schemas/requests/models/sourceful/sourceful-riverflow-2-0-pro.json +564 -0
  326. package/dist/schemas/requests/models/sourceful/sourceful-riverflow-2-preview-fast.json +471 -0
  327. package/dist/schemas/requests/models/sourceful/sourceful-riverflow-2-preview-max.json +471 -0
  328. package/dist/schemas/requests/models/sourceful/sourceful-riverflow-2-preview-standard.json +471 -0
  329. package/dist/schemas/requests/models/stabilityai/index.json +1832 -0
  330. package/dist/schemas/requests/models/stabilityai/stabilityai-stable-diffusion-3.json +843 -0
  331. package/dist/schemas/requests/models/stabilityai/stabilityai-stable-diffusion-xl-v1-0-vae-fix.json +986 -0
  332. package/dist/schemas/requests/models/sync/index.json +1506 -0
  333. package/dist/schemas/requests/models/sync/sync-3.json +534 -0
  334. package/dist/schemas/requests/models/sync/sync-lipsync-2-pro.json +334 -0
  335. package/dist/schemas/requests/models/sync/sync-lipsync-2.json +334 -0
  336. package/dist/schemas/requests/models/sync/sync-react-1.json +303 -0
  337. package/dist/schemas/requests/models/tencent/index.json +1075 -0
  338. package/dist/schemas/requests/models/tencent/tencent-hunyuan-3d-3-1-pro.json +236 -0
  339. package/dist/schemas/requests/models/tencent/tencent-hunyuan-3d-3-1-rapid.json +260 -0
  340. package/dist/schemas/requests/models/tencent/tencent-hunyuanimage-3-0.json +577 -0
  341. package/dist/schemas/requests/models/topazlabs/index.json +146 -0
  342. package/dist/schemas/requests/models/topazlabs/topazlabs-starlight-precise-2-5.json +142 -0
  343. package/dist/schemas/requests/models/tripo/index.json +481 -0
  344. package/dist/schemas/requests/models/tripo/tripo-v3-1.json +477 -0
  345. package/dist/schemas/requests/models/veed/index.json +286 -0
  346. package/dist/schemas/requests/models/veed/veed-fabric-1-0.json +282 -0
  347. package/dist/schemas/requests/models/vidu/index.json +4290 -0
  348. package/dist/schemas/requests/models/vidu/vidu-1-5.json +531 -0
  349. package/dist/schemas/requests/models/vidu/vidu-2-0.json +472 -0
  350. package/dist/schemas/requests/models/vidu/vidu-q1-classic.json +316 -0
  351. package/dist/schemas/requests/models/vidu/vidu-q1-image.json +244 -0
  352. package/dist/schemas/requests/models/vidu/vidu-q1.json +459 -0
  353. package/dist/schemas/requests/models/vidu/vidu-q2-pro.json +591 -0
  354. package/dist/schemas/requests/models/vidu/vidu-q2-turbo.json +591 -0
  355. package/dist/schemas/requests/models/vidu/vidu-q3-turbo.json +537 -0
  356. package/dist/schemas/requests/models/vidu/vidu-q3.json +553 -0
  357. package/dist/schemas/requests/models/xai/index.json +2950 -0
  358. package/dist/schemas/requests/models/xai/xai-grok-imagine-image-pro.json +563 -0
  359. package/dist/schemas/requests/models/xai/xai-grok-imagine-image-quality.json +563 -0
  360. package/dist/schemas/requests/models/xai/xai-grok-imagine-image.json +419 -0
  361. package/dist/schemas/requests/models/xai/xai-grok-imagine-video.json +670 -0
  362. package/dist/schemas/requests/models/xai/xai-tts.json +735 -0
  363. package/dist/schemas/requests/models/zai/index.json +794 -0
  364. package/dist/schemas/requests/models/zai/zai-glm-4-7.json +231 -0
  365. package/dist/schemas/requests/models/zai/zai-glm-5-1.json +326 -0
  366. package/dist/schemas/requests/models/zai/zai-glm-image.json +235 -0
  367. package/dist/schemas/requests/types/3d.json +97 -0
  368. package/dist/schemas/requests/types/audio.json +676 -0
  369. package/dist/schemas/requests/types/caption-image.json +132 -0
  370. package/dist/schemas/requests/types/caption-video.json +120 -0
  371. package/dist/schemas/requests/types/caption.json +63 -0
  372. package/dist/schemas/requests/types/image.json +152 -0
  373. package/dist/schemas/requests/types/prompt-enhance.json +82 -0
  374. package/dist/schemas/requests/types/remove-background-image.json +132 -0
  375. package/dist/schemas/requests/types/remove-background-video.json +120 -0
  376. package/dist/schemas/requests/types/remove-background.json +63 -0
  377. package/dist/schemas/requests/types/text.json +126 -0
  378. package/dist/schemas/requests/types/training.json +43 -0
  379. package/dist/schemas/requests/types/upscale-image.json +132 -0
  380. package/dist/schemas/requests/types/upscale-video.json +120 -0
  381. package/dist/schemas/requests/types/upscale.json +63 -0
  382. package/dist/schemas/requests/types/vectorize.json +91 -0
  383. package/dist/schemas/requests/types/video.json +151 -0
  384. package/dist/schemas/requests/utilities/account-management.json +33 -0
  385. package/dist/schemas/requests/utilities/authentication.json +29 -0
  386. package/dist/schemas/requests/utilities/get-response.json +24 -0
  387. package/dist/schemas/requests/utilities/get-task-details.json +24 -0
  388. package/dist/schemas/requests/utilities/image-upload.json +39 -0
  389. package/dist/schemas/requests/utilities/model-search.json +357 -0
  390. package/dist/schemas/requests/utilities/model-upload.json +407 -0
  391. package/dist/schemas/requests/utilities/ping.json +21 -0
  392. package/dist/schemas/responses/errors/error.json +49 -0
  393. package/dist/schemas/responses/utilities/account-management.json +262 -0
  394. package/dist/schemas/responses/utilities/authentication.json +23 -0
  395. package/dist/schemas/responses/utilities/get-response.json +59 -0
  396. package/dist/schemas/responses/utilities/get-task-details.json +41 -0
  397. package/dist/schemas/responses/utilities/image-upload.json +29 -0
  398. package/dist/schemas/responses/utilities/model-search.json +111 -0
  399. package/dist/schemas/responses/utilities/model-upload.json +48 -0
  400. package/dist/schemas/responses/utilities/ping.json +15 -0
  401. package/package.json +16 -0
@@ -0,0 +1,2356 @@
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": "lightricks:2@1"
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
+ "frameImages": {
19
+ "title": "Frame Images",
20
+ "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.",
21
+ "type": "array",
22
+ "minItems": 1,
23
+ "items": {
24
+ "anyOf": [
25
+ {
26
+ "title": "Image",
27
+ "description": "Image input (UUID, URL, Data URI, or Base64).",
28
+ "type": "string",
29
+ "anyOf": [
30
+ {
31
+ "format": "uuid"
32
+ },
33
+ {
34
+ "format": "uri"
35
+ },
36
+ {
37
+ "pattern": "^data:image\\/[a-zA-Z]+;base64,[a-zA-Z0-9+/=]+$"
38
+ },
39
+ {
40
+ "pattern": "^[a-zA-Z0-9+/=]+$"
41
+ }
42
+ ]
43
+ },
44
+ {
45
+ "type": "object",
46
+ "properties": {
47
+ "image": {
48
+ "title": "Image",
49
+ "description": "Image input (UUID, URL, Data URI, or Base64).",
50
+ "type": "string",
51
+ "anyOf": [
52
+ {
53
+ "format": "uuid"
54
+ },
55
+ {
56
+ "format": "uri"
57
+ },
58
+ {
59
+ "pattern": "^data:image\\/[a-zA-Z]+;base64,[a-zA-Z0-9+/=]+$"
60
+ },
61
+ {
62
+ "pattern": "^[a-zA-Z0-9+/=]+$"
63
+ }
64
+ ]
65
+ },
66
+ "frame": {
67
+ "title": "Frame",
68
+ "description": "Target frame position for the image. This model only supports the first frame.",
69
+ "oneOf": [
70
+ {
71
+ "const": "first",
72
+ "description": "First frame of the video."
73
+ },
74
+ {
75
+ "const": 0,
76
+ "description": "Frame index 0 (first frame)."
77
+ }
78
+ ]
79
+ }
80
+ },
81
+ "required": [
82
+ "image"
83
+ ],
84
+ "additionalProperties": false
85
+ }
86
+ ]
87
+ },
88
+ "maxItems": 1
89
+ }
90
+ },
91
+ "additionalProperties": false
92
+ },
93
+ "positivePrompt": {
94
+ "title": "Positive Prompt",
95
+ "description": "Text prompt describing elements to include in the generated output.",
96
+ "type": "string",
97
+ "minLength": 2,
98
+ "maxLength": 10000
99
+ },
100
+ "width": {
101
+ "title": "Width",
102
+ "description": "Width of the generated media in pixels.",
103
+ "type": "integer"
104
+ },
105
+ "height": {
106
+ "title": "Height",
107
+ "description": "Height of the generated media in pixels.",
108
+ "type": "integer"
109
+ },
110
+ "duration": {
111
+ "title": "Duration",
112
+ "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).",
113
+ "type": "number",
114
+ "enum": [
115
+ 6,
116
+ 8,
117
+ 10
118
+ ],
119
+ "default": 6
120
+ },
121
+ "fps": {
122
+ "title": "FPS",
123
+ "description": "Frames per second for video generation. Higher values create smoother motion but require more processing time.",
124
+ "type": "integer",
125
+ "enum": [
126
+ 25,
127
+ 50
128
+ ],
129
+ "default": 25
130
+ },
131
+ "providerSettings": {
132
+ "title": "Provider Settings",
133
+ "description": "Provider-specific configuration settings.",
134
+ "type": "object",
135
+ "properties": {
136
+ "lightricks": {
137
+ "title": "Lightricks Settings",
138
+ "description": "Provider-specific settings for Lightricks.",
139
+ "type": "object",
140
+ "properties": {
141
+ "generateAudio": {
142
+ "title": "Generate Audio",
143
+ "description": "Generate synchronized audio.",
144
+ "type": "boolean",
145
+ "default": false
146
+ }
147
+ },
148
+ "additionalProperties": false
149
+ }
150
+ },
151
+ "additionalProperties": false
152
+ },
153
+ "taskType": {
154
+ "title": "Task Type",
155
+ "description": "Identifier for the type of task being performed",
156
+ "type": "string",
157
+ "const": "videoInference"
158
+ },
159
+ "taskUUID": {
160
+ "title": "Task UUID",
161
+ "description": "UUID v4 identifier for tracking tasks and matching async responses. Must be unique per task.",
162
+ "type": "string",
163
+ "format": "uuid"
164
+ },
165
+ "webhookURL": {
166
+ "title": "Webhook URL",
167
+ "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.",
168
+ "type": "string",
169
+ "format": "uri"
170
+ },
171
+ "includeCost": {
172
+ "title": "Include Cost",
173
+ "description": "Include task cost in the response.",
174
+ "type": "boolean",
175
+ "default": false
176
+ },
177
+ "numberResults": {
178
+ "title": "Number of Results",
179
+ "description": "Number of results to generate. Each result uses a different seed, producing variations of the same parameters.",
180
+ "type": "integer",
181
+ "minimum": 1,
182
+ "default": 1,
183
+ "maximum": 4
184
+ },
185
+ "uploadEndpoint": {
186
+ "title": "Upload Endpoint",
187
+ "description": "URL to upload content via HTTP PUT. The request body will contain the raw binary data.",
188
+ "type": "string",
189
+ "format": "uri"
190
+ },
191
+ "ttl": {
192
+ "title": "TTL",
193
+ "description": "Time-to-live (TTL) in seconds for generated content. Only applies when `outputType` is `URL`.",
194
+ "type": "integer",
195
+ "minimum": 60
196
+ },
197
+ "outputType": {
198
+ "title": "Output Type",
199
+ "description": "Video output type.",
200
+ "type": "string",
201
+ "enum": [
202
+ "URL"
203
+ ],
204
+ "default": "URL"
205
+ },
206
+ "outputFormat": {
207
+ "title": "Output Format",
208
+ "description": "File format for the generated video.",
209
+ "type": "string",
210
+ "enum": [
211
+ "MP4",
212
+ "WEBM",
213
+ "MOV"
214
+ ],
215
+ "default": "MP4"
216
+ },
217
+ "outputQuality": {
218
+ "title": "Output Quality",
219
+ "description": "Compression quality of the output. Higher values preserve quality but increase file size.",
220
+ "type": "integer",
221
+ "minimum": 20,
222
+ "maximum": 99,
223
+ "default": 95
224
+ },
225
+ "deliveryMethod": {
226
+ "title": "Delivery Method",
227
+ "description": "Determines how the API delivers task results.",
228
+ "type": "string",
229
+ "oneOf": [
230
+ {
231
+ "const": "async",
232
+ "description": "Returns an immediate acknowledgment with the task UUID. Poll for results using getResponse. Required for long-running tasks like video generation."
233
+ }
234
+ ],
235
+ "default": "async"
236
+ },
237
+ "safety": {
238
+ "type": "object",
239
+ "title": "Safety Settings",
240
+ "description": "Content safety checking configuration for video generation.",
241
+ "properties": {
242
+ "checkContent": {
243
+ "title": "Check Content",
244
+ "description": "Enable or disable content safety checking. When enabled, defaults to `fast` mode.",
245
+ "type": "boolean",
246
+ "default": false
247
+ },
248
+ "mode": {
249
+ "description": "Safety checking mode for video generation.",
250
+ "type": "string",
251
+ "oneOf": [
252
+ {
253
+ "const": "none",
254
+ "title": "None",
255
+ "description": "Disables checking."
256
+ },
257
+ {
258
+ "const": "fast",
259
+ "title": "Fast",
260
+ "description": "Checks key frames."
261
+ },
262
+ {
263
+ "const": "full",
264
+ "title": "Full",
265
+ "description": "Checks all frames."
266
+ }
267
+ ],
268
+ "default": "none"
269
+ }
270
+ },
271
+ "additionalProperties": false
272
+ }
273
+ },
274
+ "required": [
275
+ "positivePrompt",
276
+ "taskType",
277
+ "taskUUID",
278
+ "model"
279
+ ],
280
+ "allOf": [
281
+ {
282
+ "dependentRequired": {
283
+ "width": [
284
+ "height"
285
+ ],
286
+ "height": [
287
+ "width"
288
+ ]
289
+ }
290
+ },
291
+ {
292
+ "oneOf": [
293
+ {
294
+ "title": "1080p (16:9)",
295
+ "properties": {
296
+ "width": {
297
+ "const": 1920
298
+ },
299
+ "height": {
300
+ "const": 1080
301
+ }
302
+ }
303
+ },
304
+ {
305
+ "title": "1440p (16:9)",
306
+ "properties": {
307
+ "width": {
308
+ "const": 2560
309
+ },
310
+ "height": {
311
+ "const": 1440
312
+ }
313
+ }
314
+ },
315
+ {
316
+ "title": "4K (16:9)",
317
+ "properties": {
318
+ "width": {
319
+ "const": 3840
320
+ },
321
+ "height": {
322
+ "const": 2160
323
+ }
324
+ }
325
+ }
326
+ ]
327
+ }
328
+ ],
329
+ "additionalProperties": false
330
+ },
331
+ {
332
+ "type": "object",
333
+ "properties": {
334
+ "model": {
335
+ "title": "Model",
336
+ "description": "Identifier of the model to use for generation.",
337
+ "type": "string",
338
+ "const": "lightricks:2@0"
339
+ },
340
+ "inputs": {
341
+ "title": "Inputs",
342
+ "description": "The unified payload wrapper for complex media assets dictating image, video or audio inference constraints.",
343
+ "type": "object",
344
+ "properties": {
345
+ "frameImages": {
346
+ "title": "Frame Images",
347
+ "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.",
348
+ "type": "array",
349
+ "minItems": 1,
350
+ "items": {
351
+ "anyOf": [
352
+ {
353
+ "title": "Image",
354
+ "description": "Image input (UUID, URL, Data URI, or Base64).",
355
+ "type": "string",
356
+ "anyOf": [
357
+ {
358
+ "format": "uuid"
359
+ },
360
+ {
361
+ "format": "uri"
362
+ },
363
+ {
364
+ "pattern": "^data:image\\/[a-zA-Z]+;base64,[a-zA-Z0-9+/=]+$"
365
+ },
366
+ {
367
+ "pattern": "^[a-zA-Z0-9+/=]+$"
368
+ }
369
+ ]
370
+ },
371
+ {
372
+ "type": "object",
373
+ "properties": {
374
+ "image": {
375
+ "title": "Image",
376
+ "description": "Image input (UUID, URL, Data URI, or Base64).",
377
+ "type": "string",
378
+ "anyOf": [
379
+ {
380
+ "format": "uuid"
381
+ },
382
+ {
383
+ "format": "uri"
384
+ },
385
+ {
386
+ "pattern": "^data:image\\/[a-zA-Z]+;base64,[a-zA-Z0-9+/=]+$"
387
+ },
388
+ {
389
+ "pattern": "^[a-zA-Z0-9+/=]+$"
390
+ }
391
+ ]
392
+ },
393
+ "frame": {
394
+ "title": "Frame",
395
+ "description": "Target frame position for the image. This model only supports the first frame.",
396
+ "oneOf": [
397
+ {
398
+ "const": "first",
399
+ "description": "First frame of the video."
400
+ },
401
+ {
402
+ "const": 0,
403
+ "description": "Frame index 0 (first frame)."
404
+ }
405
+ ]
406
+ }
407
+ },
408
+ "required": [
409
+ "image"
410
+ ],
411
+ "additionalProperties": false
412
+ }
413
+ ]
414
+ },
415
+ "maxItems": 1
416
+ },
417
+ "audio": {
418
+ "title": "Audio",
419
+ "description": "Audio input (UUID or URL). Duration must be between 2 and 20 seconds.",
420
+ "type": "string",
421
+ "anyOf": [
422
+ {
423
+ "format": "uuid"
424
+ },
425
+ {
426
+ "format": "uri"
427
+ }
428
+ ]
429
+ }
430
+ },
431
+ "additionalProperties": false
432
+ },
433
+ "positivePrompt": {
434
+ "title": "Positive Prompt",
435
+ "description": "Text prompt describing elements to include in the generated output.",
436
+ "type": "string",
437
+ "minLength": 2,
438
+ "maxLength": 10000
439
+ },
440
+ "width": {
441
+ "title": "Width",
442
+ "description": "Width of the generated media in pixels.",
443
+ "type": "integer"
444
+ },
445
+ "height": {
446
+ "title": "Height",
447
+ "description": "Height of the generated media in pixels.",
448
+ "type": "integer"
449
+ },
450
+ "duration": {
451
+ "title": "Duration",
452
+ "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).",
453
+ "type": "number",
454
+ "enum": [
455
+ 6,
456
+ 8,
457
+ 10
458
+ ],
459
+ "default": 6
460
+ },
461
+ "fps": {
462
+ "title": "FPS",
463
+ "description": "Frames per second for video generation. Higher values create smoother motion but require more processing time.",
464
+ "type": "integer",
465
+ "enum": [
466
+ 24,
467
+ 25,
468
+ 50
469
+ ],
470
+ "default": 25
471
+ },
472
+ "CFGScale": {
473
+ "title": "CFG Scale",
474
+ "description": "Guidance scale representing how closely the output will resemble the prompt. Higher values produce results more aligned with the prompt.",
475
+ "type": "number",
476
+ "multipleOf": 0.01,
477
+ "minimum": 1,
478
+ "maximum": 50
479
+ },
480
+ "providerSettings": {
481
+ "title": "Provider Settings",
482
+ "description": "Provider-specific configuration settings.",
483
+ "type": "object",
484
+ "properties": {
485
+ "lightricks": {
486
+ "title": "Lightricks Settings",
487
+ "description": "Provider-specific settings for Lightricks.",
488
+ "type": "object",
489
+ "properties": {
490
+ "generateAudio": {
491
+ "title": "Generate Audio",
492
+ "description": "Generate synchronized audio.",
493
+ "type": "boolean",
494
+ "default": false
495
+ }
496
+ },
497
+ "additionalProperties": false
498
+ }
499
+ },
500
+ "additionalProperties": false
501
+ },
502
+ "taskType": {
503
+ "title": "Task Type",
504
+ "description": "Identifier for the type of task being performed",
505
+ "type": "string",
506
+ "const": "videoInference"
507
+ },
508
+ "taskUUID": {
509
+ "title": "Task UUID",
510
+ "description": "UUID v4 identifier for tracking tasks and matching async responses. Must be unique per task.",
511
+ "type": "string",
512
+ "format": "uuid"
513
+ },
514
+ "webhookURL": {
515
+ "title": "Webhook URL",
516
+ "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.",
517
+ "type": "string",
518
+ "format": "uri"
519
+ },
520
+ "includeCost": {
521
+ "title": "Include Cost",
522
+ "description": "Include task cost in the response.",
523
+ "type": "boolean",
524
+ "default": false
525
+ },
526
+ "numberResults": {
527
+ "title": "Number of Results",
528
+ "description": "Number of results to generate. Each result uses a different seed, producing variations of the same parameters.",
529
+ "type": "integer",
530
+ "minimum": 1,
531
+ "default": 1,
532
+ "maximum": 4
533
+ },
534
+ "uploadEndpoint": {
535
+ "title": "Upload Endpoint",
536
+ "description": "URL to upload content via HTTP PUT. The request body will contain the raw binary data.",
537
+ "type": "string",
538
+ "format": "uri"
539
+ },
540
+ "ttl": {
541
+ "title": "TTL",
542
+ "description": "Time-to-live (TTL) in seconds for generated content. Only applies when `outputType` is `URL`.",
543
+ "type": "integer",
544
+ "minimum": 60
545
+ },
546
+ "outputType": {
547
+ "title": "Output Type",
548
+ "description": "Video output type.",
549
+ "type": "string",
550
+ "enum": [
551
+ "URL"
552
+ ],
553
+ "default": "URL"
554
+ },
555
+ "outputFormat": {
556
+ "title": "Output Format",
557
+ "description": "File format for the generated video.",
558
+ "type": "string",
559
+ "enum": [
560
+ "MP4",
561
+ "WEBM",
562
+ "MOV"
563
+ ],
564
+ "default": "MP4"
565
+ },
566
+ "outputQuality": {
567
+ "title": "Output Quality",
568
+ "description": "Compression quality of the output. Higher values preserve quality but increase file size.",
569
+ "type": "integer",
570
+ "minimum": 20,
571
+ "maximum": 99,
572
+ "default": 95
573
+ },
574
+ "deliveryMethod": {
575
+ "title": "Delivery Method",
576
+ "description": "Determines how the API delivers task results.",
577
+ "type": "string",
578
+ "oneOf": [
579
+ {
580
+ "const": "async",
581
+ "description": "Returns an immediate acknowledgment with the task UUID. Poll for results using getResponse. Required for long-running tasks like video generation."
582
+ }
583
+ ],
584
+ "default": "async"
585
+ },
586
+ "safety": {
587
+ "type": "object",
588
+ "title": "Safety Settings",
589
+ "description": "Content safety checking configuration for video generation.",
590
+ "properties": {
591
+ "checkContent": {
592
+ "title": "Check Content",
593
+ "description": "Enable or disable content safety checking. When enabled, defaults to `fast` mode.",
594
+ "type": "boolean",
595
+ "default": false
596
+ },
597
+ "mode": {
598
+ "description": "Safety checking mode for video generation.",
599
+ "type": "string",
600
+ "oneOf": [
601
+ {
602
+ "const": "none",
603
+ "title": "None",
604
+ "description": "Disables checking."
605
+ },
606
+ {
607
+ "const": "fast",
608
+ "title": "Fast",
609
+ "description": "Checks key frames."
610
+ },
611
+ {
612
+ "const": "full",
613
+ "title": "Full",
614
+ "description": "Checks all frames."
615
+ }
616
+ ],
617
+ "default": "none"
618
+ }
619
+ },
620
+ "additionalProperties": false
621
+ }
622
+ },
623
+ "required": [
624
+ "positivePrompt",
625
+ "taskType",
626
+ "taskUUID",
627
+ "model"
628
+ ],
629
+ "allOf": [
630
+ {
631
+ "dependentRequired": {
632
+ "width": [
633
+ "height"
634
+ ],
635
+ "height": [
636
+ "width"
637
+ ]
638
+ }
639
+ },
640
+ {
641
+ "oneOf": [
642
+ {
643
+ "title": "1080p (16:9)",
644
+ "properties": {
645
+ "width": {
646
+ "const": 1920
647
+ },
648
+ "height": {
649
+ "const": 1080
650
+ }
651
+ }
652
+ },
653
+ {
654
+ "title": "1080p (9:16)",
655
+ "properties": {
656
+ "width": {
657
+ "const": 1080
658
+ },
659
+ "height": {
660
+ "const": 1920
661
+ }
662
+ }
663
+ },
664
+ {
665
+ "title": "1440p (16:9)",
666
+ "properties": {
667
+ "width": {
668
+ "const": 2560
669
+ },
670
+ "height": {
671
+ "const": 1440
672
+ }
673
+ }
674
+ },
675
+ {
676
+ "title": "4K (16:9)",
677
+ "properties": {
678
+ "width": {
679
+ "const": 3840
680
+ },
681
+ "height": {
682
+ "const": 2160
683
+ }
684
+ }
685
+ }
686
+ ]
687
+ },
688
+ {
689
+ "if": {
690
+ "properties": {
691
+ "inputs": {
692
+ "required": [
693
+ "audio"
694
+ ]
695
+ }
696
+ },
697
+ "required": [
698
+ "inputs"
699
+ ]
700
+ },
701
+ "then": {
702
+ "not": {
703
+ "required": [
704
+ "duration"
705
+ ]
706
+ }
707
+ }
708
+ },
709
+ {
710
+ "if": {
711
+ "properties": {
712
+ "inputs": {
713
+ "required": [
714
+ "audio"
715
+ ]
716
+ }
717
+ },
718
+ "required": [
719
+ "inputs"
720
+ ]
721
+ },
722
+ "then": {
723
+ "not": {
724
+ "properties": {
725
+ "providerSettings": {
726
+ "properties": {
727
+ "lightricks": {
728
+ "required": [
729
+ "generateAudio"
730
+ ]
731
+ }
732
+ },
733
+ "required": [
734
+ "lightricks"
735
+ ]
736
+ }
737
+ },
738
+ "required": [
739
+ "providerSettings"
740
+ ]
741
+ }
742
+ }
743
+ },
744
+ {
745
+ "if": {
746
+ "required": [
747
+ "CFGScale"
748
+ ]
749
+ },
750
+ "then": {
751
+ "properties": {
752
+ "inputs": {
753
+ "required": [
754
+ "audio"
755
+ ]
756
+ }
757
+ },
758
+ "required": [
759
+ "inputs"
760
+ ]
761
+ }
762
+ },
763
+ {
764
+ "if": {
765
+ "properties": {
766
+ "inputs": {
767
+ "required": [
768
+ "audio"
769
+ ]
770
+ }
771
+ },
772
+ "required": [
773
+ "inputs"
774
+ ]
775
+ },
776
+ "then": {
777
+ "properties": {
778
+ "positivePrompt": {
779
+ "maxLength": 5000
780
+ },
781
+ "fps": {
782
+ "const": 24
783
+ }
784
+ },
785
+ "oneOf": [
786
+ {
787
+ "properties": {
788
+ "width": {
789
+ "const": 1920
790
+ },
791
+ "height": {
792
+ "const": 1080
793
+ }
794
+ }
795
+ },
796
+ {
797
+ "properties": {
798
+ "width": {
799
+ "const": 1080
800
+ },
801
+ "height": {
802
+ "const": 1920
803
+ }
804
+ }
805
+ }
806
+ ]
807
+ }
808
+ }
809
+ ],
810
+ "additionalProperties": false
811
+ },
812
+ {
813
+ "type": "object",
814
+ "properties": {
815
+ "model": {
816
+ "title": "Model",
817
+ "description": "Identifier of the model to use for generation.",
818
+ "type": "string",
819
+ "const": "lightricks:3@1"
820
+ },
821
+ "inputs": {
822
+ "title": "Inputs",
823
+ "description": "The unified payload wrapper for complex media assets dictating image, video or audio inference constraints.",
824
+ "type": "object",
825
+ "properties": {
826
+ "frameImages": {
827
+ "title": "Frame Images",
828
+ "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.",
829
+ "type": "array",
830
+ "minItems": 1,
831
+ "items": {
832
+ "anyOf": [
833
+ {
834
+ "title": "Image",
835
+ "description": "Image input (UUID, URL, Data URI, or Base64).",
836
+ "type": "string",
837
+ "anyOf": [
838
+ {
839
+ "format": "uuid"
840
+ },
841
+ {
842
+ "format": "uri"
843
+ },
844
+ {
845
+ "pattern": "^data:image\\/[a-zA-Z]+;base64,[a-zA-Z0-9+/=]+$"
846
+ },
847
+ {
848
+ "pattern": "^[a-zA-Z0-9+/=]+$"
849
+ }
850
+ ]
851
+ },
852
+ {
853
+ "type": "object",
854
+ "properties": {
855
+ "image": {
856
+ "title": "Image",
857
+ "description": "Image input (UUID, URL, Data URI, or Base64).",
858
+ "type": "string",
859
+ "anyOf": [
860
+ {
861
+ "format": "uuid"
862
+ },
863
+ {
864
+ "format": "uri"
865
+ },
866
+ {
867
+ "pattern": "^data:image\\/[a-zA-Z]+;base64,[a-zA-Z0-9+/=]+$"
868
+ },
869
+ {
870
+ "pattern": "^[a-zA-Z0-9+/=]+$"
871
+ }
872
+ ]
873
+ },
874
+ "frame": {
875
+ "title": "Frame",
876
+ "description": "Target frame position for the image. This model only supports the first frame.",
877
+ "oneOf": [
878
+ {
879
+ "const": "first",
880
+ "description": "First frame of the video."
881
+ },
882
+ {
883
+ "const": 0,
884
+ "description": "Frame index 0 (first frame)."
885
+ }
886
+ ]
887
+ }
888
+ },
889
+ "required": [
890
+ "image"
891
+ ],
892
+ "additionalProperties": false
893
+ }
894
+ ]
895
+ },
896
+ "maxItems": 1
897
+ },
898
+ "video": {
899
+ "title": "Video",
900
+ "description": "Video input (UUID or URL).",
901
+ "type": "string",
902
+ "anyOf": [
903
+ {
904
+ "format": "uuid"
905
+ },
906
+ {
907
+ "format": "uri"
908
+ }
909
+ ]
910
+ }
911
+ },
912
+ "required": [
913
+ "video"
914
+ ],
915
+ "additionalProperties": false
916
+ },
917
+ "positivePrompt": {
918
+ "title": "Positive Prompt",
919
+ "description": "Text prompt describing elements to include in the generated output.",
920
+ "type": "string",
921
+ "minLength": 1,
922
+ "maxLength": 5000
923
+ },
924
+ "providerSettings": {
925
+ "title": "Provider Settings",
926
+ "description": "Provider-specific configuration settings.",
927
+ "type": "object",
928
+ "properties": {
929
+ "lightricks": {
930
+ "title": "Lightricks Settings",
931
+ "description": "Provider-specific settings for Lightricks.",
932
+ "type": "object",
933
+ "properties": {
934
+ "duration": {
935
+ "title": "Duration",
936
+ "description": "Duration in seconds to regenerate. Combined with `startTime` must not exceed input video length.",
937
+ "type": "integer",
938
+ "minimum": 1
939
+ },
940
+ "mode": {
941
+ "title": "Mode",
942
+ "description": "Track replacement mode for the edited segment.",
943
+ "type": "string",
944
+ "oneOf": [
945
+ {
946
+ "const": "replace_audio",
947
+ "description": "Regenerate only the audio track, preserving original video."
948
+ },
949
+ {
950
+ "const": "replace_video",
951
+ "description": "Regenerate only the video track, preserving original audio."
952
+ },
953
+ {
954
+ "const": "replace_audio_and_video",
955
+ "description": "Regenerate both audio and video tracks."
956
+ }
957
+ ],
958
+ "default": "replace_audio_and_video"
959
+ },
960
+ "startTime": {
961
+ "title": "Start Time",
962
+ "description": "Start time in seconds for the regenerated segment. Must be within input video duration.",
963
+ "type": "integer",
964
+ "minimum": 0
965
+ }
966
+ },
967
+ "additionalProperties": false
968
+ }
969
+ },
970
+ "additionalProperties": false
971
+ },
972
+ "taskType": {
973
+ "title": "Task Type",
974
+ "description": "Identifier for the type of task being performed",
975
+ "type": "string",
976
+ "const": "videoInference"
977
+ },
978
+ "taskUUID": {
979
+ "title": "Task UUID",
980
+ "description": "UUID v4 identifier for tracking tasks and matching async responses. Must be unique per task.",
981
+ "type": "string",
982
+ "format": "uuid"
983
+ },
984
+ "webhookURL": {
985
+ "title": "Webhook URL",
986
+ "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.",
987
+ "type": "string",
988
+ "format": "uri"
989
+ },
990
+ "includeCost": {
991
+ "title": "Include Cost",
992
+ "description": "Include task cost in the response.",
993
+ "type": "boolean",
994
+ "default": false
995
+ },
996
+ "numberResults": {
997
+ "title": "Number of Results",
998
+ "description": "Number of results to generate. Each result uses a different seed, producing variations of the same parameters.",
999
+ "type": "integer",
1000
+ "minimum": 1,
1001
+ "default": 1,
1002
+ "maximum": 4
1003
+ },
1004
+ "uploadEndpoint": {
1005
+ "title": "Upload Endpoint",
1006
+ "description": "URL to upload content via HTTP PUT. The request body will contain the raw binary data.",
1007
+ "type": "string",
1008
+ "format": "uri"
1009
+ },
1010
+ "ttl": {
1011
+ "title": "TTL",
1012
+ "description": "Time-to-live (TTL) in seconds for generated content. Only applies when `outputType` is `URL`.",
1013
+ "type": "integer",
1014
+ "minimum": 60
1015
+ },
1016
+ "outputType": {
1017
+ "title": "Output Type",
1018
+ "description": "Video output type.",
1019
+ "type": "string",
1020
+ "enum": [
1021
+ "URL"
1022
+ ],
1023
+ "default": "URL"
1024
+ },
1025
+ "outputFormat": {
1026
+ "title": "Output Format",
1027
+ "description": "File format for the generated video.",
1028
+ "type": "string",
1029
+ "enum": [
1030
+ "MP4",
1031
+ "WEBM",
1032
+ "MOV"
1033
+ ],
1034
+ "default": "MP4"
1035
+ },
1036
+ "outputQuality": {
1037
+ "title": "Output Quality",
1038
+ "description": "Compression quality of the output. Higher values preserve quality but increase file size.",
1039
+ "type": "integer",
1040
+ "minimum": 20,
1041
+ "maximum": 99,
1042
+ "default": 95
1043
+ },
1044
+ "deliveryMethod": {
1045
+ "title": "Delivery Method",
1046
+ "description": "Determines how the API delivers task results.",
1047
+ "type": "string",
1048
+ "oneOf": [
1049
+ {
1050
+ "const": "async",
1051
+ "description": "Returns an immediate acknowledgment with the task UUID. Poll for results using getResponse. Required for long-running tasks like video generation."
1052
+ }
1053
+ ],
1054
+ "default": "async"
1055
+ },
1056
+ "safety": {
1057
+ "type": "object",
1058
+ "title": "Safety Settings",
1059
+ "description": "Content safety checking configuration for video generation.",
1060
+ "properties": {
1061
+ "checkContent": {
1062
+ "title": "Check Content",
1063
+ "description": "Enable or disable content safety checking. When enabled, defaults to `fast` mode.",
1064
+ "type": "boolean",
1065
+ "default": false
1066
+ },
1067
+ "mode": {
1068
+ "description": "Safety checking mode for video generation.",
1069
+ "type": "string",
1070
+ "oneOf": [
1071
+ {
1072
+ "const": "none",
1073
+ "title": "None",
1074
+ "description": "Disables checking."
1075
+ },
1076
+ {
1077
+ "const": "fast",
1078
+ "title": "Fast",
1079
+ "description": "Checks key frames."
1080
+ },
1081
+ {
1082
+ "const": "full",
1083
+ "title": "Full",
1084
+ "description": "Checks all frames."
1085
+ }
1086
+ ],
1087
+ "default": "none"
1088
+ }
1089
+ },
1090
+ "additionalProperties": false
1091
+ }
1092
+ },
1093
+ "additionalProperties": false,
1094
+ "required": [
1095
+ "taskType",
1096
+ "taskUUID",
1097
+ "model"
1098
+ ]
1099
+ },
1100
+ {
1101
+ "type": "object",
1102
+ "properties": {
1103
+ "model": {
1104
+ "title": "Model",
1105
+ "description": "Identifier of the model to use for generation.",
1106
+ "type": "string",
1107
+ "const": "lightricks:ltx@2"
1108
+ },
1109
+ "inputs": {
1110
+ "title": "Inputs",
1111
+ "description": "The unified payload wrapper for complex media assets dictating image, video or audio inference constraints.",
1112
+ "type": "object",
1113
+ "properties": {
1114
+ "frameImages": {
1115
+ "title": "Frame Images",
1116
+ "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.",
1117
+ "type": "array",
1118
+ "minItems": 1,
1119
+ "items": {
1120
+ "anyOf": [
1121
+ {
1122
+ "title": "Image",
1123
+ "description": "Image input (UUID, URL, Data URI, or Base64).",
1124
+ "type": "string",
1125
+ "anyOf": [
1126
+ {
1127
+ "format": "uuid"
1128
+ },
1129
+ {
1130
+ "format": "uri"
1131
+ },
1132
+ {
1133
+ "pattern": "^data:image\\/[a-zA-Z]+;base64,[a-zA-Z0-9+/=]+$"
1134
+ },
1135
+ {
1136
+ "pattern": "^[a-zA-Z0-9+/=]+$"
1137
+ }
1138
+ ]
1139
+ },
1140
+ {
1141
+ "type": "object",
1142
+ "properties": {
1143
+ "image": {
1144
+ "title": "Image",
1145
+ "description": "Image input (UUID, URL, Data URI, or Base64).",
1146
+ "type": "string",
1147
+ "anyOf": [
1148
+ {
1149
+ "format": "uuid"
1150
+ },
1151
+ {
1152
+ "format": "uri"
1153
+ },
1154
+ {
1155
+ "pattern": "^data:image\\/[a-zA-Z]+;base64,[a-zA-Z0-9+/=]+$"
1156
+ },
1157
+ {
1158
+ "pattern": "^[a-zA-Z0-9+/=]+$"
1159
+ }
1160
+ ]
1161
+ },
1162
+ "frame": {
1163
+ "title": "Frame",
1164
+ "description": "Target frame position for the image. This model only supports the first frame.",
1165
+ "oneOf": [
1166
+ {
1167
+ "const": "first",
1168
+ "description": "First frame of the video."
1169
+ },
1170
+ {
1171
+ "const": 0,
1172
+ "description": "Frame index 0 (first frame)."
1173
+ }
1174
+ ]
1175
+ }
1176
+ },
1177
+ "required": [
1178
+ "image"
1179
+ ],
1180
+ "additionalProperties": false
1181
+ }
1182
+ ]
1183
+ },
1184
+ "maxItems": 1
1185
+ }
1186
+ },
1187
+ "additionalProperties": false
1188
+ },
1189
+ "positivePrompt": {
1190
+ "title": "Positive Prompt",
1191
+ "description": "Text prompt describing elements to include in the generated output.",
1192
+ "type": "string"
1193
+ },
1194
+ "negativePrompt": {
1195
+ "title": "Negative Prompt",
1196
+ "description": "Prompt to guide what to exclude from generation. Ignored when guidance is disabled (CFGScale ≤ 1).",
1197
+ "type": "string"
1198
+ },
1199
+ "width": {
1200
+ "title": "Width",
1201
+ "description": "Width of the generated media in pixels.",
1202
+ "type": "integer",
1203
+ "minimum": 128,
1204
+ "maximum": 2048,
1205
+ "multipleOf": 64
1206
+ },
1207
+ "height": {
1208
+ "title": "Height",
1209
+ "description": "Height of the generated media in pixels.",
1210
+ "type": "integer",
1211
+ "minimum": 128,
1212
+ "maximum": 2048,
1213
+ "multipleOf": 64
1214
+ },
1215
+ "duration": {
1216
+ "title": "Duration",
1217
+ "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).",
1218
+ "type": "integer",
1219
+ "minimum": 1,
1220
+ "maximum": 20
1221
+ },
1222
+ "fps": {
1223
+ "title": "FPS",
1224
+ "description": "Frames per second for video generation. Higher values create smoother motion but require more processing time.",
1225
+ "type": "integer",
1226
+ "default": 25,
1227
+ "minimum": 1,
1228
+ "maximum": 120
1229
+ },
1230
+ "steps": {
1231
+ "title": "Steps",
1232
+ "description": "Total number of denoising steps. Higher values generally produce more detailed results but take longer.",
1233
+ "type": "integer",
1234
+ "minimum": 1,
1235
+ "default": 40,
1236
+ "maximum": 100
1237
+ },
1238
+ "CFGScale": {
1239
+ "title": "CFG Scale",
1240
+ "description": "Guidance scale representing how closely the output will resemble the prompt. Higher values produce results more aligned with the prompt.",
1241
+ "type": "number",
1242
+ "multipleOf": 0.01,
1243
+ "minimum": 1,
1244
+ "default": 4,
1245
+ "maximum": 20
1246
+ },
1247
+ "settings": {
1248
+ "title": "Settings",
1249
+ "description": "Global inference settings.",
1250
+ "type": "object",
1251
+ "properties": {
1252
+ "enhancePrompt": {
1253
+ "title": "Enhance Prompt",
1254
+ "description": "Enable automatic prompt enhancement for cinematic results.",
1255
+ "type": "boolean",
1256
+ "default": true
1257
+ }
1258
+ },
1259
+ "additionalProperties": false
1260
+ },
1261
+ "taskType": {
1262
+ "title": "Task Type",
1263
+ "description": "Identifier for the type of task being performed",
1264
+ "type": "string",
1265
+ "const": "videoInference"
1266
+ },
1267
+ "taskUUID": {
1268
+ "title": "Task UUID",
1269
+ "description": "UUID v4 identifier for tracking tasks and matching async responses. Must be unique per task.",
1270
+ "type": "string",
1271
+ "format": "uuid"
1272
+ },
1273
+ "webhookURL": {
1274
+ "title": "Webhook URL",
1275
+ "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.",
1276
+ "type": "string",
1277
+ "format": "uri"
1278
+ },
1279
+ "includeCost": {
1280
+ "title": "Include Cost",
1281
+ "description": "Include task cost in the response.",
1282
+ "type": "boolean",
1283
+ "default": false
1284
+ },
1285
+ "numberResults": {
1286
+ "title": "Number of Results",
1287
+ "description": "Number of results to generate. Each result uses a different seed, producing variations of the same parameters.",
1288
+ "type": "integer",
1289
+ "minimum": 1,
1290
+ "default": 1,
1291
+ "maximum": 4
1292
+ },
1293
+ "uploadEndpoint": {
1294
+ "title": "Upload Endpoint",
1295
+ "description": "URL to upload content via HTTP PUT. The request body will contain the raw binary data.",
1296
+ "type": "string",
1297
+ "format": "uri"
1298
+ },
1299
+ "ttl": {
1300
+ "title": "TTL",
1301
+ "description": "Time-to-live (TTL) in seconds for generated content. Only applies when `outputType` is `URL`.",
1302
+ "type": "integer",
1303
+ "minimum": 60
1304
+ },
1305
+ "outputType": {
1306
+ "title": "Output Type",
1307
+ "description": "Video output type.",
1308
+ "type": "string",
1309
+ "enum": [
1310
+ "URL"
1311
+ ],
1312
+ "default": "URL"
1313
+ },
1314
+ "outputFormat": {
1315
+ "title": "Output Format",
1316
+ "description": "File format for the generated video.",
1317
+ "type": "string",
1318
+ "enum": [
1319
+ "MP4",
1320
+ "WEBM",
1321
+ "MOV"
1322
+ ],
1323
+ "default": "MP4"
1324
+ },
1325
+ "outputQuality": {
1326
+ "title": "Output Quality",
1327
+ "description": "Compression quality of the output. Higher values preserve quality but increase file size.",
1328
+ "type": "integer",
1329
+ "minimum": 20,
1330
+ "maximum": 99,
1331
+ "default": 95
1332
+ },
1333
+ "deliveryMethod": {
1334
+ "title": "Delivery Method",
1335
+ "description": "Determines how the API delivers task results.",
1336
+ "type": "string",
1337
+ "oneOf": [
1338
+ {
1339
+ "const": "async",
1340
+ "description": "Returns an immediate acknowledgment with the task UUID. Poll for results using getResponse. Required for long-running tasks like video generation."
1341
+ }
1342
+ ],
1343
+ "default": "async"
1344
+ },
1345
+ "safety": {
1346
+ "type": "object",
1347
+ "title": "Safety Settings",
1348
+ "description": "Content safety checking configuration for video generation.",
1349
+ "properties": {
1350
+ "checkContent": {
1351
+ "title": "Check Content",
1352
+ "description": "Enable or disable content safety checking. When enabled, defaults to `fast` mode.",
1353
+ "type": "boolean",
1354
+ "default": false
1355
+ },
1356
+ "mode": {
1357
+ "description": "Safety checking mode for video generation.",
1358
+ "type": "string",
1359
+ "oneOf": [
1360
+ {
1361
+ "const": "none",
1362
+ "title": "None",
1363
+ "description": "Disables checking."
1364
+ },
1365
+ {
1366
+ "const": "fast",
1367
+ "title": "Fast",
1368
+ "description": "Checks key frames."
1369
+ },
1370
+ {
1371
+ "const": "full",
1372
+ "title": "Full",
1373
+ "description": "Checks all frames."
1374
+ }
1375
+ ],
1376
+ "default": "none"
1377
+ }
1378
+ },
1379
+ "additionalProperties": false
1380
+ }
1381
+ },
1382
+ "required": [
1383
+ "positivePrompt",
1384
+ "taskType",
1385
+ "taskUUID",
1386
+ "model"
1387
+ ],
1388
+ "allOf": [
1389
+ {
1390
+ "dependentRequired": {
1391
+ "width": [
1392
+ "height"
1393
+ ],
1394
+ "height": [
1395
+ "width"
1396
+ ]
1397
+ }
1398
+ }
1399
+ ],
1400
+ "additionalProperties": false
1401
+ },
1402
+ {
1403
+ "type": "object",
1404
+ "properties": {
1405
+ "model": {
1406
+ "title": "Model",
1407
+ "description": "Identifier of the model to use for generation.",
1408
+ "type": "string",
1409
+ "const": "lightricks:ltx@2.3"
1410
+ },
1411
+ "inputs": {
1412
+ "title": "Inputs",
1413
+ "description": "The unified payload wrapper for complex media assets dictating image, video or audio inference constraints.",
1414
+ "type": "object",
1415
+ "properties": {
1416
+ "frameImages": {
1417
+ "title": "Frame Images",
1418
+ "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.",
1419
+ "type": "array",
1420
+ "minItems": 1,
1421
+ "items": {
1422
+ "anyOf": [
1423
+ {
1424
+ "title": "Image",
1425
+ "description": "Image input (UUID, URL, Data URI, or Base64).",
1426
+ "type": "string",
1427
+ "anyOf": [
1428
+ {
1429
+ "format": "uuid"
1430
+ },
1431
+ {
1432
+ "format": "uri"
1433
+ },
1434
+ {
1435
+ "pattern": "^data:image\\/[a-zA-Z]+;base64,[a-zA-Z0-9+/=]+$"
1436
+ },
1437
+ {
1438
+ "pattern": "^[a-zA-Z0-9+/=]+$"
1439
+ }
1440
+ ]
1441
+ },
1442
+ {
1443
+ "type": "object",
1444
+ "properties": {
1445
+ "image": {
1446
+ "title": "Image",
1447
+ "description": "Image input (UUID, URL, Data URI, or Base64).",
1448
+ "type": "string",
1449
+ "anyOf": [
1450
+ {
1451
+ "format": "uuid"
1452
+ },
1453
+ {
1454
+ "format": "uri"
1455
+ },
1456
+ {
1457
+ "pattern": "^data:image\\/[a-zA-Z]+;base64,[a-zA-Z0-9+/=]+$"
1458
+ },
1459
+ {
1460
+ "pattern": "^[a-zA-Z0-9+/=]+$"
1461
+ }
1462
+ ]
1463
+ },
1464
+ "frame": {
1465
+ "title": "Frame",
1466
+ "description": "Target frame position for the image. This model only supports the first frame.",
1467
+ "oneOf": [
1468
+ {
1469
+ "const": "first",
1470
+ "description": "First frame of the video."
1471
+ },
1472
+ {
1473
+ "const": 0,
1474
+ "description": "Frame index 0 (first frame)."
1475
+ }
1476
+ ]
1477
+ }
1478
+ },
1479
+ "required": [
1480
+ "image"
1481
+ ],
1482
+ "additionalProperties": false
1483
+ }
1484
+ ]
1485
+ },
1486
+ "maxItems": 1
1487
+ },
1488
+ "audio": {
1489
+ "title": "Audio",
1490
+ "description": "Audio input (UUID or URL). Duration must be between 2 and 20 seconds.",
1491
+ "type": "string",
1492
+ "anyOf": [
1493
+ {
1494
+ "format": "uuid"
1495
+ },
1496
+ {
1497
+ "format": "uri"
1498
+ }
1499
+ ]
1500
+ }
1501
+ },
1502
+ "additionalProperties": false
1503
+ },
1504
+ "positivePrompt": {
1505
+ "title": "Positive Prompt",
1506
+ "description": "Text prompt describing elements to include in the generated output.",
1507
+ "type": "string",
1508
+ "minLength": 2,
1509
+ "maxLength": 10000
1510
+ },
1511
+ "width": {
1512
+ "title": "Width",
1513
+ "description": "Width of the generated media in pixels.",
1514
+ "type": "integer"
1515
+ },
1516
+ "height": {
1517
+ "title": "Height",
1518
+ "description": "Height of the generated media in pixels.",
1519
+ "type": "integer"
1520
+ },
1521
+ "duration": {
1522
+ "title": "Duration",
1523
+ "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).",
1524
+ "type": "number",
1525
+ "enum": [
1526
+ 6,
1527
+ 8,
1528
+ 10
1529
+ ],
1530
+ "default": 6
1531
+ },
1532
+ "fps": {
1533
+ "title": "FPS",
1534
+ "description": "Frames per second for video generation. Higher values create smoother motion but require more processing time.",
1535
+ "type": "integer",
1536
+ "enum": [
1537
+ 24,
1538
+ 25,
1539
+ 48,
1540
+ 50
1541
+ ],
1542
+ "default": 25
1543
+ },
1544
+ "CFGScale": {
1545
+ "title": "CFG Scale",
1546
+ "description": "Guidance scale representing how closely the output will resemble the prompt. Higher values produce results more aligned with the prompt.",
1547
+ "type": "number",
1548
+ "multipleOf": 0.01,
1549
+ "minimum": 1,
1550
+ "maximum": 50
1551
+ },
1552
+ "settings": {
1553
+ "title": "Settings",
1554
+ "description": "Global inference settings.",
1555
+ "type": "object",
1556
+ "properties": {
1557
+ "audio": {
1558
+ "title": "Audio",
1559
+ "description": "Generate synchronized audio.",
1560
+ "type": "boolean",
1561
+ "default": true
1562
+ }
1563
+ },
1564
+ "additionalProperties": false
1565
+ },
1566
+ "taskType": {
1567
+ "title": "Task Type",
1568
+ "description": "Identifier for the type of task being performed",
1569
+ "type": "string",
1570
+ "const": "videoInference"
1571
+ },
1572
+ "taskUUID": {
1573
+ "title": "Task UUID",
1574
+ "description": "UUID v4 identifier for tracking tasks and matching async responses. Must be unique per task.",
1575
+ "type": "string",
1576
+ "format": "uuid"
1577
+ },
1578
+ "webhookURL": {
1579
+ "title": "Webhook URL",
1580
+ "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.",
1581
+ "type": "string",
1582
+ "format": "uri"
1583
+ },
1584
+ "includeCost": {
1585
+ "title": "Include Cost",
1586
+ "description": "Include task cost in the response.",
1587
+ "type": "boolean",
1588
+ "default": false
1589
+ },
1590
+ "numberResults": {
1591
+ "title": "Number of Results",
1592
+ "description": "Number of results to generate. Each result uses a different seed, producing variations of the same parameters.",
1593
+ "type": "integer",
1594
+ "minimum": 1,
1595
+ "default": 1,
1596
+ "maximum": 4
1597
+ },
1598
+ "uploadEndpoint": {
1599
+ "title": "Upload Endpoint",
1600
+ "description": "URL to upload content via HTTP PUT. The request body will contain the raw binary data.",
1601
+ "type": "string",
1602
+ "format": "uri"
1603
+ },
1604
+ "ttl": {
1605
+ "title": "TTL",
1606
+ "description": "Time-to-live (TTL) in seconds for generated content. Only applies when `outputType` is `URL`.",
1607
+ "type": "integer",
1608
+ "minimum": 60
1609
+ },
1610
+ "outputType": {
1611
+ "title": "Output Type",
1612
+ "description": "Video output type.",
1613
+ "type": "string",
1614
+ "enum": [
1615
+ "URL"
1616
+ ],
1617
+ "default": "URL"
1618
+ },
1619
+ "outputFormat": {
1620
+ "title": "Output Format",
1621
+ "description": "File format for the generated video.",
1622
+ "type": "string",
1623
+ "enum": [
1624
+ "MP4",
1625
+ "WEBM",
1626
+ "MOV"
1627
+ ],
1628
+ "default": "MP4"
1629
+ },
1630
+ "outputQuality": {
1631
+ "title": "Output Quality",
1632
+ "description": "Compression quality of the output. Higher values preserve quality but increase file size.",
1633
+ "type": "integer",
1634
+ "minimum": 20,
1635
+ "maximum": 99,
1636
+ "default": 95
1637
+ },
1638
+ "deliveryMethod": {
1639
+ "title": "Delivery Method",
1640
+ "description": "Determines how the API delivers task results.",
1641
+ "type": "string",
1642
+ "oneOf": [
1643
+ {
1644
+ "const": "async",
1645
+ "description": "Returns an immediate acknowledgment with the task UUID. Poll for results using getResponse. Required for long-running tasks like video generation."
1646
+ }
1647
+ ],
1648
+ "default": "async"
1649
+ },
1650
+ "safety": {
1651
+ "type": "object",
1652
+ "title": "Safety Settings",
1653
+ "description": "Content safety checking configuration for video generation.",
1654
+ "properties": {
1655
+ "checkContent": {
1656
+ "title": "Check Content",
1657
+ "description": "Enable or disable content safety checking. When enabled, defaults to `fast` mode.",
1658
+ "type": "boolean",
1659
+ "default": false
1660
+ },
1661
+ "mode": {
1662
+ "description": "Safety checking mode for video generation.",
1663
+ "type": "string",
1664
+ "oneOf": [
1665
+ {
1666
+ "const": "none",
1667
+ "title": "None",
1668
+ "description": "Disables checking."
1669
+ },
1670
+ {
1671
+ "const": "fast",
1672
+ "title": "Fast",
1673
+ "description": "Checks key frames."
1674
+ },
1675
+ {
1676
+ "const": "full",
1677
+ "title": "Full",
1678
+ "description": "Checks all frames."
1679
+ }
1680
+ ],
1681
+ "default": "none"
1682
+ }
1683
+ },
1684
+ "additionalProperties": false
1685
+ }
1686
+ },
1687
+ "required": [
1688
+ "positivePrompt",
1689
+ "taskType",
1690
+ "taskUUID",
1691
+ "model"
1692
+ ],
1693
+ "allOf": [
1694
+ {
1695
+ "dependentRequired": {
1696
+ "width": [
1697
+ "height"
1698
+ ],
1699
+ "height": [
1700
+ "width"
1701
+ ]
1702
+ }
1703
+ },
1704
+ {
1705
+ "oneOf": [
1706
+ {
1707
+ "title": "1080p (16:9)",
1708
+ "properties": {
1709
+ "width": {
1710
+ "const": 1920
1711
+ },
1712
+ "height": {
1713
+ "const": 1080
1714
+ }
1715
+ }
1716
+ },
1717
+ {
1718
+ "title": "1440p (16:9)",
1719
+ "properties": {
1720
+ "width": {
1721
+ "const": 2560
1722
+ },
1723
+ "height": {
1724
+ "const": 1440
1725
+ }
1726
+ }
1727
+ },
1728
+ {
1729
+ "title": "4K (16:9)",
1730
+ "properties": {
1731
+ "width": {
1732
+ "const": 3840
1733
+ },
1734
+ "height": {
1735
+ "const": 2160
1736
+ }
1737
+ }
1738
+ },
1739
+ {
1740
+ "title": "1080p (9:16)",
1741
+ "properties": {
1742
+ "width": {
1743
+ "const": 1080
1744
+ },
1745
+ "height": {
1746
+ "const": 1920
1747
+ }
1748
+ }
1749
+ },
1750
+ {
1751
+ "title": "1440p (9:16)",
1752
+ "properties": {
1753
+ "width": {
1754
+ "const": 1440
1755
+ },
1756
+ "height": {
1757
+ "const": 2560
1758
+ }
1759
+ }
1760
+ },
1761
+ {
1762
+ "title": "4K (9:16)",
1763
+ "properties": {
1764
+ "width": {
1765
+ "const": 2160
1766
+ },
1767
+ "height": {
1768
+ "const": 3840
1769
+ }
1770
+ }
1771
+ }
1772
+ ]
1773
+ },
1774
+ {
1775
+ "if": {
1776
+ "not": {
1777
+ "properties": {
1778
+ "inputs": {
1779
+ "properties": {
1780
+ "frameImages": {
1781
+ "minItems": 1
1782
+ }
1783
+ },
1784
+ "required": [
1785
+ "frameImages"
1786
+ ]
1787
+ }
1788
+ },
1789
+ "required": [
1790
+ "inputs"
1791
+ ]
1792
+ }
1793
+ },
1794
+ "then": {
1795
+ "required": [
1796
+ "width",
1797
+ "height"
1798
+ ]
1799
+ }
1800
+ },
1801
+ {
1802
+ "if": {
1803
+ "properties": {
1804
+ "inputs": {
1805
+ "required": [
1806
+ "audio"
1807
+ ]
1808
+ }
1809
+ },
1810
+ "required": [
1811
+ "inputs"
1812
+ ]
1813
+ },
1814
+ "then": {
1815
+ "not": {
1816
+ "required": [
1817
+ "duration"
1818
+ ]
1819
+ }
1820
+ }
1821
+ },
1822
+ {
1823
+ "if": {
1824
+ "properties": {
1825
+ "inputs": {
1826
+ "required": [
1827
+ "audio"
1828
+ ]
1829
+ }
1830
+ },
1831
+ "required": [
1832
+ "inputs"
1833
+ ]
1834
+ },
1835
+ "then": {
1836
+ "not": {
1837
+ "properties": {
1838
+ "settings": {
1839
+ "required": [
1840
+ "audio"
1841
+ ]
1842
+ }
1843
+ },
1844
+ "required": [
1845
+ "settings"
1846
+ ]
1847
+ }
1848
+ }
1849
+ },
1850
+ {
1851
+ "if": {
1852
+ "required": [
1853
+ "CFGScale"
1854
+ ]
1855
+ },
1856
+ "then": {
1857
+ "properties": {
1858
+ "inputs": {
1859
+ "required": [
1860
+ "audio"
1861
+ ]
1862
+ }
1863
+ },
1864
+ "required": [
1865
+ "inputs"
1866
+ ]
1867
+ }
1868
+ },
1869
+ {
1870
+ "if": {
1871
+ "properties": {
1872
+ "inputs": {
1873
+ "required": [
1874
+ "audio"
1875
+ ]
1876
+ }
1877
+ },
1878
+ "required": [
1879
+ "inputs"
1880
+ ]
1881
+ },
1882
+ "then": {
1883
+ "properties": {
1884
+ "positivePrompt": {
1885
+ "maxLength": 5000
1886
+ },
1887
+ "fps": {
1888
+ "const": 24
1889
+ }
1890
+ },
1891
+ "oneOf": [
1892
+ {
1893
+ "properties": {
1894
+ "width": {
1895
+ "const": 1920
1896
+ },
1897
+ "height": {
1898
+ "const": 1080
1899
+ }
1900
+ }
1901
+ },
1902
+ {
1903
+ "properties": {
1904
+ "width": {
1905
+ "const": 1080
1906
+ },
1907
+ "height": {
1908
+ "const": 1920
1909
+ }
1910
+ }
1911
+ }
1912
+ ]
1913
+ }
1914
+ }
1915
+ ],
1916
+ "additionalProperties": false
1917
+ },
1918
+ {
1919
+ "type": "object",
1920
+ "properties": {
1921
+ "model": {
1922
+ "title": "Model",
1923
+ "description": "Identifier of the model to use for generation.",
1924
+ "type": "string",
1925
+ "const": "lightricks:ltx@2.3-fast"
1926
+ },
1927
+ "inputs": {
1928
+ "title": "Inputs",
1929
+ "description": "The unified payload wrapper for complex media assets dictating image, video or audio inference constraints.",
1930
+ "type": "object",
1931
+ "properties": {
1932
+ "frameImages": {
1933
+ "title": "Frame Images",
1934
+ "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.",
1935
+ "type": "array",
1936
+ "minItems": 1,
1937
+ "items": {
1938
+ "anyOf": [
1939
+ {
1940
+ "title": "Image",
1941
+ "description": "Image input (UUID, URL, Data URI, or Base64).",
1942
+ "type": "string",
1943
+ "anyOf": [
1944
+ {
1945
+ "format": "uuid"
1946
+ },
1947
+ {
1948
+ "format": "uri"
1949
+ },
1950
+ {
1951
+ "pattern": "^data:image\\/[a-zA-Z]+;base64,[a-zA-Z0-9+/=]+$"
1952
+ },
1953
+ {
1954
+ "pattern": "^[a-zA-Z0-9+/=]+$"
1955
+ }
1956
+ ]
1957
+ },
1958
+ {
1959
+ "type": "object",
1960
+ "properties": {
1961
+ "image": {
1962
+ "title": "Image",
1963
+ "description": "Image input (UUID, URL, Data URI, or Base64).",
1964
+ "type": "string",
1965
+ "anyOf": [
1966
+ {
1967
+ "format": "uuid"
1968
+ },
1969
+ {
1970
+ "format": "uri"
1971
+ },
1972
+ {
1973
+ "pattern": "^data:image\\/[a-zA-Z]+;base64,[a-zA-Z0-9+/=]+$"
1974
+ },
1975
+ {
1976
+ "pattern": "^[a-zA-Z0-9+/=]+$"
1977
+ }
1978
+ ]
1979
+ },
1980
+ "frame": {
1981
+ "title": "Frame",
1982
+ "description": "Target frame position for the image. This model only supports the first frame.",
1983
+ "oneOf": [
1984
+ {
1985
+ "const": "first",
1986
+ "description": "First frame of the video."
1987
+ },
1988
+ {
1989
+ "const": 0,
1990
+ "description": "Frame index 0 (first frame)."
1991
+ }
1992
+ ]
1993
+ }
1994
+ },
1995
+ "required": [
1996
+ "image"
1997
+ ],
1998
+ "additionalProperties": false
1999
+ }
2000
+ ]
2001
+ },
2002
+ "maxItems": 1
2003
+ }
2004
+ },
2005
+ "additionalProperties": false
2006
+ },
2007
+ "positivePrompt": {
2008
+ "title": "Positive Prompt",
2009
+ "description": "Text prompt describing elements to include in the generated output.",
2010
+ "type": "string",
2011
+ "minLength": 2,
2012
+ "maxLength": 10000
2013
+ },
2014
+ "width": {
2015
+ "title": "Width",
2016
+ "description": "Width of the generated media in pixels.",
2017
+ "type": "integer"
2018
+ },
2019
+ "height": {
2020
+ "title": "Height",
2021
+ "description": "Height of the generated media in pixels.",
2022
+ "type": "integer"
2023
+ },
2024
+ "duration": {
2025
+ "title": "Duration",
2026
+ "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).",
2027
+ "type": "number",
2028
+ "default": 6
2029
+ },
2030
+ "fps": {
2031
+ "title": "FPS",
2032
+ "description": "Frames per second for video generation. Higher values create smoother motion but require more processing time.",
2033
+ "type": "integer",
2034
+ "enum": [
2035
+ 24,
2036
+ 25,
2037
+ 48,
2038
+ 50
2039
+ ],
2040
+ "default": 25
2041
+ },
2042
+ "settings": {
2043
+ "title": "Settings",
2044
+ "description": "Global inference settings.",
2045
+ "type": "object",
2046
+ "properties": {
2047
+ "audio": {
2048
+ "title": "Audio",
2049
+ "description": "Generate synchronized audio.",
2050
+ "type": "boolean",
2051
+ "default": true
2052
+ }
2053
+ },
2054
+ "additionalProperties": false
2055
+ },
2056
+ "taskType": {
2057
+ "title": "Task Type",
2058
+ "description": "Identifier for the type of task being performed",
2059
+ "type": "string",
2060
+ "const": "videoInference"
2061
+ },
2062
+ "taskUUID": {
2063
+ "title": "Task UUID",
2064
+ "description": "UUID v4 identifier for tracking tasks and matching async responses. Must be unique per task.",
2065
+ "type": "string",
2066
+ "format": "uuid"
2067
+ },
2068
+ "webhookURL": {
2069
+ "title": "Webhook URL",
2070
+ "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.",
2071
+ "type": "string",
2072
+ "format": "uri"
2073
+ },
2074
+ "includeCost": {
2075
+ "title": "Include Cost",
2076
+ "description": "Include task cost in the response.",
2077
+ "type": "boolean",
2078
+ "default": false
2079
+ },
2080
+ "numberResults": {
2081
+ "title": "Number of Results",
2082
+ "description": "Number of results to generate. Each result uses a different seed, producing variations of the same parameters.",
2083
+ "type": "integer",
2084
+ "minimum": 1,
2085
+ "default": 1,
2086
+ "maximum": 4
2087
+ },
2088
+ "uploadEndpoint": {
2089
+ "title": "Upload Endpoint",
2090
+ "description": "URL to upload content via HTTP PUT. The request body will contain the raw binary data.",
2091
+ "type": "string",
2092
+ "format": "uri"
2093
+ },
2094
+ "ttl": {
2095
+ "title": "TTL",
2096
+ "description": "Time-to-live (TTL) in seconds for generated content. Only applies when `outputType` is `URL`.",
2097
+ "type": "integer",
2098
+ "minimum": 60
2099
+ },
2100
+ "outputType": {
2101
+ "title": "Output Type",
2102
+ "description": "Video output type.",
2103
+ "type": "string",
2104
+ "enum": [
2105
+ "URL"
2106
+ ],
2107
+ "default": "URL"
2108
+ },
2109
+ "outputFormat": {
2110
+ "title": "Output Format",
2111
+ "description": "File format for the generated video.",
2112
+ "type": "string",
2113
+ "enum": [
2114
+ "MP4",
2115
+ "WEBM",
2116
+ "MOV"
2117
+ ],
2118
+ "default": "MP4"
2119
+ },
2120
+ "outputQuality": {
2121
+ "title": "Output Quality",
2122
+ "description": "Compression quality of the output. Higher values preserve quality but increase file size.",
2123
+ "type": "integer",
2124
+ "minimum": 20,
2125
+ "maximum": 99,
2126
+ "default": 95
2127
+ },
2128
+ "deliveryMethod": {
2129
+ "title": "Delivery Method",
2130
+ "description": "Determines how the API delivers task results.",
2131
+ "type": "string",
2132
+ "oneOf": [
2133
+ {
2134
+ "const": "async",
2135
+ "description": "Returns an immediate acknowledgment with the task UUID. Poll for results using getResponse. Required for long-running tasks like video generation."
2136
+ }
2137
+ ],
2138
+ "default": "async"
2139
+ },
2140
+ "safety": {
2141
+ "type": "object",
2142
+ "title": "Safety Settings",
2143
+ "description": "Content safety checking configuration for video generation.",
2144
+ "properties": {
2145
+ "checkContent": {
2146
+ "title": "Check Content",
2147
+ "description": "Enable or disable content safety checking. When enabled, defaults to `fast` mode.",
2148
+ "type": "boolean",
2149
+ "default": false
2150
+ },
2151
+ "mode": {
2152
+ "description": "Safety checking mode for video generation.",
2153
+ "type": "string",
2154
+ "oneOf": [
2155
+ {
2156
+ "const": "none",
2157
+ "title": "None",
2158
+ "description": "Disables checking."
2159
+ },
2160
+ {
2161
+ "const": "fast",
2162
+ "title": "Fast",
2163
+ "description": "Checks key frames."
2164
+ },
2165
+ {
2166
+ "const": "full",
2167
+ "title": "Full",
2168
+ "description": "Checks all frames."
2169
+ }
2170
+ ],
2171
+ "default": "none"
2172
+ }
2173
+ },
2174
+ "additionalProperties": false
2175
+ }
2176
+ },
2177
+ "required": [
2178
+ "positivePrompt",
2179
+ "taskType",
2180
+ "taskUUID",
2181
+ "model"
2182
+ ],
2183
+ "allOf": [
2184
+ {
2185
+ "dependentRequired": {
2186
+ "width": [
2187
+ "height"
2188
+ ],
2189
+ "height": [
2190
+ "width"
2191
+ ]
2192
+ }
2193
+ },
2194
+ {
2195
+ "oneOf": [
2196
+ {
2197
+ "title": "1080p (16:9)",
2198
+ "properties": {
2199
+ "width": {
2200
+ "const": 1920
2201
+ },
2202
+ "height": {
2203
+ "const": 1080
2204
+ }
2205
+ }
2206
+ },
2207
+ {
2208
+ "title": "1440p (16:9)",
2209
+ "properties": {
2210
+ "width": {
2211
+ "const": 2560
2212
+ },
2213
+ "height": {
2214
+ "const": 1440
2215
+ }
2216
+ }
2217
+ },
2218
+ {
2219
+ "title": "4K (16:9)",
2220
+ "properties": {
2221
+ "width": {
2222
+ "const": 3840
2223
+ },
2224
+ "height": {
2225
+ "const": 2160
2226
+ }
2227
+ }
2228
+ },
2229
+ {
2230
+ "title": "1080p (9:16)",
2231
+ "properties": {
2232
+ "width": {
2233
+ "const": 1080
2234
+ },
2235
+ "height": {
2236
+ "const": 1920
2237
+ }
2238
+ }
2239
+ },
2240
+ {
2241
+ "title": "1440p (9:16)",
2242
+ "properties": {
2243
+ "width": {
2244
+ "const": 1440
2245
+ },
2246
+ "height": {
2247
+ "const": 2560
2248
+ }
2249
+ }
2250
+ },
2251
+ {
2252
+ "title": "4K (9:16)",
2253
+ "properties": {
2254
+ "width": {
2255
+ "const": 2160
2256
+ },
2257
+ "height": {
2258
+ "const": 3840
2259
+ }
2260
+ }
2261
+ }
2262
+ ]
2263
+ },
2264
+ {
2265
+ "if": {
2266
+ "not": {
2267
+ "properties": {
2268
+ "inputs": {
2269
+ "properties": {
2270
+ "frameImages": {
2271
+ "minItems": 1
2272
+ }
2273
+ },
2274
+ "required": [
2275
+ "frameImages"
2276
+ ]
2277
+ }
2278
+ },
2279
+ "required": [
2280
+ "inputs"
2281
+ ]
2282
+ }
2283
+ },
2284
+ "then": {
2285
+ "required": [
2286
+ "width",
2287
+ "height"
2288
+ ]
2289
+ }
2290
+ },
2291
+ {
2292
+ "if": {
2293
+ "properties": {
2294
+ "fps": {
2295
+ "enum": [
2296
+ 24,
2297
+ 25
2298
+ ]
2299
+ }
2300
+ },
2301
+ "anyOf": [
2302
+ {
2303
+ "properties": {
2304
+ "width": {
2305
+ "const": 1920
2306
+ },
2307
+ "height": {
2308
+ "const": 1080
2309
+ }
2310
+ }
2311
+ },
2312
+ {
2313
+ "properties": {
2314
+ "width": {
2315
+ "const": 1080
2316
+ },
2317
+ "height": {
2318
+ "const": 1920
2319
+ }
2320
+ }
2321
+ }
2322
+ ]
2323
+ },
2324
+ "then": {
2325
+ "properties": {
2326
+ "duration": {
2327
+ "enum": [
2328
+ 6,
2329
+ 8,
2330
+ 10,
2331
+ 12,
2332
+ 14,
2333
+ 16,
2334
+ 18,
2335
+ 20
2336
+ ]
2337
+ }
2338
+ }
2339
+ },
2340
+ "else": {
2341
+ "properties": {
2342
+ "duration": {
2343
+ "enum": [
2344
+ 6,
2345
+ 8,
2346
+ 10
2347
+ ]
2348
+ }
2349
+ }
2350
+ }
2351
+ }
2352
+ ],
2353
+ "additionalProperties": false
2354
+ }
2355
+ ]
2356
+ }