---
schema_version: "1"
id: a61194f0a7b31b5ed61c21f8c2eadec0f2c86dbb8d52afe25adac4ae7bbca198
title: Content - SMS Content Body (Connect API)
collection: developer
version: current
locale: en-us
portal_url: https://docs.salesforce.com/developer/current/en-us/marketing-cloud/mc-core/references/generated-api-specs/mc-next-sms-content-body.md
canonical_url: https://developer.salesforce.com/docs/marketing/marketing-cloud-growth/references/mc-next-sms-content-body
source_site: developer.salesforce.com
content_type: documentation
content_hash: 2e8dd2538d2fa55c6899b2a3c57fa99404b0986e8996d37160f2600a1848ad02
products:
  - Marketing Cloud Next
  - Marketing Cloud
---
Content - SMS Content Body (Connect API)

# Content - SMS Content Body (Connect API)

Create and manage SMS and MMS content in Marketing Cloud Next. SMS content supports direct message text, templates, personalization, URL shortening, and media attachments.

This table lists the SMS content-related use cases that the API supports.

| Supported Use Case | HTTP Verb | URI |
| --- | --- | --- |
| Create SMS content | [POST](/docs/marketing/marketing-cloud-growth/references/mc-next-sms-content-body?meta=createSmsContent) | /services/data/{apiVersion}/connect/cms/contents/sms |
| Get SMS content | [GET](/docs/marketing/marketing-cloud-growth/references/mc-next-sms-content-body?meta=getSmsContent) | /services/data/{apiVersion}/connect/cms/contents/{contentId} |
| Update an SMS content variant | [PUT](/docs/marketing/marketing-cloud-growth/references/mc-next-sms-content-body?meta=updateContentVariant) | /services/data/{apiVersion}/connect/cms/contents/variants/{variantId} |
| Delete an SMS content variant | [DELETE](/docs/marketing/marketing-cloud-growth/references/mc-next-sms-content-body?meta=deleteContentVariant) | /services/data/{apiVersion}/connect/cms/contents/variants/{variantId} |

SMS content supports standard text messaging and MMS multimedia messaging. MMS messages can include image, video, audio, and VCF attachments.

### Content Body Structure

The `contentBody` object contains all SMS-specific content:

```json
{
  "sfdc_cms:title": "NTO New Customer Outreach",
  "sfdc_cms:description": "SMS campaign for Northern Trail Outfitters.",
  "messageContent": "Serious savings on our biggest selection yet",
  "messagePurpose": "promotional",
  "enableUrlShortening": true,
  "enableMmsMedia": false,
  "customDomain": "example.com"
}
```

### Required Fields

*   `sfdc_cms:title`—The name of the SMS content item
*   `messagePurpose`—The purpose of the message (`promotional` or `transactional`)
*   `enableUrlShortening`—Determines whether to apply URL shortening automatically in messages

### Message Content Options

**Option 1: Direct Message Content** Use the `messageContent` property to provide SMS text directly. Supports Handlebars expressions for personalization, such as `{{$unifiedIndividual.FirstName}}`.

**Option 2: DLT Template with Variables** Use `externalId` to reference an SMS DLT template (`sfdc_cms__smsDltTemplate`) and `messageVariables` for dynamic value substitution.

### MMS Media Support

Enable MMS by setting `enableMmsMedia` to `true` and providing an `mmsMediaContentBlock`. The `sfdc_cms__mmsMediaContentBlocks` class supports these media content types:

*   `sfdc_cms__mmsImageContent`—Image attachments
*   `sfdc_cms__mmsVideoContent`—Video attachments
*   `sfdc_cms__mmsAudioContent`—Audio attachments
*   `sfdc_cms__mmsVcfContent`—VCF (vCard) attachments

### Content Properties

| Property | Type | Description |
| --- | --- | --- |
| `sfdc_cms:title` | string | The title of the SMS content item. |
| `sfdc_cms:description` | string | A description of the content item. |
| `messageContent` | string | The SMS message body. Supports [Handlebars scripting](/docs/marketing/handlebars-for-marketing-cloud-next/overview). |
| `messagePurpose` | string | The message type (`promotional` or `transactional`). |
| `enableUrlShortening` | boolean | Indicates whether to enable URL shortening. |
| `enableMmsMedia` | boolean | Indicates whether to enable MMS media. |
| `mmsMediaContentBlock` | block | A content block for MMS media. |
| `customDomain` | string | A custom domain to use for shortened URLs. |
| `externalId` | string | A reference to an approved template, such as a DLT template for sending to India. |
| `messageVariables` | list | Values to apply to template variables. |

### Data Providers

SMS content supports these data providers for personalization:

*   `sfdc_cms__linkDataProvider` (`$link`)—Link data (`PreferenceCenterUrl`)
*   `sfdc_cms__utmDataProvider` (`$utm`)—UTM tracking data (`CampaignName`, `CampaignId`, `FlowName`, `ChannelName`, `MessageTitle`, `CampaignType`, or `FlowId`)
*   `sfdc_cms__unifiedIndividualDataProvider` (`$unifiedIndividual`)—Unified Individual profile data
*   `sfdc_cms__eventListDataProvider` (`$eventList`)—Event list data
*   `sfdc_cms__apexClassListDataProvider` (`$apexClassList`)—Apex class list data
*   `sfdc_cms__activationListDataProvider` (`$activationList`)—Activation list data
*   `sfdc_cms__couponListDataProvider` (`$couponList`)—Coupon list data

**Version:** 1.0.0

Contact: Salesforce Marketing Cloud, https://www.salesforce.com/products/marketing-cloud/

## Servers

*   `https://{subdomain}.my.salesforce.com`
    *   `subdomain (default (no default)) The unique API subdomain for your Salesforce org.`

## Tags

### SMS Content

Operations for managing SMS content items. SMS content supports text-only messages and MMS with image, video, audio, and VCF attachments.

## Operations

### POST Create SMS content

`POST /services/data/{apiVersion}/connect/cms/contents/sms`

Operation ID: `createSmsContent`. Tags: SMS Content.

Creates an SMS content item. The content body includes the message content, purpose classification, URL shortening settings, and optional MMS media configuration.

#### Request body (required)

Media type: `application/json`. Schema: `SmsContentRequest`.

_Example: textOnly_ Basic text-only SMS message.

```
{
  "contentSpaceOrFolderId": "0Zuxx00000003M5CAI",
  "contentType": "sfdc_cms__sms",
  "contentBody": {
    "sfdc_cms:title": "NTO New Customer Outreach",
    "sfdc_cms:description": "SMS campaign for Northern Trail Outfitters.",
    "messageContent": "Serious savings on our biggest selection yet",
    "messagePurpose": "promotional",
    "enableUrlShortening": true,
    "enableMmsMedia": false,
    "customDomain": "example.com"
  }
}
```

_Example: mmsWithImage_ MMS with image media attachment.

```
{
  "contentSpaceOrFolderId": "0Zuxx00000003M5CAI",
  "contentType": "sfdc_cms__sms",
  "contentBody": {
    "sfdc_cms:title": "Product Launch MMS",
    "sfdc_cms:description": "MMS with product hero image",
    "messageContent": "Check out our new product!",
    "messagePurpose": "promotional",
    "enableUrlShortening": true,
    "enableMmsMedia": true,
    "mmsMediaContentBlock": {
      "type": "block",
      "definition": "sfdc_cms__mmsImageContent",
      "attributes": {
        "mediaContent": {
          "type": "mediaUrl",
          "mediaType": "Image",
          "link": {
            "source": {
              "type": "imageReference",
              "ref": {
                "contentKey": "MCO7GY66HZ4FHOJGHCVYJFD275WY"
              }
            },
            "url": "/services/data/{apiVersion}/connect/cms/media/MCO7GY66HZ4FHOJGHCVYJFD275WY"
          }
        },
        "type": "Image"
      }
    }
  }
}
```

_Example: dltTemplateWithVariables_ SMS with DLT template and message variables.

```
{
  "contentSpaceOrFolderId": "0Zuxx00000003M5CAI",
  "contentType": "sfdc_cms__sms",
  "contentBody": {
    "sfdc_cms:title": "SMS with Variables",
    "sfdc_cms:description": "SMS message with dynamic variables.",
    "externalId": {
      "contentKey": "MCILAKWDCFZNCY5AJY3KILP7P4QA"
    },
    "messagePurpose": "transactional",
    "enableUrlShortening": true,
    "messageVariables": [
      {
        "value": "test1"
      },
      {
        "value": "{!$Expression.Account_Id}"
      }
    ]
  }
}
```

_Example: withPersonalization_ SMS with Handlebars personalization and data providers.

```
{
  "contentSpaceOrFolderId": "0Zuxx00000003M5CAI",
  "contentType": "sfdc_cms__sms",
  "contentBody": {
    "sfdc_cms:title": "Personalized Offer",
    "sfdc_cms:description": "Personalized promotional SMS.",
    "messageContent": "Hi {{$unifiedIndividual.FirstName}}, enjoy 20% off your next purchase! Use code: {{$couponList.CouponCode}}. Shop now: {{$link.PreferenceCenterUrl}}",
    "messagePurpose": "promotional",
    "enableUrlShortening": true,
    "enableMmsMedia": false,
    "lightning:dataProviders": [
      {
        "sfdcExpressionKey": "$unifiedIndividual",
        "definition": "sfdc_cms__unifiedIndividualDataProvider",
        "attributes": {
          "objectApiName": "UnifiedIndividual__dlm"
        }
      },
      {
        "sfdcExpressionKey": "$couponList",
        "definition": "sfdc_cms__couponListDataProvider",
        "attributes": {}
      },
      {
        "sfdcExpressionKey": "$link",
        "definition": "sfdc_cms__linkDataProvider",
        "attributes": {}
      }
    ]
  }
}
```

#### Responses

*   **201** SMS content created successfully.
    
    Media type: `application/json`. Schema: `SmsContentResponse`.
    
    _Example: complete_ Complete response.
    
    ```
    {
      "apiName": "MCJUR5WKNRHZFP7NAUQOMMNJ7CI4",
      "contentBody": {
        "sfdc_cms:title": "NTO New Customer Outreach",
        "sfdc_cms:description": "SMS campaign for Northern Trail Outfitters.",
        "messageContent": "Serious savings on our biggest selection yet",
        "messagePurpose": "promotional",
        "enableUrlShortening": true,
        "enableMmsMedia": false,
        "customDomain": "example.com"
      },
      "contentFqn": "marketing--Default_Content_Workspace.sfdc_cms__sms--MCJUR5WKNRHZFP7NAUQOMMNJ7CI4",
      "contentKey": "MCJUR5WKNRHZFP7NAUQOMMNJ7CI4",
      "contentSpace": {
        "id": "0ZuSB000002FYzW0AW",
        "resourceUrl": "/services/data/v65.0/connect/cms/spaces/0ZuSB000002FYzW"
      },
      "contentType": {
        "fullyQualifiedName": "sfdc_cms__sms"
      },
      "createdBy": {
        "id": "005SB00000eaki1YAA",
        "name": "Admin User",
        "resourceUrl": "/services/data/v65.0/chatter/users/005SB00000eaki1YAA"
      },
      "createdDate": "2026-06-16T20:34:56.000Z",
      "externalId": null,
      "folder": {
        "id": "9PuSB000002KUDo0AO",
        "resourceUrl": "/services/data/v65.0/connect/cms/folders/9PuSB000002KUDo0AO"
      },
      "isPublished": false,
      "language": "en_US",
      "lastModifiedBy": {
        "id": "005SB00000eaki1YAA",
        "name": "Admin User",
        "resourceUrl": "/services/data/v65.0/chatter/users/005SB00000eaki1YAA"
      },
      "lastModifiedDate": "2026-06-16T20:34:56.000Z",
      "managedContentId": "20YSB000004SkOz2AK",
      "managedContentVariantId": "9PsSB0000045XAj0AM",
      "managedContentVersionId": "5OUSB000004K7np4AC",
      "status": {
        "label": "Draft",
        "status": "Draft"
      },
      "title": "Northern Trail Outfitters",
      "urlName": "northern-trail-outfitters",
      "versionNumber": "1.1"
    }
    ```
    
*   **400** Invalid request body.
    
    Media type: `application/json`. Schema: `Error`.
    
    _Example: missingTitle_ Missing required sfdc\_cms:title.
    
    ```
    {
      "error": "VALIDATION_ERROR",
      "message": "Required field 'sfdc_cms:title' is missing",
      "details": [
        {
          "field": "contentBody.sfdc_cms:title",
          "message": "Title: Complete this field."
        }
      ]
    }
    ```
    
    _Example: missingMessagePurpose_ Missing required messagePurpose.
    
    ```
    {
      "error": "VALIDATION_ERROR",
      "message": "Required field 'messagePurpose' is missing",
      "details": [
        {
          "field": "contentBody.messagePurpose",
          "message": "Message Purpose: Complete this field."
        }
      ]
    }
    ```
    
    _Example: invalidEnumValue_ Invalid enum value for messagePurpose.
    
    ```
    {
      "error": "VALIDATION_ERROR",
      "message": "Invalid value for messagePurpose",
      "details": [
        {
          "field": "contentBody.messagePurpose",
          "message": "Value must be one of: promotional, transactional"
        }
      ]
    }
    ```
    
    _Example: additionalProperties_ Additional properties not allowed.
    
    ```
    {
      "error": "VALIDATION_ERROR",
      "message": "Additional properties are not allowed",
      "details": [
        {
          "field": "contentBody.invalidProperty",
          "message": "You can't add the invalidProperty property because additionalProperties is set to false."
        }
      ]
    }
    ```
    
    _Example: descriptionTooLong_ The description exceeds the maximum length.
    
    ```
    {
      "error": "VALIDATION_ERROR",
      "message": "Field exceeds maximum length",
      "details": [
        {
          "field": "contentBody.sfdc_cms:description",
          "message": "Description must be 255 characters or fewer"
        }
      ]
    }
    ```
    
*   **401** Unauthorized.
    
    Media type: `application/json`. Schema: `Error`.
    
    _Example: response_ Example response.
    
    ```
    {
      "error": "UNAUTHORIZED",
      "message": "Authentication credentials are missing or invalid"
    }
    ```
    
*   **403** Forbidden.
    
    Media type: `application/json`. Schema: `Error`.
    
    _Example: response_ Example response.
    
    ```
    {
      "error": "FORBIDDEN",
      "message": "Insufficient permissions to create SMS content"
    }
    ```
    
*   **500** Internal server error.
    
    Media type: `application/json`. Schema: `Error`.
    
    _Example: response_ Example response.
    
    ```
    {
      "error": "INTERNAL_SERVER_ERROR",
      "message": "An unexpected error occurred while processing the request"
    }
    ```
    
*   **503** Service unavailable.
    
    Media type: `application/json`. Schema: `Error`.
    
    _Example: response_ Example response.
    
    ```
    {
      "error": "SERVICE_UNAVAILABLE",
      "message": "The service is temporarily unavailable. Please try again later"
    }
    ```
    

### GET Get SMS content by ID

`GET /services/data/{apiVersion}/connect/cms/contents/{contentId}`

Operation ID: `getSmsContent`. Tags: SMS Content.

Retrieves a specific SMS content item by its unique content ID.

#### Parameters

*   `contentId` (path, string, required) Unique identifier for the content item.  
    Example: `20Y6g000000001GEAQ`.

#### Responses

*   **200** SMS content details.
    
    Media type: `application/json`. Schema: `SmsContentResponse`.
    
    _Example: complete_ Complete response.
    
    ```
    {
      "apiName": "MCJUR5WKNRHZFP7NAUQOMMNJ7CI4",
      "contentBody": {
        "sfdc_cms:title": "NTO New Customer SMS Outreach",
        "sfdc_cms:description": "SMS campaign for Northern Trail Outfitters.",
        "messageContent": "Serious savings on our biggest selection yet",
        "messagePurpose": "promotional",
        "enableUrlShortening": true,
        "enableMmsMedia": false,
        "customDomain": "example.com"
      },
      "contentFqn": "marketing--Default_Content_Workspace.sfdc_cms__sms--MCJUR5WKNRHZFP7NAUQOMMNJ7CI4",
      "contentKey": "MCJUR5WKNRHZFP7NAUQOMMNJ7CI4",
      "contentSpace": {
        "id": "0ZuSB000002FYzW0AW",
        "resourceUrl": "/services/data/v65.0/connect/cms/spaces/0ZuSB000002FYzW"
      },
      "contentType": {
        "fullyQualifiedName": "sfdc_cms__sms"
      },
      "createdBy": {
        "id": "005SB00000eaki1YAA",
        "name": "Admin User",
        "resourceUrl": "/services/data/v65.0/chatter/users/005SB00000eaki1YAA"
      },
      "createdDate": "2026-06-16T20:34:56.000Z",
      "externalId": null,
      "folder": {
        "id": "9PuSB000002KUDo0AO",
        "resourceUrl": "/services/data/v65.0/connect/cms/folders/9PuSB000002KUDo0AO"
      },
      "isPublished": false,
      "language": "en_US",
      "lastModifiedBy": {
        "id": "005SB00000eaki1YAA",
        "name": "Admin User",
        "resourceUrl": "/services/data/v65.0/chatter/users/005SB00000eaki1YAA"
      },
      "lastModifiedDate": "2026-06-16T20:34:56.000Z",
      "managedContentId": "20YSB000004SkOz2AK",
      "managedContentVariantId": "9PsSB0000045XAj0AM",
      "managedContentVersionId": "5OUSB000004K7np4AC",
      "status": {
        "label": "Draft",
        "status": "Draft"
      },
      "title": "Northern Trail Outfitters",
      "urlName": "northern-trail-outfitters",
      "versionNumber": "1.1"
    }
    ```
    
*   **401** Unauthorized.
    
    Media type: `application/json`. Schema: `Error`.
    
    _Example: response_ Example response.
    
    ```
    {
      "error": "UNAUTHORIZED",
      "message": "Authentication credentials are missing or invalid"
    }
    ```
    
*   **403** Forbidden.
    
    Media type: `application/json`. Schema: `Error`.
    
    _Example: response_ Example response.
    
    ```
    {
      "error": "FORBIDDEN",
      "message": "Insufficient permissions to read SMS content"
    }
    ```
    
*   **404** SMS content not found.
    
    Media type: `application/json`. Schema: `Error`.
    
    _Example: response_ Example response.
    
    ```
    {
      "error": "NOT_FOUND",
      "message": "SMS content with ID '20Y6g000000001GEAQ' not found"
    }
    ```
    
*   **500** Internal server error.
    
    Media type: `application/json`. Schema: `Error`.
    
    _Example: response_ Example response.
    
    ```
    {
      "error": "INTERNAL_SERVER_ERROR",
      "message": "An unexpected error occurred while processing the request"
    }
    ```
    
*   **503** Service unavailable.
    
    Media type: `application/json`. Schema: `Error`.
    
    _Example: response_ Example response.
    
    ```
    {
      "error": "SERVICE_UNAVAILABLE",
      "message": "The service is temporarily unavailable. Please try again later"
    }
    ```
    

### PUT Update SMS body content variant

`PUT /services/data/{apiVersion}/connect/cms/contents/variants/{variantId}`

Operation ID: `updateContentVariant`. Tags: Content Lifecycle.

Updates an SMS body content item by creating a variant. Content updates operate on the content variant (the `managedContentVariantId` value from the create response), not on the content item ID.

#### Parameters

*   `variantId` (path, string, required) The `managedContentVariantId` returned in the original creation request.  
    Example: `9PsSB000004Cw170AC`.

#### Request body (required)

Media type: `application/json`. Schema: `object`.

*   `contentBody` (_object_, required) The full content body for the variant. Must contain either an `sfdc_cms:block` or a `rawHtml` block but not both.

_Example: complete_ Complete request.

```
{
  "contentBody": {
    "sfdc_cms:title": "Updated Content Item"
  }
}
```

#### Responses

*   **200** Variant updated successfully.
    
    Media type: `application/json`. Schema: `object`.
    
    _Example: complete_ Complete response.
    
    ```
    {}
    ```
    
*   **400** Invalid request body.
*   **404** Variant not found.

### DELETE Delete SMS body content variant

`DELETE /services/data/{apiVersion}/connect/cms/contents/variants/{variantId}`

Operation ID: `deleteContentVariant`. Tags: Content Lifecycle.

Deletes an SMS content item by deleting its variant. Content deletions operate on the content variant (the `managedContentVariantId` returned when the content was created), not on the content item ID.

#### Parameters

*   `variantId` (path, string, required) The `managedContentVariantId` returned in the original creation request.  
    Example: `9PsSB000004Cw170AC`.

#### Responses

*   **204** Variant deleted successfully (no content).
*   **404** Variant not found.

## Schemas

### SmsContentRequest

Request to create an SMS content item.

*   `contentSpaceOrFolderId` (_string_, required) The ID of the content space or folder to create the content in.
*   `contentType` (_string_, required) Must be `sfdc_cms__sms`.  
    Allowed values: `sfdc_cms__sms`.
*   `contentBody` (_SmsContentBody_, required)

### SmsContentResponse

Response structure returned when creating or retrieving SMS content. This envelope is standard across all CMS content types.

*   `apiName` (_string_) System-generated API name for the content item.
*   `contentBody` (_SmsContentBody_)
*   `contentFqn` (_string_, nullable) Fully qualified name including workspace and content type.
*   `contentKey` (_string_) 28-character alphanumeric content key used for cross-references.
*   `contentSpace` (_object_)
    *   `id` (_string_)
    *   `resourceUrl` (_string_)
*   `contentType` (_object_)
    *   `fullyQualifiedName` (_string_)
*   `createdBy` (_object_)
    *   `id` (_string_)
    *   `name` (_string_)
    *   `resourceUrl` (_string_)
*   `createdDate` (_string (date-time)_)
*   `externalId` (_string_, nullable) An external identifier for the SMS content, if one is set.
*   `folder` (_object_)
    *   `id` (_string_)
    *   `resourceUrl` (_string_)
*   `isPublished` (_boolean_)
*   `language` (_string_)
*   `lastModifiedBy` (_object_)
    *   `id` (_string_)
    *   `name` (_string_)
    *   `resourceUrl` (_string_)
*   `lastModifiedDate` (_string (date-time)_)
*   `managedContentId` (_string_) The Salesforce record ID for the managed content item.
*   `managedContentVariantId` (_string_) The variant ID for this content version.
*   `managedContentVersionId` (_string_) The version ID for this specific content version.
*   `status` (_object_)
    *   `label` (_string_)
    *   `status` (_string_)  
        Allowed values: `Draft`, `Published`.
*   `title` (_string_) The display title of the content.
*   `urlName` (_string_) URL-friendly slug auto-generated from title.
*   `versionNumber` (_string_) Content version number.

### Error

*   `error` (_string_, required) Error code or type.
*   `message` (_string_, required) Human-readable error message.
*   `details` (_array of object_) Additional error details.
    *   `field` (_string_) Field path that caused the error.
    *   `message` (_string_) Field-specific error message.

### SmsContentBody

The content body for SMS content type (`sfdc_cms__sms`). Contains CMS metadata, message content, delivery settings, and optional MMS media configuration. For direct messages, use the `messageContent` property. For template-based messages, use the `externalId` and `messageVariables` properties.

To send an MMS message, set `enableMmsMedia` to `true` and specify a `mmsMediaContentBlock`. The block must use one of these type definitions:

*   `sfdc_cms__mmsImageContent`
*   `sfdc_cms__mmsVideoContent`
*   `sfdc_cms__mmsAudioContent`
*   `sfdc_cms__mmsVcfContent`

*   `sfdc_cms:title` (_string_, required) The title of the SMS content item. Used for identification and organization within the CMS.
*   `sfdc_cms:description` (_string_) A description of the SMS content.  
    Maximum length: 255.
*   `messageContent` (_string_) The SMS message body. Supports Handlebars expressions for personalization. For template-based messages, use the `externalId` and `messageVariables` properties instead.
*   `messagePurpose` (_string_, required) The purpose classification of the SMS message.  
    Allowed values: `promotional`, `transactional`. Default: `promotional`.
*   `enableUrlShortening` (_boolean_, required) Enable automatic URL shortening for links in the SMS message. Helps conserve character count in SMS messages.  
    Default: `true`.
*   `customDomain` (_string_) A custom domain to use for shortened URLs. To use a custom domain, set `enableUrlShortening` to `true`.
*   `enableMmsMedia` (_boolean_) Enable MMS (Multimedia Messaging Service) to include media attachments. When true, use `mmsMediaContentBlock` to define the media content.  
    Default: `false`.
*   `mmsMediaContentBlock` (_MmsMediaContentBlock_)
*   `externalId` (_ContentReference_)
*   `messageVariables` (_array of MessageVariable_) List of variable values for template substitution (listType). Each item contains a required `value` field. Used with `externalId` to provide dynamic values for DLT template placeholders.
*   `lightning:dataProviders` (_array of DataProvider_) Data providers for personalization expressions.

### MmsMediaContentBlock

Block definition for MMS media content. Only use this block type when `enableMmsMedia` is true. Can contain these block types:

*   `sfdc_cms__mmsImageContent`—Image media
*   `sfdc_cms__mmsVideoContent`—Video media
*   `sfdc_cms__mmsAudioContent`—Audio media
*   `sfdc_cms__mmsVcfContent`—VCF (vCard) media

*   `type` (_string_, required) Always "block".  
    Allowed values: `block`.
*   `definition` (_string_, required) A block definition identifier.  
    Allowed values: `sfdc_cms__mmsImageContent`, `sfdc_cms__mmsVideoContent`, `sfdc_cms__mmsAudioContent`, `sfdc_cms__mmsVcfContent`.
*   `attributes` (_MmsMediaAttributes_, required)

### ContentReference

A reference to another CMS content item. For SMS messages, this property references an `sfdc_cms__smsDltTemplate` content item.

*   `contentKey` (_string_, required) The unique content key of a DLT template.

### MessageVariable

A variable value for DLT template substitution. Can be a literal value or an expression that's evaluated at send time.

*   `value` (_string_, required)
    
    The value of the variable. Can contain one of these data types:
    
    *   A literal string, such as `test1`
    *   An expression, such as `{!$Expression.Account_Id}`
    *   A data provider reference, such as `{{$unifiedIndividual.FirstName}}`

### DataProvider

Data provider configuration for personalization expressions. Data providers supply runtime data for Handlebars merge fields in SMS content.

*   `sfdcExpressionKey` (_string_) Expression key prefix used in Handlebars expressions (for example, `$unifiedIndividual`).
*   `definition` (_string_) Data provider block definition.  
    Allowed values: `sfdc_cms__linkDataProvider`, `sfdc_cms__utmDataProvider`, `sfdc_cms__unifiedIndividualDataProvider`, `sfdc_cms__eventListDataProvider`, `sfdc_cms__apexClassListDataProvider`, `sfdc_cms__activationListDataProvider`, `sfdc_cms__couponListDataProvider`.
*   `attributes` (_object_) Data provider configuration attributes.

### MmsMediaAttributes

Attributes for MMS media content blocks. Contains the media content configuration and a type discriminator.

*   `mediaContent` (_MediaContent_)
*   `type` (_string_)
    
    A media type discriminator. Must align with the block definition:
    
    *   For `sfdc_cms__mmsImageContent`, use `Image`
    *   For `sfdc_cms__mmsVideoContent`, use `Video`
    *   For `sfdc_cms__mmsAudioContent`, use `Audio`
    *   For `sfdc_cms__mmsVcfContent`, use `VCF`
    
      
    Allowed values: `Image`, `Video`, `Audio`, `VCF`.

### MediaContent

The media content configuration. Specify one of these values:

*   `mediaUrl`—Reference to a CMS media asset
*   `mergeField`—Dynamic media reference using a merge field expression

*   `type` (_string_) Media link type.  
    Allowed values: `mediaUrl`, `mergeField`.
*   `mediaType` (_string_) The type of media being referenced.  
    Allowed values: `Image`, `Video`, `Audio`, `VCF`.
*   `link` (_MediaLink_)

### MediaLink

Media link with source reference and URL. The source type varies by media type:

*   For images, use `imageReference`
*   For video, use `videoReference`
*   For audio, use `audioReference`
*   For vCard, use `vcfReference`

For `mergeField` type media content, use `mergeFieldMediaType` instead.

*   `source` (_object_) Source reference for the media asset.
    *   `type` (_string_) Source reference type.  
        Allowed values: `imageReference`, `videoReference`, `audioReference`, `vcfReference`.
    *   `ref` (_object_) Content reference object.
        *   `contentKey` (_string_) CMS content key for the media asset.
*   `url` (_string_) URL path to the media file in the CMS.