Getting started
Errors & responses
Engagive uses a consistent JSON envelope for successes. When an operation reaches WhatsApp or Meta, extra detail may appear in metaResponse. Validation and permission problems return clear HTTP status codes and error messages.
Successful response shape
Most endpoints return a single object with success: true, an HTTP-style statusCode, optional message, and a data payload. List endpoints may include pagination.
{
"success": true,
"statusCode": 200,
"message": "optional string",
"data": { },
"pagination": { },
"metaResponse": { }
}Fields such as pagination and metaResponse appear only when relevant.
metaResponse
When the server calls the WhatsApp Cloud API (template submit, message send, reactions, etc.), Engagive may include Meta's payload in metaResponse so you can log message ids, debug failures, and align with Meta Business Manager.
Error responses
Failed requests return success: false (or omit success where documented) with an HTTP status and an error string (or message field) describing the problem.
| HTTP | Typical meaning |
|---|---|
| 400 | Invalid body, query, or path parameters |
| 401 | Missing, invalid, or expired Bearer token |
| 403 | Authenticated but not allowed (role or wrong account_id) |
| 404 | Resource not found or not visible to your organization |
| 502 | Upstream WhatsApp / Meta error — check metaResponse if present |
WhatsApp / Meta failures
Some Meta errors surface as 502 with metaResponse in the body. Always inspect that object and treat success: false accordingly.
Browser and CORS
Integrations should call the API from a server you control. If you call from a browser, your origin may need to be allowlisted for CORS—contact Engagive support if preflight or cross-origin requests fail. Never expose long-lived tokens in client-side code.