Documentação para desenvolvedores
Segurança e dados
Gerencie chaves e permissões da API com segurança e veja quais notas cada integração pode acessar.
Gestão de chaves de API
- As chaves de API (
alt_live_...) são exibidas uma única vez na criação. Armazenamos apenas um hash com chave (keyed hash) do segredo, então ele nunca pode ser exibido de novo — se você perdê-lo, terá de rotacionar a chave. - Os segredos de assinatura de webhook (
whsec_...) também são exibidos uma única vez. Ficam armazenados criptografados (AES-256-GCM) e são descriptografados apenas para assinar as entregas — nunca são exibidos de novo. Para rotacionar, recrie o endpoint: um novo segredo é emitido. - Guarde as chaves em um gerenciador de segredos. Nunca as embuta em código client-side, apps móveis ou repositórios.
- Rotacione pelo console: emita uma nova chave na mesma integração, migre seus sistemas para ela e então revogue a chave antiga. A revogação tem efeito imediato.
- Se quiser, defina uma expiração ao criar a chave; chaves expiradas são rejeitadas automaticamente.
- Uma chave por sistema. Separe staging de produção para que revogar uma não quebre a outra.
- Não existe sandbox nem modo de teste — toda chave emitida é real e lê notas reais. Use integrações separadas para staging e produção e, para exercitar um receptor sem esperar por uma gravação real, conte com o evento de verificação enviado na criação de um endpoint ou com "Enviar evento de teste" no console.
Dados acessíveis por integração
- Uma integração pessoal enxerga apenas as notas pessoais do proprietário. Uma integração de espaço de equipe enxerga apenas as notas compartilhadas naquele espaço — nunca as notas pessoais dos membros.
- Integrações de espaço de equipe só podem ser criadas pelo proprietário do espaço.
- Notas fora do escopo de uma credencial retornam
404— a API não revela se elas existem. - Quando uma nota sai do seu escopo, você recebe
note.deleted (reason: access_lost)e ela desaparece das suas listagens. Exclua ou bloqueie o acesso à sua cópia armazenada.
Permissões (scopes)
| Permissão | Permite |
|---|---|
| notes:read | Listar notas e ler os metadados das notas. |
| transcripts:read | Ler o texto da transcrição e os segmentos por locutor. |
| summaries:read | Ler resumos (Markdown). |
| webhooks:manage | Criar, atualizar, excluir e testar endpoints de webhook pela API pública. |
Conceda apenas as permissões necessárias à integração. Uma requisição que exige uma permissão ausente na chave falha com 403 insufficient_scope.
Limites de requisições da API
- 120 requisições por minuto por chave. Ao ultrapassar esse limite, a resposta é
429 rate_limitedcom o cabeçalhoRetry-After— espere pelo menos esse tempo antes de tentar de novo. - Prefira webhooks com sincronização incremental (
updated_after) a loops de polling agressivos. - Use
ETag/If-None-Matchnas leituras de notas, transcrições e resumos — respostas304são baratas para todo mundo.
Privacidade
- Transcrições e resumos são conteúdo do usuário e podem conter dados pessoais. Busque apenas o que a sua integração precisa e proteja o que você armazenar.
- Respeite as exclusões: ao receber
note.deleted, exclua ou bloqueie o acesso à cópia armazenada, independentemente do motivo. Verifique periodicamente a lista completa de notas caso algum evento tenha sido perdido. - As URLs de webhook precisam ser endpoints HTTPS públicos. Endereços privados, de loopback e de metadados de nuvem são rejeitados, e redirecionamentos não são seguidos.
- O acesso à API exige uma assinatura ativa no workspace da integração; sem ela, as requisições falham com
403 plan_required. - Veja nossa Política de Privacidade para saber como o próprio Alt trata os dados dos usuários.