WhatsApp API
by devscrapper
A powerful WhatsApp API to send and receive text, images, and videos with ease — built for scalability, flexibility, and seamless integration into CRM...
Opens on Apify.com
About 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.
What does this actor do?
WhatsApp API is a web scraping and automation tool available on the Apify platform. It's designed to help you extract data and automate tasks efficiently in the cloud.
Key Features
- Cloud-based execution - no local setup required
- Scalable infrastructure for large-scale operations
- API access for integration with your applications
- Built-in proxy rotation and anti-blocking measures
- Scheduled runs and webhooks for automation
How to Use
- Click "Try This Actor" to open it on Apify
- Create a free Apify account if you don't have one
- Configure the input parameters as needed
- Run the actor and download your results
Documentation
📱 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 json { "action": "create_account", "password": "your-secure-password" } ### Step 2: Connect WhatsApp json { "action": "create_whatsapp", "password": "your-secure-password" } Scan the QR code with your WhatsApp Business app ### Step 3: Send Messages json { "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 actions - password: Your account identifier (auto-generated or custom) ### Message Parameters - unique: WhatsApp account ID (from get_wa_accounts) - recipient: Phone number in E.164 format (+1234567890) or group ID - message: Your text message or media caption - type: text, media, or document ### 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 json { "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 json { "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 json { "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 json { "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 python from apify_client import ApifyClient client = ApifyClient("your-apify-token") # Send welcome message to new customers def 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 javascript const { ApifyApi } = require('apify-client'); const client = new ApifyApi({ token: 'your-apify-token' }); // Send order confirmation async 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 python # Flask webhook example @app.route('/order-webhook', methods=['POST']) def handle_new_order(): order = request.json # Send WhatsApp notification apify_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 Actor requests.post(APIFY_WEBHOOK_URL, json=apify_input) return {"status": "sent"} --- ## 📊 Output Examples ### Successful Message Response json { "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 json { "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 json { "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!
Categories
Common Use Cases
Market Research
Gather competitive intelligence and market data
Lead Generation
Extract contact information for sales outreach
Price Monitoring
Track competitor pricing and product changes
Content Aggregation
Collect and organize content from multiple sources
Ready to Get Started?
Try WhatsApp API now on Apify. Free tier available with no credit card required.
Start Free TrialActor Information
- Developer
- devscrapper
- Pricing
- Paid
- Total Runs
- 593
- Active Users
- 64
Related Actors
Web Scraper
by apify
Cheerio Scraper
by apify
Website Content Crawler
by apify
Legacy PhantomJS Crawler
by apify
Apify provides a cloud platform for web scraping, data extraction, and automation. Build and run web scrapers in the cloud.
Learn more about ApifyNeed Professional Help?
Couldn't solve your problem? Hire a verified specialist on Fiverr to get it done quickly and professionally.
Trusted by millions | Money-back guarantee | 24/7 Support