- Synopsis
- MMS MT Success/Failure Status Codes - JSON
- MMS MT Postback Nodes
- POSTBACK: N101/N102/N103/E101/E102 Request
- POSTBACK: N101 Example (MMS MT Sent)
- POSTBACK: N102 Example (MMS MT / Fallback SMS Delivered)
- POSTBACK: N103 Example (MMS MT Expired)
- POSTBACK: E101 Example (MMS MT Sending Failed)
- POSTBACK: E102 Example (MMS MT Rejected)
- POSTBACK: E102 Example (MMS MT Unrecognised)
- POSTBACK: N003 Request
- POSTBACK: N003 Example
- POSTBACK: E002 Request
- POSTBACK: E002 Example
- POSTBACK: E003 Request
- POSTBACK: E003 Example
- POSTBACK: N013 Request
- POSTBACK: N013 Example
- POSTBACK: E011 Request
- POSTBACK: E011 Example
- POSTBACK: E012 Request
- POSTBACK: E012 Example
- POSTBACK: E013 Request
- POSTBACK: E013 Example
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 |
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. |
timestamp | The timestamp for the MMS MT transaction. |
operator-id | Carrier ID for the Phone Number. |
operator-name | Carrier Name for the Phone Number. |
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. |
from-mask | Sender Mask for the Shortcode used to send the message. Sent in the postback only if it exists. |
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",
"operator-id":"CARRIER_ID",
“operator-name”:”CARRIER_NAME”
"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",
"operator-id":"0001470",
“operator-name”:”AT&T”,
"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",
"operator-id":"0001470",
“operator-name”:”AT&T”,
"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",
"operator-id":"0001470",
“operator-name”:”AT&T”,
"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",
"operator-id":"0001470",
"operator-name":"AT&T",
"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",
"operator-id":"0001470",
"operator-name":"AT&T",
"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",
"operator-id":"0001470",
"operator-name":"AT&T",
"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",
"operator-id":"0001470",
"operator-name":"AT&T",
"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",
"operator-id":"0001470",
"operator-name":"AT&T",
"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",
"operator-id":"0001470",
"operator-name":"AT&T",
"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",
"operator-id":"0001470",
"operator-name":"AT&T",
"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",
"operator-id":"0001470",
"operator-name":"AT&T",
"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",
"operator-id":"001470",
"operator-name":"AT&T",
"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",
"operator-id":"0001470",
"operator-name":"AT&T",
"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",
"operator-id":"0001470",
"operator-name":"AT&T",
"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",
"mmsid":"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",
"mmsid":"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",
"mmsid":"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",
"mmsid":"123456",
"trackingid":"xxxxxxxxxxxx",
"client-reference":"5ZY7Cx1Xy0vs",
"videoname":"https://fake-content-url.com/video.mp3"
}’ \
"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"