Apresentando o Meeting BaaS v2

A próxima geração da nossa API — construída para escala, transparência e segurança

Paris, 5 de dezembro de 2025


Após 5 meses de desenvolvimento, temos o prazer de apresentar a Meeting BaaS API v2. É uma reimaginação completa do nosso backend, incluindo tanto a API pública quanto os serviços internos. A v2 aborda 90% dos desafios que enfrentamos com nossos usuários e desenvolvedores ao longo de 2 anos desenvolvendo o Meeting BaaS. Foi construída para suportar milhões de gravações por mês.

A API v2 está agora disponível com um dashboard completamente redesenhadoFaça login ou cadastre-se para acessar o dashboard v2.

Construído com Base no Seu Feedback

Os principais desafios que enfrentamos em escala, para nós e nossos usuários, incluíram:

  • gerenciar webhooks em escala,
  • lidar com erros de forma elegante,
  • necessidade de melhor visibilidade das operações
  • mais controle sobre segurança.

A API v2 oferece uma resposta para cada um desses obstáculos, com recursos para tornar a API mais poderosa.

Início Rápido com a v2

Começar com a API v2 é simples. Veja como enviar seu primeiro bot, usando o SDK oficial TypeScript ou HTTP puro:

install-sdk.sh
pnpm add @meeting-baas/sdk
send_bot_v2.ts
import { createBaasClient } from "@meeting-baas/sdk";

const client = createBaasClient({
  api_key: "YOUR_API_KEY",
});

async function sendBot() {
  const { success, data, error } = await client.joinMeeting({
    meeting_url: "https://meet.google.com/abc-defg-hij",
    bot_name: "Meeting Assistant",
    recording_mode: "speaker_view",
    transcription_enabled: true,
    transcription_config: {
      provider: "gladia",
    },
  });

  if (success) {
    console.log("Bot created:", data.bot_id);
  } else {
    console.error("Error creating bot:", error);
  }
}
send_bot_v2.sh
curl -X POST "https://api.meetingbaas.com/v2/bots" \
     -H "Content-Type: application/json" \
     -H "x-meeting-baas-api-key: YOUR_API_KEY" \
     -d '{
           "meeting_url": "https://meet.google.com/abc-defg-hij",
           "bot_name": "Meeting Assistant",
           "recording_mode": "speaker_view",
           "transcription_enabled": true,
           "transcription_config": {
             "provider": "gladia"
           }
         }'
send_bot_v2.py
import requests

response = requests.post(
    "https://api.meetingbaas.com/v2/bots",
    headers={
        "Content-Type": "application/json",
        "x-meeting-baas-api-key": "YOUR_API_KEY"
    },
    json={
        "meeting_url": "https://meet.google.com/abc-defg-hij",
        "bot_name": "Meeting Assistant",
        "recording_mode": "speaker_view",
        "transcription_enabled": True,
        "transcription_config": {"provider": "gladia"}
    }
)
# Response: {"success": true, "data": {"bot_id": "..."}}
print(response.json())

O Que Há de Novo na v2

Mais poder para Desenvolvedores:

  • Operações em Lote: Crie até 100 bots em uma única requisição com suporte a sucesso parcial — ideal para operações em massa
  • Filtragem Avançada: Parâmetros de query poderosos para listar bots e eventos, reduzindo a necessidade de filtragem no lado do cliente
  • Webhooks Abrangentes: Eventos de webhook detalhados para cada operação, com múltiplos endpoints para rotear diferentes eventos para diferentes sistemas
  • Códigos de Erro Padronizados: Códigos como FST_ERR_BOT_NOT_FOUND_BY_ID, FST_ERR_INSUFFICIENT_TOKENS, FST_ERR_BOT_ALREADY_EXISTS permitem um tratamento de erros programático simples
  • Documentação OpenAPI Aprimorada: Schemas OpenAPI completos para todos os endpoints, possibilitando melhor tooling e segurança de tipos. Você pode abrir ou baixar usando curl para seu LLM.
Meeting BaaS v2 Dashboard Preview

Segurança de Nível Empresarial

Embora ainda não sejamos conformes com SOC 2, a v2 foi projetada com segurança como foco principal. O código do nosso servidor está disponível como código-fonte sob contratos On-Prem e é regularmente revisado e auditado por nossos clientes empresariais.

  • Assinatura de Webhook: Todos os webhooks são assinados criptograficamente usando Svix, que hospedamos internamente em nossa infraestrutura, garantindo integridade e autenticidade das mensagens
  • Múltiplas Chaves de API: Crie chaves separadas para diferentes ambientes, serviços ou permissões — sem mais compartilhar uma única chave em toda a sua infraestrutura
  • Permissões Granulares: Controle de acesso refinado com chaves de "Acesso de Envio" para operações somente de escrita, ideal para isolar serviços de criação de bots
  • Rotação de Segredos: Se estiver hospedando o Meeting BaaS por conta própria, rotacione segredos de webhook sem downtime, atendendo requisitos de conformidade sem interrupção do serviço

Integração de Calendário Aprimorada

A integração de calendário na v2 foi reconstruída de ponta a ponta para tornar o agendamento e a automação em grande escala mais fáceis, mais confiáveis e muito mais transparentes.

  • Calendários em Todos os Planos: A integração de calendário agora está disponível em todos os planos, do Pay-as-you-go ao Enterprise, portanto, você não precisa mais de um contrato empresarial apenas para sincronizar eventos e acionar bots a partir de calendários.

  • Traga Suas Próprias Credenciais: Use seus próprios aplicativos OAuth para Google e Microsoft em vez de depender de integrações compartilhadas e opacas. Ao criar uma conexão via POST /v2/calendars, você fornece oauth_client_id, oauth_client_secret, oauth_refresh_token e raw_calendar_id, dando a você controle total sobre rotação de credenciais, telas de consentimento e postura de segurança.

  • Endpoints de Calendário Mais Ricos: A v2 expõe um conjunto completo de endpoints para gerenciar todo o ciclo de vida do calendário a partir do seu backend:

    • POST /v2/calendars – Cria conexões de calendário para usuários específicos ou contas de serviço
    • GET /v2/calendars / GET /v2/calendars/:calendar_id – Lista todas as conexões e inspeciona uma única conexão em detalhes
    • POST /v2/calendars/list-raw – Visualiza calendários do provedor antes de criar uma conexão, ideal para fluxos de vinculação de conta
    • POST /v2/calendars/:calendar_id/sync – Força uma ressincronização de eventos quando você precisa de consistência imediata
    • POST /v2/calendars/:calendar_id/bots – Agenda bots para eventos de calendário sem calcular os horários manualmente
    • PATCH /v2/calendars/:calendar_id / DELETE /v2/calendars/:calendar_id – Atualiza credenciais ou remove conexões de forma limpa
  • Suporte a Eventos e Séries: Você pode trabalhar com eventos únicos e séries recorrentes de forma uniforme usando:

    • GET /v2/calendars/:calendar_id/events – Lista os próximos eventos de um calendário
    • GET /v2/calendars/:calendar_id/events/:event_id – Busca detalhes completos de um evento específico
    • GET /v2/calendars/:calendar_id/series – Inspeciona séries recorrentes e suas instâncias
  • Sincronização em Tempo Real para Calendário Microsoft: A v2 adiciona capacidades de sincronização em tempo real para calendários Microsoft, de modo que as alterações nos calendários do Outlook e Microsoft 365 são refletidas no Meeting BaaS em segundos, em vez de minutos, tornando os fluxos de scheduleCalendarRecordEvent mais previsíveis.

  • Webhooks de Calendário Dedicados e Confiabilidade: Novos eventos de webhook como calendar.connection_created, calendar.connection_error, calendar.events_synced, calendar.event_created, calendar.event_updated, and calendar.event_cancelled oferecem uma visão clara da integridade da sincronização e das mudanças ao longo do tempo. Endpoints dedicados para reinscrição e ressincronização permitem que você se recupere rapidamente de problemas com o provedor sem intervenção manual.

  • Interface de Calendário Dedicada: O dashboard v2 inclui uma interface de calendário dedicada onde você pode inspecionar conexões, ver o status de sincronização e webhooks recentes, fazer debug de falhas e confirmar quais eventos têm bots associados — sem precisar vasculhar logs brutos.

  • Bots Vinculados a Eventos: Na v2, os bots agendados são cidadãos de primeira classe no fluxo do calendário. Você pode criar, atualizar e cancelar bots diretamente em eventos de calendário, o que elimina muito código de integração personalizado, reduz condições de corrida em torno de alterações de última hora e transforma "gravar cada standup neste calendário" em uma configuração de uma linha em vez de um workflow específico.

Uma Base para o Futuro

Melhor visibilidade sobre as operações do seu bot:

  • Respostas de Erro Padronizadas: Cada erro segue um formato {success, data, error} consistente com códigos de erro programáticos
  • Clareza sobre Rate Limit: Rate limits claros por equipe com mensagens de erro transparentes quando os limites são atingidos
  • Gerenciamento de Token: Visibilidade em tempo real sobre consumo, reserva e disponibilidade de token com dashboards de uso detalhados
  • Rastreamento de Entrega de Webhook: Monitore o status de entrega de webhook, visualize o histórico de mensagens e reenvie entregas com falha

Exemplo de estrutura de response da v2:

response_format.json
{
  "success": true,
  "data": {
    "bot_id": "123e4567-e89b-12d3-a456-426614174000",
    "status": "joining"
  }
}

Exemplo de response de erro:

error_response.json
{
  "success": false,
  "error": "Not Found",
  "message": "Bot with ID 'bot_abc123' not found",
  "code": "FST_ERR_BOT_NOT_FOUND_BY_ID",
  "statusCode": 404,
  "details": null
}

Eventos de Webhook na v2

A v2 fornece eventos de webhook abrangentes com estrutura de payload consistente:

webhook_bot_completed.json
{
  "event": "bot.completed",
  "data": {
    "bot_id": "123e4567-e89b-12d3-a456-426614174000",
    "meeting_url": "https://meet.google.com/abc-defg-hij",
    "raw_transcription": "https://s3.amazonaws.com/.../raw_transcription.json",
    "transcription": "https://s3.amazonaws.com/.../output_transcription.json",
    "transcription_ids": ["gladia-job-12345"],
    "transcription_provider": "gladia",
    "recording": "https://s3.amazonaws.com/.../recording.mp4"
  },
  "sent_at": "2025-12-05T11:01:45Z"
}

Novos tipos de eventos de webhook na v2:

Se você precisar se recuperar de problemas de entrega, pode reenviar o webhook final ou tentar novamente um callback de bot para um bot específico. Para uma visão completa dos payloads de callback e comportamento, consulte a documentação de Callbacks.

Operações em Lote

Crie múltiplos bots em uma única requisição com suporte a sucesso parcial:

batch_create.sh
curl -X POST "https://api.meetingbaas.com/v2/bots/batch" \
     -H "Content-Type: application/json" \
     -H "x-meeting-baas-api-key: YOUR_API_KEY" \
     -d '[
           {
             "meeting_url": "https://meet.google.com/abc-defg-hij",
             "bot_name": "Bot 1",
             "recording_mode": "speaker_view"
           },
           {
             "meeting_url": "https://zoom.us/j/123456789",
             "bot_name": "Bot 2",
             "recording_mode": "gallery_view"
           }
         ]'

Capacidades Adicionais

A v2 torna qualquer lógica de negócio que envolva bots de reunião escalável:

RecursoDescrição
DeduplicaçãoProteção integrada contra criação duplicada de bots com flag allow_multiple_bots configurável
Bots AgendadosEndpoints dedicados (/v2/bots/scheduled) com suporte completo a atualização, exclusão e lote
Transcrição AprimoradaIntegração com Gladia com suporte BYOK, resumos com LLM, tradução, vocabulário personalizado
Exclusão Automática de DadosRetenção baseada em plano (3 a 30 dias) com limpeza automática
Status em Tempo RealAtualizações de estado granulares com eventos de webhook bot.status_change
Armazenamento S3URLs pré-assinadas para todos os artefatos com gerenciamento automático de ciclo de vida
Design Focado em TimesTodos os recursos pertencem a times com funções de membro e limites por time
Sistema de SuporteSistema de tickets integrado vinculado a bots específicos com rastreamento de status
Novo DashboardInterface completamente redesenhada com visualização do histórico de status

O Que Vem a Seguir

Estamos desenvolvendo ativamente novos recursos com base no seu feedback.

  • Provedores de Transcrição Adicionais: Uma API unificada para todos os principais serviços de transcrição. Os provedores planejados incluem:
    • Deepgram
    • Gladia
    • Assembly AI
    • OpenAI Whisper
    • Speechmatics
    • Google Speech
    • Azure Speech
    • ... Como a transcrição na v2 é concebida com BYOK em primeiro lugar, cada requisição é executada em sua própria conta do provedor — todos os jobs, uso e faturamento permanecem visíveis no dashboard do provedor, e retornamos o ID de job exclusivo do provedor para que você possa cruzar logs, fazer debug de problemas e auditar atividades de ponta a ponta.
  • Armazenamento de Dados por Região: Armazene seus dados de reunião em regiões geográficas específicas para atender aos requisitos de conformidade e residência de dados
  • Captura de Vídeo em Visualização de Galeria: Gravação de vídeo aprimorada com modo de visualização em galeria para melhor cobertura de reuniões com múltiplos participantes

Migração Simplificada

Entendemos que migrar APIs pode ser uma tarefa significativa. Por isso, tornamos a transição o mais tranquila possível:

  • Operação Paralela: Tanto a v1 quanto a v2 rodam simultaneamente — migre no seu próprio ritmo
  • Guia de Migração Abrangente: Instruções passo a passo para mover da v1 para a v2
  • Importação de Token: Importe seus tokens v1 restantes para a v2 via dashboard — você pode importar múltiplas vezes conforme necessário
  • Mesma Autenticação: Use o header x-meeting-baas-api-key — nenhum novo fluxo de autenticação para aprender

Observação: Dados de bot, conexões de calendário e bots agendados da v1 não são migrados automaticamente. Você precisará recriar as conexões de calendário e os bots agendados na v2.

Comece Agora

A API v2 está disponível agora. Tanto a v1 quanto a v2 rodarão em paralelo, dando a você tempo para avaliar e migrar quando estiver pronto. Para novas integrações, recomendamos começar com a v2 para aproveitar todas as melhorias desde o primeiro dia.

Pronto para começar? Crie sua conta gratuita e faça o deploy do seu primeiro bot em minutos.

Recursos:

Dúvidas ou feedback? Adoraríamos ouvir você. A API v2 representa meses de trabalho, mas é apenas o começo. Seu feedback molda o que construímos a seguir.


© 2025 SAS SPOKE — Meeting BaaS (Meeting Bot as a Service) 🐟