@moltflow/skills 1.4.0 β†’ 2.1.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/SKILL.md CHANGED
@@ -1,28 +1,68 @@
1
1
  ---
2
- name: "WhatsApp Automation & A2A"
3
- description: "MoltFlow β€” complete WhatsApp automation platform: sessions, messaging, groups, labels, AI-powered replies, anti-spam rules, content safeguards, auto-feedback collection, intention detection, lead management, agent-to-agent protocol (JSON-RPC, encryption), and configurable policies."
4
- metadata: {"openclaw":{"emoji":"πŸ“±","homepage":"https://waiflow.app","requires":{"env":["MOLTFLOW_API_KEY"]},"primaryEnv":"MOLTFLOW_API_KEY"}}
2
+ name: "MoltFlow β€” WhatsApp AI Automation Platform and More"
3
+ version: "2.1.0"
4
+ description: "MoltFlow β€” complete WhatsApp automation platform: bulk messaging, scheduled messages, custom groups, lead detection & CRM, AI replies with style cloning, knowledge base (RAG), voice transcription, group monitoring, labels, anti-spam, content safeguards, review collection, webhooks, GDPR compliance (data export, contact erasure, account deletion), and agent-to-agent protocol (JSON-RPC, encryption). 90+ API endpoints."
5
+ source: "MoltFlow Team"
6
+ risk: safe
7
+ homepage: "https://molt.waiflow.app"
8
+ requiredEnv:
9
+ - MOLTFLOW_API_KEY
10
+ primaryEnv: MOLTFLOW_API_KEY
11
+ disable-model-invocation: true
12
+ metadata: {"openclaw":{"emoji":"πŸ“±","homepage":"https://molt.waiflow.app","requires":{"env":["MOLTFLOW_API_KEY"]},"primaryEnv":"MOLTFLOW_API_KEY"}}
5
13
  ---
6
14
 
7
15
  # WhatsApp Automation & A2A
8
16
 
9
- MoltFlow provides a complete WhatsApp automation API with managed sessions, messaging, group monitoring, labels, anti-spam rules, content safeguards, AI-powered replies, auto-feedback collection, lead management, and agent-to-agent communication.
17
+ MoltFlow is a complete WhatsApp automation platform with 90+ API endpoints covering messaging, lead management, AI intelligence, and agent-to-agent communication.
18
+
19
+ > **Save up to 17% with yearly billing** β€” Free tier available, no credit card required.
20
+
21
+ ### Platform Features
22
+
23
+ | Category | Features |
24
+ |----------|----------|
25
+ | **Messaging** | Send text, media, polls, stickers, GIFs, voice notes, locations, vCards. Reply, react, edit, unsend. Read receipts & typing simulation. |
26
+ | **Bulk Messaging** | Broadcast to custom groups with ban-safe throttling (random 30s–2min delays). Real-time progress via SSE. Pause/resume/cancel. |
27
+ | **Scheduled Messages** | One-time, daily, weekly, monthly, or custom cron. Timezone-aware. Pause, resume, edit. Execution history tracking. |
28
+ | **Custom Groups** | Build targeted contact lists. Import members from WhatsApp groups or add manually. Feed into Bulk Send or Scheduled Messages. CSV/JSON export. |
29
+ | **Lead Detection & CRM** | Auto-detect purchase intent in monitored groups. Lead pipeline with status tracking (new β†’ contacted β†’ qualified β†’ converted). Bulk status update, bulk add-to-group, CSV/JSON export. Reciprocity check (anti-spam). |
30
+ | **Group Monitoring** | Monitor 50+ groups simultaneously. Keyword/mention detection. Auto-respond with AI. Per-group prompts. Skip admins & existing contacts. |
31
+ | **Labels** | Create, sync to WhatsApp Business, import from WhatsApp. Color-coded contact organization. |
32
+ | **AI Replies** | GPT-4/Claude powered reply generation. Context-aware with RAG knowledge base. Preview before sending. |
33
+ | **Style Cloning (Learn Mode)** | Train style profiles from your message history. AI replies that match your tone, vocabulary, and patterns. Per-contact profiles. |
34
+ | **Knowledge Base (RAG)** | Upload PDF/TXT documents. Semantic search with embeddings. AI uses your docs to answer questions accurately. |
35
+ | **Voice Transcription** | Whisper-powered voice message transcription. Async task queue with status tracking. |
36
+ | **Review Collection** | Auto-collect positive feedback via sentiment analysis (14+ languages). Approve/reject. Export testimonials as JSON/HTML. |
37
+ | **Anti-Spam Engine** | Rate limits, duplicate blocking, pattern filters (block/flag/delay). Human-like typing simulation. Burst rate limiting (4 msgs/2 min). |
38
+ | **Content Safeguards** | Block API keys, credit cards, SSNs, PII, prompt injection. Custom regex rules. Test content against full policy stack. |
39
+ | **Webhooks** | 10+ event types (message.received, lead.detected, session.connected, etc.). HMAC-SHA256 signed. Delivery history. Test payloads. |
40
+ | **A2A Protocol** | JSON-RPC 2.0 agent-to-agent communication. X25519-AES256GCM encryption. Agent discovery, trust levels, encrypted messaging. |
41
+ | **GDPR Compliance** | Auto-expiring messages (90-day). Data minimization (500-char preview). Contact erasure. Data export. Account deletion (32+ table cascade). AI consent enforcement. DPA available. Named sub-processors (Art. 28). |
42
+ | **Billing & Usage** | Stripe-powered. Free/Starter/Pro/Business plans. Usage tracking, daily breakdown. Billing portal. **Yearly plans save up to 17%.** |
10
43
 
11
44
  ## When to use
12
45
 
13
46
  Use this skill when you need to:
14
- - Connect and manage WhatsApp sessions (QR pairing, start/stop)
15
- - Send text messages, list chats, read message history
16
- - Monitor groups for leads or keywords
17
- - Manage contact labels (WhatsApp Business sync)
18
- - Configure anti-spam rules (rate limits, duplicate blocking, pattern filters)
19
- - Set up content safeguards (block secrets, PII, prompt injection)
20
- - Train style profiles and generate AI replies
21
- - Collect feedback via sentiment analysis (14+ languages)
22
- - Export testimonials (JSON/HTML)
23
- - Discover and message other AI agents (A2A JSON-RPC 2.0)
24
- - Manage encryption keys (X25519-AES256GCM)
25
- - Manage API keys, usage tracking, billing (Stripe)
47
+ - **Send messages** β€” text, media, polls, stickers, GIFs, voice notes, locations, vCards
48
+ - **Bulk message** β€” broadcast to custom groups with ban-safe throttling and progress tracking
49
+ - **Schedule messages** β€” one-time, recurring (daily/weekly/monthly), or cron expressions with timezone support
50
+ - **Manage custom groups** β€” create contact lists, import from WhatsApp groups, export CSV/JSON
51
+ - **Detect and manage leads** β€” monitor groups for purchase intent, track lead pipeline, bulk operations
52
+ - **Monitor WhatsApp groups** β€” keyword detection, auto-respond, per-group AI prompts
53
+ - **Organize with labels** β€” create labels, sync with WhatsApp Business, import/export
54
+ - **Generate AI replies** β€” GPT-4/Claude powered, context-aware, with style cloning
55
+ - **Train style profiles** β€” Learn Mode analyzes your messages to clone your communication style
56
+ - **Build a knowledge base** β€” upload documents (PDF/TXT), semantic RAG search, AI-powered answers
57
+ - **Transcribe voice messages** β€” Whisper-powered async transcription
58
+ - **Collect reviews** β€” sentiment analysis across 14+ languages, testimonial export (JSON/HTML)
59
+ - **Configure anti-spam** β€” rate limits, duplicate blocking, custom pattern filters
60
+ - **Set content safeguards** β€” block secrets, PII, prompt injection with custom regex rules
61
+ - **Manage webhooks** β€” subscribe to 10+ event types, HMAC signing, delivery tracking
62
+ - **Connect AI agents** β€” A2A JSON-RPC 2.0 with X25519-AES256GCM encryption
63
+ - **Manage API keys** β€” create, rotate, revoke; SHA-256 hashed
64
+ - **Track usage & billing** β€” current period, daily breakdown, Stripe checkout/portal
65
+ - **Ensure GDPR compliance** β€” auto-expiring messages, data minimization, contact erasure, DPA
26
66
 
27
67
  ## Use cases
28
68
 
@@ -32,12 +72,26 @@ Use this skill when you need to:
32
72
  - Schedule follow-up messages to contacts after meetings
33
73
  - Collect and organize customer testimonials from group conversations
34
74
 
75
+ **Bulk messaging & scheduling:**
76
+ - Build "VIP Clients" list from WhatsApp group members, then broadcast a promo to all 200 contacts
77
+ - Schedule weekly Monday 9 AM updates to your "Newsletter" group β€” timezone-aware, fires even when your laptop is off
78
+ - Pause a running bulk send mid-flight, edit the message, then resume
79
+ - Set up daily cron job to send stock alerts to your trading group at market open
80
+
35
81
  **Business & lead management:**
36
82
  - Monitor industry groups for purchase-intent keywords ("looking for", "need help with")
83
+ - Auto-detect leads β†’ track pipeline (new β†’ contacted β†’ qualified β†’ converted)
84
+ - Bulk update 50 leads to "contacted" status and add them to your "Follow-up" custom group in one API call
85
+ - Export leads as CSV for your CRM, or JSON for your automation pipeline
37
86
  - Auto-label new leads as VIP/Hot/Cold based on message sentiment
38
- - Route group-detected leads to your sales team via labels
39
87
  - Run feedback collectors across all chats β€” auto-approve positive reviews for your website
40
88
 
89
+ **AI & knowledge:**
90
+ - Train a style profile from 500+ of your messages β€” AI replies sound exactly like you
91
+ - Upload your product catalog as PDF β†’ AI answers customer questions using RAG search
92
+ - Transcribe voice messages with Whisper and auto-respond with AI
93
+ - Generate context-aware replies that combine your style + your knowledge base
94
+
41
95
  **Agent-to-Agent (A2A):**
42
96
  - Build a support agent that escalates complex tickets to a human agent over A2A
43
97
  - Connect your booking agent with a payment agent β€” encrypted end-to-end
@@ -51,12 +105,25 @@ Use this skill when you need to:
51
105
  - Create custom regex rules to flag sensitive content before it leaves your account
52
106
  - Test any message against your full policy stack before sending
53
107
 
108
+ **GDPR & data privacy:**
109
+ - Message previews auto-expire after 90 days (configurable) β€” no indefinite storage
110
+ - Only first 500 characters stored β€” full messages are not retained
111
+ - Style training extracts only statistical patterns, never stores raw message text
112
+ - Full GDPR Article 13/14 compliant privacy policy with named sub-processors
113
+ - Data Controller (you) / Data Processor (MoltFlow) model with DPA available
114
+ - Third-party contact erasure process for GDPR right-to-be-forgotten requests
115
+
54
116
  ## Setup
55
117
 
118
+ > **Free tier available** β€” 1 session, 50 messages/month, no credit card required.
119
+ > Sign up at https://molt.waiflow.app/checkout?plan=free
120
+
56
121
  Env vars:
57
122
  - `MOLTFLOW_API_KEY` (required) β€” API key from waiflow.app dashboard
58
123
  - `MOLTFLOW_API_URL` (optional) β€” defaults to `https://apiv2.waiflow.app`
59
124
 
125
+ **Security note:** Use the principle of least privilege. If you only need messaging and monitoring features, create a non-admin API key. Admin-level keys grant access to tenant management, user operations, and GDPR erasure endpoints. Only supply an admin key if you explicitly need those capabilities.
126
+
60
127
  Authentication: `X-API-Key: $MOLTFLOW_API_KEY` header or `Authorization: Bearer $TOKEN` (JWT from login).
61
128
 
62
129
  Base URL: `https://apiv2.waiflow.app/api/v2`
@@ -76,9 +143,25 @@ curl -X POST -H "X-API-Key: $MOLTFLOW_API_KEY" \
76
143
  -d '{"name": "Main Line"}' \
77
144
  https://apiv2.waiflow.app/api/v2/sessions
78
145
 
79
- # Get session details
146
+ # Start session (triggers QR code generation)
147
+ curl -X POST -H "X-API-Key: $MOLTFLOW_API_KEY" \
148
+ https://apiv2.waiflow.app/api/v2/sessions/{session_id}/start
149
+
150
+ # Get QR code for pairing
80
151
  curl -H "X-API-Key: $MOLTFLOW_API_KEY" \
81
- https://apiv2.waiflow.app/api/v2/sessions/{session_id}
152
+ https://apiv2.waiflow.app/api/v2/sessions/{session_id}/qr
153
+
154
+ # Stop session
155
+ curl -X POST -H "X-API-Key: $MOLTFLOW_API_KEY" \
156
+ https://apiv2.waiflow.app/api/v2/sessions/{session_id}/stop
157
+
158
+ # Restart session (preserves auth if previously paired)
159
+ curl -X POST -H "X-API-Key: $MOLTFLOW_API_KEY" \
160
+ https://apiv2.waiflow.app/api/v2/sessions/{session_id}/restart
161
+
162
+ # Logout (clears WhatsApp auth, requires fresh QR scan)
163
+ curl -X POST -H "X-API-Key: $MOLTFLOW_API_KEY" \
164
+ https://apiv2.waiflow.app/api/v2/sessions/{session_id}/logout
82
165
 
83
166
  # Delete session
84
167
  curl -X DELETE -H "X-API-Key: $MOLTFLOW_API_KEY" \
@@ -91,6 +174,16 @@ curl -X DELETE -H "X-API-Key: $MOLTFLOW_API_KEY" \
91
174
  | `/sessions` | POST | Create session |
92
175
  | `/sessions/{id}` | GET | Get session details |
93
176
  | `/sessions/{id}` | DELETE | Delete session |
177
+ | `/sessions/{id}/start` | POST | Start session (triggers QR code) |
178
+ | `/sessions/{id}/stop` | POST | Stop session |
179
+ | `/sessions/{id}/restart` | POST | Restart (preserves auth if paired) |
180
+ | `/sessions/{id}/qr` | GET | Get QR code for WhatsApp pairing |
181
+ | `/sessions/{id}/logout` | POST | Logout (clears auth, needs new QR) |
182
+ | `/sessions/{id}/events` | GET | SSE stream for real-time status updates |
183
+
184
+ **Session lifecycle:** `create` β†’ `start` β†’ scan QR β†’ `working` β†’ `stop`/`restart`/`logout`/`delete`
185
+
186
+ **SSE events:** Connect to `/sessions/{id}/events?token=JWT` for real-time status changes (stopped, starting, qr_code, working, failed).
94
187
 
95
188
  ## 2. Messages
96
189
 
@@ -113,6 +206,9 @@ curl -H "X-API-Key: $MOLTFLOW_API_KEY" \
113
206
  | Endpoint | Method | Description |
114
207
  |----------|--------|-------------|
115
208
  | `/messages/send` | POST | Send text message |
209
+ | `/messages/send/poll` | POST | Send poll (question + options) |
210
+ | `/messages/send/sticker` | POST | Send sticker (WebP URL or base64) |
211
+ | `/messages/send/gif` | POST | Send GIF (MP4 URL or base64) |
116
212
  | `/messages/chats/{session_id}` | GET | List chats |
117
213
  | `/messages/chat/{session_id}/{chat_id}` | GET | Get messages in chat |
118
214
  | `/messages/{message_id}` | GET | Get single message |
@@ -137,7 +233,7 @@ curl -X POST -H "X-API-Key: $MOLTFLOW_API_KEY" \
137
233
  # Update monitoring settings
138
234
  curl -X PATCH -H "X-API-Key: $MOLTFLOW_API_KEY" \
139
235
  -H "Content-Type: application/json" \
140
- -d '{"monitor_mode": "keyword", "monitor_keywords": ["looking for", "need help"]}' \
236
+ -d '{"monitor_mode": "keywords", "monitor_keywords": ["looking for", "need help"]}' \
141
237
  https://apiv2.waiflow.app/api/v2/groups/{group_id}
142
238
  ```
143
239
 
@@ -146,9 +242,14 @@ curl -X PATCH -H "X-API-Key: $MOLTFLOW_API_KEY" \
146
242
  | `/groups` | GET | List monitored groups |
147
243
  | `/groups/available/{session_id}` | GET | List available WhatsApp groups |
148
244
  | `/groups` | POST | Add group to monitoring |
245
+ | `/groups/create` | POST | Create new WhatsApp group |
149
246
  | `/groups/{id}` | GET | Get group details |
150
247
  | `/groups/{id}` | PATCH | Update monitoring settings |
151
248
  | `/groups/{id}` | DELETE | Remove from monitoring |
249
+ | `/groups/{wa_group_id}/participants/add` | POST | Add members to group |
250
+ | `/groups/{wa_group_id}/participants/remove` | POST | Remove members from group |
251
+ | `/groups/{wa_group_id}/admin/promote` | POST | Promote to admin |
252
+ | `/groups/{wa_group_id}/admin/demote` | POST | Demote from admin |
152
253
 
153
254
  ## 4. Labels
154
255
 
@@ -310,11 +411,11 @@ curl -H "X-API-Key: $MOLTFLOW_API_KEY" \
310
411
  # Generate AI reply (uses style profile)
311
412
  curl -X POST -H "X-API-Key: $MOLTFLOW_API_KEY" \
312
413
  -d '{"contact_id": "jid", "context": "customer question", "apply_style": true}' \
313
- https://apiv2.waiflow.app/api/v2/ai/ai/generate-reply
414
+ https://apiv2.waiflow.app/api/v2/ai/generate-reply
314
415
 
315
416
  # Preview AI reply (no usage tracking)
316
417
  curl -H "X-API-Key: $MOLTFLOW_API_KEY" \
317
- "https://apiv2.waiflow.app/api/v2/ai/ai/preview?contact_id=jid&context=question&apply_style=true"
418
+ "https://apiv2.waiflow.app/api/v2/ai/preview?contact_id=jid&context=question&apply_style=true"
318
419
  ```
319
420
 
320
421
  ### AI API Reference
@@ -326,14 +427,14 @@ curl -H "X-API-Key: $MOLTFLOW_API_KEY" \
326
427
  | `/ai/style/profile` | GET | Get style profile |
327
428
  | `/ai/style/profiles` | GET | List all profiles |
328
429
  | `/ai/style/profile/{id}` | DELETE | Delete profile |
329
- | `/ai/ai/generate-reply` | POST | Generate AI reply |
330
- | `/ai/ai/preview` | GET | Preview reply (no tracking) |
430
+ | `/ai/generate-reply` | POST | Generate AI reply |
431
+ | `/ai/preview` | GET | Preview reply (no tracking) |
331
432
 
332
433
  ---
333
434
 
334
435
  ## 9. A2A β€” Agent-to-Agent Protocol
335
436
 
336
- **Requires Business plan.** Uses JSON-RPC 2.0 over HTTPS with X25519-AES256GCM encryption.
437
+ **Requires Pro plan or above.** Uses JSON-RPC 2.0 over HTTPS with X25519-AES256GCM encryption.
337
438
 
338
439
  ### Bootstrap & encryption
339
440
 
@@ -459,7 +560,50 @@ curl -H "X-API-Key: $MOLTFLOW_API_KEY" \
459
560
 
460
561
  ---
461
562
 
462
- ## 11. Auth & API Keys
563
+ ## 11. Webhooks
564
+
565
+ ```bash
566
+ # List webhooks
567
+ curl -H "X-API-Key: $MOLTFLOW_API_KEY" \
568
+ https://apiv2.waiflow.app/api/v2/webhooks
569
+
570
+ # Create webhook
571
+ curl -X POST -H "X-API-Key: $MOLTFLOW_API_KEY" \
572
+ -H "Content-Type: application/json" \
573
+ -d '{"name": "Order Bot", "url": "https://example.com/webhook", "events": ["message.received", "lead.detected"], "secret": "optional-hmac-secret"}' \
574
+ https://apiv2.waiflow.app/api/v2/webhooks
575
+
576
+ # Update webhook
577
+ curl -X PATCH -H "X-API-Key: $MOLTFLOW_API_KEY" \
578
+ -H "Content-Type: application/json" \
579
+ -d '{"events": ["message.received", "message.sent", "session.connected"]}' \
580
+ https://apiv2.waiflow.app/api/v2/webhooks/{webhook_id}
581
+
582
+ # Test webhook (sends sample payload)
583
+ curl -X POST -H "X-API-Key: $MOLTFLOW_API_KEY" \
584
+ https://apiv2.waiflow.app/api/v2/webhooks/{webhook_id}/test
585
+
586
+ # Delete webhook
587
+ curl -X DELETE -H "X-API-Key: $MOLTFLOW_API_KEY" \
588
+ https://apiv2.waiflow.app/api/v2/webhooks/{webhook_id}
589
+ ```
590
+
591
+ | Endpoint | Method | Description |
592
+ |----------|--------|-------------|
593
+ | `/webhooks` | GET | List webhooks |
594
+ | `/webhooks` | POST | Create webhook |
595
+ | `/webhooks/{id}` | GET | Get webhook details |
596
+ | `/webhooks/{id}` | PATCH | Update webhook |
597
+ | `/webhooks/{id}` | DELETE | Delete webhook |
598
+ | `/webhooks/{id}/test` | POST | Send test payload |
599
+
600
+ **Events:** `message.received`, `message.sent`, `message.delivered`, `message.read`, `lead.detected`, `session.connected`, `session.disconnected`, `group.message`
601
+
602
+ **Security:** Webhooks include HMAC-SHA256 signature in `X-Webhook-Signature` header when `secret` is set. URLs must not resolve to private IPs (SSRF protection).
603
+
604
+ ---
605
+
606
+ ## 12. Auth & API Keys
463
607
 
464
608
  ```bash
465
609
  # Login
@@ -489,12 +633,17 @@ curl -X POST -H "Authorization: Bearer $TOKEN" \
489
633
  | `/auth/login` | POST | Login (email/password), returns JWT |
490
634
  | `/auth/refresh` | POST | Refresh token |
491
635
  | `/auth/me` | GET | Current user + tenant |
636
+ | `/auth/logout` | POST | Invalidate refresh token |
492
637
  | `/auth/magic-link/request` | POST | Request magic link |
638
+ | `/auth/magic-link/verify` | POST | Verify magic link token |
639
+ | `/auth/forgot-password` | POST | Request password reset email |
640
+ | `/auth/reset-password` | POST | Confirm password reset (token + new password) |
641
+ | `/auth/verify-email` | POST | Verify email address (token from signup email) |
493
642
  | `/api-keys` | GET/POST | List/create API keys |
494
643
  | `/api-keys/{id}` | GET/DELETE | Get/revoke key |
495
644
  | `/api-keys/{id}/rotate` | POST | Rotate key |
496
645
 
497
- ## 12. Usage & Billing
646
+ ## 13. Usage & Billing
498
647
 
499
648
  ```bash
500
649
  # Current period usage
@@ -514,7 +663,7 @@ curl -X POST -H "Authorization: Bearer $TOKEN" \
514
663
  https://apiv2.waiflow.app/api/v2/billing/checkout
515
664
 
516
665
  # Billing portal
517
- curl -H "Authorization: Bearer $TOKEN" \
666
+ curl -X POST -H "Authorization: Bearer $TOKEN" \
518
667
  https://apiv2.waiflow.app/api/v2/billing/portal
519
668
  ```
520
669
 
@@ -524,31 +673,519 @@ curl -H "Authorization: Bearer $TOKEN" \
524
673
  | `/usage/history` | GET | Historical usage |
525
674
  | `/usage/daily` | GET | Daily breakdown |
526
675
  | `/billing/plans` | GET | Available plans |
527
- | `/billing/subscription` | GET | Current subscription |
676
+ | `/billing/subscription` | GET | Subscription details (plan info, usage, next invoice) |
528
677
  | `/billing/checkout` | POST | Stripe checkout session |
529
- | `/billing/portal` | GET | Stripe billing portal |
678
+ | `/billing/portal` | POST | Stripe billing portal |
530
679
  | `/billing/cancel` | POST | Cancel subscription |
531
680
 
532
681
  ---
533
682
 
683
+ ## 14. Scheduled Messages
684
+
685
+ ```bash
686
+ # Create scheduled message (one-time)
687
+ curl -X POST -H "X-API-Key: $MOLTFLOW_API_KEY" \
688
+ -H "Content-Type: application/json" \
689
+ -d '{"name": "Follow-up", "session_id": "uuid", "custom_group_id": "custom-group-uuid", "message_content": "Just checking in!", "schedule_type": "one_time", "scheduled_time": "2026-02-15T09:00:00", "timezone": "Asia/Jerusalem"}' \
690
+ https://apiv2.waiflow.app/api/v2/scheduled-messages
691
+
692
+ # Create recurring schedule (cron)
693
+ curl -X POST -H "X-API-Key: $MOLTFLOW_API_KEY" \
694
+ -H "Content-Type: application/json" \
695
+ -d '{"name": "Weekly Update", "session_id": "uuid", "custom_group_id": "custom-group-uuid", "message_content": "Weekly report...", "schedule_type": "cron", "cron_expression": "0 9 * * MON", "timezone": "America/New_York"}' \
696
+ https://apiv2.waiflow.app/api/v2/scheduled-messages
697
+
698
+ # Pause / resume / cancel
699
+ curl -X POST -H "X-API-Key: $MOLTFLOW_API_KEY" \
700
+ https://apiv2.waiflow.app/api/v2/scheduled-messages/{schedule_id}/pause
701
+
702
+ curl -X POST -H "X-API-Key: $MOLTFLOW_API_KEY" \
703
+ https://apiv2.waiflow.app/api/v2/scheduled-messages/{schedule_id}/resume
704
+
705
+ # View execution history
706
+ curl -H "X-API-Key: $MOLTFLOW_API_KEY" \
707
+ https://apiv2.waiflow.app/api/v2/scheduled-messages/{schedule_id}/history
708
+ ```
709
+
710
+ | Endpoint | Method | Description |
711
+ |----------|--------|-------------|
712
+ | `/scheduled-messages` | GET | List all scheduled messages |
713
+ | `/scheduled-messages` | POST | Create scheduled message (one-time or recurring) |
714
+ | `/scheduled-messages/{id}` | GET | Get schedule with execution history |
715
+ | `/scheduled-messages/{id}` | PATCH | Update schedule and recalculate next run |
716
+ | `/scheduled-messages/{id}/cancel` | POST | Cancel schedule |
717
+ | `/scheduled-messages/{id}/pause` | POST | Pause active schedule |
718
+ | `/scheduled-messages/{id}/resume` | POST | Resume paused schedule |
719
+ | `/scheduled-messages/{id}` | DELETE | Delete cancelled/completed schedule |
720
+ | `/scheduled-messages/{id}/history` | GET | Execution history (paginated) |
721
+
722
+ **Schedule types:** `one_time`, `daily`, `weekly`, `monthly`, `cron`
723
+
724
+ **Required fields:** `name`, `session_id`, `custom_group_id`, `message_content`, `scheduled_time` (for one-time) or `cron_expression` (for cron)
725
+
726
+ ---
727
+
728
+ ## 15. Bulk Send
729
+
730
+ ```bash
731
+ # Create bulk send job
732
+ curl -X POST -H "X-API-Key: $MOLTFLOW_API_KEY" \
733
+ -H "Content-Type: application/json" \
734
+ -d '{"session_id": "uuid", "custom_group_id": "custom-group-uuid", "message_content": "Special offer for VIP clients!"}' \
735
+ https://apiv2.waiflow.app/api/v2/bulk-send
736
+
737
+ # List bulk send jobs
738
+ curl -H "X-API-Key: $MOLTFLOW_API_KEY" \
739
+ https://apiv2.waiflow.app/api/v2/bulk-send
740
+
741
+ # Stream real-time progress (SSE)
742
+ curl -H "X-API-Key: $MOLTFLOW_API_KEY" \
743
+ https://apiv2.waiflow.app/api/v2/bulk-send/{job_id}/progress
744
+
745
+ # Pause / resume / cancel
746
+ curl -X POST -H "X-API-Key: $MOLTFLOW_API_KEY" \
747
+ https://apiv2.waiflow.app/api/v2/bulk-send/{job_id}/pause
748
+ ```
749
+
750
+ | Endpoint | Method | Description |
751
+ |----------|--------|-------------|
752
+ | `/bulk-send` | POST | Create bulk send job (quota reserved) |
753
+ | `/bulk-send` | GET | List all bulk send jobs |
754
+ | `/bulk-send/{id}` | GET | Job details with recipients |
755
+ | `/bulk-send/{id}/pause` | POST | Pause running job |
756
+ | `/bulk-send/{id}/resume` | POST | Resume paused job |
757
+ | `/bulk-send/{id}/cancel` | POST | Cancel job (releases unused quota) |
758
+ | `/bulk-send/{id}/progress` | GET | Real-time progress via SSE |
759
+
760
+ **Anti-ban:** Random 30s–2min delays between messages, typing simulation, seen indicators. Zero ban risk.
761
+
762
+ ---
763
+
764
+ ## 16. Custom Groups
765
+
766
+ ```bash
767
+ # Create custom group
768
+ curl -X POST -H "X-API-Key: $MOLTFLOW_API_KEY" \
769
+ -H "Content-Type: application/json" \
770
+ -d '{"name": "VIP Clients", "members": [{"phone": "+15550123456"}, {"phone": "+15550987654"}]}' \
771
+ https://apiv2.waiflow.app/api/v2/custom-groups
772
+
773
+ # List all custom groups
774
+ curl -H "X-API-Key: $MOLTFLOW_API_KEY" \
775
+ https://apiv2.waiflow.app/api/v2/custom-groups
776
+
777
+ # Add members
778
+ curl -X POST -H "X-API-Key: $MOLTFLOW_API_KEY" \
779
+ -H "Content-Type: application/json" \
780
+ -d '{"contacts": [{"phone": "+15551112222"}, {"phone": "+15553334444"}]}' \
781
+ https://apiv2.waiflow.app/api/v2/custom-groups/{group_id}/members/add
782
+
783
+ # Export as CSV
784
+ curl -H "X-API-Key: $MOLTFLOW_API_KEY" \
785
+ https://apiv2.waiflow.app/api/v2/custom-groups/{group_id}/export/csv
786
+
787
+ # List WhatsApp groups available for import
788
+ curl -H "X-API-Key: $MOLTFLOW_API_KEY" \
789
+ https://apiv2.waiflow.app/api/v2/custom-groups/wa-groups
790
+
791
+ # Create group by importing members from WhatsApp groups
792
+ curl -X POST -H "X-API-Key: $MOLTFLOW_API_KEY" \
793
+ -H "Content-Type: application/json" \
794
+ -d '{"name": "Imported Leads", "wa_groups": [{"wa_group_id": "123@g.us", "session_id": "session-uuid"}]}' \
795
+ https://apiv2.waiflow.app/api/v2/custom-groups/from-wa-groups
796
+ ```
797
+
798
+ | Endpoint | Method | Description |
799
+ |----------|--------|-------------|
800
+ | `/custom-groups` | GET | List all custom groups |
801
+ | `/custom-groups` | POST | Create group (with optional initial members) |
802
+ | `/custom-groups/contacts` | GET | List all unique contacts across sessions |
803
+ | `/custom-groups/wa-groups` | GET | List WhatsApp groups for import |
804
+ | `/custom-groups/from-wa-groups` | POST | Create group by importing WA group members |
805
+ | `/custom-groups/{id}` | GET | Group details with members |
806
+ | `/custom-groups/{id}` | PATCH | Update group name |
807
+ | `/custom-groups/{id}` | DELETE | Delete group and members |
808
+ | `/custom-groups/{id}/members/add` | POST | Add members (skips duplicates) |
809
+ | `/custom-groups/{id}/members/remove` | POST | Remove members by phone |
810
+ | `/custom-groups/{id}/export/csv` | GET | Export members as CSV |
811
+ | `/custom-groups/{id}/export/json` | GET | Export members as JSON |
812
+
813
+ **Note:** Custom Groups are MoltFlow contact lists, not WhatsApp groups. Use them for targeted Bulk Send and Scheduled Messages.
814
+
815
+ ---
816
+
817
+ ## 17. Leads
818
+
819
+ ```bash
820
+ # List leads (with filters)
821
+ curl -H "X-API-Key: $MOLTFLOW_API_KEY" \
822
+ "https://apiv2.waiflow.app/api/v2/leads?status=new&source_group_id=uuid&search=pricing&limit=50"
823
+
824
+ # Get lead details
825
+ curl -H "X-API-Key: $MOLTFLOW_API_KEY" \
826
+ https://apiv2.waiflow.app/api/v2/leads/{lead_id}
827
+
828
+ # Update lead status
829
+ curl -X PATCH -H "X-API-Key: $MOLTFLOW_API_KEY" \
830
+ -H "Content-Type: application/json" \
831
+ -d '{"status": "contacted"}' \
832
+ https://apiv2.waiflow.app/api/v2/leads/{lead_id}/status
833
+
834
+ # Bulk update status
835
+ curl -X POST -H "X-API-Key: $MOLTFLOW_API_KEY" \
836
+ -H "Content-Type: application/json" \
837
+ -d '{"lead_ids": ["uuid1", "uuid2"], "status": "qualified"}' \
838
+ https://apiv2.waiflow.app/api/v2/leads/bulk/status
839
+
840
+ # Bulk add to custom group
841
+ curl -X POST -H "X-API-Key: $MOLTFLOW_API_KEY" \
842
+ -H "Content-Type: application/json" \
843
+ -d '{"lead_ids": ["uuid1", "uuid2"], "custom_group_id": "custom-group-uuid"}' \
844
+ https://apiv2.waiflow.app/api/v2/leads/bulk/add-to-group
845
+
846
+ # Export as CSV (Pro+ plan)
847
+ curl -H "X-API-Key: $MOLTFLOW_API_KEY" \
848
+ https://apiv2.waiflow.app/api/v2/leads/export/csv
849
+ ```
850
+
851
+ | Endpoint | Method | Description |
852
+ |----------|--------|-------------|
853
+ | `/leads` | GET | List leads (filter by status, group, search) |
854
+ | `/leads/{id}` | GET | Lead details |
855
+ | `/leads/{id}/status` | PATCH | Update status (state machine validated) |
856
+ | `/leads/{id}/reciprocity` | GET | Check if lead messaged you first (anti-spam) |
857
+ | `/leads/bulk/status` | POST | Bulk status update |
858
+ | `/leads/bulk/add-to-group` | POST | Bulk add leads to custom group |
859
+ | `/leads/export/csv` | GET | Export as CSV (Pro+ plan, max 10,000) |
860
+ | `/leads/export/json` | GET | Export as JSON (Pro+ plan, max 10,000) |
861
+
862
+ **Lead statuses:** `new` β†’ `contacted` β†’ `qualified` β†’ `converted` / `lost`
863
+
864
+ ---
865
+
866
+ ## 18. Knowledge Base (RAG)
867
+
868
+ ```bash
869
+ # Upload document to knowledge base
870
+ curl -X POST -H "X-API-Key: $MOLTFLOW_API_KEY" \
871
+ -F "file=@product-catalog.pdf" \
872
+ https://apiv2.waiflow.app/api/v2/ai/knowledge/ingest
873
+
874
+ # Search knowledge base
875
+ curl -X POST -H "X-API-Key: $MOLTFLOW_API_KEY" \
876
+ -H "Content-Type: application/json" \
877
+ -d '{"query": "What are the pricing plans?"}' \
878
+ https://apiv2.waiflow.app/api/v2/ai/knowledge/search
879
+
880
+ # List documents
881
+ curl -H "X-API-Key: $MOLTFLOW_API_KEY" \
882
+ https://apiv2.waiflow.app/api/v2/ai/knowledge/sources
883
+
884
+ # Delete document
885
+ curl -X DELETE -H "X-API-Key: $MOLTFLOW_API_KEY" \
886
+ https://apiv2.waiflow.app/api/v2/ai/knowledge/{source_id}
887
+ ```
888
+
889
+ | Endpoint | Method | Description |
890
+ |----------|--------|-------------|
891
+ | `/ai/knowledge/ingest` | POST | Upload document (PDF or TXT) |
892
+ | `/ai/knowledge/search` | POST | Semantic search with embeddings |
893
+ | `/ai/knowledge/sources` | GET | List all documents |
894
+ | `/ai/knowledge/{id}` | DELETE | Delete document |
895
+
896
+ **How it works:** Upload your product docs, FAQ, or any reference material. When AI generates a reply, it searches your knowledge base for relevant context (RAG β€” Retrieval-Augmented Generation) to give accurate, grounded answers.
897
+
898
+ ---
899
+
900
+ ## 19. Voice Transcription
901
+
902
+ ```bash
903
+ # Transcribe a voice message
904
+ curl -X POST -H "X-API-Key: $MOLTFLOW_API_KEY" \
905
+ -H "Content-Type: application/json" \
906
+ -d '{"message_id": "msg-uuid"}' \
907
+ https://apiv2.waiflow.app/api/v2/ai/voice/transcribe
908
+
909
+ # Check transcription status
910
+ curl -H "X-API-Key: $MOLTFLOW_API_KEY" \
911
+ https://apiv2.waiflow.app/api/v2/ai/voice/status/{task_id}
912
+
913
+ # Get transcript
914
+ curl -H "X-API-Key: $MOLTFLOW_API_KEY" \
915
+ https://apiv2.waiflow.app/api/v2/ai/messages/{message_id}/transcript
916
+ ```
917
+
918
+ | Endpoint | Method | Description |
919
+ |----------|--------|-------------|
920
+ | `/ai/voice/transcribe` | POST | Queue voice message for Whisper transcription |
921
+ | `/ai/voice/status/{task_id}` | GET | Check transcription status |
922
+ | `/ai/messages/{message_id}/transcript` | GET | Get transcript text |
923
+
924
+ ---
925
+
926
+ ## Comparison with Other Skills
927
+
928
+ > MoltFlow isn't a messaging wrapper β€” it's a complete WhatsApp business automation platform. Here's how it stacks up.
929
+
930
+ ### Messaging
931
+
932
+ | Feature | **MoltFlow** | whatsapp-ultimate | wacli | whatsapp-automation |
933
+ |---------|:-------:|:-----------------:|:-----:|:-------------------:|
934
+ | Send text | βœ… | βœ… | βœ… | ❌ |
935
+ | Send media (image, audio) | βœ… | βœ… | βœ… | ❌ |
936
+ | Polls | βœ… | βœ… | ❌ | ❌ |
937
+ | Stickers (URL + base64) | βœ… | βœ… | ❌ | ❌ |
938
+ | Voice notes | βœ… | βœ… | ❌ | ❌ |
939
+ | GIFs (URL + base64) | βœ… | βœ… | ❌ | ❌ |
940
+ | Reactions | βœ… | βœ… | ❌ | ❌ |
941
+ | Reply / Quote | βœ… | βœ… | ❌ | ❌ |
942
+ | Edit messages | βœ… | βœ… | ❌ | ❌ |
943
+ | Unsend messages | βœ… | βœ… | ❌ | ❌ |
944
+ | Send location | βœ… | ❌ | ❌ | ❌ |
945
+ | Send vCards (contact cards) | βœ… | ❌ | ❌ | ❌ |
946
+ | Star / unstar messages | βœ… | ❌ | ❌ | ❌ |
947
+ | Read receipts control | βœ… | ❌ | ❌ | ❌ |
948
+ | Typing simulation (anti-ban) | βœ… | ❌ | ❌ | ❌ |
949
+ | Presence management | βœ… | ❌ | ❌ | ❌ |
950
+ | Receive messages | βœ… | βœ… | βœ… | βœ… |
951
+ | Two-way chat | βœ… | βœ… | ❌ | ❌ |
952
+
953
+ ### Groups
954
+
955
+ | Feature | **MoltFlow** | whatsapp-ultimate | wacli | whatsapp-automation |
956
+ |---------|:-------:|:-----------------:|:-----:|:-------------------:|
957
+ | List groups | βœ… | βœ… | ❌ | ❌ |
958
+ | Create group | βœ… | βœ… | ❌ | ❌ |
959
+ | Add / remove members | βœ… | βœ… (full) | ❌ | ❌ |
960
+ | Promote / demote admin | βœ… | βœ… | ❌ | ❌ |
961
+ | Smart monitoring (keywords, mentions) | βœ… | ❌ | ❌ | ❌ |
962
+ | Group lead auto-detection | βœ… | ❌ | ❌ | ❌ |
963
+ | Group auto-respond | βœ… | ❌ | ❌ | ❌ |
964
+ | Per-group AI prompts | βœ… | ❌ | ❌ | ❌ |
965
+
966
+ ### Outreach & Scheduling
967
+
968
+ | Feature | **MoltFlow** | whatsapp-ultimate | wacli | whatsapp-automation |
969
+ |---------|:-------:|:-----------------:|:-----:|:-------------------:|
970
+ | Bulk messaging (ban-safe) | βœ… | ❌ | ❌ | ❌ |
971
+ | Scheduled messages (cron) | βœ… | ❌ | ❌ | ❌ |
972
+ | Custom contact groups | βœ… | ❌ | ❌ | ❌ |
973
+ | Timezone-aware scheduling | βœ… | ❌ | ❌ | ❌ |
974
+ | Pause/resume/cancel jobs | βœ… | ❌ | ❌ | ❌ |
975
+ | Real-time progress (SSE) | βœ… | ❌ | ❌ | ❌ |
976
+ | CSV/JSON export | βœ… | ❌ | ❌ | ❌ |
977
+
978
+ ### CRM & Lead Management
979
+
980
+ | Feature | **MoltFlow** | whatsapp-ultimate | wacli | whatsapp-automation |
981
+ |---------|:-------:|:-----------------:|:-----:|:-------------------:|
982
+ | Contact management | βœ… | ❌ | ❌ | ❌ |
983
+ | Lead pipeline & scoring | βœ… | ❌ | ❌ | ❌ |
984
+ | Lead auto-detection | βœ… | ❌ | ❌ | ❌ |
985
+ | Bulk lead operations | βœ… | ❌ | ❌ | ❌ |
986
+ | Lead export (CSV/JSON) | βœ… | ❌ | ❌ | ❌ |
987
+ | Label system (WA Business sync) | βœ… | ❌ | ❌ | ❌ |
988
+ | Team assignment | βœ… | ❌ | ❌ | ❌ |
989
+
990
+ ### AI & Intelligence
991
+
992
+ | Feature | **MoltFlow** | whatsapp-ultimate | wacli | whatsapp-automation |
993
+ |---------|:-------:|:-----------------:|:-----:|:-------------------:|
994
+ | AI reply suggestions | βœ… | ❌ | ❌ | ❌ |
995
+ | Style cloning (Learn Mode) | βœ… | ❌ | ❌ | ❌ |
996
+ | Knowledge base (RAG) | βœ… | ❌ | ❌ | ❌ |
997
+ | Voice transcription (Whisper) | βœ… | ❌ | ❌ | ❌ |
998
+ | AI auto-labeling | βœ… | ❌ | ❌ | ❌ |
999
+ | AI auto-responses | βœ… | ❌ | ❌ | ❌ |
1000
+ | AI prompt templates | βœ… | ❌ | ❌ | ❌ |
1001
+
1002
+ ### Analytics & Reporting
1003
+
1004
+ | Feature | **MoltFlow** | whatsapp-ultimate | wacli | whatsapp-automation |
1005
+ |---------|:-------:|:-----------------:|:-----:|:-------------------:|
1006
+ | Message statistics | βœ… | ❌ | ❌ | ❌ |
1007
+ | Engagement insights | βœ… | ❌ | ❌ | ❌ |
1008
+ | Lead pipeline analytics | βœ… | ❌ | ❌ | ❌ |
1009
+ | Executive briefing | βœ… | ❌ | ❌ | ❌ |
1010
+ | Team activity & workload | βœ… | ❌ | ❌ | ❌ |
1011
+
1012
+ ### Compliance & Security
1013
+
1014
+ | Feature | **MoltFlow** | whatsapp-ultimate | wacli | whatsapp-automation |
1015
+ |---------|:-------:|:-----------------:|:-----:|:-------------------:|
1016
+ | Anti-spam engine (human-like typing) | βœ… | ❌ | ❌ | ❌ |
1017
+ | GDPR audit logging | βœ… | ❌ | ❌ | ❌ |
1018
+ | Content filtering (PII, secrets, injection) | βœ… | ❌ | ❌ | ❌ |
1019
+ | Consent tracking | βœ… | ❌ | ❌ | ❌ |
1020
+ | Tiered rate limiting | βœ… | ❌ | ❌ | ❌ |
1021
+ | Auto-expiring messages (90-day retention) | βœ… | ❌ | ❌ | ❌ |
1022
+ | Data minimization (500-char preview only) | βœ… | ❌ | ❌ | ❌ |
1023
+ | Named sub-processors (GDPR Art. 28) | βœ… | ❌ | ❌ | ❌ |
1024
+ | Contact erasure (right to be forgotten) | βœ… | ❌ | ❌ | ❌ |
1025
+ | Data Processing Agreement (DPA) | βœ… | ❌ | ❌ | ❌ |
1026
+
1027
+ ### Review Collection
1028
+
1029
+ | Feature | **MoltFlow** | whatsapp-ultimate | wacli | whatsapp-automation |
1030
+ |---------|:-------:|:-----------------:|:-----:|:-------------------:|
1031
+ | Auto review collection | βœ… | ❌ | ❌ | ❌ |
1032
+ | Sentiment analysis (14+ languages) | βœ… | ❌ | ❌ | ❌ |
1033
+ | Testimonial export (JSON / HTML) | βœ… | ❌ | ❌ | ❌ |
1034
+
1035
+ ### Platform & Infrastructure
1036
+
1037
+ | Feature | **MoltFlow** | whatsapp-ultimate | wacli | whatsapp-automation |
1038
+ |---------|:-------:|:-----------------:|:-----:|:-------------------:|
1039
+ | Multi-session (up to 10 numbers) | βœ… | ❌ | ❌ | ❌ |
1040
+ | Webhooks (30+ event types) | βœ… | ❌ | ❌ | ❌ |
1041
+ | Real-time SSE events | βœ… | ❌ | ❌ | ❌ |
1042
+ | API key management | βœ… | ❌ | ❌ | ❌ |
1043
+ | Multi-tenant architecture | βœ… | ❌ | ❌ | ❌ |
1044
+ | A2A protocol (E2E encrypted) | βœ… | ❌ | ❌ | ❌ |
1045
+ | Web dashboard | βœ… | ❌ | ❌ | ❌ |
1046
+ | Stripe billing | βœ… | ❌ | ❌ | ❌ |
1047
+
1048
+ ### Summary
1049
+
1050
+ | | **MoltFlow** | **whatsapp-ultimate** | **wacli** | **whatsapp-automation** |
1051
+ |---|---|---|---|---|
1052
+ | **Messaging** | 18 / 18 | 14 / 18 | 3 / 18 | 1 / 18 |
1053
+ | **Outreach & scheduling** | 7 | 0 | 0 | 0 |
1054
+ | **Business features** | 55+ | 0 | 0 | 0 |
1055
+ | **Total** | **80+** | **~15** | **~3** | **~1** |
1056
+ | **External deps** | Docker + WAHA | None | Go binary | Docker + WAHA |
1057
+
1058
+ ---
1059
+
1060
+ ## Credentials & Security
1061
+
1062
+ **Only one credential is required:** `MOLTFLOW_API_KEY` β€” get it from the [API Keys page](https://molt.waiflow.app) in your dashboard.
1063
+
1064
+ No other secrets are needed by external users:
1065
+ - **A2A encryption keys** (X25519) are generated and managed server-side β€” your API key grants access
1066
+ - **Stripe billing keys** are handled internally β€” you interact via checkout/portal URLs
1067
+ - **JWT tokens** are obtained via `/auth/login` using email/password, no separate secret needed
1068
+
1069
+ This skill is **documentation-only** β€” it provides API guidance to AI agents. The `scripts/` directory contains Python example scripts for common workflows, not executable dependencies.
1070
+
1071
+ ## Example Scripts
1072
+
1073
+ The `scripts/` directory contains standalone Python examples (requires `requests`):
1074
+
1075
+ | Script | Purpose |
1076
+ |--------|---------|
1077
+ | `quickstart.py` | Create session, send first message |
1078
+ | `send_message.py` | Send text messages to contacts |
1079
+ | `a2a_client.py` | Discover agents, send A2A messages |
1080
+ | `admin.py` | Login, create API keys, check billing |
1081
+ | `ai_config.py` | Train style profiles, generate AI replies |
1082
+ | `reviews.py` | Create collectors, export testimonials |
1083
+ | `outreach.py` | Bulk send, scheduled messages, custom groups |
1084
+ | `leads.py` | Lead pipeline, bulk ops, CSV/JSON export |
1085
+ | `gdpr.py` | Contact erasure, data export, account deletion |
1086
+ | `group_monitor.py` | WhatsApp group monitoring & lead detection |
1087
+
1088
+ Run any script: `MOLTFLOW_API_KEY=your-key python scripts/quickstart.py`
1089
+
1090
+ ---
1091
+
1092
+ ## Pricing
1093
+
1094
+ > **Yearly plan available** β€” save up to 17% with annual billing. Pay once, use for 12 months.
1095
+
1096
+ | Plan | Monthly | Yearly | Messages/mo | Sessions | Groups | API Rate |
1097
+ |------|---------|--------|-------------|----------|--------|----------|
1098
+ | Free | $0 | β€” | 50 | 1 | 2 | 10/min |
1099
+ | Starter | $9.90 | $99/yr | 500 | 1 | 5 | 20/min |
1100
+ | Pro | $29.90 | $299/yr | 1,500 | 5 | 20 | 40/min |
1101
+ | Business | $69.90 | $699/yr | 3,000 | 15 | 100 | 60/min |
1102
+
1103
+ Sign up: https://molt.waiflow.app/checkout?plan=free
1104
+
1105
+ ---
1106
+
1107
+ ## Blog & Guides
1108
+
1109
+ Tutorials and guides for common MoltFlow workflows:
1110
+
1111
+ - [Getting Started with WhatsApp Automation](https://molt.waiflow.app/blog/whatsapp-automation-getting-started)
1112
+ - [MoltFlow API Complete Guide](https://molt.waiflow.app/blog/moltflow-api-complete-guide)
1113
+ - [MoltFlow + n8n WhatsApp Automation](https://molt.waiflow.app/blog/moltflow-n8n-whatsapp-automation)
1114
+ - [n8n + WhatsApp + Google Sheets](https://molt.waiflow.app/blog/n8n-whatsapp-google-sheets)
1115
+ - [n8n WhatsApp Group Auto-Reply](https://molt.waiflow.app/blog/n8n-whatsapp-group-auto-reply)
1116
+ - [n8n WhatsApp Lead Pipeline](https://molt.waiflow.app/blog/n8n-whatsapp-lead-pipeline)
1117
+ - [n8n Multi-Model AI Orchestration](https://molt.waiflow.app/blog/n8n-multi-model-ai-orchestration)
1118
+ - [AI Auto-Replies for WhatsApp Setup](https://molt.waiflow.app/blog/ai-auto-replies-whatsapp-setup)
1119
+ - [WhatsApp Group Lead Generation Guide](https://molt.waiflow.app/blog/whatsapp-group-lead-generation-guide)
1120
+ - [A2A Protocol: Agent-to-Agent Communication](https://molt.waiflow.app/blog/a2a-protocol-agent-communication)
1121
+ - [OpenClaw WhatsApp Customer Support](https://molt.waiflow.app/blog/openclaw-whatsapp-customer-support)
1122
+ - [Scaling WhatsApp Automation ROI](https://molt.waiflow.app/blog/scaling-whatsapp-automation-roi)
1123
+
1124
+ Full blog: https://molt.waiflow.app/blog
1125
+
1126
+ ---
1127
+
534
1128
  ## Notes
535
1129
 
536
1130
  - All messages include anti-spam compliance (typing indicators, random delays)
537
- - Rate limits by plan: Free 10/min, Starter 60/min, Pro 300/min, Business 1000/min
1131
+ - API rate limits by plan: Free 10/min, Starter 20/min, Pro 40/min, Business 60/min
538
1132
  - Sessions require QR code pairing on first connect
539
1133
  - Use E.164 phone format without `+` where required
540
- - AI features require Pro plan or above
541
- - A2A protocol requires Business plan
1134
+ - AI features (auto-responses, RAG, Learn Mode) require Pro plan or above
1135
+ - A2A protocol requires Pro plan or above
542
1136
  - Anti-spam rules support pattern matching with block, flag, or delay actions
543
1137
  - Content safeguards filter secrets (API keys, tokens), PII (SSN, credit cards), and prompt injection
544
1138
  - AI reply generation includes safety: input sanitization, intent verification, output filtering
545
1139
  - API keys use name + expires_in_days (no scopes param); raw key shown only once at creation
546
1140
  - Respect WhatsApp opt-in, business hours, and opt-out requests
547
1141
 
1142
+ ---
1143
+
1144
+ ## Changelog
1145
+
1146
+ ### v2.0.0 (2026-02-12)
1147
+
1148
+ **New API sections:**
1149
+ - **Scheduled Messages** (Section 14) β€” one-time, daily/weekly/monthly, cron, timezone-aware, pause/resume/cancel, execution history
1150
+ - **Bulk Send** (Section 15) β€” ban-safe broadcast to custom groups, real-time SSE progress, pause/resume/cancel, quota management
1151
+ - **Custom Groups** (Section 16) β€” contact lists for targeted outreach, import from WhatsApp, CSV/JSON export, member management
1152
+ - **Leads** (Section 17) — auto-detected lead pipeline, status tracking (new→contacted→qualified→converted), bulk operations, CSV/JSON export, reciprocity check
1153
+ - **Knowledge Base / RAG** (Section 18) β€” upload PDF/TXT documents, semantic search with embeddings, AI uses your docs for grounded answers
1154
+ - **Voice Transcription** (Section 19) β€” Whisper-powered async transcription with task status tracking
1155
+
1156
+ **Updated:**
1157
+ - Complete feature matrix at the top with all 18 platform capabilities
1158
+ - Expanded "When to use" list covering all features
1159
+ - New use case categories: Bulk messaging & scheduling, AI & knowledge
1160
+ - Comparison table: added Outreach & Scheduling section (7 features), Bulk lead operations, Lead export
1161
+ - Updated totals: 80+ features (was 63+)
1162
+ - Yearly billing offer highlighted in pricing and feature matrix
1163
+
1164
+ ### v1.6.0 (2026-01-28)
1165
+ - Added GDPR compliance section (auto-expiring messages, data minimization, contact erasure, DPA)
1166
+ - Added AI consent enforcement documentation
1167
+ - Updated comparison tables with compliance features (10 new entries)
1168
+
1169
+ ### v1.5.0 (2026-01-15)
1170
+ - Added Reviews & Testimonials API (Section 10)
1171
+ - Added A2A Protocol with X25519-AES256GCM encryption
1172
+ - Added Content Safeguards API (Section 6)
1173
+ - Added blog & guides section
1174
+
1175
+ ### v1.0.0 (2025-12-01)
1176
+ - Initial release: Sessions, Messages, Groups, Labels, Anti-Spam, AI, Webhooks, Auth, Billing
1177
+
548
1178
  <!-- FILEMAP:BEGIN -->
549
1179
  ```text
550
1180
  [moltflow file map]|root: .
551
- |.:{SKILL.md,package.json}
552
- |scripts:{quickstart.py,a2a_client.py,send_message.py,admin.py,ai_config.py,reviews.py}
1181
+ |.:{SKILL.md,CHANGELOG.md,package.json}
1182
+ |scripts:{quickstart.py,a2a_client.py,send_message.py,admin.py,ai_config.py,reviews.py,outreach.py,leads.py}
1183
+ |moltflow:{SKILL.md}
1184
+ |moltflow-ai:{SKILL.md}
1185
+ |moltflow-a2a:{SKILL.md}
1186
+ |moltflow-reviews:{SKILL.md}
1187
+ |moltflow-outreach:{SKILL.md}
1188
+ |moltflow-leads:{SKILL.md}
1189
+ |moltflow-admin:{SKILL.md}
553
1190
  ```
554
1191
  <!-- FILEMAP:END -->