โญ +31 today TypeScript

mrifqidaffaaditya/WA-AKG

๐Ÿ”— https://github.com/mrifqidaffaaditya/WA-AKG โ†—

๐Ÿš€ WA-AKG: The Ultimate WhatsApp Gateway & Dashboard 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. Master Project Documentation : Architecture, database, and logic flow. API Documentation : Comprehensive OpenAPI / Swagger guide for all 109+ endpoints . API Quick Reference : Instantly jumpstart your integration with ready-to-use cURL/JavaScript snippets. Environment Variables : Configuration and security guide. ๐ŸŒŸ 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]) Loading ๐Ÿ”ฅ Key Features ๐Ÿ“ฑ Multi-Session Management : Connect and manage unlimited WhatsApp accounts simultaneously via simple QR code scans. โšก Pro WhatsApp Engine : Powered by @whiskeysockets/baileys for high-speed, stable, and secure WebSocket connections. ๐Ÿ“… Advanced Scheduler : Precise message planning with Media Support (Images, Video, Docs). ๐Ÿ“ข Safe Broadcast : Built-in anti-ban mechanisms with randomized delays (10-30s) and batch processing. ๐Ÿค– Smart Auto-Reply : Keywords matching with Context Support (Group/Private/All) and Media Attachments . ๐Ÿ›ก๏ธ Granular Access Control : Full Whitelist & Blacklist support for both Bot Commands and Auto Replies. ๐Ÿ”— Enterprise Webhooks : Robust real-time event forwarding for messages, connections, status changes, and group updates. ๐Ÿ“‡ Advanced Contacts : Rich contact management with LID, verified names, and profile pictures. ๐ŸŽจ Creative Tools : Built-in Sticker Maker with background removal ( remove.bg integration). ๐Ÿ“˜ Open API Spec : Fully documented via swagger-ui-react at /docs . ๐Ÿ“‚ View Webhook Payload Example { "event" : " message.received " , "sessionId" : " xgj7d9 " , "timestamp" : " 2026-01-17T05:33:08.545Z " , "data" : { "key" : { "remoteJid" : " 6287748687946@s.whatsapp.net " , "fromMe" : false , "id" : " 3EB0B78... " }, "from" : " 6287748687946@s.whatsapp.net " , "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. Action Node : Full control over messaging, groups, sessions, contacts, and labels directly from your n8n workflows. Trigger Node : Instantly catch real-time webhooks (Message Received, Group Joined, etc.) and trigger your workflows automatically. ๐Ÿ‘‰ View on npm (n8n-nodes-wa-akg) ๐Ÿš€ Quick Installation 1. Prerequisites Node.js 20+ (Node.js 22 recommended) MySQL or PostgreSQL Git PM2 (Installed globally: npm install -g pm2 ) 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 admin@example.com 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 Build the application : npm run build Start with PM2 : Using the built-in ecosystem.config.js configuration file: pm2 start ecosystem.config.js Manage the process : View status: pm2 status View logs: pm2 logs wa-akg Stop process: pm2 stop wa-akg Restart process: pm2 restart wa-akg 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: Prepare Environment : cp .env.example .env Edit .env โ€” set DATABASE_URL (points to the MySQL container), AUTH_SECRET , and other branding settings. 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/62812345678@s.whatsapp.net/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 API Key Auth : Secured endpoints using X-API-Key header. RBAC : Multi-role support ( SUPERADMIN , OWNER , STAFF ). Encrypted Passwords : All passwords hashed with bcrypt. JWT Encryption : Session tokens signed with AUTH_SECRET (wajib diisi โ€” tidak ada fallback). Input Validation : Zod schemas on critical endpoints. Media Protection : Path traversal prevention, session-scoped media access. Built with โค๏ธ by Aditya Licensed under MIT

ๅ…งๅฎน็‚บๆ”ถ้›†็•ถๆ—ฅๆŠ“ๅ–็š„ repo ๆ่ฟฐๅŽŸๆ–‡๏ผŒๅฎŒๆ•ด่ณ‡่จŠ่ซ‹่ฆ‹ GitHub ๅŽŸ้ ใ€‚