Modelos de vídeoUsuários avançadosAtualizado em
POST/v1/videos/generations

Console da API

POST/v1/videos/generations
Ver chaves

As requisições usam a chave informada e seguem a cobrança padrão da API.

Kling 4.0 Flash

ID da solicitação kling-v4-flash

Protocolos

Autenticação

Obtenha uma chave em Gerenciar chaves de API. Para requisições JSON, defina Content-Type: application/json.

  • Authorization: Bearer YOUR_API_KEY

Parâmetros da requisição

POST /v1/videos/generations

CampoTipoObrigatórioDescrição
modelstringObrigatóriokling-v4-flash. Use o ID do modelo indicado nesta página.
promptstringCondicionalDescreva a cena, a ação e o movimento de câmera. Obrigatório na geração por texto ou referência. Opcional com primeiro quadro.
contentarray<object>CondicionalLista de mídias de referência e texto opcional. Omita ao gerar apenas com prompt. Até 10 imagens. O modo de referência aceita até cinco vídeos de 3–20 segundos, com até 20 segundos no total. Edição ou extensão usa um vídeo. Na extensão, envie apenas o vídeo e omita as imagens.
content[].typestringObrigatórioValores aceitos: text, image_url, input_image, video_url, input_video.
content[].textstringCondicionalInforme o prompt quando o item tiver type: "text".
content[].rolestringCondicionalUse first_frame na imagem inicial. Use reference_image em imagens de referência comuns. Use reference_video nas entradas de vídeo.
content[].asset_idstringCondicionalEnvie a mídia para POST /v1/videos/assets e use o id retornado. No formulário multipart, envie kind (image, video) antes de file.
resolutionstringOpcionalValores aceitos: 720p. Padrão: 720p.
ratiostringOpcionalProporção de saída. Também aceita o alias aspect_ratio. Valores aceitos: 16:9, 9:16, 1:1, 21:9. O modo de referência também aceita auto, seu padrão. Omita na extensão. A geração por texto usa 16:9 por padrão. Omita no modo de primeiro quadro. A saída segue a proporção da imagem.
durationintegerOpcionalDuração de saída em segundos. Aceita segundos inteiros de 3 a 20. Se omitido na edição, a duração segue o vídeo de origem. Os outros modos usam 5 segundos por padrão. Na extensão, indica a duração acrescentada.
generate_audiobooleanOpcionalO áudio é sempre gerado. Omita ou use true.
omni_reference_task_typestringOpcionalValores aceitos: auto, reference, edit, extend. O padrão auto determina o modo pela mídia de entrada. edit e extend exigem um vídeo.

Exemplos de requisição

Defina a chave de API na variável de ambiente local ICODEEASY_API_KEY e escolha um endpoint que aceite chamadas HTTP diretas. Caso o endpoint exija um cliente específico, siga o guia de configuração desse cliente.

Substitua as URLs e os IDs de mídia dos exemplos por ativos válidos.

Video Generations

bash
curl -sS 'https://api.icodeeasy.cc/v1/videos/generations' \
  -H "Authorization: Bearer $ICODEEASY_API_KEY" \
  -H 'Content-Type: application/json' \
  --data '{
  "model": "kling-v4-flash",
  "prompt": "Slow camera push toward a paper lantern swaying gently by a lake.",
  "resolution": "720p",
  "ratio": "16:9",
  "duration": 5,
  "generate_audio": true
}'

Video Generations · Primeiro quadro

bash
curl -sS 'https://api.icodeeasy.cc/v1/videos/generations' \
  -H "Authorization: Bearer $ICODEEASY_API_KEY" \
  -H 'Content-Type: application/json' \
  --data '{
  "model": "kling-v4-flash",
  "prompt": "Slow camera push toward a paper lantern swaying gently by a lake.",
  "resolution": "720p",
  "duration": 5,
  "generate_audio": true,
  "content": [
    {
      "type": "image_url",
      "role": "first_frame",
      "asset_id": "YOUR_FIRST_FRAME_ASSET_ID"
    }
  ]
}'

Video Generations · Vídeo de referência

bash
curl -sS 'https://api.icodeeasy.cc/v1/videos/generations' \
  -H "Authorization: Bearer $ICODEEASY_API_KEY" \
  -H 'Content-Type: application/json' \
  --data '{
  "model": "kling-v4-flash",
  "prompt": "Match the camera motion from the reference video in a lakeside lantern scene.",
  "resolution": "720p",
  "ratio": "16:9",
  "duration": 5,
  "generate_audio": true,
  "omni_reference_task_type": "reference",
  "content": [
    {
      "type": "video_url",
      "role": "reference_video",
      "asset_id": "YOUR_VIDEO_ASSET_ID"
    }
  ]
}'

Video Generations · Editar vídeo

bash
curl -sS 'https://api.icodeeasy.cc/v1/videos/generations' \
  -H "Authorization: Bearer $ICODEEASY_API_KEY" \
  -H 'Content-Type: application/json' \
  --data '{
  "model": "kling-v4-flash",
  "prompt": "Preserve the subject and change the setting to a lakeside at dusk.",
  "resolution": "720p",
  "ratio": "16:9",
  "duration": 5,
  "generate_audio": true,
  "omni_reference_task_type": "edit",
  "content": [
    {
      "type": "video_url",
      "role": "reference_video",
      "asset_id": "YOUR_VIDEO_ASSET_ID"
    }
  ]
}'

Video Generations · Estender vídeo

bash
curl -sS 'https://api.icodeeasy.cc/v1/videos/generations' \
  -H "Authorization: Bearer $ICODEEASY_API_KEY" \
  -H 'Content-Type: application/json' \
  --data '{
  "model": "kling-v4-flash",
  "prompt": "Continue the motion as the camera glides farther over the lake.",
  "resolution": "720p",
  "duration": 5,
  "generate_audio": true,
  "omni_reference_task_type": "extend",
  "content": [
    {
      "type": "video_url",
      "role": "reference_video",
      "asset_id": "YOUR_VIDEO_ASSET_ID"
    }
  ]
}'

Consultar tarefa de vídeo

bash
curl -sS 'https://api.icodeeasy.cc/v1/videos/tasks/YOUR_TASK_ID' \
  -H "Authorization: Bearer $ICODEEASY_API_KEY"

Baixar vídeo

bash
curl -sS 'https://api.icodeeasy.cc/v1/videos/tasks/YOUR_TASK_ID/content' \
  -H "Authorization: Bearer $ICODEEASY_API_KEY" \
  -L \
  -o result.mp4

Excluir tarefa de vídeo encerrada

bash
curl -sS 'https://api.icodeeasy.cc/v1/videos/tasks/YOUR_TASK_ID' \
  -H "Authorization: Bearer $ICODEEASY_API_KEY" \
  -i \
  -X DELETE

Enviar mídia

bash
curl -sS 'https://api.icodeeasy.cc/v1/videos/assets' \
  -H "Authorization: Bearer $ICODEEASY_API_KEY" \
  -F 'kind=image' \
  -F '[email protected];type=image/png'

Enviar mídia · Enviar vídeo

bash
curl -sS 'https://api.icodeeasy.cc/v1/videos/assets' \
  -H "Authorization: Bearer $ICODEEASY_API_KEY" \
  -F 'kind=video' \
  -F '[email protected];type=video/mp4'

Excluir mídia

bash
curl -sS 'https://api.icodeeasy.cc/v1/videos/assets/YOUR_ASSET_ID' \
  -H "Authorization: Bearer $ICODEEASY_API_KEY" \
  -i \
  -X DELETE

Respostas e tarefas

HTTP 202 · Tarefa aceita

json
{
  "id": "vid_1785398400000000000",
  "object": "video.generation.job",
  "model": "kling-v4-flash",
  "created_at": "2026-07-30T08:00:00Z",
  "status_url": "/v1/videos/tasks/vid_1785398400000000000",
  "content_url": "/v1/videos/tasks/vid_1785398400000000000/content",
  "status": "queued",
  "updated_at": "2026-07-30T08:00:00Z",
  "task_id": "vid_1785398400000000000"
}

HTTP 200 · Consulta de tarefa concluída

json
{
  "id": "vid_1785398400000000000",
  "object": "video.generation.job",
  "model": "kling-v4-flash",
  "created_at": "2026-07-30T08:00:00Z",
  "status_url": "/v1/videos/tasks/vid_1785398400000000000",
  "content_url": "/v1/videos/tasks/vid_1785398400000000000/content",
  "status": "succeeded",
  "updated_at": "2026-07-30T08:01:00Z",
  "url": "/v1/videos/tasks/vid_1785398400000000000/content"
}

Guarde id. Com a mesma chave de API, envie requisições GET a status_url até status indicar succeeded ou failed. Em caso de sucesso, baixe o vídeo por content_url e siga os redirecionamentos HTTP. Os dois caminhos são relativos à URL base da API.

CampoTipoDescrição
id / task_idstringID da tarefa. Na resposta de criação, task_id é igual a id.
statusstringEstado da tarefa: queued, running, succeeded ou failed.
progressintegerProgresso da geração. O campo é omitido quando o valor está indisponível.
error.codestringClassificação do erro para tarefas com falha.

Erros comuns

HTTPTipo de erroDescrição
400invalid_requestConfira o modelo, a combinação de parâmetros e a mídia de referência.
401unauthorizedConfira se a chave de API está ausente, inválida ou desativada.
402insufficient_balanceO saldo é insuficiente para enviar a tarefa.
404not_foundSe a consulta retornar 404, guarde o ID da tarefa e confira o URL de consulta e a chave da conta que criou a tarefa. Ela pode já ter sido concluída. Não reenvie com base apenas nessa resposta.
409video_not_readyO vídeo ainda está em geração. Continue consultando o status.
503submission_unknownO resultado do envio é desconhecido. Confirme com o suporte se a tarefa foi criada antes de enviar outra requisição.

Guia completo de integração · Consulte o guia completo da API para ver os campos, estados de tarefas e formatos de resposta.

Recursos e limites

  • text_to_video · Compatível
  • image_to_video · Compatível
  • first_frame · Compatível
  • last_frame · Não compatível
  • reference_images · Compatível
  • video_input · Compatível
  • audio · Compatível
  • Limites Resoluções: 720p · Proporções: 16:9, 9:16, 1:1, 21:9 · Durações: 3, 4, 5, 6, 7, 8, 9, 10, 11, 12, 13, 14, 15, 16, 17, 18, 19, 20 · Imagens de referência: até 10 · Entrada: One first frame follows its image ratio. Reference: up to five videos, each 3–20 seconds, 20 seconds total. Edit or extend one video.

Catálogo de recursos dos modelos · Ver preços