API CNT
API de integração
Integra o sistema da sua empresa com o Workspace do CNT Legendas: clientes e glossários, perfis de regras, produção da equipe e licenças, com webhooks. Não processa vídeo nem áudio: isso continua no computador de quem usa o programa.
Começar
- Na área do cliente → API (planos de equipe), crie uma chave com as permissões que o seu sistema precisa. Ela aparece uma vez.
- Mande a chave em todo pedido:
Authorization: Bearer cnt_xxxxxxxx_… - Endereço base:
https://legendas.cntoficial.com.br/api/v1· JSON em UTF-8 · até 120 pedidos por minuto por chave.
curl -X PUT https://legendas.cntoficial.com.br/api/v1/clientes/Est%C3%BAdio%20Aurora \
-H "Authorization: Bearer cnt_xxxxxxxx_…" -H "Content-Type: application/json" \
-d '{"idioma_origem":"en","idioma_destino":"pt-BR","glossario":[{"termo":"Narizinho","traducao":"Naricita"}]}'Endereços
| GET | /clientes | Listar os clientes do Workspace |
| GET | /clientes/{nome} | Um cliente |
| PUT | /clientes/{nome} | Criar ou substituir um cliente (a equipe recebe na próxima sincronização do programa) |
| DELETE | /clientes/{nome} | Tirar do Workspace (quem já tem no computador continua com ele) |
| GET | /clientes/{nome}/glossario | Glossário do cliente |
| PUT | /clientes/{nome}/glossario | Substituir o glossário do cliente |
| GET | /perfis | Perfis de regras da equipe |
| POST | /perfis | Publicar um perfil (mesmo nome substitui) |
| DELETE | /perfis/{id} | Tirar um perfil da equipe |
| GET | /producao | Produção da equipe (episódios, legendas, minutos de vídeo, horas) por mês, cliente e pessoa |
| GET | /licencas | Licenças da conta e os computadores de cada uma |
| POST | /licencas/{publico}/computadores/{id}/liberar | Liberar a vaga de um computador |
| GET | /webhooks | Webhooks cadastrados |
| POST | /webhooks | Cadastrar um webhook (o segredo aparece só na resposta) |
| DELETE | /webhooks/{id} | Remover um webhook |
| POST | /webhooks/{id}/testar | Mandar um aviso de teste |
Especificação completa (OpenAPI 3.1): /api/openapi.json.
Webhooks
Eventos: producao.atualizada, cliente.alterado, licenca.renovada. Cada aviso é um POST em JSON {"evento", "em", "dados"}
com o cabeçalho X-CNT-Assinatura: sha256=<HMAC-SHA256 do corpo com o segredo do webhook>. Confira a assinatura antes de usar. Até 3 tentativas.
Erros
Sempre {"erro": "mensagem em português", "codigo": "ER-RS-4xx"} com o status HTTP correspondente: 400 pedido inválido, 401 chave inválida/revogada/vencida,
403 sem permissão ou licença de equipe inativa, 404 não encontrado, 413 grande demais, 429 limite por minuto, 5xx erro no servidor.
