Desarrolladores

Calab como plataforma

Los bots, los agentes de IA y tus propias aplicaciones usan la misma API que Calab: chat, tareas, calendario y voz.

Bots

Un bot es un miembro más

Crea un bot en los ajustes del espacio y dale un rol: usa la misma API que la aplicación — chats, tareas, calendario, miembros y voz.

  • Chat

    Lee y escribe mensajes en todas las salas y mensajes directos a los que accede, responde, reacciona, envía archivos y stickers. Los eventos llegan en tiempo real por WebSocket.

  • Tareas

    Crea y edita tareas en los tableros, asigna personas, comenta y busca. El bot ve un tablero como lo vería una persona con el mismo rol.

  • Voz

    Entra en una sala de voz con LiveKit: oye a los participantes y habla — texto a voz, eco, música, grabación. En Node, Python o Go.

  • Calendario

    Programa y mueve reuniones, consulta libre/ocupado y busca hora para varias personas. El bot es el organizador; los correos salen «de parte del bot».

  • Miembros

    Abre el perfil de un miembro con sus tareas abiertas, lo renombra, invita por enlace y correo, da insignias — dentro de los permisos del rol.

  • Grabación de reuniones

    Inicia y detiene la grabación de una sala de voz: la transcripción y el resumen llegan como tarjeta al chat. Requiere el permiso «Grabaciones».

  • Comandos y botones

    Registra /comandos que el editor sugiere con «/» y añade botones bajo los mensajes: una pulsación llega al bot como evento.

  • Webhook

    Sin conexión permanente: los eventos llegan como POST con firma HMAC y reintentos ante fallos. Cómodo para serverless.

Los permisos vienen de los roles, como para las personas: un bot solo ve las salas a las que tiene acceso.

MCP

MCP: conecta cualquier LLM a Calab

Claude, un agente del IDE o tu propio modelo trabajan en Calab como un bot: buscan, leen, crean tareas y escriben en las salas. El cliente solo necesita una dirección y el token del bot.

  • Un solo endpoint

    POST /api/mcp: el Model Context Protocol sobre HTTP. Sin adaptadores ni sesiones.

  • Acceso con token de bot

    El token del bot va en la cabecera Authorization. Los tokens de personas se rechazan.

  • Los derechos del bot, ni uno más

    La herramienta llama a la API normal con el mismo token: los mismos permisos y límites; los tableros y salas privados siguen cerrados.

  • Ahorra tokens

    Descripciones de una línea y respuestas compactas; el objeto completo, solo si se pide.

# Streamable HTTP
url: https://app.calab.io/api/mcp
Authorization: Bearer calab_bot_…

Seis herramientas

  • find — buscar tareas, mensajes, salas y tableros
  • read — leer una tarea o los mensajes de una sala
  • create_task — crear una tarea
  • comment_task — comentar una tarea
  • set_task_status — cambiar el estado de una tarea
  • send_message — escribir en una sala

El token del bot se muestra una sola vez, al crearlo.

@calaba/bot-sdk

SDK de TypeScript

Comandos, botones, eventos y voz con unas pocas líneas de código.

import { Bot } from '@calaba/bot-sdk';const bot = new Bot(process.env.BOT_TOKEN, {  server: 'https://app.calab.io',});await bot.commands([{ name: 'standup', description: 'Start' }]);// "/standup" → a message with a buttonbot.on('command', (c) =>  bot.send(c.message.roomId, {    text: 'Stand-up time. Record it?',    inlineKeyboard: { rows: [{ buttons: [      { id: 'rec', label: 'Record', data: 'standup' },    ] }] },  }),);// pressed → start the meeting recordingbot.on('callback', (cb) => {  if (cb.buttonId === 'rec') bot.recording.start(cb.roomId);});await bot.start();
Un bot de reunión diaria en TypeScript. El bot eco, los ejemplos de voz y un oyente en Python están en examples/bots. La referencia completa de endpoints y eventos está en la documentación.

Webhooks

Eventos sin conexión permanente: una petición POST firmada con HMAC y reintentos si algo falla.

  • Webhook del bot: mensajes, reacciones, tareas, reuniones, botones
  • Firma HMAC-SHA256 en la cabecera X-Calab-Signature
  • Reintentos ante fallos y cola de eventos
  • Webhook del tablero: cada cambio en las tareas (plan Business y superiores)

OAuth 2.0 · OpenID Connect

Iniciar sesión con Calab

OAuth 2.0 y OpenID Connect: tus servicios internos dejan entrar a los empleados con su cuenta de Calab.

  • Authorization Code + PKCE (S256)
  • Pantalla de consentimiento con permisos
  • userinfo, refresh y revocación de tokens
  • Los clientes se crean en los ajustes del espacio