Search for Content in Your Marketing Cloud Next Content Workspace

Use the CMS Search endpoints in Connect API to search for content in your marketing content workspace.

Step 1: Get a Workspace ID

First, find the ID of the content workspace or folder that you want to search. If you know the workspace ID, skip this step. Otherwise, retrieve a list of workspaces by issuing a GET request to the /services/data/{apiVersion}/connect/cms/spaces endpoint.

GET /services/data/{apiVersion}/connect/cms/spaces HTTP/1.1
Host: {subdomain}.my.salesforce.com
Authorization: Bearer YOUR_BEARER_TOKEN

If the request is successful, the response includes a list of workspaces.

{
  "spaces": [
    {
      "apiName": "MCN_Workspace",
      "id": "0ZuQZ0000004YSv0AM",
      "name": "MCN Workspace",
      "spaceType": {
        "apiName": "marketing"
      }
    }
  ]
}

Copy the id value of the workspace to use in your search query.

Step 2: Search for Content

Issue a GET request to the /services/data/{apiVersion}/connect/cms/items/search endpoint. The request can include the query parameters listed in this table.

Query Parameter Data Type Description
contentSpaceOrFolderIds string Required. The ID of the workspace or folder to search.
contentTypeFQN string The fully qualified name of a content type to filter by in the search.
languages string A locale code for filtering the results. Provide a locale code, such as en_CA or es_MX, or specify All to retrieve all languages.
page int The page number of results to return. The first page of results is page 0.
pageSize int The number of results to return per page. The maximum value is 250. The default value is 25.
queryTerm string The search term. Use * as a wildcard to return all content.
scope string The search scope. Use All to search across all fields, or TitleOnly to search titles only.

Include the workspace ID in the contentSpaceOrFolderIds query parameter.

GET /services/data/{apiVersion}/connect/cms/items/search?queryTerm=*&scope=All&pageSize=250&contentSpaceOrFolderIds=0ZuQZ0000004YSv0AM HTTP/1.1
Host: {subdomain}.my.salesforce.com
Authorization: Bearer YOUR_BEARER_TOKEN

If the request is successful, the response includes a list of content items.

{
  "count": 49,
  "currentPageUri": "/services/data/v68.0/connect/cms/items/search?page=0&pageSize=250",
  "nextPageUri": "/services/data/v68.0/connect/cms/items/search?page=1&pageSize=250",
  "items": [
    {
      "id": "9PsQZ00000072oH0AQ",
      "contentKey": "MCNUSLTYAES5CLRKYWXFUXDXW2BM",
      "title": "Email_20260323_145319",
      "status": "Draft",
      "contentType": {
        "developerName": "sfdc_cms__email",
        "label": "Email"
      },
      "managedContentId": "20YQZ0000007G3F2AU",
      "managedContentSpaceId": "0ZuQZ0000003xWc0AI"
    }
  ]
}

The response includes the properties in this table.

Property Data Type Description
count int The total number of results for the query.
currentPageUri string The address of the current page of results
nextPageUri string The address of the next page of results, if one exists.
items int An array of content items that match the search criteria.

Each content item includes a contentKey that you can use to retrieve the full content details.

Filter Search Results

You can filter search results by content type or language.

Filter by Content Type

To return only emails or email templates, include the contentTypeFQN query parameter. This example returns only content with the content type sfdc_cms__email.

GET /services/data/{apiVersion}/connect/cms/items/search?queryTerm=*&scope=All&pageSize=250&contentSpaceOrFolderIds=0ZuQZ0000004YSv0AM&contentTypeFQN=sfdc_cms__email HTTP/1.1
Host: {subdomain}.my.salesforce.com
Authorization: Bearer YOUR_BEARER_TOKEN

Filter by Language

To return content in a specific language, include the languages query parameter. This example returns only items with the en_US locale code.

GET /services/data/{apiVersion}/connect/cms/items/search?queryTerm=*&scope=All&pageSize=250&contentSpaceOrFolderIds=0ZuQZ0000004YSv0AM&languages=en_US HTTP/1.1
Host: {subdomain}.my.salesforce.com
Authorization: Bearer YOUR_BEARER_TOKEN

See Also