
WhatsApp API
Pricing
Pay per event

WhatsApp API
A powerful WhatsApp API to send and receive text, images, and videos with ease — built for scalability, flexibility, and seamless integration into CRMs, e-commerce platforms, or chatbots.
0.0 (0)
Pricing
Pay per event
0
9
9
Last modified
12 days ago
📱 WhatsApp API (unofficial) - Send Messages at Scale
Powerful WhatsApp messaging automation for businesses, e-commerce, and customer support teams
Send text messages, images, videos, and documents through WhatsApp Business API. Perfect for order notifications, customer support, marketing campaigns, and chatbot integrations.
🚀 Why Choose This WhatsApp API?
✅ Enterprise-Grade Reliability - Built for high-volume messaging
✅ Multi-Media Support - Text, images, videos, audio, documents
✅ Group Management - Send to groups and manage members
✅ Real-Time Tracking - Monitor sent/received messages
✅ Easy Integration - Works with any CRM, e-commerce platform, or chatbot
✅ QR Code Automation - Automatic WhatsApp Web connection setup
💼 Perfect For
- E-commerce: Order confirmations, shipping updates, abandoned cart recovery
- Customer Support: Automated responses, ticket notifications
- Marketing: Promotional campaigns, event notifications
- Healthcare: Appointment reminders, test results
- Education: Class notifications, assignment reminders
- Real Estate: Property alerts, viewing confirmations
⚡ Quick Start in 3 Steps
Step 1: Create Your Account
{"action": "create_account","password": "your-secure-password"}
Step 2: Connect WhatsApp
{"action": "create_whatsapp","password": "your-secure-password"}
Scan the QR code with your WhatsApp Business app
Step 3: Send Messages
{"action": "send_message","password": "your-secure-password","unique": "your-whatsapp-id","recipient": "+1234567890","message": "Hello! Your order #12345 is confirmed.","type": "text"}
That's it! Start sending WhatsApp messages in under 5 minutes.
🎯 Key Features & Actions
Feature | Action | Description |
---|---|---|
🔐 Account Setup | create_account | Create your WhatsApp API account with 100 free credits |
📊 Account Info | account_info | View account details, credits, and connected WhatsApp accounts |
🔗 Connect WhatsApp | create_whatsapp | Generate QR code to link your WhatsApp Business account |
📋 List Accounts | get_wa_accounts | See all your connected WhatsApp accounts |
🗑️ Remove Account | delete_wa_account | Disconnect a WhatsApp account |
💬 Send Messages | send_message | Send text, media, or document messages |
📥 Received Messages | get_wa_received | Fetch messages sent to your WhatsApp |
📤 Sent Messages | get_wa_sent | View your message history and delivery status |
👥 Groups | get_wa_groups | List all groups your WhatsApp is part of |
👤 Group Members | get_wa_groups_members | Get member list for specific groups |
✅ Phone Validation | validate_wa_phone | Check if a phone number has WhatsApp |
📝 Input Configuration
Required Parameters
action
: Choose from 11 available actionspassword
: Your account identifier (auto-generated or custom)
Message Parameters
unique
: WhatsApp account ID (fromget_wa_accounts
)recipient
: Phone number in E.164 format (+1234567890) or group IDmessage
: Your text message or media captiontype
:text
,media
, ordocument
Media & Document Options
- Media: JPG, PNG, GIF, MP4, MP3, OGG files via URL
- Documents: PDF, DOC, DOCX, XLS, XLSX, XML files via URL
- Priority: Set message urgency (1=immediate, 2=normal)
💻 Real-World Examples
🛒 E-commerce Order Notification
{"action": "send_message","password": "ecommerce-store-2024","unique": "wa_business_001","recipient": "+1234567890","message": "🎉 Order #12345 confirmed!\n\n📦 Items: MacBook Pro\n💰 Total: $1,299\n📅 Delivery: Dec 15\n\nTrack: https://track.example.com/12345","type": "text","priority": 1}
🏥 Medical Appointment Reminder
{"action": "send_message","password": "clinic-system","unique": "wa_clinic_01","recipient": "+1234567890","message": "⏰ Appointment Reminder\n\nDr. Smith - Tomorrow 2:00 PM\nPlease arrive 15 minutes early.\n\nCancel: Reply CANCEL","type": "text"}
📸 Send Product Image
{"action": "send_message","password": "fashion-store","unique": "wa_fashion_01","recipient": "+1234567890","message": "Check out our new summer collection! 🌞","type": "media","media_url": "https://store.com/images/summer-dress.jpg","media_type": "image"}
📄 Send Invoice Document
{"action": "send_message","password": "accounting-firm","unique": "wa_accounting","recipient": "+1234567890","message": "Your invoice is ready for download","type": "document","document_url": "https://invoices.com/inv-12345.pdf","document_name": "Invoice-December-2024.pdf","document_type": "pdf"}
🔧 Integration Examples
Python Integration
from apify_client import ApifyClientclient = ApifyClient("your-apify-token")# Send welcome message to new customersdef send_welcome_message(phone_number, customer_name):run_input = {"action": "send_message","password": "your-password","unique": "your-wa-id","recipient": phone_number,"message": f"Welcome {customer_name}! Thanks for joining us. 🎉","type": "text"}run = client.actor("whatsapp-api").call(run_input=run_input)return run
JavaScript/Node.js
const { ApifyApi } = require('apify-client');const client = new ApifyApi({ token: 'your-apify-token' });// Send order confirmationasync function sendOrderConfirmation(orderData) {const input = {action: 'send_message',password: 'your-password',unique: 'your-wa-id',recipient: orderData.customerPhone,message: `Order #${orderData.id} confirmed! Total: $${orderData.total}`,type: 'text'};const run = await client.actor('whatsapp-api').call(input);console.log('Message sent:', run);}
Webhook Integration
# Flask webhook example@app.route('/order-webhook', methods=['POST'])def handle_new_order():order = request.json# Send WhatsApp notificationapify_input = {"action": "send_message","password": "store-password","unique": "wa-store-id","recipient": order['customer_phone'],"message": f"Order #{order['id']} received! We'll prepare it shortly.","type": "text"}# Trigger Apify Actorrequests.post(APIFY_WEBHOOK_URL, json=apify_input)return {"status": "sent"}
📊 Output Examples
Successful Message Response
{"success": true,"data": {"id": "msg_12345","status": "sent","recipient": "+1234567890","timestamp": "2024-12-15T10:30:00Z","credits_used": 1,"message_type": "text"}}
Account Creation Response
{"success": true,"account_data": {"PASSWORD": "generated-password-123","credits": 100,"timezone": "America/New_York","country": "US","theme": "dark","wa_accounts": []},"message": "Account created successfully"}
WhatsApp QR Code Response
{"success": true,"data": {"unique": "wa_business_12345","qr_link": "https://zender.com/qr/wa_business_12345","base64": "data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAA...","status": "waiting","expires_in": 300}}
⚠️ Common Issues & Solutions
🔐 Authentication Error
Problem: "Invalid password or account not found"
Solution: First run create_account
to set up your account
🆔 Missing WhatsApp ID
Problem: "unique key is required"
Solution: Run get_wa_accounts
to get your WhatsApp account IDs
📱 Phone Number Issues
Problem: Messages not delivering
Solution: Use E.164 format (+country+number) and validate with validate_wa_phone
🖼️ Media Upload Errors
Problem: Media files not sending
Solution: Ensure URLs are publicly accessible and files are under 16MB
💡 Pro Tips
🎯 Best Practices
- Rate Limiting: Send max 80 messages/minute per WhatsApp account
- Opt-in Required: Only message users who opted in
- Personal Touch: Use recipient names in messages
- Time Zones: Send messages during business hours
- Media Optimization: Compress images/videos for faster delivery
🔒 Security Tips
- Store passwords securely (use environment variables)
- Validate all phone numbers before sending
- Monitor failed delivery rates
- Rotate API credentials regularly
📈 Scaling Tips
- Use multiple WhatsApp accounts for high volume
- Implement retry logic for failed messages
- Cache frequently used data
- Monitor credit usage and top up automatically
🔗 Use Cases by Industry
🛍️ E-commerce & Retail
- Order confirmations and shipping updates
- Abandoned cart recovery messages
- New product announcements
- Customer support and returns
🏥 Healthcare & Wellness
- Appointment reminders and confirmations
- Test results and health reports
- Medication reminders
- Emergency notifications
🏫 Education
- Class schedules and assignments
- Exam results and grades
- Parent-teacher communications
- Event notifications
🏢 Business Services
- Meeting reminders and updates
- Invoice and payment notifications
- Service completion updates
- Client onboarding messages
🚗 Automotive
- Service reminders and appointments
- Delivery notifications for parts
- Warranty and recall notices
- Customer satisfaction surveys
🛠️ Technical Specifications
- Built With: Python 3.8+, AsyncIO, HTTPx
- Database: MySQL with connection pooling
- Rate Limits: 80 messages/minute per account
- File Size Limits: 16MB for media, 100MB for documents
- Supported Formats: JPG, PNG, GIF, MP4, PDF, DOC, XLS, etc.
- Response Time: < 2 seconds average
- Uptime: 99.9% SLA
🤝 Support & Community
📚 Documentation
- Complete API reference and examples
- Integration tutorials for popular platforms
- Video guides and best practices
💬 Get Help
- GitHub issues for bug reports
- Community Discord for discussions
- Email support for enterprise customers
- Live chat during business hours
🚀 Ready to automate your WhatsApp messaging?
Click "Try for free" and send your first message in under 5 minutes!