Documentação / Visão geral e início rápido

Comece aqui

Visão geral e início rápido

Tudo o que você faz no app do Chasca também dá para fazer por HTTP: criar um vídeo explicativo de quadro branco narrado a partir de um prompt ou de um documento, esperar ficar pronto e mudar uma coisa de cada vez ou editar o grafo de cenas dele. O SDK, a CLI e o servidor MCP são camadas finas sobre a mesma API.

URL base https://app.trychasca.com/api

1. Obtenha uma chave de API

No app, abra Settings → API keys e crie uma chave. As chaves têm o formato chk_live_… e aparecem uma única vez, então guarde a sua em um lugar seguro (uma variável de ambiente é o ideal).

  • O acesso à API está incluído a partir do plano Plus. Compare os planos.
  • Vídeos criados com uma chave de API, pela API, pelo SDK e pela CLI ou pelo servidor MCP com chave, consomem os minutos do seu plano em dobro (2x): um vídeo de 1 minuto consome 2 minutos. O conector para o Claude e outros assistentes, que usa o login da sua conta, funciona em todos os planos e conta como no app.

2. Autentique as requisições

Envie a chave como token Bearer em todas as requisições:

Cabeçalho
Authorization: Bearer chk_live_...

Todos os corpos de requisição e de resposta são JSON. A API fica em https://app.trychasca.com/api.

3. Crie um vídeo explicativo

Envie o que você quer explicar em input: um tema, uma pergunta ou o texto completo de um documento. Defina length em incrementos de 30 segundos, até 30:00, ou omita o campo e deixe o Chasca escolher.

Terminal
curl -X POST https://app.trychasca.com/api/v1/explainer \
  -H "Authorization: Bearer $CHASCA_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{
    "input": "Explain how vaccines train the immune system",
    "length": "1:00",
    "aspect": "16:9",
    "preset": "marker"
  }'

A API responde na hora com 202 Accepted e o registro enfileirado. A geração roda em segundo plano.

202 Accepted (resumido)
{
  "id": "0b9c6f2e-5d1a-4c3e-9a47-2f8e1c7d4b60",
  "status": "queued",
  "stage": null,
  "progress": 0,
  "prompt": "Explain how vaccines train the immune system",
  "lengthSeconds": 60,
  "voice": "chasca:sulafat",
  "language": "en",
  "aspect": "16:9",
  "preset": "marker",
  "videoUrl": null,
  "createdVia": "api",
  "createdAt": "2026-09-23T09:14:02.118Z"
}

4. Aguarde a geração

Consulte o vídeo explicativo periodicamente até que status seja ready. Ele passa por queued → generating → rendering → ready (ou termina em failed, com a causa legível em error). A maioria dos vídeos fica pronta em menos de um minuto. Se preferir não fazer polling, assine o stream de eventos.

Terminal
curl https://app.trychasca.com/api/v1/explainer/0b9c6f2e-5d1a-4c3e-9a47-2f8e1c7d4b60 \
  -H "Authorization: Bearer $CHASCA_API_KEY"

Um vídeo explicativo pronto traz videoUrl, posterUrl e subtitlesUrl, além do sceneGraph completo e editável, de todas as versões e dos tempos de cada cena. Os links de mídia são assinados e expiram depois de cerca de uma semana; busque o vídeo explicativo de novo para obter links novos.

5. Mude só uma coisa

Envie uma única mudança, e todo o resto fica exatamente como estava. Legendas, estilo do quadro, música, marca d’água, logo e linha de créditos geram uma nova versão gratuita do mesmo vídeo, com a mesma narração. Uma voz ou um formato novos geram um vídeo separado a partir do mesmo roteiro e dos mesmos desenhos, cobrado como um vídeo novo.

Terminal
curl -X POST https://app.trychasca.com/api/v1/explainer/0b9c6f2e-5d1a-4c3e-9a47-2f8e1c7d4b60/change \
  -H "Authorization: Bearer $CHASCA_API_KEY" \
  -H "Content-Type: application/json" \
  -d '{ "kind": "captions", "captions": true, "captionStyle": "bold" }'

Para mudar as palavras ou os desenhos, envie o sceneGraph do vídeo explicativo com as suas edições para edit: só as cenas que mudaram são desenhadas de novo. Desfaça qualquer um dos dois com revert.

Prefere TypeScript?

O SDK encapsula tudo isso, incluindo a espera, as novas tentativas e as respostas tipadas. Veja CLI e SDK. Para que o Claude, o Cursor ou outro agente use o Chasca por você, veja Configuração do MCP.

quickstart.ts
import { ChascaClient } from '@chasca/sdk';

const chasca = new ChascaClient({ apiKey: process.env.CHASCA_API_KEY! });

const job = await chasca.createExplainer({ input: 'How compound interest snowballs', length: '1:00' });
const video = await chasca.waitForExplainer(job.id);
console.log(video.videoUrl);

Resumo dos limites

  • Requisições de geração, de mudança e de edição: 20 por minuto. Todas as outras: 200 por minuto.
  • Duração do vídeo: de 30 segundos a 30 minutos, em incrementos de 30 segundos. A partir de 6 minutos, o vídeo é contado em capítulos, e os minutos que você ainda tem precisam cobrir a duração pedida.
  • Os erros têm sempre o mesmo formato: { "error": true, "code": "...", "message": "...", "status": 400 }. Veja erros.