Evolution API is an open-source WhatsApp integration API https://evolutionfoundation.com.br
  • TypeScript 98.9%
  • Shell 0.6%
  • JavaScript 0.3%
  • Dockerfile 0.1%
Find a file
Davidson Gomes fa09d37892 docs(org): update nested submodule URLs from EvolutionAPI to evolution-foundation
Co-Authored-By: Claude Opus 4.7 (1M context) <noreply@anthropic.com>
2026-05-06 14:38:27 -03:00
.cursor/rules chore(rules): update input validation standards to use JSONSchema7 and add commit standards 2025-09-17 15:47:26 -03:00
.github fix: baileys and chatwoot 2025-10-29 22:52:20 -03:00
.husky feat: add code quality tools and security policy 2025-09-17 15:05:17 -03:00
.vscode Revert "V2 fix chatwoot reply quote" 2024-09-05 09:26:33 -03:00
Docker fix: baileys and chatwoot 2025-10-29 22:52:20 -03:00
evolution-manager-v2@3137df4695 docs(org): update GitHub URLs from EvolutionAPI to evolution-foundation 2026-05-06 14:35:53 -03:00
Extras/chatwoot chore: adjusts in docker files 2024-08-09 07:17:09 -03:00
manager/dist chore(manager): update asset files and install process 2025-10-15 09:44:15 -03:00
prisma fix(migration): add deduplication step before creating index 2025-11-21 22:09:15 -03:00
public chore(docs): standardize README, LICENSE, NOTICE, TRADEMARKS to Evolution Foundation 2026 2026-05-06 13:52:44 -03:00
src style(whatsapp): fix indentation and remove unnecessary blank lines in BaileysStartupService 2025-12-05 11:03:52 -03:00
.dockerignore Remove package-lock.json do .gititnore 2025-07-09 18:56:32 -03:00
.DS_Store fix(events): guard extra spread and prevent core field override 2025-11-26 15:48:53 -03:00
.env.example feat(kafka): add Kafka integration for event streaming 2025-09-18 15:44:56 -03:00
.eslintignore init project evolution api 2023-06-09 07:48:59 -03:00
.eslintrc.js refactor(eslint): change unused vars rule to error and update error handling in services 2025-09-18 14:59:33 -03:00
.gitignore feat: add project guidelines and configuration files for development standards 2025-09-17 15:43:32 -03:00
.gitmodules docs(org): update nested submodule URLs from EvolutionAPI to evolution-foundation 2026-05-06 14:38:27 -03:00
.prettierrc.js wip 2023-07-26 11:12:00 -03:00
AGENTS.md docs(agents.md and claude.md): update and expand AI Agent guidelines in AGENTS.md and CLAUDE.md 2025-09-17 15:54:39 -03:00
CHANGELOG.md chore: changelog v2.3.7 2025-12-05 11:28:40 -03:00
CLAUDE.md docs(agents.md and claude.md): update and expand AI Agent guidelines in AGENTS.md and CLAUDE.md 2025-09-17 15:54:39 -03:00
commitlint.config.js chore(commitlint): increase body and footer line length limits to 150 characters 2025-09-17 16:52:03 -03:00
CONTRIBUTING.md docs(org): update GitHub URLs from EvolutionAPI to evolution-foundation 2026-05-06 14:35:53 -03:00
docker-compose.dev.yaml chore(docker): add Kafka and frontend services to Docker configurations 2025-09-23 18:40:19 -03:00
docker-compose.yaml chore(docker): add Kafka and frontend services to Docker configurations 2025-09-23 18:40:19 -03:00
Dockerfile chore(docker): upgrade Node.js version in Dockerfile and update dependencies 2025-09-18 14:45:02 -03:00
Dockerfile.metrics chore: local compose/image tweaks for testing metrics (not part of PR) 2025-09-16 19:35:23 -03:00
env.example refactor(chatbot): centralize split logic and ensure linkPreview consistency 2025-09-20 11:35:15 -03:00
grafana-dashboard.json.example feat(config): add telemetry and metrics configuration options 2025-09-17 16:50:36 -03:00
LICENSE chore(docs): standardize README, LICENSE, NOTICE, TRADEMARKS to Evolution Foundation 2026 2026-05-06 13:52:44 -03:00
local_install.sh feat: sh local install 2024-11-02 08:12:30 -03:00
manager_install.sh chore(manager): update asset files and install process 2025-10-15 09:44:15 -03:00
NOTICE chore(docs): standardize README, LICENSE, NOTICE, TRADEMARKS to Evolution Foundation 2026 2026-05-06 13:52:44 -03:00
package-lock.json fix(websocket): improve host validation logic in WebsocketController 2025-12-05 11:03:52 -03:00
package.json Merge remote-tracking branch 'upstream/develop' into bugfix/media-upload-failed-on-all-hosts 2025-11-24 13:58:25 -03:00
prometheus.yml.example feat(config): add telemetry and metrics configuration options 2025-09-17 16:50:36 -03:00
README.md docs(org): update GitHub URLs from EvolutionAPI to evolution-foundation 2026-05-06 14:35:53 -03:00
runWithProvider.js feat(database): add psql_bouncer support and simplify postgresql config 2025-07-10 01:08:08 -03:00
SECURITY.md chore(docs): standardize README, LICENSE, NOTICE, TRADEMARKS to Evolution Foundation 2026 2026-05-06 13:52:44 -03:00
TRADEMARKS.md chore(docs): standardize README, LICENSE, NOTICE, TRADEMARKS to Evolution Foundation 2026 2026-05-06 13:52:44 -03:00
tsconfig.json Update ESLint configuration, Dockerfile, and package dependencies; add GitHub Actions workflow for code quality checks 2025-01-09 17:04:33 -03:00
tsup.config.ts fix: resolve build errors and audio transcription issues across chatbot services 2025-05-27 17:46:29 -03:00

Evolution Foundation

Evolution API

Open-source REST API for WhatsApp and multi-channel messaging — part of the Evolution Foundation ecosystem.

Latest version License: Apache 2.0 Documentation Community Docker image

Website · Documentation · Community · Support


About

Evolution API is a powerful, production-ready REST API for WhatsApp and multi-channel messaging. Originally focused on WhatsApp, it has grown into a comprehensive platform supporting multiple messaging providers and integrations.

Today, Evolution API supports both the Baileys-based WhatsApp Web API and the official WhatsApp Cloud API, plus integrations with Typebot, Chatwoot, Dify, OpenAI, RabbitMQ, Apache Kafka, Amazon SQS, Socket.io, Amazon S3 / MinIO, and more.

Evolution API began as a WhatsApp controller API based on CodeChat, which in turn implemented the Baileys library. We continue to acknowledge CodeChat for laying the groundwork.

Part of the Evolution Foundation ecosystem

Evolution API is one of the messaging engines maintained by Evolution Foundation. It is used as a WhatsApp provider by the Evo CRM Community and other projects in the ecosystem.


Connection Types

Evolution API supports multiple connection types to WhatsApp:

WhatsApp API — Baileys

A free API based on WhatsApp Web, leveraging the Baileys library. Suitable for multi-service chats, service bots, and WhatsApp-integrated systems. Note: this method relies on the web version of WhatsApp and may have limitations compared to official APIs.

WhatsApp Cloud API

The official API provided by Meta. Designed for businesses with higher messaging volumes and stronger integration support, including end-to-end encryption, advanced analytics, and customer service tools. Requires compliance with Meta's policies and may incur per-message costs.


Integrations

Evolution API integrates natively with many platforms:

  • Typebot — conversational bots with trigger management
  • Chatwoot — customer service platform
  • RabbitMQ — event streaming via AMQP
  • Apache Kafka — real-time event streaming and processing
  • Amazon SQS — cloud-based message queuing
  • Socket.io — real-time WebSocket events
  • Dify — AI agent workflows
  • OpenAI — AI capabilities including audio-to-text conversion
  • Amazon S3 / MinIO — media file storage

Quick Start

Prerequisites

  • Node.js 20+
  • PostgreSQL or MySQL
  • Redis (recommended for caching)

Installation

git clone git@github.com:evolution-foundation/evolution-api.git
cd evolution-api

# Install dependencies
npm install

# Configure environment
cp .env.example .env
# Edit .env with your database, Redis, and API key

Database setup

# Set the database provider
export DATABASE_PROVIDER=postgresql  # or mysql

# Generate Prisma client
npm run db:generate

# Deploy migrations
npm run db:deploy

Running

# Development with hot reload
npm run dev:server

# Production build and run
npm run build
npm run start:prod

Docker

docker pull evoapicloud/evolution-api:latest
docker run -p 8080:8080 --env-file .env evoapicloud/evolution-api:latest

Architecture

Evolution API is built with a multi-provider, event-driven architecture:

Client / CRM
     ↓
Evolution API
  ├── Channel Integrations (Baileys / Cloud API)
  ├── Chatbot Integrations (Typebot, Chatwoot, OpenAI, Dify, Flowise, N8N)
  ├── Event Integrations (WebSocket, RabbitMQ, SQS, NATS, Pusher)
  └── Storage Integrations (S3, MinIO)

Built with Node.js 20+, TypeScript 5+, and Express.js, it provides extensive integrations with chatbots, CRM systems, and messaging platforms.

Multi-database support

PostgreSQL and MySQL via Prisma ORM with provider-specific schemas and migrations.

Authentication

  • API key-based authentication via apikey header
  • Instance-specific tokens for WhatsApp connection authentication
  • Webhook signature validation for external integrations

Message queue support

RabbitMQ, Amazon SQS, NATS, Pusher and WebSocket for events. Configurable per instance.

Media handling

Local storage or S3/MinIO. Automatic media download from WhatsApp. Optional audio transcription via OpenAI.


Documentation

Resource Link
Website evolutionfoundation.com.br
Documentation docs.evolutionfoundation.com.br
Community evolutionfoundation.com.br/community
Docker Hub evoapicloud/evolution-api
Changelog CHANGELOG.md
Contributing CONTRIBUTING.md
Security SECURITY.md

Hosting

Deploy Evolution API with optimized infrastructure through our HostGator partnership:

Evolution API VPS — HostGator


Telemetry

Evolution API collects anonymous telemetry data (routes used, most accessed routes, API version) to help improve the service. No sensitive or personal data is collected. This information helps us identify improvements and provide a better experience for users.


Contributing

Contributions are welcome! Please read CONTRIBUTING.md for guidelines on how to submit issues, propose features, and open pull requests.

Join our community to discuss ideas and collaborate.


Security

For security issues, do not open a public issue. Email suporte@evofoundation.com.br or use GitHub's private vulnerability reporting. See SECURITY.md for details.


Acknowledgments

  • CodeChat — original WhatsApp API foundation
  • Baileys — WhatsApp Web library

License

Evolution API is licensed under the Apache License 2.0, with additional brand-protection conditions (LOGO/copyright preservation and Usage Notification requirement). See LICENSE for full details.

For licensing inquiries, contact suporte@evofoundation.com.br.

Trademarks

"Evolution Foundation", "Evolution" and "Evolution API" are trademarks of Evolution Foundation. See TRADEMARKS.md for the brand assets policy.

Third-party attributions are documented in NOTICE.


Made by Evolution Foundation · © 2026