mrifqidaffaaditya/WA-AKG

▲ 31 stars today★ 405⑂ 134

A self-hosted WhatsApp Gateway & Dashboard built with Next.js 15, Baileys, and Prisma. Manage multi-session accounts, schedule messages, create auto-replies, and integrate via Webhooks.

About mrifqidaffaaditya/WA-AKG

mrifqidaffaaditya/WA-AKG is an open-source project on GitHub, mainly written in TypeScript. A self-hosted WhatsApp Gateway & Dashboard built with Next.js 15, Baileys, and Prisma. It currently holds 405 stars and 134 forks with 10 open issues, and was last pushed on 2026-09-21 (repository created 2026-01-10).

Project Overview

Git Homed tracks it on the Today's Trending board, currently at rank #83 with 31 new stars today.

GitHub Repository Details

Repository mrifqidaffaaditya/WA-AKG · default branch main · size 2156 KB · watchers 8 · source: GitHub REST API and repository README

README

🚀 WA-AKG: The Ultimate WhatsApp Gateway & Dashboard

WhatsApp Bot Next.js TypeScript Prisma Version Main Branch

Active Apps

A professional, multi-session WhatsApp Gateway, Dashboard, and Automation System. Built with Next.js 15, React, and Baileys for high-performance messaging automation and real-time WhatsApp Bot Gateway services.

[!TIP]
Looking for the latest features? Check out the beta branch or our pre-releases for experimental sources.

Features • User Guide • API Documentation • Database Setup • Installation

---

📖 Complete Documentation

WA-AKG comes with extensive documentation designed for both developers and users.

---

🌟 Why WA-AKG WhatsApp API Gateway?

WA-AKG transforms your WhatsApp into a fully programmable RESTful API. It's designed for scale, reliability, and ease of use, making it the perfect bridge between your business logic and WhatsApp's global reach. Excellent for developing a WhatsApp Bot, Automation, or Customer Service Gateway.

🏗️ How it Works

graph LR
    User([User / App]) -->|REST API| API[WA-AKG Gateway]
    API -->|Baileys| WhatsApp[[WhatsApp Server]]
    API -->|Real-time| DB[(Prisma / DB)]
    WhatsApp -.->|Webhook| API
    API -.->|Event| Webhook([External CRM / API])

🔥 Key Features

📂 View Webhook Payload Example
{
  "event": "message.received",
  "sessionId": "xgj7d9",
  "timestamp": "2026-01-17T05:33:08.545Z",
  "data": {
    "key": { "remoteJid": "[email protected]", "fromMe": false, "id": "3EB0B78..." },
    "from": "[email protected]",
    "sender": "100429287395370@lid",
    "remoteJidAlt": "100429287395370@lid",
    "type": "TEXT",
    "content": "saya sedang reply",
    "isGroup": false,
    "quoted": {
      "type": "IMAGE",
      "caption": "Ini caption dari reply",
      "fileUrl": "/media/xgj7d9-A54FD0B6F..."
    }
  }
}

---

🧩 Integrations: Native n8n Support

WA-AKG natively supports n8n! You can build complex, no-code/low-code WhatsApp automation workflows using our official community nodes.

n8n nodes

👉 View on npm (n8n-nodes-wa-akg)

---

🚀 Quick Installation

1. Prerequisites

2. Setup

# Clone and install
git clone https://github.com/mrifqidaffaaditya/WA-AKG.git
cd WA-AKG
npm install

Configure environment

cp .env.example .env

Edit .env with your DATABASE_URL, AUTH_SECRET, PORT, etc.

Push schema and generate Prisma Client

npm run db:push

Create SuperAdmin account

npm run make-admin [email protected] password123

3. Run (Development)

npm run dev

4. Run (Production with PM2 - Recommended)

We recommend deploying with PM2 to run the app in the background and ensure it restarts automatically if the server rebooted or crashed.

Option A: Automatic Setup Script (Easiest)

We provide a built-in start.sh script that automates everything: checking the configuration, installing dependencies, syncing the database schema, compiling production assets, and starting or reloading PM2:
./start.sh

Option B: Manual Setup

1. Build the application:
   npm run build
   

2. Start with PM2: Using the built-in ecosystem.config.js configuration file:

   pm2 start ecosystem.config.js
   

3. Manage the process:

4. Enable auto-start on server boot:
   pm2 startup
   # Copy-paste the command outputted by the command above
   pm2 save
   

---

🐋 Alternative: Docker Deployment

Although PM2 is highly recommended, you can also deploy using Docker Compose:

1. Prepare Environment:

   cp .env.example .env
   
Edit .env — set DATABASE_URL (points to the MySQL container), AUTH_SECRET, and other branding settings.

2. Start Services:

   docker compose up -d
   
This spins up the MySQL database container alongside the Next.js gateway application.

---

📚 API Reference Overview

WA-AKG provides a comprehensive REST API to integrate WhatsApp Messaging directly into your applications. Full details in API_DOCUMENTATION.md.

[!TIP]
Use the built-in Swagger UI for interactive exploration at /docs.

| Method | Endpoint | Description | | :--- | :--- | :--- | | POST | /api/messages/{sessionId}/{jid}/send | Send text, media, or stickers | | POST | /api/messages/{sessionId}/broadcast | Scalable bulk messaging | | PATCH | /api/sessions/{id}/settings | Update session configuration | | GET | /api/groups/{sessionId} | List all available groups | | POST | /api/webhooks/{sessionId} | Register real-time event listeners | | POST | /api/autoreplies/{sessionId} | Create context-aware auto-replies | | POST | /api/auth/register | Register new users via the web securely |

Example: Send Text Message

curl -X POST http://localhost:3000/api/messages/session_01/[email protected]/send \
  -H "X-API-Key: your_api_key" \
  -H "Content-Type: application/json" \
  -d '{
    "message": { "text": "Hello from WA-AKG!" }
  }'

---

⚠️ Known Issues / Caveats

[!WARNING]
Status Update Feature (POST /api/status/update)
The WhatsApp status/story update feature is currently experiencing known issues and should be avoided in production:
- Text statuses with custom background colors may not display correctly
- Media statuses (images/videos) may fail to upload to WhatsApp servers
- The feature is under active development
We recommend waiting for the next release before using this endpoint in critical workflows.

---

🛡️ Security

---
Built with ❤️ by Aditya Licensed under MIT

GitHub Stars & Activity

405Stars
134Forks
10Open issues
TypeScriptLanguage

GitHub Popularity

GitHub stars405
Forks134
Open issues10
Primary languageTypeScript
LicenseMIT
Stars gained today31
Created2026-01-10
Last pushed2026-09-21

Trending History

Daily boardrank #83 · ▲ 31 stars

Related GitHub Projects

1

n8n-io / n8n

TypeScript★ 206,509⑂ 60,971▲ 100 stars
→
2

garrytan / gstack

TypeScript★ 134,771⑂ 20,056▲ 119 stars
→
3

thedotmack / claude-mem

TypeScript★ 95,185⑂ 8,435▲ 113 stars
→
4

modelcontextprotocol / servers

TypeScript★ 90,957⑂ 11,748▲ 34 stars
→
5

ruvnet / ruflo

TypeScript★ 73,725⑂ 8,758▲ 101 stars
→
6

heygen-com / hyperframes

TypeScript★ 55,814⑂ 5,036▲ 584 stars
→
7

vercel-labs / skills

TypeScript★ 32,985⑂ 2,807▲ 84 stars
→
8

mksglu / context-mode

TypeScript★ 24,990⑂ 1,796▲ 276 stars
→

More Trending Repositories