# Sinch MMS MO Postbacks The MMS MO postback API notifies you that a customer has replied to your code through the JSON API. ## MMS MO Information To receive MMS MO postback, you need to work with your Sinch Account Manager to provision a postback URL associated with your account. Once the MMS MO postback URL is enabled, you will start receiving postback notifications for each MMS MO received on the code. These notifications require a specific response format for successful delivery confirmation. ## The MMS MO This postback notifies you when an MMS MO is received. The fields and objects included with the postback are described in the table below: | Variable | Description | | --- | --- | | `code` | N401 | | `origin` | MMS_MO | | `from` | The phone number of the sender, including the country code | | `to` | The recipient's shortcode, 10DLC, or Toll-Free number | | `keyword` | If a keyword was recognized in the first word of the subject or the first word body of the message, and it matched an MMS Inbox Keyword campaign, that keyword will be included in this node | | `tracking-id` | A tracking ID, Sinch has assigned this message | | `operator-id` | The operator-id of the sender’s carrier | | `timestamp` | The timestamp that our system received the MMS MO | | `message-subject` | The subject sent in the MMS MO | | `content` | Contains the series of `file` sub-nodes sent in the MMS MO | | `file` | A sub-node that contains a single URL to a picture, video, audio, or text file sent using the MMS MO (multiple `file` sub-nodes can be included in the `conent node`). The URL points to the location of the content on our servers. For those developing the back-end handling of the postback URL, you may download/store these content files. You may also store the URLs for download at a future time. The file will be removed based on the terms of your contract. | ### MMS MO Example Below is an example of an MMS MO postback payload: ```xml MMS_MO N401 14082257140 28444 all MMS_MO_iLnCRrL6 31002 2014-02-03T11:19:49-05:00 URL of Content Here URL of Content Here URL of Content Here ``` ```json curl -X POST \ -H "content-type: application/json" -d ' { "origin":"{Origin}", "code":"{Status code}", "from":"{Sender phone number with country code}", "to":"{Receiver number}", "message-subject":"{Subject}" "tracking-id":"{Tracking id}", "timestamp":"{Timestamp}", "content":[ { "file":"{File URL}" }, { "file":"{File URL}" }, ... ] }’ \ "{Postback Endpoint URL}" ``` ## MMS MO Postback Response Requirements MMS MO postback notifications require a specific response format for successful delivery confirmation. **Requirements** - **Response Code**: Your server must respond to MMS MO postback requests with an HTTP status code of **200 (OK)** within **10 seconds**. This acknowledges successful receipt of the notification. - **Response Time**: Responses exceeding 10 seconds will result in a connection timeout and dropped notification. - **Retries**: In case of a timeout or non-200 response code, the API will retry the notification up to **5 times** with an interval of approximately **5 minutes** between attempts. **For performance optimization, we recommend below.** - **Queuing and Keep-Alive**: Notifications are sent over a single, persistent connection for faster delivery as your server accepts them. - **Asynchronous Processing**: Consider storing raw postback requests and performing resource-intensive database operations asynchronously to optimize server performance. During onboarding, we will provide a list of IP addresses from which postback requests originate. Ensure proper firewall configuration to allow access from these IPs to your server hosting the postback URL. ## Example Postback Response Payload The following example demonstrates a typical MMS MO postback response. `HTTP 200 OK`