contentType: addCopyFromContentTypeHub

Namespace: microsoft.graph

Add or sync a copy of a published content type from the content type hub to a target site or a list.

This method is part of the content type publishing changes to optimize the syncing of published content types to sites and lists, effectively switching from a "push everywhere" to "pull as needed" approach. The method allows users to pull content types directly from the content type hub to a site or list. For more information, see contentType: getCompatibleHubContentTypes and the blog post Syntex Product Updates – August 2021.

This API is available in the following national cloud deployments.

Global service US Government L4 US Government L5 (DOD) China operated by 21Vianet

Permissions

Choose the permission or permissions marked as least privileged for this API. Use a higher privileged permission or permissions only if your app requires it. For details about delegated and application permissions, see Permission types. To learn more about these permissions, see the permissions reference.

Permission type Least privileged permissions Higher privileged permissions
Delegated (work or school account) Sites.Manage.All Sites.FullControl.All
Delegated (personal Microsoft account) Not supported. Not supported.
Application Sites.Manage.All Sites.FullControl.All

HTTP request

POST /sites/{siteId}/lists/{listId}/contentTypes/addCopyFromContentTypeHub
POST /sites/{siteId}/contentTypes/addCopyFromContentTypeHub

Request headers

Name Description
Authorization Bearer {token}. Required. Learn more about authentication and authorization.
Content-Type application/json. Required.

Request body

In the request body, supply a JSON representation of the parameters.

The following table shows the parameter that can be used with this action.

Parameter Type Description
contentTypeId String The ID of the content type in the content type hub that will be added to a target site or a list.

Response

If successful, this action returns a 200 OK response code and a contentType object in the response body if the content type is added synchronously or a 202 Accepted response code if the content type will be synced asynchronously. The response will also contain a Location header, which contains the location of the richLongRunningOperation that was created to handle the copy/sync operation. In case of an asynchronous operation, it can take up to 70 minutes to sync or add a content type.

Examples

Example 1: Synchronous pull

The following example adds or syncs a content type synchronously based on certain backend conditions.

Request

The following is an example of a synchronous operation.

POST https://graph.microsoft.com/v1.0/sites/root/lists/Documents/contentTypes/addCopyFromContentTypeHub
Content-Type: application/json
Content-length: 33

{
  "contentTypeId": "0x0101"
}

Response

The following example shows the response.

Note: The response object shown here might be shortened for readability.

HTTP/1.1 200 OK
Content-Type: application/json

{
    "@odata.type": "#microsoft.graph.contentType",
    "id": "0x0101",
    "description": "Document content type",
    "group": "Document Content Types",
    "hidden": false,
    "isBuiltIn": true,
    "name": "Document"
}

Example 2: Asynchronous pull

The following example adds or syncs a content type asynchronously because the backend conditions for a synchronous operation are not fulfilled.

Request

The following is an example of an asynchronous operation.

POST https://graph.microsoft.com/v1.0/sites/root/lists/Documents/contentTypes/addCopyFromContentTypeHub
Content-Type: application/json
Content-length: 33

{
  "contentTypeId": "0x0101"
}

Response

The following example shows the response.

HTTP/1.1 202 Accepted
location: https://graph.microsoft.com/v1.0/sites/root/lists/Documents/operations/contentTypeCopy,0x0101