Soluções / API & SDK

O poder na mão do dev.Controle total, no código e no dash.

Controle o player por uma API de eventos completa. Gerencie a biblioteca pela REST API versionada. Receba webhook assinado e granular pra cada passo do vídeo. Proteja conteúdo com token de curta duração que o seu backend assina. Tudo documentado, com exemplo que roda. Feito por um desenvolvedor com mais de 15 anos de mercado, pra desenvolvedor.

Player APIREST /v1Webhooks assinadosVídeos privados (JWT)Expo / React NativeOpenAPI
Player real · ao vivo
conectando ao player…
Comandos · window.Moviie
Event log · player.on(...)ao vivo
conectando ao player…
De dev pra dev

Eu programo há mais de 15 anos. Boa parte deles integrando vídeo no produto dos outros.

Sei onde isso trava. API que faz pela metade. Webhook que avisa pouco e tarde. Segurança tratada como item de roadmap, não como base.

A Moviie é a ferramenta que eu queria ter recebido pronta. Não porque eu seja especial. Porque já apanhei o suficiente pra saber o que não pode faltar.

Você não precisa acreditar nisso. Lê a doc. Mexe no player aí em cima. Olha a assinatura dos webhooks. O produto fala por mim.

Rennan RibeiroRennan Ribeirofundador · desenvolvedor
Pra quem é

Essa página é pra você se…

  • Você é quem vai avaliar a ferramenta de vídeo e dizer pro time se entra ou não.
  • Você já bateu na parede de uma API que faz pela metade.
  • Você já dependeu de um webhook que avisava pouco, tarde ou nada.
  • Você já viu segurança tratada como detalhe, e pagou a conta depois.
  • Você quer controle no código, mas não recusa um dash que ajuda de verdade.

É você quem decide. O resto desta página é a lista de motivos pra decidir pela Moviie.

Os três pilares

O poder na mão do dev.Três coisas que ferramenta nenhuma leva a sério junto.

Player e biblioteca na API.

Controle o player por eventos. Gerencie vídeos, coleções e analytics pela REST versionada.

player.on("timeupdate", ({ currentTime }) =>
  setBar(currentTime / player.duration));
Ver em profundidade

Webhook assinado e granular.

Você assina só o que importa. Cada entrega vem assinada, com retry e contador de tentativa.

{ "type": "video.ready",
  "data": { "video": { "id": "…" } } }
Ver em profundidade

Segurança por token.

Vídeo privado, token de minutos ligado a um vídeo, URL de asset efêmera.

jwt.sign({ sub: videoId }, signingKey, {
  algorithm: "HS256", expiresIn: "5m" });
Ver em profundidade
01 / REST API

Sua biblioteca, no seu backend.Versionada e com OpenAPI.

A REST API vive em api.moviie.ai/v1, versionada por prefixo. Você autentica com uma chave Bearer criada no dash, em Settings → API Keys. Lista, busca, atualiza, apaga e sobe vídeo. Organiza em coleções. Puxa métricas de audiência. Tem OpenAPI publicada, então você gera client na sua linguagem sem adivinhar contrato. E o dash espelha tudo isso, com a chave a dois cliques.

  • Base versionada /v1, sem quebra sem aviso
  • Recursos: Videos, Collections, Analytics, Me
  • OpenAPI spec pra gerar seu client
  • Dash espelha a API, com chave de fácil acesso
Ver a REST API
me.shbash
# chave secreta criada no dash: Settings > API Keys
curl https://api.moviie.ai/v1/me \
  -H "Authorization: Bearer mvi_sua_chave"

# { "organization": { "id": "...", "name": "Acme", "plan": "pro" } }

Primeira chamada autenticada em uma linha.

02 / PLAYER API

Esconde os controles nativos.Renderiza a sua UI por cima.

Suba o embed com controls=0 e construa os seus próprios controles. O player expõe a API com métodos pra tudo: play, pause, seek, volume, velocidade, tela cheia, picture-in-picture. E uma API de eventos completa mantém a sua interface em sincronia, mesmo quando o viewer usa atalho de teclado, tecla de mídia ou os controles do sistema. A diferença de um player travado: aqui a UI é sua, e ela nunca mente sobre o estado.

  • controls=0 e a sua UI por cima
  • Métodos pra play, seek, volume, velocidade, tela cheia, PiP
  • Eventos pra cada mudança de estado
  • UI sempre em sincronia, mesmo com atalho ou tecla de mídia
Ver o Player API
embed.htmlhtml
<iframe src="https://watch.moviie.ai/embed/EMBED_ID?controls=0"
        allow="autoplay; fullscreen; picture-in-picture" allowfullscreen></iframe>
controls.jsjs
// sua UI dirige o player; os eventos mantem ela em sincronia
const player = Moviie.getPlayer(iframe);

player.on("play",  () => paintPlaying());
player.on("pause", () => paintPaused());
player.on("timeupdate", ({ currentTime }) =>
  setBar(currentTime / player.duration));

seekBar.oninput = (e) =>
  player.seek(player.duration * (e.target.value / 100));

É o mesmo modelo da demo lá em cima.

03 / WEBHOOKS

Você é avisado na hora.Com como confiar no aviso.

Catálogo granular de eventos: upload, encoding, publicação, legenda, capítulo, CTA, e telemetria com milestones de 25, 50, 75 e 100 por cento, completion rate, view milestones e thresholds de banda e storage. Você habilita por endpoint só o que importa. Cada entrega chega assinada com HMAC-SHA256 no header, com contador de tentativa, e retry automático de até seis tentativas com backoff que respeita o seu sistema. E falha de verdade só vira evento depois de confirmada, sem alarme falso de um callback instável.

  • Catálogo granular, habilitado por endpoint
  • Assinatura HMAC-SHA256 em cada entrega
  • Retry de até 6, com backoff e X-Moviie-Attempt
  • Falha confirmada por job, sem alarme falso
Ver os eventos
Um recorte do catálogo. Você liga só o que precisa, por endpoint.

Um recorte do catálogo. Você liga só o que precisa, por endpoint.

04 / VÍDEOS PRIVADOS

Segurança é a base.Não um item de roadmap.

Marque o vídeo como privado e ele não serve nada sem um token válido. Seu backend assina um JWT curto, ligado a um vídeo só, com a chave de assinatura que fica no servidor. O asset volta como URL assinada e efêmera. A chave de assinatura você rotaciona sem downtime e revoga na hora. Some a isso allowed domains e chaves separadas por função: publishable no cliente, secreta no servidor, signing pra tokens. Sem prometer DRM de Hollywood. Proteção por token, URL assinada e domínio, dita na cara.

  • Token JWT curto, ligado a um vídeo (sub)
  • Asset em URL assinada e efêmera
  • Rotaciona sem downtime, revoga na hora
  • Chaves separadas: publishable, secreta, signing
Ver vídeos privados
sign-token.tsts
import jwt from "jsonwebtoken";

// chave de assinatura (mvi_sign_) fica no backend
const token = jwt.sign({ sub: videoId }, signingKeySecret, {
  algorithm: "HS256",
  keyid: signingKeyId,
  expiresIn: "5m",   // token curto, por sessao
});
private-embed.htmlhtml
<iframe src="https://watch.moviie.ai/embed/EMBED_ID?token=THE_JWT"></iframe>

Token errado pro vídeo errado? 403. Sem exceção.

Os números da Moviie

A infraestrutura aguenta a pressão que você vai colocar.

Você não está avaliando um plugin. É a mesma malha de entrega que segura lançamento, área de membros e VSL no pico. Rate limits e SLA

0k
Viewers simultâneos
Por evento, sem degradação. O pico de lançamento não derruba o player
9999ms
First-frame médio
Tempo entre o play e o primeiro quadro. Medido em produção
0,0%
Uptime contratual
SLA público, não promessa de marketing. Reembolso previsto em contrato
0+
Edge locations
Entrega adaptativa de 240p a 4K, perto de onde o seu viewer está
Tudo isso está na doc

O que mais pesa na hora de decidir.

Dash forte, aliado do dev
Chave de API, webhooks e signing secret saem do painel. Painel e código andam juntos, não um contra o outro.
Player nativo no Expo / React Native
SDK pra app, com recursos nativos, Cast no Chromecast e tratamento de erro.
Chaves com escopo
Publishable no cliente, secreta no servidor, signing pra token. Cada parte com o mínimo que precisa.
Coleções e analytics na API
Organize a biblioteca e puxe métricas de audiência direto do backend.
OpenAPI publicada
Gere o client na sua linguagem. Sem adivinhar payload, sem SDK defasado.
Allowed domains
Restringe onde o player roda. Embed travado por organização.

Tudo isso está na doc. Não é promessa, é referência. Abrir a documentação

Próximo passo

Coloque a Moviiepra rodar no seu stack.

14 dias de trial completo. Cartão no cadastro, cancelamento em um clique. Sem ligação de vendas. Você sai do trial sabendo se a Moviie resolve o seu problema.

OpenAPI e exemplos prontos Migração assistida sem custo Suporte direto com o time de produto