# Sinch MMS MO Postbacks

MMS MO postbacks notify the customer when an inbound MMS is received on a provisioned Short Code, Toll-Free number, or 10DLC sender. To receive MMS MO postbacks, the customer must work with Sinch to provision a postback URL for the account.

For group MMS replies, the MMS MO postback may include a `copy-to` array. The `copy-to` array identifies display-only numbers that were included on the inbound group MMS thread. These values are informational and help customers reconstruct the group conversation context.

## MMS MO postback fields

| Field | Description |
|  --- | --- |
| `origin` | `MMS_MO`. |
| `code` | `N401`. |
| `from` | Phone number of the sender including country code. |
| `to` | Recipient Short Code, Toll-Free number, or 10DLC number. |
| `copy-to` | Array of display-only group messaging recipients included in the inbound MMS MO postback when the MO is associated with a group MMS. Each object contains a `number` field. |
| `keyword` | Keyword recognized from the subject or first word of body if matched to a campaign. |
| `tracking-id` | Tracking ID assigned by Sinch. |
| `operator-id` | Operator ID of the sender's carrier when available. |
| `timestamp` | Timestamp when Sinch received the MMS MO. |
| `message-subject` | Subject included in the inbound MMS. |
| `content` | Array containing file nodes for inbound content. |
| `content[].file` | URL for the received picture, video, audio, text, or other file. |


## MMS MO example: `N401`

```json
{
  "origin": "MMS_MO",
  "code": "N401",
  "from": "17745550001",
  "to": "18885551234",
  "keyword": "INFO",
  "tracking-id": "mo123xyz",
  "operator-id": "310012",
  "timestamp": "2026-04-24T18:34:00Z",
  "message-subject": "Question",
  "content": [
    {
      "file": "https://example.sinch.com/mo-content/file1.jpg"
    },
    {
      "file": "https://example.sinch.com/mo-content/file2.txt"
    }
  ]
}
```

## Example: `N401` group MMS MO with `copy-to`

```json
{
  "origin": "MMS_MO",
  "code": "N401",
  "from": "11111111111",
  "to": "10000000000",
  "copy-to": [
    {
      "number": "10000123434"
    },
    {
      "number": "10000123433"
    },
    {
      "number": "10000123432"
    },
    {
      "number": "10000123431"
    },
    {
      "number": "10000123430"
    },
    {
      "number": "10000123429"
    }
  ],
  "message-subject": "",
  "keyword": "",
  "tracking-id": "MMSMOabcd123",
  "operator-id": "",
  "timestamp": "2025-11-17T16:57:00.146690+00:00",
  "content": [
    {
      "file": "https://my.mmsmsg.com/mmsmo/abc123/123wqe.jpeg"
    },
    {
      "file": "https://my.mmsmsg.com/mmsmo/abc123/123w12e.txt"
    }
  ]
}
```

## MMS MO postback response requirements and behavior

MMS MO postback notifications require a specific response format for successful delivery confirmation.

- Customer server must respond with HTTP `200 OK` within 10 seconds.
- If the response takes longer than 10 seconds, the connection may time out and the notification may be retried.
- If the response is not HTTP `200`, Sinch will retry the postback notification approximately five minutes later.
- A maximum of 5 retries is attempted per notification.
- For best performance, store the raw postback immediately and perform heavy database or file processing asynchronously.


During onboarding, Sinch will provide the source IP addresses from which postback notifications originate. If IP whitelisting or firewall rules are used, allow those source IP addresses to reach the customer postback URL.

## Example postback response

```http
HTTP 200 OK
```