# MSG-018 — An MMS campaign must attach at least one sample media file

> A campaign that requests MMS capability must supply at least one sample media file alongside the sample message text.

- **Rule ID:** MSG-018
- **Layer:** Message content (`MESSAGE_CONTENT`)
- **Checks:** `campaign.mms_sample_media`
- **Severity:** BLOCKING — Breaking this rule gets the submission rejected outright.
- **When it bites:** Gates approval — get this wrong and registration is refused
- **How it is detected:** Deterministic (settled in code from the submitted values)
- **Fix type:** Fix the field — a better value in the form clears it
- **Required by:** AWS
- **Applies:** Applies when `mmsEnabled` is true.
- **Canonical URL:** https://ekas.io/rules/10dlc/message-content/msg-018/

## Why this rule exists

MMS is approved on what the recipient will actually see, and for a picture message that is the picture — a reviewer who is shown only the caption has no way to tell a product photo from something that would fail SHAFT screening on sight. Businesses miss this because the sample text field accepts their submission happily and nothing on the form says the attachment is a separate requirement, so the rejection arrives for a field they never noticed was empty.

## How to fix it

Attach the actual image or video you will send to the campaign's MMS sample media, one file per sample message that carries media. Done when every MMS sample has a file next to its text, not just a caption describing one.

## Example of a compliant value

```text
mms_sample_media: acme-summer-sale.png (image/png, 214 KB) — the same artwork the weekend promotion will send.
```

## Common mistakes

- Turning MMS on and leaving the attachments for later is the usual cause: the capability flag and the sample media are separate fields, and the flag is what puts you under this requirement.

## Provider rejection codes

| Provider | Code | Resubmission allowed |
| --- | --- | --- |
| AWS | `MISSING_CONDITIONAL_FIELD` | yes |
