Geração de mídia (vídeos, fotos, músicas)
NordRouter pode gerar imagens, vídeos e músicas - com a mesma chave sk-nr-… e com o mesmo equilíbrio dos modelos de texto. Pagamento pelo fato, sem fichas ou pacotes.
Como funciona
A geração é assíncrona (vídeo e música levam de segundos a alguns minutos):
- Crie uma tarefa -
POST /media/generatecom modelo e parâmetros. - Aguarde o resultado - enquete
GET /media/job/:idaté questatusse tornedone. - Pegue o arquivo - via
result_url(link paranordrouter.com).
1. Crie uma tarefa
curl https://nordrouter.com/media/generate \
-H "Authorization: Bearer sk-nr-ВАШ-КЛЮЧ" \
-H "Content-Type: application/json" \
-d '{
"model": "image/nano-banana-2",
"input": { "prompt": "уютная хижина в зимнем лесу, акварель", "resolution": "2K" }
}'Resposta:
{ "id": "beefb531-…", "model": "image/nano-banana-2", "status": "processing",
"poll": "https://nordrouter.com/media/job/beefb531-…" }2. Aguarde o resultado
curl https://nordrouter.com/media/job/beefb531-…{ "id": "beefb531-…", "status": "done",
"result_url": "https://nordrouter.com/media/file/beefb531-…",
"cost_usd": 0.052, "error": null }status: processing → done (ou failed). O arquivo finalizado está disponível em result_url.
🎵 Suno gera duas trilhas por tarefa: a primeira em
result_url, a segunda emresult_url_2(mesmo formato de link). O preço é para a tarefa completa, ambas as faixas já estão incluídas.
Webhooks (em vez de enquetes)
Caso não queira fazer a enquete, passe o campo callback_url para POST /media/generate, e enviaremos o resultado via solicitação POST quando a tarefa for concluída:
curl https://nordrouter.com/media/generate \
-H "Authorization: Bearer sk-nr-ВАШ-КЛЮЧ" -H "Content-Type: application/json" \
-d '{
"model": "image/nano-banana-2",
"input": { "prompt": "…" },
"callback_url": "https://ваш-сервер.com/webhooks/nordrouter",
"callback_secret": "ваш-секрет"
}'Quando a tarefa for para done/failed, será enviado um POST para callback_url com o mesmo corpo que GET /media/job/:id envia, mais o campo event:
{ "event": "media.completed", "id": "beefb531-…", "status": "done",
"result_url": "https://nordrouter.com/media/file/beefb531-…", "cost_usd": 0.052, "error": null }event: media.completed ou media.failed.
Verificação de assinatura. Se você definir callback_secret, o cabeçalho X-NR-Signature conterá sha256=<hmac> - HMAC-SHA256 do corpo da solicitação em seu segredo. Verifique se a solicitação é nossa:
import hmac, hashlib
expected = "sha256=" + hmac.new(secret.encode(), raw_body, hashlib.sha256).hexdigest()
assert hmac.compare_digest(expected, request.headers["X-NR-Signature"])Requisitos e confiabilidade:
callback_url- apenashttps://e apenas o endereço público (IPs internos/privados são rejeitados com um erro 400).- Até 4 tentativas de entrega com pausa crescente; responda
2xx, caso contrário iremos repetir. - O Webhook não cancela a votação - você pode combiná-lo ou usar
GET /media/job/:idcomo opção alternativa.
Mais detalhes
Ciclo de vida da tarefa, verificação de assinatura com exemplos e confiabilidade de entrega - na página Tarefas e webhooks.
3. Lista de modelos e preços
GET /media/models retorna os modelos disponíveis, seus parâmetros e estimativas de custos:
{ "models": [
{ "id": "image/nano-banana-2", "type": "image",
"fields": [ {"name":"prompt","type":"textarea"}, {"name":"resolution","type":"select","options":["1K","2K","4K"]} ],
"est_usd": 0.052 }
], "retention_days": 14 }Guia completo
Todos os modelos com parâmetros input e preço estão na página Mídia: todos os modelos e faturamento.
Modelos
95 modelos disponíveis - a lista atual completa com parâmetros e preço está sempre em GET /media/models. Famílias principais:
| Tipo | Família | Modos | ≈ preço |
|---|---|---|---|
| 🖼 Imagens | Nano Banana / 2 / Pro (image/nano-banana*) | texto → imagem, edição, até 4K | a partir de US$ 0,025 |
| 🖼 | Imagen 4 Fast / Ultra (image/imagen4*) | texto → imagem | de US$ 0,025 |
| 🖼 | Imagem GPT 1.5 / 2 (image/gpt-image-*) | texto → imagem, edição, até 4K | a partir de US$ 0,025 |
| 🖼 | Flux 2 Pro / Flex (image/flux2-*) | texto → imagem, editar | de US$ 0,03 |
| 🖼 | Seedream v4 / 4.5 / 5 Lite (image/seedream-*) | texto → imagem, editar | a partir de US$ 0,04 |
| 🖼 | Ideogram v3 / Character (image/ideogram-*) | texto, remix, personagem | a partir de US$ 0,02 |
| 🖼 | Qwen / Wan Image / Grok / Z-Image | texto→foto, editar | a partir de US$ 0,01 |
| 🛠 Utilitários | Topaz / Recraft (image/*upscale*, image/recraft-remove-bg) | upscale para 8K, remoção de fundo | a partir de US$ 0,01 |
| 🎬 Vídeo | Veo 3.1 Lite / Rápido / Qualidade (video/veo-3.1-*) | texto/foto →video | a partir de US$ 0,19 |
| 🎬 | Kling 2.1 → 3.0 (video/kling-*) | texto/foto→video, movimento, avatares, até 4K e 15s | a partir de $ 0,16 |
| 🎬 | Wan 2.2 → 2.7 (video/wan-*) | texto/foto/vídeo →video, fala para vídeo | a partir de US$ 0,25 |
| 🎬 | Seedance 1.5 / 2 / Fast / Mini (video/seedance-*) | texto/foto →video, até 4K, som | a partir de US$ 0,06 |
| 🎬 | Hailuo 02 / 2.3 (video/hailuo-*) | texto/foto →video | a partir de US$ 0,08 |
| 🎬 | HappyHorse 1.0 / 1.1 (video/happyhorse-*) | texto/foto/referência →video, editar vídeo | a partir de US$ 0,70 |
| 🎬 | Grok Video / 1.5 (video/grok-*) | texto/foto →video, até 30s | a partir de US$ 0,06 |
| 🎬 | Gemini Omni (video/gemini-omni) | vídeo com som, até 4K | a partir de US$ 0,39 |
| 🗣 Avatares | Kling Avatar, OmniHuman, InfiniteTalk, Lip Sync | foto+áudio→vídeo falando | a partir de US$ 0,19 |
| 🎵 Música | Suno V4–V5.5 (music/suno-v5) | texto/estilo →2 faixas | ~$0,08 |
| 🎙 Dublagem | ElevenLabs Turbo / Multilingual (audio/elevenlabs-*) | texto→fala, isolamento de voz | de US$ 0,04/1.000 dígitos. |
Opções
Os parâmetros dependem do modelo - a lista exata está em /media/models (campo fields: nome, tipo, opções, padrão). Geral:
prompt- descrição (para todos os modelos generativos).resolution-1K/2K/4K(fotos) ou480p/720p/1080p/4k(vídeo). O preço depende da resolução.aspect_ratio-1:1,16:9,9:16, etc.duration— duração do vídeo em segundos (para a maioria dos5/10, para Kling 3.0 e Wan 2.7 até15, para Grok até30). Os vídeos são cobrados por segundo.sound/generate_audio- faixa de áudio (Kling, Seedance). O som é mais caro – a classificação em/media/estimateleva isso em consideração.mode/quality/rendering_speed- nível de qualidade (Kling 3.0std/pro/4K, imagem GPTmedium/high, ideogramaTURBO/BALANCED/QUALITY).image- imagem de entrada (editar, foto →video; enviar link direto ou baixar via/media/upload).video_url/audio_url- entrada de vídeo/áudio (edição de vídeo, sincronização labial, avatares).- Para música:
title,style,instrumental,version(V4…V5_5).
O preço exato de uma configuração específica antes do lançamento é mostrado por POST /media/estimate com o mesmo model + input.
Custo e armazenamento
- Debitado do seu saldo em USD pelo custo real de geração - o valor exato pode ser visto em
cost_usdapós a conclusão. - Geração sem sucesso (erro do provedor) não cobrada - a reserva é devolvida automaticamente.
- Os arquivos são armazenados em nossos servidores por tempo limitado (veja
retention_daysem/media/models) - baixe para salvar.