Saltar para o conteúdo principal
POST
/
video
/
generations
Submete uma tarefa de vídeo
curl --request POST \
  --url https://api.orcarouter.ai/v1/video/generations \
  --header 'Authorization: Bearer <token>' \
  --header 'Content-Type: application/json' \
  --data '
{
  "model": "kling/kling-v3-omni",
  "prompt": "<string>",
  "image": "<string>",
  "metadata": {}
}
'
{
  "id": "<string>",
  "task_id": "<string>",
  "model": "<string>",
  "progress": 50,
  "created_at": 123
}

Autorizações

Authorization
string
header
obrigatório

As chaves de API do OrcaRouter têm o formato sk-orca-.... Passe-as no cabeçalho Authorization: Bearer sk-orca-....

Corpo

application/json

Escolha a variante correspondente ao prefixo do seu model:

  • kling/...Kling video request
  • byteplus/...Seedance video request
model
enum<string>
obrigatório

Modelo de vídeo Kling (nome voltado ao cliente com prefixo de namespace kling/). O endpoint que o Kling realmente serve (text2video / image2video / omni-video) é determinado pelos campos de metadata que você passa, não por qual nome de modelo você escolhe — mas apenas kling/kling-video-o1 e kling/kling-v3-omni aceitam os campos de referência multi-fonte (image_list / video_list).

Opções disponíveis:
kling/kling-v2-master,
kling/kling-v2-1-master,
kling/kling-v2-5-turbo,
kling/kling-v2-6,
kling/kling-v3,
kling/kling-video-o1,
kling/kling-v3-omni
Exemplo:

"kling/kling-v3-omni"

prompt
string
obrigatório

Obrigatório. O Kling rejeita prompts vazios / apenas com espaços em branco.

image
string

Imagem opcional de primeiro frame para image-to-video (URL ou URI de dados base64). Mutuamente informativa com metadata.image_tail.

metadata
object

Saco de parâmetros de forma livre honrado pelo Kling.

Universal (todos os endpoints):

  • mode (string): std (720P) / pro (1080P) / 4k. 4k apenas em kling/kling-v3 e kling/kling-v3-omni. O padrão é std para text/image-to-video, pro para Omni-Video.
  • aspect_ratio (string): 16:9 / 9:16 / 1:1.
  • duration (string): Duração em segundos, padrão "5". kling/kling-v3-omni e kling/kling-v3 aceitam "3"-"15"; família v2 e kling/kling-video-o1 aceitam "5" ou "10".

Apenas text-to-video e image-to-video (NÃO Omni-Video):

  • negative_prompt (string): Coisas a evitar. Máx. 2500 caracteres.
  • cfg_scale (number): Faixa [0, 1], padrão 0.5. Maior = adesão mais estrita ao prompt. Não suportado em modelos v2.x.
  • image_tail (string): Imagem de último frame para image-to-video primeiro/último frame.

Referência multi-fonte (endpoint Omni, apenas kling/kling-video-o1 / kling/kling-v3-omni):

  • image_list (array): [{image_url, type}] — referência multi-imagem. Referencie imagens no prompt com <<<image_1>>> etc.
  • video_list (array): [{video_url, refer_type, keep_original_sound}]. Em kling/kling-v3-omni limitado a 3-10s e modo std/pro (não 4K).

Recursos avançados (dependentes do modelo — veja Mapa de Capacidades):

  • multi_shot (bool) + shot_type (customize / intelligence)
    • multi_prompt ([{index, prompt, duration}]): modo multi-shot. Disponível em kling/kling-v3 e kling/kling-v3-omni.
  • sound (string): "on" / "off" — áudio nativo. Disponível em kling/kling-v3 e kling/kling-v3-omni (qualquer modo) e kling/kling-v2-6 (apenas modo pro).
  • watermark_info (object): {enabled: bool}. Universal.

Resposta

200 - application/json

Tarefa aceita (assíncrona — faça polling em /v1/video/generations/{task_id})

Resposta de submit no estilo OpenAI. Retornada por POST /v1/video/generations (e o alias simétrico da OpenAI POST /v1/videos).

id
string

ID da tarefa. Mesmo valor que task_id (mantido para clientes legados).

task_id
string
object
enum<string>
Opções disponíveis:
video
model
string

Nome do modelo como o cliente enviou (alias / prefixo de namespace preservado, não o nome resolvido upstream).

status
enum<string>

Sempre queued em um submit bem-sucedido.

Opções disponíveis:
queued
progress
integer
Intervalo necessário: 0 <= x <= 100
created_at
integer

Timestamp Unix de quando a tarefa foi submetida.