Vídeo
Kling 3.0 Turbo
POST
Kling 3.0 Turbo
Os parâmetros e o modo de uso estão alinhados ao oficial; para parâmetros detalhados, consulte diretamente a documentação oficial.
Campos da requisição:
Após a criação bem-sucedida, retorna o ID da tarefa:
Salve
Use a mesma API Key usada ao criar a tarefa. Também é possível consultar pelo ID de tarefa personalizado usando
Quando a tarefa é bem-sucedida, retorna:
O nível de preço é determinado apenas por
Campos da requisição:
Quando a criação é bem-sucedida, retorna:
Ao consultar usando
Quando a tarefa é bem-sucedida, o endereço do vídeo está em
Quando
O nível de preço é determinado apenas por
Códigos de status comuns: 400/1200 (parâmetros ou tipo de conteúdo inválidos; ajuste conforme
1. Visão geral
Este documento explica como usar as capacidades de geração de vídeo a partir de texto e a partir de imagem por meio do protocolo nativo do Kling 3.0 Turbo. O Turbo usa o mesmo protocolo nativo do Kling 3.0 padrão, com estruturas de requisição e resposta idênticas, diferindo apenas no escopo de recursos, nos níveis de resolução e na cobrança. Ambas as capacidades usam o modo de tarefa assíncrona:- Chame o endpoint de criação correspondente.
- Salve o
data.idpresente na resposta da criação. - Use a mesma API Key usada ao criar a tarefa para consultar o status.
- Após o sucesso da tarefa, obtenha e salve o vídeo gerado em
outputs.
1.1 Endereços dos endpoints
O endereço completo nos exemplos deste documento é
https://{api_domain} somado ao caminho do endpoint na tabela, em que {api_domain} é o domínio da API que você usa. O Turbo oferece apenas geração de vídeo a partir de texto e a partir de imagem; não suporta vídeo Omni nem controle de movimento.
1.2 Autenticação
Todas as requisições precisam incluir a API Key. Requisições POST também devem especificar o tipo de conteúdo JSON:1.3 Estrutura da resposta
Na resposta de criação,data é um objeto. Os campos comuns são id (ID da tarefa gerado pelo sistema Kling, usado para consultas posteriores), external_id (refere-se ao options.external_task_id; pode não ser retornado quando não configurado) e status (status da tarefa após a criação, normalmente submitted).
Na resposta da consulta, data é um array. Cada tarefa contém id, external_id, status (submitted, processing, succeeded ou failed), message, create_time, update_time e outputs. Os campos comuns dos resultados de vídeo em outputs são type, id, url, watermark_url e duration. url é o endereço do resultado sem marca d’água; watermark_url é o endereço do resultado com marca d’água; duration é a duração do vídeo em segundos.
2. Texto para vídeo
2.1 Criar tarefa
Vídeos com múltiplas cenas são implementados pelo formato fixo do
prompt: “镜头 n, m, words; 镜头 n, m, words;” (separados por ponto e vírgula ASCII). Onde n é o número da cena (mínimo 1, máximo 6), m é a duração da cena (cada uma não inferior a 1, e a soma das durações de todas as cenas é igual à duração total do vídeo), e words é o prompt da cena (máximo de 512 caracteres).
2.2 Exemplo de criação
data.id. Quando options.external_task_id não for enviado, data.external_id pode não ser retornado.
2.3 Consultar tarefa
external_task_ids. Em cada chamada, informe exatamente um dos parâmetros task_ids ou external_task_ids; ambos aceitam de 1 a 50 IDs separados por vírgula em inglês. Na resposta, data é um array e mantém a ordem dos IDs informados.
2.4 Exemplo de consulta
status=processing indica que a tarefa ainda está em execução; recomenda-se consultar a cada 10–30 segundos. status=failed indica que a tarefa falhou; não continue fazendo polling. Após o sucesso, salve imediatamente o arquivo correspondente a outputs[type=video].url; o endereço de download pode ter prazo de validade.
2.5 Descrição de cobrança
settings.resolution (720p ou 1080p). Se duration não for informado, a cobrança é feita pelos 5 segundos padrão. Ao criar a tarefa, o valor é cobrado com base na duração solicitada; se a criação da tarefa falhar ou a geração final falhar, o valor é estornado automaticamente. O preço unitário específico deve ser consultado na página de preços do serviço que você utiliza.
3. Imagem para vídeo
3.1 Criar tarefa
As imagens aceitas são
.jpg, .jpeg e .png; o arquivo não pode exceder 50 MB, a largura e a altura não podem ser inferiores a 300 pixels, e a proporção de aspecto deve estar entre 1:2.5 e 2.5:1. A geração de vídeo a partir de imagem suporta apenas imagem do primeiro quadro; por enquanto, não suporta “primeiro quadro + último quadro” nem “somente último quadro”. options.callback_url também pode ser enviado, com o mesmo uso do texto para vídeo. Vídeos com múltiplas cenas também são implementados pelo formato fixo do prompt.
3.2 Exemplo de criação
3.3 Consultar tarefa
Use odata.id da resposta de criação para consultar a tarefa:
task_ids, use a mesma API Key usada na criação da tarefa. Também é possível consultar pelo options.external_task_id informado na criação usando external_task_ids. O parâmetro de consulta aceita de 1 a 50 IDs separados por vírgula em inglês.
3.4 Exemplo de consulta
outputs[type=video].url:
status=processing, recomenda-se continuar consultando a cada 10–30 segundos. Quando status=failed, pare o polling e ajuste a entrada com base na mensagem de erro.
3.5 Descrição de cobrança
settings.resolution (720p ou 1080p). Se duration não for informado, a cobrança é feita pelos 5 segundos padrão. Ao criar a tarefa, o valor é cobrado com base na duração solicitada; se a criação da tarefa falhar ou a geração final falhar, o valor é estornado automaticamente. O preço unitário específico deve ser consultado na página de preços do serviço que você utiliza.
4. Erros comuns e observações
Erros da API seguem a seguinte estrutura:message), 401/1000 (API Key ausente ou inválida), 403/1103 (sem permissão para executar), 404/1203 (tarefa inexistente ou sem permissão para consultar), 429/1302 (requisições frequentes demais; reduza a frequência e use backoff exponencial), 500/5000, 503/5001, 504/5002 (serviço anormal ou timeout; tente novamente mais tarde e evite reenvios descontrolados). Se message contiver trace_id, forneça-o ao contatar o suporte técnico.
Outras observações:
- O corpo da requisição não precisa incluir
modeloumodel_name; a versão do modelo já está contida na URL. - Após criar a tarefa, persista
data.id; não userequest_idcomo ID da tarefa. - O corpo de uma única requisição tem o limite de 64 MB; para imagens grandes, recomenda-se usar uma URL pública acessível pela Kling.
- As URLs dos materiais de entrada precisam ser publicamente acessíveis pela Kling; não podem depender de rede interna, cookies ou estado de login temporário.
- No endpoint de consulta, use intervalo de polling de 10–30 segundos e configure um timeout global e backoff exponencial.
- O timeout de um POST não significa necessariamente que a tarefa não foi criada; primeiro consulte usando
external_task_ide então decida se deve tentar novamente. - Assim que receber o status de sucesso, salve imediatamente o arquivo correspondente a
outputs[type=video].url; a URL do resultado pode expirar.
5. Exemplo de chamada em Python
O exemplo a seguir usa a biblioteca padrãorequests e demonstra a criação e o polling de uma tarefa de texto para vídeo. Para imagem para vídeo, basta substituir o endpoint de criação e o corpo da requisição.
Última modificação em 15 de outubro de 2026