devlikeapro/waha
WAHA
WAHA - WhatsApp HTTP API (REST API) that you can install on your own server and run in less than 5 minutes!
- Documentation: https://waha.devlike.pro/
- Dashboard Example: https://waha.devlike.pro/dashboard
- Swagger Example: https://waha.devlike.pro/swagger
Tables of Contents
Quick start
Requirements
Only thing that you must have - installed docker. Please follow the original instruction how to install docker ->.
When you are ready - come back and follows the below steps to send the first text message to WhatsApp via HTTP API!
Send your first message
Let’s go over steps that allow you to send your first text message via WhatsApp HTTP API!
1. Download image
Assuming you have installed Docker, let’s download the image.
|
|
|
|
Read more about how to get PASSWORD for ➕ WAHA Plus
2. Run WhatsApp HTTP API
Run WhatsApp HTTP API:
|
|
Open the link in your browser http://localhost:3000/ and you’ll see API documentation (Swagger).
3. Start a new session
To start a new session you should have your mobile phone with installed WhatsApp application close to you.
Please go and read how what we’ll need to a bit later: How to log in - the instruction on WhatsApp site
When your ready - find POST /api/sessions, click on Try it out, then Execute a bit below.
The example payload:
|
|
By using the request with name values you can start multiple session (WhatsApp accounts) inside the single docker container in Plus
4. Get and scan QR
Find GET /api/screenshot and execute it, it shows you QR code.
Scan the QR with your cell phone’s WhatsApp app.
5. Get the screenshot
Execute GET /api/screenshot after a few seconds after scanning the QR - it’ll show you the screenshot of you Whatsapp
instance. If you can get the actual screenshot - then you’re ready to start sending messages!
6. Send a text message
Let’s send a text message - find POST /api/sendText in swagger and change chatId this
way: use a phone international phone number without + symbol and add @c.us at the end.
For phone number 12132132131 the chatId is 12132132131@c.us.
The example payload:
|
|
Also, you can use curl and send POST request like this:
|
|
What is next?
Go and read the full documentation!
Development
Start the project
- Clone the repository
- Make sure you’re using node>=22 (check .nvmrc to get the version)
- Run the following commands:
|
|