API de geração de vídeo com IA
Uma API de vídeo com IA
feita para código, não só prompts.
Uma chave de API abre os motores de vídeo, imagem e ampliação do Moosky para seus scripts, apps e ferramentas no-code. Enfileire uma geração, precifique antes de rodar e baixe o arquivo pronto — ou deixe um webhook entregar para você.

Opções de modelos
Uma spec, três faixas de automação
O mesmo registro de onde o estúdio renderiza responde pela API: escolha um slug de composer, poste as seleções, e o run é cobrado como qualquer outro.
Texto e imagem para vídeo
Wan 3.0, LTX 2.5 e Seedance 2.5 entram na fila por um POST. O prompt, o quadro inicial, a duração e a seed viajam como seleções — o mesmo schema do estúdio — então seu pipeline e seus editores renderizam a tomada idêntica.
Geração, edição, ampliação
GPT Image 2.5, Seedream e Qwen Image 3.0 geram e editam fotos fixas do mesmo jeito; SeedVR2 e Ultimate Image Upscaler fecham os passes. Fotos de catálogo, miniaturas e artes de capa saem da mesma chave e do mesmo saldo.
Exemplos de resultados
Tomas dos mesmos motores que seu script chama
Saídas públicas de Wan 3.0 e Seedance 2.0 R2V — os renders exatos que uma única chamada de API produz.
Por que usar no Moosky AI
O que você pode construir na API do Moosky
Os mesmos motores do estúdio, pilotados por código — para quem gera em volume ou embute o recurso no próprio produto.
Geração em lote em escala
Cinquenta linhas de prompt, cinquenta clipes de um loop de script — sem babar fila, e cada run precificado em créditos antes de disparar.
Pipelines guiados por webhook
Registre um webhook na sua chave e o push de status chega no instante em que um render termina, sem polling no seu loop.
Backend do seu app
Lance um recurso de IA nos motores do Moosky enquanto seus usuários veem a sua interface; a chave fica no servidor.
Cotações antes de gastar
O endpoint de estimativa devolve primeiro o custo exato em créditos de um run, então nada toca seu saldo sem o seu código aprovar.
Um saldo, todos os motores
Os mesmos créditos que financiam o estúdio financiam a API, então uma automação nunca precisa de fatura ou assinatura própria.
OpenAPI, não lenda
A Swagger UI em api.moosky.ai/docs é gerada das mesmas rotas que te atendem — cada path e schema numa página.
Como funciona
Da chave ao render pronto em três chamadas
Crie sua chave
Cadastre-se, abra a página /developer e crie uma chave — copie o client secret uma vez, ele aparece só uma.
Troque por um token
Poste o par de chaves no endpoint de token e guarde o token bearer dentro do seu script ou servidor.
Gere e recolha
Enfileire um run com o slug do composer e as seleções, receba o status ou o webhook, e baixe o arquivo pronto.
Os mesmos motores do estúdio, ligados à sua stack
Uma agência de conteúdo tinha um problema mensal: quatrocentos vídeos de produto por trimestre, e um editor cobrando por clipe pronto. O time construiu um script na API do Moosky — uma linha JSON por produto, um POST por clipe — e o trabalho do editor encolheu até as contas hero que ainda pediam corte humano.
A lista de endpoints é de propósito pequena e totalmente pública: crie uma chave na página developer, troque-a por um token, liste os compositores ativos, enfileire uma execução de cena e leia o status ou espere o webhook. Nada nesta página existe que a spec OpenAPI já não publique em api.moosky.ai/docs.
O que convenceu a agência foi a chamada de cotação. Antes de um run encostar no saldo, o endpoint de estimativa devolve o custo exato em créditos, então um template ruim falha no staging a custo zero em vez de queimar os créditos da conta de madrugada — no mesmo saldo que financia o estúdio, sem segundo contrato para assinar.
Quickstart
Chave, token, primeiro render — em três chamadas
Copie e cole dos endpoints que a spec OpenAPI ativa publica. Troque o slug do composer por qualquer um que o registro listar.
Token, cena, cotação, fila e status — cinco calls, sem SDK.
# 1) Exchange the key pair (from /developer) for a bearer token
curl -s -X POST "https://api.moosky.ai/auth/api-key/token" \
-H "Content-Type: application/json" \
-d '{"client_id":"YOUR_CLIENT_ID","client_secret":"YOUR_C…ET"}'
# -> { "token": "<jwt>" } export TOKEN="<the token>"
# 2) Queueing runs against a scene YOU own — create one here
# (POST /scenes returns its id) or reuse a scene id from the studio.
# A key on someone else's id gets "Scene not found" (404).
curl -s -X POST "https://api.moosky.ai/scenes" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{"name":"my first api scene"}'
# -> { "id": 42 } export SCENE_ID=42 # YOUR_SCENE_ID below
# 3) Quote the run before you spend (public endpoint, no auth)
curl -s -X POST "https://api.moosky.ai/executions/estimate-cost" \
-H "Content-Type: application/json" \
-d '{"sceneComposerSlug":"wan30-scene-composer","selections":[{"optionSlug":"prompt","value":{"value":"a drone shot over pine forest at sunrise"}}]}'
# -> { "credits": 87 }
# 4) Queue the generation and read it back
curl -s -X POST "https://api.moosky.ai/scenes/YOUR_SCENE_ID/executions" \
-H "Authorization: Bearer $TOKEN" \
-H "Content-Type: application/json" \
-d '{"sceneComposerSlug":"wan30-scene-composer","selections":[{"optionSlug":"prompt","value":{"value":"a drone shot over pine forest at sunrise"}}]}'
curl -s "https://api.moosky.ai/executions" \
-H "Authorization: Bearer $TOKEN"fetch nativo do Node 18+ — enfileire um clipe de qualquer pipeline.
// Node — one API key, many video and image engines
const API = "https://api.moosky.ai";
const SCENE_ID = "YOUR_SCENE_ID"; // a scene you own: create one via
// POST /scenes, or reuse a studio id
// 1) Key pair (from /developer) -> bearer token
const { token } = await fetch(`${API}/auth/api-key/token`, {
method: "POST",
headers: { "Content-Type": "application/json" },
body: JSON.stringify({ client_id: process.env.MOOSKY_CLIENT_ID,
client_secret: proces…CRET }),
}).then((r) => r.json());
// 2) Queue a generation with the composer slug + selections
const execution = await fetch(`${API}/scenes/${SCENE_ID}/executions`, {
method: "POST",
headers: { "Authorization": `Bearer ${token}`,
"Content-Type": "application/json" },
body: JSON.stringify({
sceneComposerSlug: "wan30-scene-composer",
selections: [{ optionSlug: "prompt",
value: { value: "a drone shot over pine forest at sunrise" } }],
}),
}).then((r) => r.json());
// 3) Poll status — or register a webhook and skip the loop.
// storagePath fills in once the render finishes (null while queued).
console.log(execution.status, execution.storagePath);Loop de linhas de prompt, fila por linha, recolha as execuções.
import os
import requests # pip install requests
API = "https://api.moosky.ai"
# A scene you own: create one with POST /scenes, or reuse a studio id.
SCENE_ID = "YOUR_SCENE_ID"
# 1) API key pair (from /developer) -> bearer token
token = requests.post(f"{API}/auth/api-key/token", json={
"client_id": os.environ["MOOSKY_CLIENT_ID"],
"client_secret": os.environ["MOOSKY_CLIENT_SECRET"],
}).json()["token"]
headers = {"Authorization": f"Bearer {token}"}
# 2) Queue one run per prompt line — the same balance as the studio
prompts = ["a drone shot over pine forest at sunrise",
"a timelapse of a city skyline at dusk"]
for prompt in prompts:
r = requests.post(f"{API}/scenes/{SCENE_ID}/executions", headers=headers, json={
"sceneComposerSlug": "wan30-scene-composer",
"selections": [{"optionSlug": "prompt", "value": {"value": prompt}}],
})
print(r.json()["id"], r.json()["status"])Cobrança por créditos
Preço simples e transparente
Runs da API saem do mesmo saldo de créditos do estúdio — sem nível separado, sem assinatura. Cotifique cada run primeiro e pague créditos por geração a 100 créditos por dólar.

Mais da Moosky AI
Conheça a suíte completa de ferramentas de IA.
Perguntas frequentes
Como consigo uma chave de API do Moosky?
Crie uma conta grátis, abra a página /developer e crie uma chave com um nome. Copie o client secret na hora — ele aparece uma única vez. Depois poste-o com o client id no endpoint de token e use o token bearer retornado em cada chamada.
A API usa os mesmos créditos do app?
Sim. Um saldo financia gerações do estúdio, das ferramentas no-code e da API. Runs cobram por geração na mesma tarifa, e o endpoint de estimativa cotiza o custo exato antes de enfileirar qualquer coisa.
Quais modelos estão disponíveis pela API?
Tudo o que o registro ativo de modelos expõe, e ele é consultável: faça um GET na lista de scene-composer e a resposta mostra os motores atuais de vídeo, imagem e ampliação com seus slugs e capacidades. A lineup desta página lê desse mesmo registro.
Posso gerar vídeo de um script ou cron?
Esse é o uso principal. Faça um loop nas suas linhas de prompt, poste um call de fila por clipe e colete os arquivos prontos pelo status ou por um webhook. Times conectam isso a n8n, Make e workers próprios do mesmo jeito.
Tem webhooks?
Tem. Registre uma URL de endpoint na sua chave e uma atualização de status é empurrada para ela quando o estado de uma execução muda, então seu worker nunca fica fazendo polling esperando render.
Existe limite de requisições?
A criação de chaves vem com throttling como guarda antiabuso. Para volume acima do tráfego API normal — catálogos enormes, throughput sustentado — escreva para support@moosky.ai e olhamos seus números antes de você construir esbarrando num muro.
Onde ficam as docs?
A Swagger UI fica em api.moosky.ai/docs com a spec OpenAPI ao lado, gerada das rotas que a API serve de verdade — o jeito mais rápido de conferir um parâmetro é ler lá.