Receiving message statuses in batches

To receive any message status customers must provide an HTTPS url to Digital Media Bridge.
Once Digital Media Bridge receives a message status update from carriers, it will store it internally before sending it through a http request:

  • once the desidered number of status updates discussed with the customer has been reached, we will notify them all in the same request call;
  • iif this number of status updates has not been reached within X minutes (this interval can be discussed and set by Digital Media Bridge and the customer) we will notify what has been received up to that moment to the customer;

Request will be done using POST method; each request contains an array of JSON objects as below (each JSON object correspond to a single status update for a message previously sent):

[
{
    "msisdn": "+39111222333",
    "delivery_status": "XXXXX",
    "delivery_date": "YYYY-MM-DD HH:mm:ss",
    "uuid": "xxxx-yyyy-zzzz"
},
{
    "msisdn": "+39444555666",
    "delivery_status": "YYYYYY",
    "delivery_date": "YYYY-MM-DD HH:mm:ss",
    "uuid": "aaaa-bbbb-zzzz"
},
...
]

msisdn is the original recipient number.
delivery_status is the final state of the message received from the carrier. Possible values are:

  • REJECTD: carrier rejected the message at sending stage
  • DELIVRD: message has been delivered to the final destination
  • EXPIRED: carrier could not deliver the message before expiration time
  • UNDELIV: carrier could not deliver the message to the final destination
  • UNKNOWN: msisdn has an ongoing carrier portability change

delivery_date is the date of the event
uuid is the unique message identifier provided by the customer when sending the message, or the one generated by Digital Media Bridge if not provided by the customer.