Processo de Solicitação
Para usar a API de Geração de Vídeos Kling, primeiro acesse o Console Ace Data Cloud para obter seu Token de API, que deve ser guardado para uso futuro.
Se você ainda não estiver logado ou registrado, será redirecionado automaticamente para a página de login, onde será convidado a se registrar e fazer login. Após a conclusão, você será redirecionado de volta para a página atual.
Um Token de API é suficiente para acessar todos os serviços da plataforma, não sendo necessário solicitar um para cada serviço individualmente. A primeira solicitação oferece um crédito gratuito para que você possa experimentar; quando o crédito estiver baixo, você pode recarregar o saldo geral no console.
📘 Documentação Completa: API de Geração de Vídeos Kling →
Uso Básico
Primeiro, entenda a forma básica de uso, que consiste em inserir a palavra-chaveprompt, a ação action, a imagem de referência do primeiro quadro start_image_url e o modelo model, para obter o resultado processado. Primeiro, é necessário passar um campo action, cujo valor é text2video, que inclui três ações principais: vídeo gerado por texto (text2video), vídeo gerado por imagem (image2video), e vídeo expandido (extend). Em seguida, precisamos inserir o modelo model, que atualmente inclui os modelos kling-v1, kling-v1-6, kling-v2-master, kling-v2-1-master, kling-v2-5-turbo, kling-v2-6, kling-v3, kling-v3-omni, kling-o1, conforme detalhado abaixo:

accept: o formato de resposta desejado, que deve ser preenchido comoapplication/json, ou seja, formato JSON.authorization: a chave para chamar a API, que pode ser selecionada diretamente após a solicitação.
model: o modelo para gerar o vídeo, que incluikling-v1,kling-v1-6,kling-v2-master,kling-v2-1-master,kling-v2-5-turbo,kling-v2-6,kling-v3,kling-v3-omni,kling-o1.mode: o modo de geração do vídeo, com opções de modo padrãostd, modo rápidoproe modo nativo 4K4k. O4ké suportado apenas porkling-v3ekling-v3-omni, e não é compatível comcamera_control(controle de câmera).action: a ação da tarefa de geração de vídeo, que inclui três ações: vídeo gerado por texto (text2video), vídeo gerado por imagem (image2video), e vídeo expandido (extend).start_image_url: quando a ação de vídeo gerado por imagem (image2video) é escolhida, é necessário fornecer o link da imagem de referência do primeiro quadro.end_image_url: opcional ao gerar vídeo por imagem, especifica o quadro final.duration: duração do vídeo, em segundos.kling-v3ekling-v3-omnisuportam durações inteiras de 3 a 15 segundos;kling-o1suporta apenas 5 segundos; outros modelos suportam 5 ou 10 segundos.generate_audio: se deve gerar áudio sincronizado, opcional, valor booleano. Suportakling-v3,kling-v3-omniekling-v2-6(apenas no modo pro). O padrão éfalse.aspect_ratio: proporção do vídeo, opcional, suporta16:9,9:16,1:1, padrão16:9.cfg_scale: intensidade de correlação, intervalo [0,1], quanto maior, mais próximo do prompt.camera_control: opcional, parâmetros para controlar o movimento da câmera, suporta predefinições type/simple e configurações como horizontal, vertical, pan, tilt, roll, zoom, etc.negative_prompt: opcional, palavras-chave inversas que não devem aparecer, máximo de 200 caracteres.image_list: lista de imagens de referência Omni, aplicável aos modeloskling-o1ekling-v3-omni, consulte a seção “Referência Omni” abaixo.video_list: lista de vídeos de referência Omni (suporta edição de vídeo), aplicável aos modeloskling-o1ekling-v3-omni, consulte a seção “Referência Omni” abaixo.prompt: palavra-chave.callback_url: URL para onde os resultados devem ser retornados.async: opcional, se definido comotrue, a interface retorna imediatamentetask_id, sem necessidade de fornecercallback_url, e os resultados podem ser obtidos posteriormente através da interface de consulta de tarefas correspondente.

success, o estado da tarefa de geração de vídeo.task_id, o ID da tarefa de geração de vídeo.video_id, o ID do vídeo gerado pela tarefa.video_url, o link do vídeo gerado pela tarefa.duration, a duração do vídeo gerado pela tarefa.state, o estado da tarefa de geração de vídeo.
data para obter o vídeo Kling.
Além disso, se você quiser gerar o código de integração correspondente, pode copiá-lo diretamente, como o código CURL abaixo:
Matriz de Capacidades do Modelo
Os diferentes modelos têm suporte variado para os parâmetros. A matriz abaixo foi organizada a partir da documentação oficial de modelos de vídeo da Kling, e antes de chamar, verifique se a combinação atual demodel / mode / duration suporta a funcionalidade desejada, caso contrário, a API retornará erros como model/mode/duration(...) is not supported with image_tail.
Observações:
mode=4kapenas suportado porkling-v3ekling-v3-omni; e é incompatível comcamera_control(controle de câmera).end_image_urlsó pode ser usado emaction=image2videoem conjunto comstart_image_url. Apenas passarend_image_url(semstart_image_url) será rejeitado.kling-v3/kling-v3-omniaceita qualquerdurationinteiro de 3 a 15 segundos;kling-o1aceita apenas 5; os demais modelos aceitam apenas 5 ou 10.generate_audioéfalsepor padrão. Apenaskling-v3,kling-v3-omniekling-v2-6(modo pro) suportam.
Função de extensão de vídeo
Se você deseja continuar gerando um vídeo Kling já criado, pode definir o parâmetroaction como extend e inserir o ID do vídeo que precisa ser continuado. O ID do vídeo é obtido com base no uso básico, como mostrado na imagem abaixo:

Nota: O video_id aqui é o ID do vídeo gerado. Se você não souber como gerar um vídeo, pode consultar o uso básico mencionado acima.
Em seguida, precisamos preencher os próximos prompts necessários para personalizar a geração do vídeo, podendo especificar o seguinte conteúdo:
model: o modelo para gerar o vídeo, principalmentekling-v1,kling-v1-5ekling-v1-6.mode: o modo de geração do vídeo, com valores opcionais sendo o modo padrãostd, modo rápidoproe modo nativo 4K4k(apenas suportado porkling-v3ekling-v3-omni, incompatível com controle de câmera).duration: a duração do vídeo para esta tarefa de geração, principalmente 5s e 10s.start_image_url: quando a ação escolhida éimage2video, é necessário fazer o upload do link da imagem de referência do quadro inicial.prompt: palavras-chave.


Referência Omni (edição de vídeo / vídeo de referência / referência de múltiplas imagens)
kling-o1 e kling-v3-omni são dois modelos independentes, ambos suportam a capacidade de “referência total”. Com base na geração de vídeo a partir de texto (action=text2video), é possível passar imagens de referência ou vídeos de referência adicionais, permitindo referência de múltiplas imagens, vídeos de referência e edição direta de vídeos existentes.
Convenção central: O material de referência deve ser referenciado no prompt na forma <<<image_1>>>, <<<video_1>>> (números começando de 1) para os materiais correspondentes na image_list / video_list, caso contrário, o modelo não aplicará essas referências. Se apenas passar o material sem referenciá-lo nas palavras-chave, o material será ignorado.
Aviso de segurança: A API atual não abreA solicitação Omni não suportaelement_list. O ID do Kling Element Library pertence ao namespace da conta do fornecedor, e antes de fornecer uma API de gerenciamento de elementos com isolamento de inquilinos, os clientes devem usarimage_listpara passar a imagem de referência principal.
negative_prompt, cfg_scale ou camera_control, e não pode usar mode=4k. Quando inclui vídeos de referência, generate_audio deve ser false.
Vídeo de referência e edição de vídeo (video_list)
video_list é usado para passar vídeos de referência, sendo o cenário mais comum para esta capacidade. Os campos dos elementos do array são os seguintes:
video_url: link do vídeo de referência, não pode estar vazio. Requisitos: formato MP4/MOV; resolução 720px–2160px; duração 3–10 segundos; taxa de quadros 24–60fps; tamanho do arquivo ≤200MB; no máximo 1 vídeo.refer_type: tipo de referência, pode serbase(padrão, vídeo base a ser editado, ou seja, “editar diretamente o vídeo”, podendo adicionar/remover/modificar elementos, alterar a composição, mudar o estilo, mudar a cor, mudar o clima, etc.) oufeature(referência de características, referindo-se ao seu estilo / movimento da câmera / continuidade da próxima cena).keep_original_sound: se deve manter o áudio original do vídeo, pode seryes(manter) ouno(remover).
Nota: Quando há um vídeo de referência,Exemplo de CURL para editar um vídeo existente (transformar o vídeo em estilo de anime):generate_audiodeve serfalse. Vídeos comrefer_type=basenão podem ter o primeiro quadro / último quadro especificados.
Referência de múltiplas imagens (image_list)
image_list é usado para passar imagens de referência (elementos / cenas / estilos, etc.), os campos dos elementos do array são os seguintes:
image_url: link da imagem de referência, não pode estar vazio. Requisitos: formato .jpg/.jpeg/.png; tamanho do arquivo ≤10MB; menor lado ≥300px; proporção largura-altura de 1:2.5 ~ 2.5:1.type: opcional. Se não for passado, será considerado como imagem de referência pura; se passarfirst_frame/end_frame, será considerado como primeiro quadro / último quadro (equivalente astart_image_url/end_image_url).
prompt como <<<image_1>>>, <<<image_2>>>. Limite de quantidade: se não houver vídeo de referência, imagens de referência ≤ 7; se houver vídeo de referência, imagens de referência ≤ 4. Ao passar apenas o primeiro / último quadro, também pode-se usar diretamente start_image_url / end_image_url, mas o último quadro deve ser usado junto com o primeiro quadro.
Nota: SeExemplo de CURL para gerar vídeo com referência de múltiplas imagens:start_image_url/end_image_urleimage_listforem passados ao mesmo tempo, o primeiro / último quadro será priorizado em relação aoimage_list, o que pode afetar a correspondência dos índices de<<<image_N>>>. Recomenda-se escolher um: se precisar do primeiro / último quadro, especifique diretamente noimage_listusandotype, não misture comstart_image_url/end_image_url.
Callback Assíncrono
Como a geração de vídeos pela API Kling pode levar um tempo relativamente longo, cerca de 1-2 minutos, se a API não responder por um longo período, a solicitação HTTP manterá a conexão, resultando em consumo adicional de recursos do sistema. Portanto, esta API também oferece suporte a callbacks assíncronos. O fluxo geral é: quando o cliente inicia a solicitação, deve especificar um campocallback_url adicional. Após o cliente fazer a solicitação à API, a API retornará imediatamente um resultado, contendo um campo task_id, que representa o ID da tarefa atual. Quando a tarefa for concluída, o resultado do vídeo gerado será enviado para o callback_url especificado pelo cliente em formato JSON POST, incluindo também o campo task_id, permitindo que o resultado da tarefa seja associado pelo ID.
Abaixo, vamos entender como operar isso com um exemplo.
Primeiro, o callback Webhook é um serviço que pode receber solicitações HTTP, e o desenvolvedor deve substituí-lo pela URL do servidor HTTP que ele configurou. Para facilitar a demonstração, usamos um site de exemplo de Webhook público https://webhook.site/, ao abrir este site, você obterá uma URL de Webhook, como mostrado na imagem:
Copie esta URL, que pode ser usada como Webhook, o exemplo aqui é https://webhook.site/624b2c78-6dbd-4618-9d2b-b32eade6d8c3.
Em seguida, podemos definir o campo callback_url para a URL do Webhook acima, ao mesmo tempo preenchendo os parâmetros correspondentes, conforme mostrado na imagem:

https://webhook.site/624b2c78-6dbd-4618-9d2b-b32eade6d8c3, como mostrado na imagem:
O conteúdo é o seguinte:
task_id, e os outros campos são semelhantes aos mencionados anteriormente, permitindo que a tarefa seja associada pelo ID.
Tratamento de Erros
Ao chamar a API, se ocorrer um erro, a API retornará o código e a mensagem de erro correspondentes. Por exemplo:400 token_mismatched: Solicitação inválida, possivelmente devido a parâmetros ausentes ou inválidos.400 api_not_implemented: Solicitação inválida, possivelmente devido a parâmetros ausentes ou inválidos.401 invalid_token: Não autorizado, token de autorização inválido ou ausente.429 too_many_requests: Muitas solicitações, você excedeu o limite de taxa.500 api_error: Erro interno do servidor, algo deu errado no servidor.

