Documentación para desarrolladores

Seguridad y datos

Gestione las claves de API y los permisos de forma segura, y compruebe a qué notas puede acceder cada integración.

Gestión de claves de API

  • Las claves de API (alt_live_...) se muestran una sola vez al crearlas. Solo almacenamos un hash con clave del secreto, así que nunca se puede volver a mostrar: si la pierde, tendrá que rotarla.
  • Los secretos de firma de webhooks (whsec_...) también se muestran una sola vez. Se almacenan cifrados (AES-256-GCM) y solo se descifran para firmar las entregas salientes; nunca se vuelven a mostrar. Para rotarlos, vuelva a crear el endpoint: se emitirá un secreto nuevo.
  • Guarde las claves en un gestor de secretos. No las incruste nunca en código de cliente, apps móviles ni repositorios.
  • Rote desde la consola: emita una clave nueva en la misma integración, migre sus sistemas y después revoque la clave antigua. La revocación surte efecto de inmediato.
  • Si lo desea, defina una caducidad al crear la clave; las claves caducadas se rechazan automáticamente.
  • Una clave por sistema. Separe staging de producción para que revocar una no rompa la otra.
  • No hay sandbox ni modo de prueba: todas las claves que emita son reales y leen notas reales. Use integraciones distintas para staging y producción y, para probar un receptor sin esperar a una grabación real, apóyese en el evento de verificación que se envía al crear un endpoint o en "Enviar evento de prueba" de la consola.

Datos accesibles para cada integración

  • Una integración personal solo ve las notas personales de su propietario. Una integración de teamspace solo ve las notas compartidas en ese teamspace, nunca las notas personales de sus miembros.
  • Las integraciones de teamspace solo las puede crear el propietario del teamspace.
  • Las notas fuera del ámbito de una credencial devuelven 404: la API no revela si existen.
  • Cuando una nota sale de su ámbito, recibe note.deleted (reason: access_lost) y la nota desaparece de sus listados. Borre su copia almacenada o bloquee el acceso a ella.

Permisos (scopes)

PermisoPermite
notes:readListar notas y leer sus metadatos.
transcripts:readLeer el texto de las transcripciones y los segmentos por hablante.
summaries:readLeer resúmenes (Markdown).
webhooks:manageCrear, actualizar, eliminar y probar endpoints de webhook desde la API pública.

Conceda solo los permisos que necesite la integración. Una petición que requiera un permiso no concedido a la clave falla con 403 insufficient_scope.

Límites de solicitudes de API

  • 120 peticiones por minuto y clave. Al superarlo se devuelve 429 rate_limited con una cabecera Retry-After: espere al menos ese tiempo antes de reintentar.
  • Prefiera los webhooks junto con la sincronización incremental (updated_after) antes que los bucles de polling agresivos.
  • Use ETag / If-None-Match al leer notas, transcripciones y resúmenes: las respuestas 304 salen baratas para todos.

Privacidad

  • Las transcripciones y los resúmenes son contenido del usuario y pueden contener datos personales. Obtenga solo lo que su integración necesite y proteja lo que almacene.
  • Respete las eliminaciones: al recibir note.deleted (por cualquiera de los dos motivos), borre su copia almacenada o bloquee el acceso a ella. Reconcilie periódicamente por si ha perdido el evento.
  • Las URL de webhook deben ser endpoints HTTPS públicos. Se rechazan las direcciones privadas, de loopback y de metadatos de nube, y no se siguen redirecciones.
  • El acceso a la API requiere una suscripción activa en el espacio de trabajo de la integración; sin ella, las peticiones fallan con 403 plan_required.
  • Consulte nuestra Política de privacidad para saber cómo trata Alt los datos de los usuarios.