You can use the callback functionality to retrieve information about the message status change. This request sends this information to your server along with the request parameters in the request body.
URL
To retrieve message callback statuses, during registration, you need to specify your system’s API endpoint that will process incoming POST requests from API-edna.
Only the HTTPS protocol is supported.
Example of the Body of an Incoming POST Request
{ "requestId": null, "cascadeId": 1, "cascadeStageUUID": "001-test001", "subject": "test_subject", "subjectId": 345, "status": "FAILED", "statusAt": "2021-01-21T08:00:00Z", "comment": "Comment", "error": "error-subject-unknown" }
Request Format
Parameter | Data type | Description |
requestId | String | Message ID |
cascadeId | Long | Cascade ID |
cascadeStageUUID | String | Null or data |
subject | String | Subject name |
subjectId | Long | Subject ID. To retrieve the ID, use the channel-profile method. |
status | String | Status |
statusAt | String | The last time the status was updated, displayed in the ISO 8601 format. For example, 2021-01-21T08:00:00Z |
comment | String (optional) | Text comment used the the message was sent. It is displayed in the detailed message report. Can be used for chatbot routing. |
error | String (optional) | Possible values: null or data An error that occurred while processing the message. You can see the list here. |
Response Format
As a response to the request from your server, its status with code 200
must return.
Delivery Statuses
Status | Description |
sent | The message has been sent |
delivered | The message has been delivered |
read | The message has been read |
undelivered | The message was not been delivered |
cancelled | Sending of the message is canceled |
delayed | Sending of the message is delayed |
enqueued | The message is in the queue to be sent |
expired | The message hasn’t received the delivered status within the period specified in the message or the 24 hour period since it was sent |
failed | The message wasn’t sent due to an error |
More delivery statuses might be added. Please consider this when setting up the integration.
Errors
Status | Description |
not-whatsapp-user | (WhatsApp only) the recipient is not registered in WhatsApp |
no-match-template | The message doesn’t match the registered templates |
session-not-started | The message doesn’t match the registered templates |
daily-rate-limit | (WhatsApp only) the daily template message limit exceeded |
too-long-message | the message length limit exceeded |
chat-window-closed | (WhatsApp only) failure to open a chat window on WhatsApp side |
media-request-failed | failure to download media |
error-subject-unknown | The specified signature isn’t allowed. All signatures must be registered first |
error-address-format | The client’s number is incorrect |
duplicated | The message duplicate was attempted to be sent within 5 minutes |
More delivery statuses might be added. Please consider this when setting up the integration.