Claude Opus 5.5 já está disponível no SeedRouter
LogoSeedRouter

Busque modelos pelo nome, ex.: 'nano banana'

Busque modelos pelo nome, ex.: 'nano banana'

Como usar a API do Kling 3.0: chave, requisição, consulta, quadros e multicena

Use a API do Kling 3.0 passo a passo: crie uma chave, envie uma tarefa, consulte até ter a URL, parta de primeiro e último quadro e crie clipes multicena.

Ler em Markdown

Para usar a API do Kling 3.0, crie uma chave de API, envie via POST um corpo JSON com o ID de modelo kling-3-0 e seu prompt, e consulte a tarefa retornada até a URL do vídeo ficar pronta. Um único endpoint cobre texto para vídeo, vídeo com primeiro e último quadro, clipes multicena e referências de elementos; os campos do corpo decidem qual.

Este guia percorre cada passo com código que funciona e depois mostra quadros, clipes multicena, elementos e as requisições recusadas antes de qualquer cobrança.

O que você precisa antes da primeira requisição?

  1. Uma chave de API. Crie uma na página de chaves de API e mantenha-a no seu servidor. Nunca a coloque em código do navegador.
  2. Créditos. Adicione saldo na página de cobrança. Os créditos nunca expiram, e tarefas que falham não são cobradas.
  3. O ID de modelo kling-3-0.
export SEEDROUTER_API_KEY="your-key"

Como enviar uma requisição ao Kling 3.0?

Envie a tarefa via POST para /v1/videos/generations:

curl https://api.seedrouter.ai/v1/videos/generations \
  -H "Authorization: Bearer $SEEDROUTER_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "model": "kling-3-0",
    "prompt": "A red paper boat drifting on a calm pond at sunrise, soft mist on the water, slow push-in, no text, no logos.",
    "mode": "std",
    "duration": 5,
    "aspect_ratio": "16:9"
  }'

A resposta é uma tarefa, não um vídeo:

{"id": "task_...", "model": "kling-3-0", "status": "processing", "created_at": 1789689600}

Todos os campos, exceto model e prompt, têm um valor padrão:

CampoPadrãoValores
modeprostd (720p), pro (1080p), 4K
duration5De 3 a 15 segundos
aspect_ratio16:916:9, 9:16, 1:1
soundfalsetrue gera áudio nativo

O esquema é estrito: um campo desconhecido é recusado com HTTP 400 antes de a tarefa ser criada, então um erro de digitação nunca vira um clipe pago com o ajuste ignorado em silêncio.

Como obter o vídeo?

Consulte GET /v1/tasks/{id} a cada 10–20 segundos até status ser completed ou failed. Nos nossos testes, um clipe std de 3 segundos ficou pronto em cerca de dois minutos e um clipe pro de 5 segundos com áudio, em cerca de dois minutos e meio.

import os
import time
import requests

API = "https://api.seedrouter.ai/v1"
HEADERS = {"Authorization": f"Bearer {os.environ['SEEDROUTER_API_KEY']}"}

task = requests.post(
    f"{API}/videos/generations",
    headers=HEADERS,
    json={
        "model": "kling-3-0",
        "prompt": "A red paper boat drifting on a calm pond at sunrise, slow push-in, no text, no logos.",
        "mode": "std",
        "duration": 5,
    },
    timeout=60,
)
task.raise_for_status()
task_id = task.json()["id"]

while True:
    result = requests.get(f"{API}/tasks/{task_id}", headers=HEADERS, timeout=60).json()
    if result["status"] in ("completed", "failed"):
        break
    time.sleep(15)

if result["status"] == "completed":
    print(result["output"]["video_url"])
else:
    print(result["error"])

Uma tarefa concluída fica assim:

{
  "id": "task_...",
  "model": "kling-3-0",
  "status": "completed",
  "output": {"video_url": "https://static.seedrouter.ai/media/tasks/task_example/0.mp4"}
}

std voltou em 1280 × 720 e pro em 1920 × 1080, ambos em MP4 (H.264); com sound ativado, o arquivo traz uma faixa de áudio estéreo. Baixe o arquivo para o seu próprio armazenamento: os links hospedados não são permanentes. Um tempo limite de rede durante a consulta não significa que a geração falhou, então guarde o ID da tarefa e consulte de novo em vez de enviar uma nova tarefa.

Como partir de um primeiro e um último quadro?

Passe uma ou duas URLs de imagem em image_urls. A primeira imagem abre o clipe; uma segunda é onde ele termina. Sem imagens, o clipe é feito só a partir do prompt.

{
  "model": "kling-3-0",
  "prompt": "The camera glides from the empty street to the lit shop window",
  "image_urls": ["https://example.com/start.png", "https://example.com/end.png"],
  "mode": "pro",
  "duration": 6
}

As imagens precisam ser URLs HTTP(S) públicas, em JPG ou PNG. Dados em base64 são recusados; envie antes o arquivo para o seu próprio armazenamento.

Como fazer um clipe multicena?

Defina multi_shots como true e descreva cada cena em multi_prompt, até cinco cenas de 1 a 12 segundos cada. As durações das cenas precisam somar de 3 a 15 segundos, e essa soma é a duração do clipe que é cobrada; duration não é usado.

{
  "model": "kling-3-0",
  "mode": "pro",
  "sound": true,
  "multi_shots": true,
  "multi_prompt": [
    {"prompt": "Wide shot of a small open kitchen, a chef tosses vegetables in a wok, flames rising, warm light.", "duration": 3},
    {"prompt": "Close-up of the wok, vegetables flipping through the flames, oil sizzling, steam drifting.", "duration": 3}
  ]
}

Este é o clipe que essa requisição gerou no nosso teste, um único vídeo de 6 segundos que corta de um plano aberto para um close:

Kling 3.0, pro (1080p), multicena de 3 + 3 segundos, com áudio.

Como manter uma pessoa ou um produto consistente?

Adicione-o a kling_elements: um name, uma description curta e 2 a 4 URLs de imagens do assunto, até três elementos por requisição. Mencione o elemento pelo nome no prompt.

{
  "model": "kling-3-0",
  "prompt": "@hero slowly turns toward the camera in soft window light",
  "kling_elements": [
    {
      "name": "hero",
      "description": "a young woman with short black hair and a yellow raincoat",
      "element_input_urls": ["https://example.com/hero-front.png", "https://example.com/hero-side.png"]
    }
  ]
}

Quais requisições são recusadas antes de qualquer cobrança?

Estas voltam como HTTP 400 no envio, sem criar tarefa e sem cobrar nada:

RequisiçãoMotivo
Um clipe multicena cujas cenas somam menos de 3 ou mais de 15 segundosO Kling 3.0 faz clipes de 3 a 15 segundos
Um elemento sem descriptionTodo elemento precisa de uma
Mais de 2 image_urls, mais de 5 cenas ou mais de 3 elementosFora dos limites do modelo
mode: "4k" em minúsculaO valor é 4K
Imagens em base64, ou qualquer campo que não esteja na tabela acimaA mídia vai como URL; o esquema é estrito

Uma tarefa que é aceita e depois falha, por exemplo pela política de conteúdo do modelo, retorna status: "failed" com um código de error e não é cobrada. O catálogo de erros lista os códigos.

Qual a diferença para a API do próprio Kling?

A API para desenvolvedores do Kling usa nomes de campo próprios, e a versão legada e a atual diferem entre si.[1][2] Se você vai migrar uma integração, faça a correspondência dos campos:

SeedRouterAPI legada do Kling
model: "kling-3-0"model_name: "kling-v3"
sound: true / falsesound: "on" / "off"
duration: 5 (inteiro)duration: "5" (string)
mode: "4K"mode: "4k"
image_urls: [first, last]image e image_tail
multi_shots + multi_prompt: [{prompt, duration}]multi_shot + shot_type: "customize" + multi_prompt: [{index, prompt, duration}]
kling_elements: [{name, description, element_input_urls}]element_list: [{element_id}], criados com antecedência

O SeedRouter entrega os resultados como uma tarefa que você consulta; callback_url não é oferecido.

Um agente de programação pode fazer isso por você?

Sim. A página do Kling 3.0 tem um prompt pronto para Claude Code, Codex ou Cursor que lê a chave do seu ambiente, mostra a requisição e o custo, espera a sua aprovação e depois envia, consulta e baixa o clipe. A mesma página tem um Playground que envia exatamente o corpo que o seu código enviaria.

Perguntas sobre a API do Kling 3.0

Existe uma API oficial do Kling 3.0?

Sim. O Kling publica uma API para desenvolvedores com chaves próprias, cobrança por unidades e um formato de requisição próprio.[1][3] O SeedRouter é outra forma de chamar o Kling 3.0, com uma única chave e um saldo compartilhado com outros modelos.

Quanto custa a API do Kling 3.0?

É cobrada por segundo de vídeo, conforme o modo e o áudio ativado ou não. O guia de preços da API do Kling 3.0 calcula o custo dos clipes, e a página do modelo mostra as tarifas atuais.

Posso cancelar uma tarefa?

Não. Depois de aceita, uma tarefa vai até a conclusão ou a falha. Tarefas que falham não são cobradas.

Referências

  1. Kling AI. Kling 3.0: Text to Video (referência da API, versão legada). Consultado em 6 de outubro de 2026 em kling.ai.
  2. Kling AI. Kling 3.0: Image to Video (referência da API, versão legada). Consultado em 6 de outubro de 2026 em kling.ai.
  3. Kling AI. Pricing: Video (API para desenvolvedores). Consultado em 6 de outubro de 2026 em kling.ai.

Guias relacionados