Programa Builders

Construa com a gente por um mês inteiro. Uso e add-ons ilimitados, chamadas semanais e seu próprio canal no Slack.

Saiba mais
Polymorfa

Polymorfa vs whatsapp-web.js

Nós mantemos o whatsapp-web.js. A Polymorfa não roda navegador nenhum.

A Polymorfa conecta números com um cliente de protocolo nos próprios servidores e entrega uma API HTTP, webhooks assinados e chamadas pelo código. Não há Chrome para hospedar, atualizar ou escalar por número.1,2,3

Roda para cada número conectado
whatsapp-web.js
Um navegador Chromium ou Chrome
Polymorfa
Nada nos seus servidores

Do mantenedor do whatsapp-web.js.

O fundador da Polymorfa, Rajeh Taher, mantém o whatsapp-web.js, então sabemos quanto custa operar um navegador por número: memória, uma instalação separada do Chrome para vídeo, arquivos de sessão e quebras depois de atualizações do WhatsApp Web. A Polymorfa elimina essa camada inteira. Os seus números pareiam pelo QuickLink e o seu código envia por HTTP.4,1

Linked Devices e a Cloud API oficial, em uma só API.5
2 rotas
Por mensagem. Um número gasta créditos só nos dias em que fica online.6
US$ 0
De fazer e atender chamadas: no navegador, no código do servidor com o áudio bruto e no seu PABX via SIP.3,7
3 formas
No servidor MCP hospedado, para agentes que operam o WhatsApp.8
195 ferramentas

Três motivos para equipes saírem do whatsapp-web.js

  1. 01

    Nenhum navegador para rodar por número

    A Polymorfa roda as sessões e guarda as chaves delas. O seu código envia por HTTP.1

    whatsapp-web.js: O whatsapp-web.js roda o WhatsApp Web em um navegador controlado pelo Puppeteer, e enviar vídeo exige o Google Chrome.9 Você roda esse navegador, mantém ele atualizado e guarda a sessão com uma estratégia de autenticação.10

    wwebjs.js
    const { Client, LocalAuth } = require('whatsapp-web.js')
    
    const client = new Client({ authStrategy: new LocalAuth() })
    client.on('ready', async () => {
      await client.sendMessage('15550001111@c.us', 'Your order shipped.')
    })
    client.initialize()
    polymorfa.sh
    curl -X POST https://api.polymorfa.com/messaging/support/messages/send \
      -H "Authorization: Bearer $POLYMORFA_API_KEY" \
      -H "Idempotency-Key: order-1042-shipped" \
      -H "Content-Type: application/json" \
      -d '{"conversation":{"phoneNumber":"+15550001111"},"content":{"text":"Your order shipped."}}'
  2. 02

    Webhooks e novas tentativas incluídos

    A Polymorfa assina cada entrega com HMAC-SHA256 e faz até oito tentativas de entrega ao longo de 24 horas, configuradas por webhook.2 Um envio com um Idempotency-Key repetido em até 24 horas retorna 409 e não envia de novo.11

    whatsapp-web.js: O whatsapp-web.js entrega eventos dentro do seu processo. Encaminhá-los para outros serviços, assiná-los e tentar novamente as falhas fica para você construir.9

  3. 03

    Chamadas pelo código e por SIP

    A Polymorfa faz e atende chamadas no navegador, no código do servidor que lê e escreve o áudio, ou no seu PABX por um tronco SIP. Números Linked Devices também recebem chamadas de vídeo e em grupo.3,7

    whatsapp-web.js: O whatsapp-web.js representa uma chamada recebida como um objeto Call cujo único método é reject().12

Um só saldo de créditos. Só os dias em que o número fica online.

Um só saldo de créditos paga todos os números da sua equipe, e um número gasta créditos só nos dias UTC em que fica online.6 O bônus mensal faz parte do preço: compre 100.000 créditos em um mês e receba 250.000.13

Créditos bônus sobre toda a compra do mês, todo mês

+10%
a partir de 10.000 créditos
+25%
a partir de 20.000 créditos
+75%
a partir de 50.000 créditos
+150%
a partir de 100.000 créditos

O que a Polymorfa oferece e o whatsapp-web.js não

Polymorfa e whatsapp-web.js
RecursoPolymorfawhatsapp-web.js
Link de conexão hospedado para seus clientesQuickLink4Você constrói9
Envios idempotentesChaves de 24 horas11Você constrói9
Armazenamento de mídiaHospedado14Você constrói9
Fazer e atender chamadas pelo códigoNavegador, servidor, SIP3Sem suporte12
Tronco SIP para o seu PABXNos dois sentidos7Você constrói9
API REST com especificação OpenAPIOpenAPI 3.115Biblioteca no seu processo
Webhooks assinados com novas tentativasHMAC-SHA2562Você constrói9
Contas de clientes para builders de SaaSCustomers API16Você constrói9

Migre do whatsapp-web.js em uma tarde

  1. 01

    Crie um projeto e uma chave de API

    Cadastre-se, crie um projeto e gere uma chave de API no Console.17

  2. 02

    Pareie cada número de novo

    Envie um QuickLink para parear por QR ou código de pareamento.4 Desconecte antes o cliente do whatsapp-web.js, para que dois dispositivos conectados não disputem o número.

  3. 03

    Troque as chamadas ao cliente

    Migre cada chamada sendMessage para o endpoint de envio da Polymorfa e adicione um Idempotency-Key.1

Perguntas

Como migro os meus números do whatsapp-web.js?

Pareie cada número de novo com o QuickLink, por QR ou código de pareamento. A importação de sessões cobre sessões do Baileys como recurso em prévia e dispositivos do whatsmeow por uma migração assistida, não sessões do whatsapp-web.js.18,4

Como a Polymorfa conecta um número sem navegador?

Ela conecta números Linked Devices com um cliente de protocolo que roda nos servidores dela, e o seu código chega até eles por HTTP e webhooks.1,2

Deixe a infraestrutura do WhatsApp com a gente.

Comece grátis

Compare também: Baileys, whatsmeow