Easy Setup Headless multi session Whatsapp Gateway with NodeJS
- Support Multi device
- Support Multi Session / Multi Phone Number
- Requires API Key for every request
- Docker enabled
- Send Text Message
- Send Image
- Send Document
git clone https://github.com/mimamch/wa_gateway.git
cd wa_gateway
Edit ./src/env.ts
and change your-api-key-here
to your desired API Key
docker compose up -d
http://localhost:5001/session/start?session=mysession&key=your-api-key-here
Note that mysession
in the example above is your session name, you can change it to anything you want and start as many sessions as you want using different session names.
call the api endpoint like this
http://localhost:5001/message/send-text?session=mysession&key=your-api-key-here&to=628123456789&text=Hello+there
GET /session/start?session=NEW_SESSION_NAME&key=your-api-key-here
or
POST /session/start
Parameter | Type | Description |
---|---|---|
session |
string |
Required. Create Your Session Name |
key |
string |
Required. Your API Key |
POST /message/send-text
Body | Type | Description |
---|---|---|
session |
string |
Required. Session Name You Have Created |
to |
string |
Required. Receiver Phone Number with Country Code (e.g: 62812345678) |
text |
string |
Required. Text Message |
key |
string |
Required. Your API Key |
POST /message/send-image
Body | Type | Description |
---|---|---|
session |
string |
Required. Session Name You Have Created |
to |
string |
Required. Receiver Phone Number with Country Code (e.g: 62812345678) |
text |
string |
Required. Caption Massage |
image_url |
string |
Required. URL Image |
key |
string |
Required. Your API Key |
POST /message/send-document
Body | Type | Description |
---|---|---|
session |
string |
Required. Session Name You Have Created |
to |
string |
Required. Receiver Phone Number with Country Code (e.g: 62812345678) |
text |
string |
Required. Caption Massage |
document_url |
string |
Required. Document URL |
document_name |
string |
Required. Document Name |
key |
string |
Required. Your API Key |
GET /session/logout?session=SESSION_NAME
Parameter | Type | Description |
---|---|---|
session |
string |
Required. Create Your Session Name |
key |
string |
Required. Your API Key |
GET /session?key=YOUR_API_KEY
// send text
axios.post("http://localhost:5001/message/send-text", {
session: "mysession",
to: "62812345678",
text: "hello world",
key: "your-api-key-here",
});
// send image
axios.post("http://localhost:5001/message/send-image", {
session: "mysession",
to: "62812345678",
text: "hello world",
image_url: "https://placehold.co/600x400",
key: "your-api-key-here",
});
This library is licensed under the MIT License.