← Documentación

API

La API de Saykeeper da a scripts y asistentes acceso de lectura a tus reuniones. Una clave puede leer y preguntar, pero no puede crear, modificar ni eliminar nada.

Claves de API

Autorización

Envía la clave en la cabecera Authorization como token Bearer. Cada petición ve solo las reuniones del propietario de la clave.

Authorization: Bearer ntb_live_YOUR_KEY

URL base

https://api.saykeeper.com/v1

Endpoints que aceptan una clave de API

MétodoRutaQué devuelve
GET/meetings?limit=50Tus reuniones, de la más reciente a la más antigua (máx. 200, ?archived=true para las archivadas).
GET/meetings/search?q=budget&limit=20Búsqueda en títulos y transcripciones (filtros space_id, label_id, from, to).
GET/meetings/{id}Una reunión con su transcripción (interlocutores, tiempos) y los resultados de la IA.
GET/meetings/sharedReuniones que otras personas han compartido contigo.
GET/meetings/reportUna fila por cada reunión con sus interlocutores, para informes.
GET/meetings/{id}/chatPreguntas y respuestas guardadas en la reunión.
POST/meetings/{id}/chatUna pregunta sobre una reunión. Cuerpo {"message":"..."}.
GET/meetings/{id}/clipsClips recortados de la reunión.
GET/labelsTus etiquetas.
GET/settingsTus ajustes, incluido el idioma de la transcripción y de las notas.
POST/mcpServidor MCP (JSON-RPC sobre Streamable HTTP).

Grabar, subir archivos, modificar o eliminar reuniones, cambiar ajustes y gestionar claves o webhooks requieren la app con la sesión iniciada y responden 403 session_required a una clave.

Ejemplos

Últimas reuniones

curl "https://api.saykeeper.com/v1/meetings?limit=5" \
  -H "Authorization: Bearer ntb_live_YOUR_KEY"

Búsqueda

curl "https://api.saykeeper.com/v1/meetings/search?q=budget" \
  -H "Authorization: Bearer ntb_live_YOUR_KEY"

Una reunión con transcripción y notas

curl "https://api.saykeeper.com/v1/meetings/MEETING_ID" \
  -H "Authorization: Bearer ntb_live_YOUR_KEY"

Preguntar sobre una reunión

curl -X POST "https://api.saykeeper.com/v1/meetings/MEETING_ID/chat" \
  -H "Authorization: Bearer ntb_live_YOUR_KEY" \
  -H "Content-Type: application/json" \
  -d '{"message":"What did we agree on?"}'

Errores

400Entrada no válida, por ejemplo un código de idioma no compatible (unsupported_language).
401Clave ausente o no válida (missing_bearer_token, invalid_api_key).
403Requiere la app con la sesión iniciada (session_required) o no es tu reunión.
404No encontrado.
409La reunión todavía no tiene transcripción (no_transcript).
429Límite de frecuencia superado (rate_limited). Espera y vuelve a intentarlo.

Límites de frecuencia

QuéLímite
Preguntas sobre una reunión (POST /meetings/{id}/chat)20 / minuto
MCP ask_meeting y ask_meetings20 / minuto

Webhooks

Saykeeper puede llamar a tu URL cuando una reunión está lista. Añade webhooks en Ajustes, API y MCP. Cada envío se firma con el secreto del webhook.