-
-
Notifications
You must be signed in to change notification settings - Fork 1.2k
Description
Hi WAHA Team 👋
I’m opening this post not as a bug report, but as a formal question and clarification request regarding API response consistency across different WAHA versions and engines.
Please do not mark or delete this post as a duplicate of any existing bug report (such as /api/sendImage) — because this discussion focuses solely on API response structure inconsistencies, not on endpoint malfunction.
⚠️ The core issue
Over multiple versions and engines (NOWEB and GOWS), I’ve found that the API responses change drastically — even for the same endpoints like /api/sendText and /api/sendImage.
These changes happen without any notice, changelog entry, or API version differentiation, which creates serious problems for integrations that depend on stable response formats.
This is not just a temporary bug; it’s an architectural inconsistency that affects every system integrating with WAHA — ERP, CRM, bots, automation services, and so on.
🔍 Summary of observations
| Version | Engine | /api/sendText | /api/sendImage | Response structure | Notes |
|---|---|---|---|---|---|
| 2025.9.3 | NOWEB | ✅ Works | ✅ Works | Format A | Stable |
| 2025.9.4 | NOWEB | ✅ Works | ✅ Works | Format A | Stable |
| 2025.9.5–2025.9.7 | NOWEB | ✅ Works | Format B (similar to GOWS) | Unstable | |
| 2025.9.8 | NOWEB | ✅ Works | ❌ Fails (Media upload failed) | Reverted to Format A | Broken |
| 2025.10.1 | NOWEB | ✅ Works | ❌ Fails (Media upload failed) | Format A | Broken |
| 2025.10.1 | GOWS | ✅ Works | ✅ Works | Format B | Stable |
Example difference:
NOWEB (2025.10.1)
{
"statusCode": 200,
"id": "[email protected]_xxx",
"message": "Message sent successfully"
}
GOWS (2025.10.1)
{
"id": "[email protected]_xxx",
"_data": {
"Info": { "Chat": "[email protected]", "IsFromMe": true, ... },
"Message": { "imageMessage": { "caption": "example" } }
}
}
Same endpoint — completely different structure.
There’s no mention of this anywhere in release notes or documentation.
❗Why this matters
For production systems, API consistency is critical.
If the same endpoint returns different JSON shapes depending on the engine or version, all external integrations break silently.
-
Developers can’t rely on one standard data model.
-
Automated parsers and message handlers crash.
-
API-based integrations (like Automan ERP, CRM, or WhatsApp bot bridges) must be rewritten after every update.
This isn’t a simple bug — it’s a design and quality control issue.
🧭 Questions for the WAHA Team
-
Are these response format differences intentional per engine, or are they uncontrolled regressions between releases?
-
Is there an official response schema or API contract that all engines are supposed to follow?
-
Will WAHA introduce API versioning (
/api/v1,/api/v2) or documentation updates to prevent future breaking changes? -
Which format (A or B) should integrators consider “official” going forward?
💬 Final note
This post is not about the /api/sendImage bug, even though that endpoint happens to fail on NOWEB.
The purpose here is to address the underlying inconsistency in API response structures, which affects all endpoints.
Please do not close or delete this issue as a duplicate — it’s an independent topic requiring an architectural clarification from the WAHA development team.
Thank you 🙏