Skip to content

MMS MT Postback V2

Synopsis

When the MMS is sent we will generate a Postback notification. When we receive an MMS delivery receipt we will generate another Postback notification. Not all carriers provide MMS delivery receipts.

A postback notification called N101 is immediately sent after we begin to process the MMS. Upon receiving Delivery Report (DLR) from the carrier, the system generates postback notification N102 with the handset information. The N101 and N102 notifications are linked by tracking-id. Not all carriers provide handset information. When the mobile network operator does not support MMS or the destination handset does not support the size of the content within the MMS, it is sent as fallback SMS.

The possible MMS status code that you may receive for the delivery status is one of the following: N101 (Sent), N102 (Delivered), N103 (Message Expired), E101 (Sending Failure), E102 (Delivery Failure).

MMS MT Success/Failure Status Codes – JSON

Postback Code Postback Status
N101 Sent
N102 Delivered
N103 Expired
E101 Failed
E102 Rejected
E102 Unrecognised
N003 Transcoding successful
E002 Transcoding failed for audio
E003 Transcoding failed for video
E004 Transcoding failed for image
N013 Transcoding successful and sending triggered
E011 Content validation failures
E012 Transcoding failed for audio and sending not triggered
E013 Transcoding failed for video and sending not triggered

MMS MT Postback Nodes

Postback Parameter Postback Parameter Description
origin MMS_MT
code Postback Notification code to identify the postback.
sent-as Value is “MMS” if the MMS is sent/delivered as MMS. Value is “SMS” if the MMS is sent/delivered as Fallback SMS.
status Status of the MMS MT transaction. Example: Sent, Delivered, Failed, Rejected, Expired.
status-details Status Details of the MMS MT transaction. Example: Message Sent, Message Delivered, Message Failed, Message Rejected, Message Expired.
to Destination phone number with country code.
from The shortcode, 10DLC or TFN sender. Alphanumeric sender supported only for carriers in certain countries; not supported in the USA.
timestamp The timestamp for the MMS MT transaction.
tracking-id / trackingid Tracking ID generated in the API Response passed back in the postback to link API Request to Postback.
client-reference Customer transaction ID for the API request. Passed back in all the postbacks for the API transaction. Accepts max. length of 64 chars.
campaign-ref Messaging Campaign Reference ID from the API Request.
mms-id / mmsid The mms template id value of the template that will be created.
handset Handset profile returned inside Delivery Receipt. This is present only in N102 notification.
audio-name / audioname Audio file URL provided in the request.
video-name / videoname Video file URL provided in the request.
content-type Content type.
content-name Content file URL provided in the request.
error-info Error information for the failure.

POSTBACK: N101/N102/N103/E101/E102 Request

curl -X POST \ 
     -H "content-type: application/json" -d '
      {
          "origin":"MMS_MT",
          "code":"STATUS_CODE",
          "sent-as":"MMS/SMS",
          "status":"STATUS",
          "status-details":"STATUS_DETAILS",
          "mms-id":"MMS_ID",
          "from":"SENDER_NUMBER",
          "to":"RECEIVER_PHONE_NUMBER_WITH_COUNTRY_CODE",
          "tracking-id":"TRACKING_ID",
          "client-reference":"CLIENT_REFERENCE",
          "timestamp":"SENT_TIMESTAMP",
          "handset":"HANDSET_ID"
      }' \
  "POSTBACK_ENDPOINT_URL"

POSTBACK: N101 Example (MMS MT Sent)

MMS
curl -X POST \ 
     -H "content-type: application/json" -d '
      {
          "origin":"MMS_MT",
          "code":"N101",
          "sent-as":"MMS",
          "status":"Sent",
          "status-details":"Message Sent",
          "mms-id":"123456",
          "from":"00000",
          "to":"10000000000",
          "tracking-id":"xxxxxxxxxxxx",
          "client-reference":"5ZY7Cx1Xy0vs",
          "timestamp":"2021-01-26T18:00:07.990498+00:00"
      }' \
  "POSTBACK_ENDPOINT_URL"

Fallback SMS
curl -X POST \ 
     -H "content-type: application/json" -d '
      {
          "origin":"MMS_MT",
          "code":"N101",
          "sent-as":"SMS",
          "status":"Sent",
          "status-details":"Message Sent",
          "mms-id":"123456",
          "from":"00000",
          "to":"10000000000",
          "tracking-id":"xxxxxxxxxxxx",
          "client-reference":"5ZY7Cx1Xy0vs",
          "timestamp":"2021-01-26T18:00:07.990498+00:00"
      }' \
  "POSTBACK_ENDPOINT_URL"

Alphanumeric Sender
curl -X POST \ 
     -H "content-type: application/json" -d '
      {
          "origin":"MMS_MT",
          "code":"N101",
          "sent-as":"MMS",
          "status":"Sent",
          "status-details":"Message Sent",
          "mms-id":"123456",
          "from":"Dunder Mifflin",
          "to":"10000000000",
          "tracking-id":"xxxxxxxxxxxx",
          "client-reference":"5ZY7Cx1Xy0vs",
          "timestamp":"2021-01-26T18:00:07.990498+00:00"
      }' \
  "POSTBACK_ENDPOINT_URL"

POSTBACK: N102 Example (MMS MT / Fallback SMS Delivered)

MMS
curl -X POST \ 
     -H "content-type: application/json" -d '
      {
          "origin":"MMS_MT",
          "code":"N102",
          "sent-as":"MMS", 
          "status":"Delivered",
          "status-details":"Message Delivered",
          "mms-id":"123456",
          "from":"00000",
          "to":"10000000000",
          "tracking-id":"xxxxxxxxxxxx",
          "client-reference":"5ZY7Cx1Xy0vs",
          "timestamp":"2021-01-26T18:00:07.990498+00:00",
          "handset":"iosmms2.0"
      }' \
  "POSTBACK_ENDPOINT_URL"

Fallback SMS
curl -X POST \ 
     -H "content-type: application/json" -d '
      {
          "origin":"MMS_MT",
          "code":"N102",
          "sent-as":"SMS", 
          "status":"Delivered",
          "status-details":"Message Delivered",
          "mms-id":"123456",
          "from":"00000",
          "to":"10000000000",
          "tracking-id":"xxxxxxxxxxxx",
          "client-reference":"5ZY7Cx1Xy0vs",
          "timestamp":"2021-01-26T18:00:07.990498+00:00",
          "handset":"iosmms2.0"
      }' \
  "POSTBACK_ENDPOINT_URL"

Alphanumeric Sender
curl -X POST \ 
     -H "content-type: application/json" -d '
      {
          "origin":"MMS_MT",
          "code":"N102",
          "sent-as":"MMS", 
          "status":"Delivered",
          "status-details":"Message Delivered",
          "mms-id":"123456",
          "from":"Dunder Mifflin",
          "to":"10000000000",
          "tracking-id":"xxxxxxxxxxxx",
          "client-reference":"5ZY7Cx1Xy0vs",
          "timestamp":"2021-01-26T18:00:07.990498+00:00",
          "handset":"iosmms2.0"
      }' \
  "POSTBACK_ENDPOINT_URL"

POSTBACK: N103 Example (MMS MT Expired)

curl -X POST \ 
     -H "content-type: application/json" -d '
      {
          "origin":"MMS_MT",
          "code":"N103",
          "sent-as":"MMS",
          "status":"Expired",
          "status-details":"Message Expired",
          "mms-id":"123456",
          "from":"00000",
          "to":"10000000000",
          "tracking-id":"xxxxxxxxxxxx",
          "client-reference":"5ZY7Cx1Xy0vs",
          "timestamp":"2021-01-26T18:00:07.990498+00:00"
      }' \
  "POSTBACK_ENDPOINT_URL"

POSTBACK: E101 Example (MMS MT Sending Failed)

MMS is too BIG (Fallback SMS is disabled)
curl -X POST \ 
     -H "content-type: application/json" -d '
      {
          "origin":"MMS_MT",
          "code":"E101",
          "sent-as":"MMS",
          "status":"Failed",
          "status-details":"MMS is too big",
          "mms-id":"123456",
          "from":"00000",
          "to":"10000000000",
          "tracking-id":"xxxxxxxxxxxx",
          "client-reference":"5ZY7Cx1Xy0vs",
          "timestamp":"2021-01-26T18:00:07.990498+00:00"
      }' \
  "POSTBACK_ENDPOINT_URL"

No way to send SMS or MMS
curl -X POST \ 
     -H "content-type: application/json" -d '
      {
          "origin":"MMS_MT",
          "code":"E101",
          "sent-as":"MMS",
          "status":"Failed",
          "status-details":"No way to send MMS or SMS",
          "mms-id":"123456",
          "from":"00000",
          "to":"10000000000",
          "tracking-id":"xxxxxxxxxxxx",
          "client-reference":"5ZY7Cx1Xy0vs",
          "timestamp":"2021-01-26T18:00:07.990498+00:00"
      }' \
  "POSTBACK_ENDPOINT_URL"

Internal Routing Error
curl -X POST \ 
     -H "content-type: application/json" -d '
      {
          "origin":"MMS_MT",
          "code":"E101",
          "sent-as":"MMS",
          "status":"Failed",
          "status-details":"Internal Routing Error",
          "mms-id":"123456",
          "from":"00000",
          "to":"10000000000",
          "tracking-id":"xxxxxxxxxxxx",
          "client-reference":"5ZY7Cx1Xy0vs",
          "timestamp":"2021-01-26T18:00:07.990498+00:00"
      }' \
  "POSTBACK_ENDPOINT_URL"

Content Validation Failed
curl -X POST \ 
     -H "content-type: application/json" -d '
      {
          "origin":"MMS_MT",
          "code":"E101",
          "sent-as":"MMS",
          "status":"Failed",
          "status-details":"Content Validation Failed",
          "mms-id":"123456",
          "from":"00000",
          "to":"10000000000",
          "tracking-id":"xxxxxxxxxxxx",
          "client-reference":"5ZY7Cx1Xy0vs",
          "timestamp":"2021-01-26T18:00:07.990498+00:00"
      }' \
  "POSTBACK_ENDPOINT_URL"

Audio or Video Transcoding Failed
curl -X POST \ 
     -H "content-type: application/json" -d '
      {
          "origin":"MMS_MT",
          "code":"E101",
          "sent-as":"MMS",
          "status":"Failed",
          "status-details":"Audio or Video Transcoding Failed",
          "mms-id":"123456",
          "from":"00000",
          "to":"10000000000",
          "tracking-id":"xxxxxxxxxxxx",
          "client-reference":"5ZY7Cx1Xy0vs",
          "timestamp":"2021-01-26T18:00:07.990498+00:00"
      }' \
  "POSTBACK_ENDPOINT_URL"

POSTBACK: E102 Example (MMS MT Rejected)

Rejected
curl -X POST \ 
     -H "content-type: application/json" -d '
      {
          "origin":"MMS_MT",
          "code":"E102",
          "sent-as":"MMS",
          "status":"Rejected",
          "status-details":"Message Rejected",
          "mms-id":"123456",
          "from":"00000",
          "to":"10000000000",
          "tracking-id":"xxxxxxxxxxxx",
          "client-reference":"5ZY7Cx1Xy0vs",
          "timestamp":"2021-01-26T18:00:07.990498+00:00"
      }' \
  "POSTBACK_ENDPOINT_URL"

Unreachable
curl -X POST \ 
     -H "content-type: application/json" -d '
      {
          "origin":"MMS_MT",
          "code":"E102",
          "sent-as":"MMS",
          "status":"Rejected",
          "status-details":"Network Unreachable",
          "mms-id":"123456",
          "from":"00000",
          "to":"10000000000",
          "tracking-id":"xxxxxxxxxxxx",
          "client-reference":"5ZY7Cx1Xy0vs",
          "timestamp":"2021-01-26T18:00:07.990498+00:00"
      }' \
  "POSTBACK_ENDPOINT_URL"

Not Supported
curl -X POST \ 
     -H "content-type: application/json" -d '
      {
          "origin":"MMS_MT",
          "code":"E102",
          "sent-as":"MMS",
          "status":"Rejected",
          "status-details":"Message Not Supported",
          "mms-id":"123456",
          "from":"00000",
          "to":"10000000000",
          "tracking-id":"xxxxxxxxxxxx",
          "client-reference":"5ZY7Cx1Xy0vs",
          "timestamp":"2021-01-26T18:00:07.990498+00:00"
      }' \
  "POSTBACK_ENDPOINT_URL"

POSTBACK: E102 Example (MMS MT Unrecognised)

curl -X POST \ 
     -H "content-type: application/json" -d '
      {
          "origin":"MMS_MT",
          "code":"E102",
          "sent-as":"MMS",
          "status":"Unrecognised",
          "status-details":"-1:Exception",
          "mms-id":"123456",
          "from":"00000",
          "to":"10000000000",
          "tracking-id":"xxxxxxxxxxxx",
          "client-reference":"5ZY7Cx1Xy0vs",
          "timestamp":"2021-01-26T18:00:07.990498+00:00"
      }' \
  "POSTBACK_ENDPOINT_URL"

POSTBACK: N003 Request

curl -X POST \ 
     -H "content-type: application/json" -d '
      {
          "origin":"MMS_MT",
          "code":"STATUS_CODE",
          "mms-id":"MMS_ID_OF_NEW_MMS_TEMPLATE_CREATED",
          "tracking-id":"TRACKING_ID_OF_REQUEST",
          "client-reference":"CLIENT_REFERENCE",
          "timestamp":"TIMESTAMP_TRANSCODED"
      }' \
  "POSTBACK_ENDPOINT_URL"

POSTBACK: N003 Example

curl -X POST \ 
     -H "content-type: application/json" -d '
      {
          "origin":"MMS_MT",
          "code":"N003",
          "mms-id":"123456",
          "tracking-id":"xxxxxxxxxxxx",
          "client-reference":"5ZY7Cx1Xy0vs",
          "timestamp":"2021-01-26T18:00:07.990498+00:00"
      }' \
  "POSTBACK_ENDPOINT_URL"

POSTBACK: E002 Request

curl -X POST \ 
     -H "content-type: application/json" -d '
      {
          "origin":"MMS_MT",
          "code":"STATUS_CODE",
          "mmsid":"MMS_ID_OF_NEW_MMS_TEMPLATE_CREATED",
          "trackingid":"TRACKING_ID_OF_REQUEST",
          "client-reference":"CLIENT_REFERENCE",
          "audioname":"AUDIO_FILE_URL_PROVIDED_IN_THE_REQUEST"
      }' \
  "POSTBACK_ENDPOINT_URL"

POSTBACK: E002 Example

curl -X POST \ 
     -H "content-type: application/json" -d '
      {
          "origin":"MMS_MT",
          "code":"E002",
          "mmsid":"123456",
          "trackingid":"xxxxxxxxxxxx",
          "client-reference":"5ZY7Cx1Xy0vs",
          "audioname":"https://fake-content-url.com/audio.mp3"
      }' \
  "POSTBACK_ENDPOINT_URL"

POSTBACK: E003 Request

curl -X POST \ 
     -H "content-type: application/json" -d '
      {
          "origin":"MMS_MT",
          "code":"STATUS_CODE",
          "mms-id":"MMS_ID_OF_NEW_MMS_TEMPLATE_CREATED",
          "trackingid":"TRACKING_ID_OF_REQUEST",
          "client-reference":"CLIENT_REFERENCE",
          "videoname":"VIDEO_FILE_URL_PROVIDED_IN_THE_REQUEST"
      }' \
  "POSTBACK_ENDPOINT_URL"

POSTBACK: E003 Example

curl -X POST \ 
     -H "content-type: application/json" -d '
      {
          "origin":"MMS_MT",
          "code":"E003",
          "mms-id":"123456",
          "trackingid":"xxxxxxxxxxxx",
          "client-reference":"5ZY7Cx1Xy0vs",
          "videoname":"https://fake-content-url.com/video.mp4"
      }' \
  "POSTBACK_ENDPOINT_URL"

POSTBACK: E004 Request

curl -X POST \ 
     -H "content-type: application/json" -d '
      {
          "origin":"MMS_MT",
          "code":"STATUS_CODE",
          "mmsid":"MMS_ID_OF_NEW_MMS_TEMPLATE_CREATED",
          "trackingid":"TRACKING_ID_OF_REQUEST",
          "client-reference":"CLIENT_REFERENCE",
          "imagename":"IMAGE_FILE_URL_PROVIDED_IN_THE_REQUEST"
      }' \
  "POSTBACK_ENDPOINT_URL"

POSTBACK: E004 Example

curl -X POST \ 
     -H "content-type: application/json" -d '
      {
          "origin":"MMS_MT",
          "code":"E004",
          "mmsid":"123456",
          "trackingid":"xxxxxxxxxxxx",
          "client-reference":"5ZY7Cx1Xy0vs",
          "imagename":"https://fake-content-url.com/image.jpg"
      }' \
  "POSTBACK_ENDPOINT_URL"

POSTBACK: N013 Request

curl -X POST \ 
     -H "content-type: application/json" -d '
      {
          "origin":"MMS_MT",
          "code":"STATUS_CODE",
          "mms-id":"MMS_ID_OF_NEW_MMS_TEMPLATE_CREATED",
          "tracking-id":"TRACKING_ID_OF_REQUEST",
          "client-reference":"CLIENT_REFERENCE",
          "timestamp":"TIMESTAMP_TRANSCODED"
      }' \
  "POSTBACK_ENDPOINT_URL"

POSTBACK: N013 Example

curl -X POST \ 
     -H "content-type: application/json" -d '
      {
          "origin":"MMS_MT",
          "code":"N013",
          "mms-id":"123456",
          "tracking-id":"xxxxxxxxxxxx",
          "client-reference":"5ZY7Cx1Xy0vs",
          "timestamp":"2021-01-26T18:00:07.990498+00:00"
      }' \
  "POSTBACK_ENDPOINT_URL"

POSTBACK: E011 Request

curl -X POST \ 
     -H "content-type: application/json" -d '
      {
          "origin":"MMS_MT",
          "code":"STATUS_CODE",
          "tracking-id":"TRACKING_ID_OF_REQUEST",
          "client-reference":"CLIENT_REFERENCE",
          "content-type":"CONTENT_TYPE", 
          "content-name":"CONTENT_FILE_URL_PROVIDED_IN_THE_REQUEST",
          "error-info":"REASON_FOR_CONTENT_VALIDATION_FAILURE"
      }' \
  "POSTBACK_ENDPOINT_URL"

POSTBACK: E011 Example

curl -X POST \ 
     -H "content-type: application/json" -d '
      {
          "origin":"MMS_MT",
          "code":"E011",
          "tracking-id":"xxxxxxxxxxxx",
          "client-reference":"5ZY7Cx1Xy0vs",
          "content-type":"video", 
          "content-name":"https://fake-content-url.com/video.mp4",
          "error-info":"Video for slide 1 not found at url. Content cannot be fetched from the URL."
      }' \
  "POSTBACK_ENDPOINT_URL"

POSTBACK: E012 Request

curl -X POST \ 
     -H "content-type: application/json" -d '
      {
          "origin":"MMS_MT",
          "code":"STATUS_CODE",
          "tracking-id":"TRACKING_ID_OF_REQUEST",
          "client-reference":"CLIENT_REFERENCE",
          "audio-name":"AUDIO_FILE_URL_PROVIDED_IN_THE_REQUEST",
          "error-info":"Transcoding failed for audio"
      }' \
  "POSTBACK_ENDPOINT_URL"

POSTBACK: E012 Example

curl -X POST \ 
     -H "content-type: application/json" -d '
      {
          "origin":"MMS_MT",
          "code":"E012",
          "tracking-id":"xxxxxxxxxxxx",
          "client-reference":"5ZY7Cx1Xy0vs",
          "audio-name":"https://fake-content-url.com/audio.mp3",
          "error-info":"Transcoding failed for audio"
      }' \
  "POSTBACK_ENDPOINT_URL"

POSTBACK: E013 Request

curl -X POST \ 
     -H "content-type: application/json" -d '
      {
          "origin":"MMS_MT",
          "code":"STATUS_CODE",
          "tracking-id":"TRACKING_ID_OF_REQUEST",
          "client-reference":"CLIENT_REFERENCE",
          "video-name":"VIDEO_FILE_URL_PROVIDED_IN_THE_REQUEST",
          "error-info":"Transcoding failed for video"
      }' \
  "POSTBACK_ENDPOINT_URL"

POSTBACK: E013 Example

curl -X POST \ 
     -H "content-type: application/json" -d '
      {
          "origin":"MMS_MT",
          "code":"E013",
          "tracking-id":"xxxxxxxxxxxx",
          "client-reference":"5ZY7Cx1Xy0vs",
          "video-name":"https://fake-content-url.com/video.mp4",
          "error-info":"Transcoding failed for video"
      }' \
  "POSTBACK_ENDPOINT_URL"