Para desenvolvedores e SaaS
Adicione vídeo com IA ao seu produto em poucas chamadas
Uma API REST, um servidor MCP e webhooks: seu produto cria vídeos explicativos e corta vídeos longos em shorts, sem que seus usuários precisem abrir o ClipOnIt.
Desde o plano gratuito (3 vídeos por mês com marca d'água) · a chave é criada em Configurações → Integrações
Duas formas de usar
Os dois produtos ClipOnIt, chamados pelo seu código ou por um agente.
AI Explainer
Uma ferramenta de treinamento: um vídeo explicativo por aula
Seu produto envia o título ou o texto da lição; o ClipOnIt escreve as cenas, as ilustra, faz a narração e as legendas, e então entrega um MP4 vertical que você exibe ao lado do curso.
POST /api/agent/produceMCP
Um agente de IA que controla ClipOnIt
Seu agente (Claude, Cursor, VS Code ou o seu próprio) se conecta ao servidor MCP: ele importa um vídeo, escolhe os clipes, inicia um vídeo explicativo e aguarda o resultado com ferramentas já descritas.
POST /mcp
Sempre o mesmo fluxo
Um vídeo leva minutos, não milissegundos: você cria uma tarefa, acompanha o status e recupera o arquivo.
- Criar tarefa
Um POST com o tema ou o link do vídeo. Resposta imediata com um identificador.
- Acompanhar o status
Um GET aproximadamente a cada 10 s: etapa, porcentagem, tempo restante. Para o Explainer, um webhook pode avisar você no lugar.
- Obter o vídeo
Quando terminar, a URL do MP4 vem na resposta. Baixe o arquivo ou exiba-o no seu produto.
AI Explainer
Um vídeo explicativo a partir de um tema
POST /api/agent/produce recebe um tema (ou um roteiro, ou uma gravação de áudio) e inicia a escrita e depois a renderização. GET /api/jobs/{id} retorna status, step, percent e, quando o vídeo estiver pronto, url.
- duration_s15 a 180 segundos
- style24 estilos visuais, e o seu: GET /api/explainer/styles
- voiceuma voz do catálogo, por nome ou identificador
- dry_runtrue: verifica a cota e o custo sem iniciar nada
curl -s -X POST https://cliponit.app/api/agent/produce \
-H "Authorization: Bearer $CLIPONIT_API_KEY" \
-H "Content-Type: application/json" \
-d '{"topic": "La photosynthèse en 3 étapes", "duration_s": 45}'
curl -s https://cliponit.app/api/jobs/JOB_ID \
-H "Authorization: Bearer $CLIPONIT_API_KEY"
curl -s -o lecon.mp4 "URL_DU_JOB"const API = "https://cliponit.app";
const headers = {
Authorization: `Bearer ${process.env.CLIPONIT_API_KEY}`,
"Content-Type": "application/json",
};
async function call(method, path, body) {
const res = await fetch(API + path, { method, headers, body: body && JSON.stringify(body) });
if (!res.ok) throw new Error(`${res.status} ${await res.text()}`);
return res.json();
}
let { job } = await call("POST", "/api/agent/produce", { topic: "La photosynthèse en 3 étapes", duration_s: 45 });
while (!["done", "failed", "canceled"].includes(job.status)) {
await new Promise((r) => setTimeout(r, 10_000));
job = await call("GET", `/api/jobs/${job.id}`);
}
console.log(job.status === "done" ? job.url : job.error);import json, os, time, urllib.request
API = "https://cliponit.app"
KEY = os.environ["CLIPONIT_API_KEY"]
def call(method, path, body=None):
req = urllib.request.Request(API + path, method=method,
data=None if body is None else json.dumps(body).encode(),
headers={"Authorization": f"Bearer {KEY}", "Content-Type": "application/json"})
with urllib.request.urlopen(req) as r:
return json.load(r)
job = call("POST", "/api/agent/produce", {"topic": "La photosynthèse en 3 étapes", "duration_s": 45})["job"]
while job["status"] not in ("done", "failed", "canceled"):
time.sleep(10)
job = call("GET", f"/api/jobs/{job['id']}")
if job["status"] == "done":
urllib.request.urlretrieve(job["url"], "lecon.mp4")
else:
print(job["error"])MCP
Um servidor MCP para agentes
Endereço único https://cliponit.app/mcp, em HTTP “streamable”. As ferramentas cobrem os dois produtos: importar, aguardar, criar e exportar clipes, produzir um vídeo explicativo e aguardar o fim dele. As que modificam algo são anotadas para que o agente peça confirmação antes.
Claude Desktop e Claude.ai: Configurações → Conectores → Adicionar conector personalizado, com o endereço acima. A conexão é feita por OAuth, sem chave para copiar; o ChatGPT funciona da mesma forma. Passo a passo
claude mcp add --transport http cliponit https://cliponit.app/mcp \
--header "Authorization: Bearer $CLIPONIT_API_KEY"{
"mcpServers": {
"cliponit": {
"url": "https://cliponit.app/mcp",
"headers": { "Authorization": "Bearer ${env:CLIPONIT_API_KEY}" }
}
}
}{
"inputs": [
{ "type": "promptString", "id": "cliponit-key", "description": "ClipOnIt API key", "password": true }
],
"servers": {
"cliponit": {
"type": "http",
"url": "https://cliponit.app/mcp",
"headers": { "Authorization": "Bearer ${input:cliponit-key}" }
}
}
}curl -s -X POST https://cliponit.app/mcp \
-H "Authorization: Bearer $CLIPONIT_API_KEY" \
-H "Content-Type: application/json" \
-d '{"jsonrpc": "2.0", "id": 1, "method": "tools/call", "params": {"name": "get_quota", "arguments": {}}}'Seja avisado em vez de pedir
Em Configurações → Integrações, adicione até 3 URLs https. Quando uma produção do Explainer terminar, o ClipOnIt envia para ela job.done ou job.failed, com o mesmo objeto de GET /api/jobs/{id}. Em caso de falha, são seis tentativas ao longo de cerca de 8 horas.
Para os clipes Smart Clipper, ainda não há webhook: acompanhe o status com GET.
import hashlib, hmac, time
def verify(secret: str, header: str, body: bytes, tolerance: int = 300) -> bool:
"""header = X-ClipOnIt-Signature, body = raw request bytes."""
parts = dict(p.split("=", 1) for p in header.split(",") if "=" in p)
if abs(time.time() - int(parts.get("t", 0))) > tolerance:
return False
mac = hmac.new(secret.encode(), parts["t"].encode() + b"." + body, hashlib.sha256).hexdigest()
return hmac.compare_digest(mac, parts.get("v1", ""))Limites e cotas por plano
As chamadas de API contam como na interface: mesmas cotas, mesma conta. Ver os preços
| Grátis | Starter | Pro | Business | |
|---|---|---|---|---|
| API e MCP | — | ✓ | ✓ | ✓ |
| Vídeos Explainer por mês | — | 15 | 30 | 100 |
| Produções Explainer ao mesmo tempo | — | 2 | 2 | 2 |
| Chaves de API por conta | — | 10 | 10 | 10 |
| Webhooks por conta | — | 3 | 3 | 3 |
Segurança
Chame ClipOnIt do seu servidor, nunca do navegador dos seus usuários.
Política de privacidade- A chave fica no seu servidor.Ela dá acesso à conta ClipOnIt inteira: nunca no navegador, em um app mobile ou em um repositório Git. Guarde-a em uma variável de ambiente e chame ClipOnIt a partir do seu backend.
- Uma chave por uso, com seu escopo.Escopo “leitura” (consultar, verificar) ou “produção” (criar vídeos). Cada chave tem um nome, uma data de último uso e é revogada com um clique: ela responde 401 já na próxima chamada.
- O segredo só é mostrado uma vez.A ClipOnIt guarda apenas a impressão digital (SHA-256). Se for perdida, uma chave é substituída, não recuperada.
- Webhooks assinados.Cada envio traz X-ClipOnIt-Signature (HMAC-SHA256 do corpo e do carimbo de data/hora); recuse qualquer envio com mais de 5 minutos. As URLs de recebimento são https e verificadas a cada envio.
- Hospedado na União Europeia.Servidores Hetzner na UE; subcontratados listados na política de privacidade.
Perguntas frequentes
SDK, widget, prazos, cotas e volume.
Qual plano é necessário para a API?
O plano gratuito basta para começar: a chave é criada e o servidor MCP responde, para 3 vídeos Explainer por mês com marca d'água, nos 8 estilos gratuitos. Os planos pagos adicionam mais vídeos (15, 30 ou 100 por mês), sem marca d'água, os 24 estilos, sua voz no microfone e o Diretor IA. As cotas da API são as da conta, como na interface.
Existe um SDK?
Ainda não há SDK oficial. A API usa HTTP e JSON, descrita em OpenAPI 3.1 (/openapi.json): os exemplos desta página cabem em poucas linhas de fetch ou de Python padrão, e você pode gerar um cliente a partir do arquivo OpenAPI.
Posso incorporar um player ou um editor ClipOnIt no meu site?
Não, não há widget incorporável. Você pega o arquivo MP4 e o exibe no seu próprio player, ou o hospeda em seu servidor.
Quanto tempo leva um vídeo?
Um vídeo explicativo: alguns minutos (escrita e depois renderização, cerca de 4 min para a renderização). Clipes: cerca de 1 a 5 minutos para 20 minutos de vídeo, depois a exportação de cada clipe. A API retorna a etapa, a porcentagem e uma estimativa do tempo restante.
O que acontece quando uma cota é atingida?
A API responde 402 com uma mensagem clara (cota do mês ou orçamento de IA), 403 se o recurso não estiver no plano, 429 se já houver duas produções Explainer em andamento. Para o Explainer, “dry_run”: true verifica tudo antes de iniciar, sem criar nem cobrar nada.
Quero conectar ClipOnIt para todos os meus usuários.
Une clé agit sur un seul compte ClipOnIt : les vidéos et les quotas sont ceux de ce compte. Pour un usage à plus grande échelle, écris-nous à contact@cliponit.app avec ton volume et ton cas d'usage.
Seu primeiro vídeo pela API, hoje
Crée une clé, copie un exemple, lance-le. Une question sur ton intégration : contact@cliponit.app.