---
schema_version: "1"
id: 0be239fe572b9c215c335697db1a094d56ce17d96003481093b0cbcf2364dd27
title: Content - Tracked Link (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-tracked-link.md
canonical_url: https://developer.salesforce.com/docs/marketing/marketing-cloud-growth/references/mc-next-tracked-link
source_site: developer.salesforce.com
content_type: documentation
content_hash: 3804c398a591d0a257a6a21d29fdb15b3b26efa797d8540604986a940e249103
products:
  - Marketing Cloud Next
  - Marketing Cloud
---
Content - Tracked Link (Connect API)

# Content - Tracked Link (Connect API)

Create and manage tracked links for Marketing Cloud Next. Tracked links support click tracking and UTM parameters for campaigns.

This table lists the tracked link-related use cases that the API supports.

| Supported Use Case | HTTP Verb | URI |
| --- | --- | --- |
| Create a tracked link | [POST](/docs/marketing/marketing-cloud-growth/references/mc-next-tracked-link?meta=createTrackedLink) | /services/data/{apiVersion}/connect/cms/contents |
| Get a tracked link | [GET](/docs/marketing/marketing-cloud-growth/references/mc-next-tracked-link?meta=getTrackedLink) | /services/data/{apiVersion}/connect/cms/contents/{contentId} |
| Update a tracked link variant | [PUT](/docs/marketing/marketing-cloud-growth/references/mc-next-tracked-link?meta=updateContentVariant) | /services/data/{apiVersion}/connect/cms/contents/variants/{variantId} |
| Delete a tracked link variant | [DELETE](/docs/marketing/marketing-cloud-growth/references/mc-next-tracked-link?meta=deleteContentVariant) | /services/data/{apiVersion}/connect/cms/contents/variants/{variantId} |

### API Structure

Tracked link content uses this request structure:

```json
{
  "contentSpaceOrFolderId": "0Zuxx00000003M5CAI",
  "contentType": "sfdc_cms__trackedLink",
  "contentBody": {
    "sfdc_cms:title": "Campaign Link",
    "campaign": "701xx000000001AAA",
    "destinationUrl": "https://www.example.com/product",
    "utmSource": "email",
    "utmMedium": "newsletter"
  }
}
```

### Content Properties

The `contentBody` object has the properties listed in this table.

| Property | Type | Description |
| --- | --- | --- |
| `sfdc_cms:title` | string | The title of the content item. |
| `campaign` | string | The campaign record ID. |
| `destinationUrl` | string | The destination URL of the link. |
| `utmSource` | string | The traffic source. |
| `utmMedium` | string | The marketing medium. |
| `utmCampaign` | string | The UTM campaign name. |
| `utmTerm` | string | The search term associated with the link. |
| `utmContent` | string | Identifies the content that brought the user to the tracked link. |
| `utmId` | string | The campaign ID. |
| `utmSourcePlatform` | string | The source platform. |
| `rewrittenUrl` | string | The system-generated tracked URL. |
| `expiryTime` | datetime | The date and time when the tracked link expires. |
| `sequenceId` | string | A sequence identifier. |

**Version:** 1.0.0

## Servers

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

## Tags

### Tracked Link

Operations for managing tracked links.

## Operations

### POST Create tracked link

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

Operation ID: `createTrackedLink`. Tags: Tracked Link.

Creates a tracked link content item.

#### Request body (required)

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

_Example: basicLink_ Basic tracked link with UTM parameters.

```
{
  "contentSpaceOrFolderId": "0Zuxx00000003M5CAI",
  "contentType": "sfdc_cms__trackedLink",
  "contentBody": {
    "sfdc_cms:title": "Campaign Link",
    "campaign": "701xx000000001AAA",
    "destinationUrl": "https://www.example.com/product",
    "utmSource": "email",
    "utmMedium": "newsletter",
    "utmCampaign": "spring_sale_2024",
    "utmContent": "cta_button"
  }
}
```

#### Responses

*   **201** Tracked link created successfully.
    
    Media type: `application/json`. Schema: `TrackedLinkResponse`.
    
    _Example: complete_ Complete response.
    
    ```
    {
      "apiName": "MCJUR5WKNRHZFP7NAUQOMMNJ7CI4",
      "contentBody": {
        "sfdc_cms:title": "Campaign Link",
        "campaign": "701xx000000001AAA",
        "destinationUrl": "https://www.example.com/product",
        "utmSource": "email",
        "utmMedium": "newsletter",
        "utmCampaign": "spring_sale_2024",
        "utmContent": "cta_button"
      },
      "contentFqn": "marketing--Default_Content_Workspace.sfdc_cms__trackedLink--MCJUR5WKNRHZFP7NAUQOMMNJ7CI4",
      "contentKey": "MCJUR5WKNRHZFP7NAUQOMMNJ7CI4",
      "contentSpace": {
        "id": "0ZuSB000002FYzW0AW",
        "resourceUrl": "/services/data/v65.0/connect/cms/spaces/0ZuSB000002FYzW"
      },
      "contentType": {
        "fullyQualifiedName": "sfdc_cms__trackedLink"
      },
      "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": "Campaign Link",
      "urlName": "campaign-link",
      "versionNumber": "1.1"
    }
    ```
    
*   **400** Invalid request body.
    
    Media type: `application/json`. Schema: `Error`.
    
    _Example: missingCampaign_ Missing campaign field.
    
    ```
    {
      "error": "VALIDATION_ERROR",
      "message": "Required field 'campaign' is missing",
      "details": [
        {
          "field": "contentBody.campaign",
          "message": "This field is required"
        }
      ]
    }
    ```
    
    _Example: invalidDestinationUrl_ Invalid destination URL.
    
    ```
    {
      "error": "VALIDATION_ERROR",
      "message": "Invalid destination URL",
      "details": [
        {
          "field": "contentBody.destinationUrl",
          "message": "URL must be a valid HTTPS URL"
        }
      ]
    }
    ```
    
*   **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 tracked links"
    }
    ```
    
*   **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 tracked link by ID

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

Operation ID: `getTrackedLink`. Tags: Tracked Link.

#### Parameters

*   `contentId` (path, string, required)

#### Responses

*   **200** Tracked link details.
    
    Media type: `application/json`. Schema: `TrackedLinkResponse`.
    
    _Example complete: same as POST /services/data/{apiVersion}/connect/cms/contents 201 response._ Complete response.
    
    _Example: complete_ Complete response.
    

### PUT Update tracked link variant

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

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

Updates a tracked link by creating a variant. Content updates 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`.

#### Request body (required)

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

*   `contentBody` (_object_, required) 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 tracked link variant

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

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

Deletes an expression content item by deleting a variant. Content deletions 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 from a POST request to `/cms/contents`.  
    Example: `9PsSB000004Cw170AC`.

#### Responses

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

## Schemas

### TrackedLinkRequest

*   `contentSpaceOrFolderId` (_string_, required)
*   `contentType` (_string_, required)  
    Allowed values: `sfdc_cms__trackedLink`.
*   `contentBody` (_TrackedLinkBody_, required)

### TrackedLinkResponse

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

*   `apiName` (_string_) System-generated API name for the content item.
*   `contentBody` (_TrackedLinkBody_)
*   `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 tracked link, 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_)
*   `message` (_string_)

### TrackedLinkBody

Tracked link content body. All UTM parameters support localization. The `destinationUrl` only accepts HTTPS URLs.

*   `sfdc_cms:title` (_string_) The title of the tracked link.
*   `campaign` (_string_, required) Campaign record ID (lightning\_\_recordIdType).
*   `destinationUrl` (_string (uri)_, required) Destination URL. Only HTTPS scheme is allowed (enforced by the `lightning:allowedUrlSchemes: ["https"]` schema setting). Localizable.
*   `utmSource` (_string_) Traffic source (for example, email, social, paid). Localizable.
*   `utmMedium` (_string_) Marketing medium (for example, newsletter, banner, cpc). Localizable.
*   `utmCampaign` (_string_) Campaign name. Localizable.
*   `utmTerm` (_string_) Paid keywords. Localizable.
*   `utmContent` (_string_) Ad content identifier. Localizable.
*   `utmId` (_string_) Campaign ID. Localizable.
*   `utmSourcePlatform` (_string_) Source platform. Localizable.
*   `rewrittenUrl` (_string (uri)_, read-only) Generated tracked URL. Supports https, http, and relative URL schemes. Populated by the system after creation.
*   `expiryTime` (_string (date-time)_) Link expiration timestamp.
*   `sequenceId` (_string_) Sequence identifier.