Changelog
Mudanças que quebram uma versão já publicada são anunciadas antes de entrar. Mudanças aditivas — campo novo, endpoint novo, código de erro novo — podem chegar a qualquer momento, então faça parse defensivo: ignore campos que você não reconhece.
Não publicado — primeira entrega
Seção intitulada “Não publicado — primeira entrega”A versão v1 ainda não foi liberada para parceiros. O que segue é a forma da
primeira entrega.
Ferramentas
- Um servidor MCP oficial acompanha a v1:
@salesbud/mcpno npm, uma tool por operação pública de leitura, para Claude Desktop, Claude Code e Cursor. Ele é cliente desta API e não acrescenta capacidade nenhuma. Veja Servidor MCP.
Recursos
- Ligações são coleção própria em
/v1/calls, com identificadorescall_. Um registro capturado por integração de VoIP temobject: "call"; o resto émeeting. Ids não resolvem entre coleções. - As cinco rotas são espelhadas nas duas coleções: listar, obter, transcrição, respostas de template e avaliação geral.
- A ligação não carrega
bot_history: captura de VoIP não tem bot de gravação, então o campo é omitido em vez de voltar vazio, e um schema que valida ligação o recusa.enablement.meeting_typefica e costuma virnull— esse nulo é legítimo, diferente do bot. - Conversas de WhatsApp dos vendedores da empresa são uma coleção em
/v1/whatsapp, com identificadoreswa_e mensagenswamsg_, atrás dewhatsapp.read(metadado) ewhatsapp.content.read(texto sanitizado, metadado de mídia, transcrição de áudio).last_message_atsó anda com mensagem nova, então releia as mensagens para ver edições e apagamentos; mensagem apagada fica como lápide. Filtros de data comparam em segundos inteiros. Veja WhatsApp.
Erros
- O envelope de erro é
{ type, title, detail, code, request_id }. Todo campo é snake_case; o status HTTP fica na status line e não se repete no corpo. Ramifique pelocode. POST /oauth/tokenmantém o formato de erro do OAuth 2.0 exigido pela RFC 6749 §5.2.
Paginação e filtros
- Os cursores são assinados e ordenados por id crescente; eles amarram os filtros da requisição que os gerou.
updated_after,updated_beforeesnapshot_atforam removidos. Sem carimbo dedicado de visibilidade não há sync incremental honesto; reconsulte por período. Oupdated_atcontinua nas respostas, como informativo.- Os filtros de data são
meeting_afteremeeting_before. Versões anteriores também aceitavammeeting_at_fromemeeting_at_to; eles nunca chegaram a parceiro e foram removidos, em vez de nascerem descontinuados.
Acesso
- A API é gateada pela feature
API_ACCESSda empresa, verificada na emissão de token e na criação de credencial. - Emails e domínios de conta são normalizados para minúsculo em todos os campos, então um endereço pode ser usado como chave de junção independentemente de onde apareça.