Evolution API: Seu VPS Pronto para Automação WhatsApp (Passo a Passo)

8 min 142 Evolution Api
Resumir com:
ChatGPT Claude Gemini Perplexity Grok
Compartilhar:
WhatsApp LinkedIn X

Se este conteúdo faz parte do seu projeto

Escolha a VPS pelo uso, não pelo excesso

Para automações em produção, comece no Performance: 6 vCPU e 12 GB de RAM dão margem para banco, filas e múltiplos workflows.

PlanoRecursosMensalPerfil
Basic4 vCPU · 4 GB RAM · 100 GB NVMeR$ 99Site e projeto pequeno
Performance6 vCPU · 12 GB RAM · 150 GB NVMeR$ 169Produção e múltiplos serviços
Ultra8 vCPU · 20 GB RAM · 200 GB NVMeR$ 269Cargas maiores e mais margem
Prova técnica: no benchmark publicado da VM Performance, medimos 1.855 ev/s em 6 threads, 288 ev/s em 1 thread, 11.858 MiB/s de memória e 338 MB/s de escrita sequencial, com teste direto na VM e sem Cloudflare.
Escolher Performance Falar no WhatsApp

Valores mensais exibidos para referência. A renovação segue o ciclo e o preço vigente informado no checkout antes da contratação.

O Que é a Evolution API e Por Que Rodar em Self-Hosted?

A Evolution API é uma solução inovadora que oferece uma WhatsApp API alternativa e flexível, permitindo que você integre o WhatsApp em suas aplicações de forma autônoma. Diferente das APIs oficiais que podem ter limitações e custos escaláveis, a Evolution API é self-hosted, o que significa que você a instala e gerencia em sua própria infraestrutura. Isso proporciona controle total sobre seus dados, segurança e custos operacionais. Na Host You Secure, já auxiliamos diversos clientes a migrarem de soluções pagas para a autonomia da Evolution API em seus próprios servidores, resultando em maior flexibilidade e economia. Se você busca automatizar o atendimento, enviar notificações em massa ou integrar o WhatsApp ao seu CRM sem depender de terceiros, rodar a Evolution API em um VPS é o caminho ideal.

Benefícios da Autonomia com Evolution API

  • Controle Total: Gerencie seus dados, instâncias e configurações sem restrições de provedores externos.
  • Custo-Benefício: Uma vez configurado em seu VPS, os custos são previsíveis e geralmente inferiores a soluções SaaS.
  • Personalização Avançada: Adapte a API às suas necessidades específicas, integrando-a com outras ferramentas e sistemas.
  • Segurança Reforçada: Mantenha seus dados dentro do seu ambiente seguro, reduzindo riscos de exposição.

Requisitos Essenciais para a Evolution API

Para rodar a Evolution API de forma eficiente, especialmente em um ambiente de produção, alguns requisitos de servidor são cruciais. Recomendo um VPS com pelo menos 4GB de RAM e 4 vCPUs para uma operação estável. O armazenamento deve ser suficiente para os contêineres Docker e os dados gerados pela API; um disco de 20GB é um bom ponto de partida, mas pode variar dependendo do volume de mensagens e contatos. É fundamental ter um sistema operacional Linux atualizado, como o Ubuntu LTS (long-term support), e o Docker e Docker Compose instalados. A porta 8080 é comumente usada pela Evolution API, mas pode ser configurada, garantindo que esteja aberta no firewall do seu servidor.

Tutorial de Deploy da Evolution API em VPS Ubuntu

Este tutorial detalha o processo de instalação da Evolution API em um ambiente Ubuntu utilizando Docker e Docker Compose. Assumimos que você já tem um VPS com acesso SSH e `sudo` e que o Docker e Docker Compose estão instalados. Se precisar de ajuda com a instalação do Docker, consulte a documentação oficial ou nossos guias sobre como instalar Docker em VPS.

Passo 1: Preparando o Ambiente no Servidor

Primeiro, vamos criar um diretório para a configuração da Evolution API e navegar até ele. Em seguida, criaremos o arquivo `docker-compose.yml`, que definirá os serviços necessários para rodar a API, incluindo o banco de dados (geralmente MongoDB ou PostgreSQL, dependendo da versão e configuração desejada) e a própria aplicação Evolution API.


sudo mkdir evolution-api
sudo cd evolution-api
# Criar o arquivo docker-compose.yml será feito no próximo passo

Passo 2: Configurando o Docker Compose

Este é o coração da nossa implantação. O arquivo `docker-compose.yml` abaixo é um exemplo prático. Ele define os serviços necessários: a própria Evolution API e um banco de dados MongoDB. Adapte as variáveis de ambiente (`environment:`) conforme suas necessidades de segurança e configuração.


version: '3.8'

services:
  evolution-api:
    image: evolution-api/evolution-api:latest
    container_name: evolution-api
    ports:
      - "8080:8080"
    volumes:
      - ./data:/app/data
    environment:
      - APP_PORT=8080
      - MONGO_URL=mongodb://mongo:27017/evolution
      - SESSION_SECRET=sua_secret_aqui_bem_longa_e_aleatoria
      - JWT_SECRET=sua_jwt_secret_aqui_bem_longa_e_aleatoria
      - JWT_EXPIRES_IN=7d
      - LOG_LEVEL=debug
      # Outras variáveis de configuração podem ser adicionadas aqui
    depends_on:
      - mongo
    restart: unless-stopped

  mongo:
    image: mongo:latest
    container_name: evolution-mongo
    volumes:
      - mongo-data:/data/db
    ports:
      - "27017:27017"
    restart: unless-stopped

volumes:
  mongo-data:

Passo 3: Iniciando os Contêineres

Com o arquivo `docker-compose.yml` configurado, navegue até o diretório onde você o salvou e execute o comando para iniciar os serviços. O Docker Compose baixará as imagens necessárias e iniciará os contêineres em segundo plano. Em poucos minutos, sua Evolution API estará rodando.


docker-compose up -d

Após a execução deste comando, você pode verificar o status dos contêineres com `docker ps`. A API estará acessível em http://SEU_IP_DO_VPS:8080. Lembre-se de configurar o firewall do seu servidor para permitir o tráfego na porta 8080.

Configurações Essenciais e Primeiros Passos

Uma vez que os contêineres estejam rodando, o próximo passo é conectar sua instância do WhatsApp à Evolution API. Isso geralmente envolve escanear um QR code gerado pela API usando seu aplicativo WhatsApp no celular. Acesse a documentação oficial da Evolution API para os endpoints específicos de conexão e gerenciamento de instâncias. É crucial definir senhas fortes e únicas para `SESSION_SECRET` e `JWT_SECRET` diretamente no arquivo `docker-compose.yml` antes de iniciar os contêineres em produção.

Gerenciando Instâncias e Webhooks

A Evolution API permite gerenciar múltiplas instâncias do WhatsApp a partir de um único servidor, ideal para empresas com diferentes números ou departamentos. Cada instância terá seu próprio QR code para conexão inicial. Além disso, a configuração de webhooks é fundamental para que sua aplicação receba notificações em tempo real sobre novas mensagens, status de envio e outros eventos. Defina um URL de webhook na configuração da API para que ela envie dados para sua aplicação principal (ex: um N8N, um backend customizado ou um chatbot).

Comparativo: Evolution API vs. Outras Soluções WhatsApp

Recurso Evolution API (Self-Hosted) APIs Oficiais/SaaS
Custo Custo fixo do VPS + baixo custo de manutenção Custo por contato/mensagem, planos escaláveis, potencialmente altos
Controle de Dados Total controle no seu servidor Dependente do provedor, dados em nuvem externa
Flexibilidade e Customização Alta (você gerencia o código e infra) Limitada pelas APIs e planos do provedor
Implantação Requer conhecimento técnico (Docker, VPS) Geralmente simples, via painel ou SDK
Escalabilidade Depende da capacidade do seu VPS, pode exigir otimizações Escala automaticamente com o provedor, mas pode custar caro
Manutenção Responsabilidade sua (atualizações, segurança) Gerenciada pelo provedor

Erros Comuns e Soluções na Implantação

Um erro frequente é não alocar recursos suficientes no VPS. Se sua Evolution API estiver lenta ou caindo, verifique o consumo de RAM e CPU. O limite mínimo de 4GB de RAM e 4 vCPUs é recomendado para produção, mas dependendo do volume, pode ser necessário mais. Outro ponto é a configuração de rede: certifique-se de que as portas estejam abertas no firewall do servidor e no provedor do VPS, e que o `docker-compose.yml` esteja mapeando as portas corretamente (ex: 8080:8080).

Problemas de Conexão com o WhatsApp

Se o QR code não está aparecendo ou a conexão falha, revise as variáveis de ambiente no `docker-compose.yml`, especialmente `MONGO_URL`, `SESSION_SECRET` e `JWT_SECRET`. Reinicie os contêineres após qualquer alteração. Verifique também os logs da Evolution API com docker logs evolution-api para identificar mensagens de erro específicas.

Segurança da sua Instância

É vital proteger sua instância da Evolution API. Use segredos fortes e não os exponha publicamente. Considere colocar um proxy reverso (como Nginx) na frente da sua API para gerenciar certificados SSL (HTTPS) e adicionar camadas de segurança. Mantenha as imagens do Docker atualizadas para corrigir vulnerabilidades de segurança conhecidas.

Perguntas Relacionadas

É preciso ter um número de telefone dedicado para a Evolution API?

Sim, você precisará de um número de telefone ativo, que pode ser um número virtual ou um chip de celular, para registrar e autenticar sua instância na Evolution API. Este número será o ponto de contato para suas automações no WhatsApp.

O que são Webhooks na Evolution API?

Webhooks são URLs configuradas na Evolution API para onde ela envia dados em tempo real sobre eventos, como novas mensagens recebidas, status de envio e leitura. Sua aplicação (chatbot, sistema de CRM) escuta esses webhooks para reagir às interações.

Otimizando Performance e Escala

Para otimizar a performance da Evolution API, além de garantir recursos adequados no VPS (CPU, RAM), é importante monitorar o banco de dados. Se estiver usando MongoDB, certifique-se de que ele esteja configurado corretamente e que índices estejam sendo usados. A versão mais recente da imagem da Evolution API geralmente traz melhorias de performance e correções de bugs.

Monitoramento da Infraestrutura

Implemente ferramentas de monitoramento no seu VPS, como Uptime Kuma ou Prometheus/Grafana, para acompanhar a saúde dos contêineres da Evolution API e do banco de dados. Isso permite identificar gargalos ou problemas antes que afetem seus usuários. Monitore o uso de recursos do servidor (CPU, RAM, Disco) e os logs da aplicação para diagnóstico.

Conclusão: Assuma o Controle da sua Automação WhatsApp

Implementar a Evolution API em seu próprio VPS é uma decisão estratégica para empresas que buscam controle, flexibilidade e economia em suas operações de WhatsApp. Com este guia, você tem o conhecimento e os passos práticos para iniciar seu projeto de automação. Lembre-se que a escolha do servidor é crucial para a performance e estabilidade da sua API.

Recomendação de Infraestrutura: VPS Brasil Básico

Para rodar a Evolution API com sucesso, recomendamos nosso plano VPS Brasil Básico. Com 4GB de RAM e 4 vCPUs, ele oferece o poder computacional necessário para a maioria das implementações iniciais e de médio porte da Evolution API. Rodamos esse exato setup em uma VPS Brasil Básico, garantindo que ela é perfeitamente adequada para a tarefa. Comece sua automação hoje mesmo com um ambiente confiável e acessível!

Pronto para ter sua própria WhatsApp API? Contrate agora o seu VPS Brasil Básico e dê o primeiro passo para uma automação poderosa e sob seu controle.

Perguntas Frequentes

A Evolution API é uma solução self-hosted que você instala em seu próprio servidor, oferecendo mais controle e flexibilidade. A API oficial do WhatsApp Business, por outro lado, é um serviço fornecido pelo Meta (Facebook), geralmente com custos baseados no uso e com maior controle e padronização, mas menos flexibilidade para customizações profundas.

Sim, você pode usar um número de telefone pessoal ou comercial para registrar sua instância na Evolution API. O número precisa ser capaz de receber SMS ou chamadas para verificação. Números que já estão em uso no aplicativo WhatsApp comum precisarão ser desvinculados antes de serem usados com a Evolution API.

A segurança depende da sua configuração. Ao rodar a Evolution API em seu próprio VPS, você tem controle total sobre as medidas de segurança. É crucial manter seu servidor atualizado, usar senhas fortes, configurar firewalls corretamente e, idealmente, usar um proxy reverso com HTTPS. A segurança é sua responsabilidade, mas o potencial de controle é maior.

Teoricamente, você pode rodar múltiplas instâncias do WhatsApp com a Evolution API no mesmo servidor, desde que sua infraestrutura (CPU, RAM, rede) suporte a carga. Cada instância exigirá recursos e será configurada separadamente dentro do seu ambiente Docker.

A Evolution API expõe endpoints RESTful, o que a torna compatível com praticamente qualquer linguagem de programação que possa fazer requisições HTTP. Exemplos comuns incluem Node.js, Python, PHP, Java, Ruby e C#. Você pode integrá-la com qualquer sistema ou framework.

A principal forma de receber mensagens é configurando webhooks. Você define uma URL em sua aplicação que a Evolution API chamará sempre que uma nova mensagem chegar. Sua aplicação, nesse endpoint, receberá os dados da mensagem e poderá processá-los conforme necessário.

Sim, a Evolution API suporta o envio e recebimento de diversos tipos de mídia, como fotos, vídeos, áudios, documentos e localização. A documentação da API detalha os endpoints e formatos necessários para lidar com o envio e recebimento desses arquivos.

Se o seu VPS ficar offline, sua instância da Evolution API também ficará indisponível. Isso significa que você não poderá enviar ou receber mensagens pelo WhatsApp conectado a ela. É por isso que a escolha de um provedor de VPS confiável e a configuração de reinício automático dos contêineres Docker (como feito com `restart: unless-stopped` no `docker-compose.yml`) são essenciais.

Comentários (5)

4.6
5 avaliações
Leonardo Rocha

Estava com problemas na escalabilidade do WhatsApp Business API até ler este artigo. As configurações de pool de conexões resolveram tudo! Tem algum repositório GitHub de referência com esse setup?

Thiago Fernandes

A separação de instâncias por processo e o uso de webhook assíncrono deixaram a Evolution API super estável aqui. Valeu pelo guia!

João Costa

As dicas de retry e fallback foram essenciais para nosso sistema de notificações. Reduziu as falhas de entrega de 15% para 2%.

Mateus Lopes

Estava com delay de 40 segundos no recebimento de mensagens, ajustei os parâmetros de polling e socket como indicado e agora chega instantâneo.

Rafael Silva

Excelente guia! Implementei para um cliente que tem 5000 contatos e agora consegue enviar mensagens em massa sem bloqueios.