Skip to main content
Toda conexão Baileys começa chamando makeWASocket com um objeto SocketConfig. A maioria das opções tem valores padrão sensatos definidos em DEFAULT_CONNECTION_CONFIG.

Opções obrigatórias

auth

O único campo verdadeiramente obrigatório. Você deve passar um objeto AuthenticationState.
Quando uma mensagem é enviada ou recebida, sessões do Signal são atualizadas e authState.keys.set() é chamado. Se você não persistir essas atualizações imediatamente, mensagens vão falhar ao decifrar.

Identidade e navegador

browser

Controla como o Baileys se identifica para o WhatsApp. Use a constante Browsers em vez de escrever a tupla manualmente — é também o nome que aparece em Aparelhos conectados.
O navegador escolhido também afeta quanto histórico o WhatsApp envia na primeira sincronização. Identidades desktop recebem significativamente mais histórico que mobile.

Receber histórico completo de mensagens

Por padrão, o Baileys conecta com um perfil Chrome, o que limita quanto histórico o WhatsApp entrega. syncFullHistory já é true por padrão — o passo decisivo é trocar o preset de navegador para Browsers.macOS('Desktop'), que o WhatsApp trata como cliente desktop elegível para histórico estendido.
As mensagens de histórico chegam de forma assíncrona pelo evento messaging-history.set. Veja Sincronizar histórico de conversa.
Pedir histórico completo aumenta significativamente o tempo de inicialização e o uso de memória.

logger

Aceita qualquer logger compatível com pino. Passe level: 'debug' para ver cada frame binário.

Comportamento da conexão

markOnlineOnConnect

Padrão: true. Quando true, o Baileys se marca como online ao conectar. Defina false se quiser que o celular continue recebendo notificações.

syncFullHistory

Padrão: true. Pede ao celular para entregar o histórico completo. Se você só precisa de mensagens recentes, defina false.

printQRInTerminal

Esta opção está obsoleta. Use o evento connection.update para ler o campo qr e renderize você mesmo.

Confiabilidade de mensagens

getMessage

Callback que recebe um WAMessageKey e retorna a proto.IMessage. Necessário para reentregas e decifrar votos de enquete.

msgRetryCounterCache

Cache que conta quantas vezes o Baileys tentou reenviar.

maxMsgRetryCount

Padrão: 5.

Performance em grupos

cachedGroupMetadata


Filtragem de eventos

shouldIgnoreJid


Timeouts e keep-alive


generateHighQualityLinkPreview

Padrão: false. Quando true, o Baileys faz upload da miniatura para os servidores de mídia. Requer link-preview-js.

Exemplo pronto para produção