---
title: Onboard DAM to CMS (SaaS)
slug: cms-saas/docs/onboard-dam-to-cms-saas
docTags: 
createdAt: 2026-07-30T20:18:08.000Z
---

Optimizely Digital Asset Management (DAM) and Optimizely Graph integrate with Optimizely Content Management System (SaaS). After the connection is established, you can manage which asset types are available through the **Optimizely DAM Features** page. Enable each asset type individually by selecting **Activate this feature** and click **Save**.

## Select a DAM instance

Selecting a DAM instance enables the following feature:

- **Embeddable DAM** – Adds a DAM option to the CMS **Edit** menu, letting you insert assets directly from Optimizely DAM.

To select a DAM instance:

1. Go to **Settings** > **Optimizely DAM Features**.
2. Select a DAM instance from the **Instance** drop-down list in the **Select DAM Instance** section.

![](https://api.archbee.com/api/optimize/BrbvVORKJ5iIeSMZye5kI/ft5UtQNsfwqG435qXyzOp_58e8a795c0cfe78ad3a515e6f305a3781b2f8a4bf03e868b0c97b8c37266c8c3-449376201-6cc6fa20-c246-42a1-90cf-8b91c0393543.png)

3. Click **Save**.

## Delivery to the frontend

Optimizely Graph is the delivery channel for content in CMS (SaaS) and DAM assets. Content is indexed into Optimizely Graph, including a reference to the DAM asset's identity. Optimizely Graph queries for CMS content include the DAM asset with its data in a shared result. You do not need additional lookups to retrieve DAM data because the data is included in the response.

### Renditions in query results

When an editor selects a rendition instead of the original asset, the property references an item of the rendition type, `cmp_PublicImageAssetRendition` or `cmp_PublicVideoAssetRendition`. Use an inline fragment on the rendition type to read its fields, the same way the following example uses `... on cmp_PublicVideoAsset`. Your frontend renders the rendition the editor chose, so you do not need code that selects or resizes the asset.

CMS (SaaS) creates the content sources for these rendition types for you, including on instances that already connect to DAM, so no configuration is required. For how editors select a rendition, see [Select a rendition](docId\:SJw5SSN2ZehPyrawTu-RP).

### Query example of CMS and DAM content

In Optimizely Graph, the following code shows how to query an `Example` content type page that has three `ContentReference` properties, `MainImage`, `Video`, and `Pdf` and return a joint result of CMS and DAM data. In the example, `Video` and `Pdf` are ordinary `ContentReference` properties without item type specified. The `ContentReference` property `MainImage` has item type specified as `cmp_PublicImageAsset` and therefore that does not need to be projected or cast in the query.

```graphql
query PageWithAssetsQuery {
  Example(
    where: { _metadata: { key: { eq: "303ddcad1b7c4895a730abbb0730a677" } } }
  ) {
    items {
      _id
      Title
      MainImage {
        url {
          graph
        }
        item {
           Id
           Url
           Title
        }
      }
      Video {
        item {
          ... on cmp_PublicVideoAsset {
            Id
            Url
            Title
          }
        }
      }
      Pdf {
        item {
          ... on cmp_PublicRawFileAsset {
            Id
            Url
            Title
          }
        }
      }
    }
  }
}
```

```json
{
  "data": {
    "Example": {
      "items": [
        {
          "_id": "303ddcad-1b7c-4895-a730-abbb0730a677_en_Published",
          "Title": "This CMS is the page title",
          "MainImage": {
            "url": {
              "graph": "graph://cmp/cmp_PublicImageAsset/9e12db58114f11f09358feebe22be741"
            },
            "item": {
              "Id": "c010ae43a6d648319b8e8dd97efe7948",
              "Url": "https://images1.cmp.optimizely.com/Zz1jMDEwYWU0My1hNmQ2LTQ4MzEtOWI4ZS04ZGQ5N2VmZTc5NDg=",
              "Title": "Example DAM image asset"
            }
          },
          "Video": {
            "item": {
              "Id": "e59ca3d8308740d5960e8f0ef2663a14",
              "Url": "https://fehcwm.files.cmp.optimizely.com/download/e59ca3d8308740d5960e8f0ef2663a14",
              "Title": "Example DAM video asset"
            }
          },
          "Other": {
            "item": {
              "Id": "5ace995264a94742a577f17ef76ea64d",
              "Url": "https://fehcwm.files.cmp.optimizely.com/download/5ace995264a94742a577f17ef76ea64d",
              "Title": "Example DAM Pdf asset"
            }
          }
        }
      ]
    }
  },
  "extensions": {
    "correlationId": "94d8440bb95b1a2c",
    "cost": 75,
    "costSummary": [
      "Example(75) = limit(20) + fields(3) + basicFilter(1)*2 + links(1)*50"
    ]
  }
}
```

### Export and import across instances

:::hint{type="warning"}
**Important**
Exporting content that uses DAM assets from one CMS (SaaS) instance and importing it into another is not supported.
:::
