MSM APIs (2024.11-experimental)

Download OpenAPI specification:Download

Live Copy Source Management

List all Live Copy Sources

This operation provides support for retrieving all the Live Copy Sources accessible to the current user, determined via the applied request authorization. By default this call will return a maximum of 50 items. The caller can define other limits suited to their application (see the limit query parameter), but the limit cannot be higher than 50. To ask for the next set of items pass the value of the cursor provided in the response to the cursor query parameter.

SecurityBearer
Request
query Parameters
cursor
string (Cursor) non-empty

For a paginated request, this parameter defines the cursor from which to retrieve the next set of items.

limit
integer <int32> (Limit) [ 1 .. 50 ]

For a paginated request, this parameter defines the maximum number of items to retrieve.

header Parameters
If-None-Match
string

The If-None-Match header field makes the request method conditional on a recipient cache or origin server either not having any current representation of the target resource, when the field value is "*", or having a selected representation with an entity tag that does not match any of those listed in the field value.

For more details, please head over to RFC9110.

Responses
200

List of Live Copy Sources.

304

Not Modified

401

Unauthorized

403

Forbidden

406

Unacceptable. indicates that the target resource does not have a current representation that would be acceptable to the user agent, according to the proactive negotiation header fields received in the request.

500

The server encountered an unexpected error. Retrying the request after a certain time could help.

get/sources
Request samples
Response samples
application/json
{
  • "items": [
    ],
  • "cursor": "string"
}

Get a Live Copy Source Details

SecurityBearer
Request
path Parameters
sourceId
required
string <uuid> (UUID) non-empty

Id of the Live Copy Source for which the operation is performed.

Example: 49af775d-0e7a-46c3-913d-00f762528373
header Parameters
If-None-Match
string

The If-None-Match header field makes the request method conditional on a recipient cache or origin server either not having any current representation of the target resource, when the field value is "*", or having a selected representation with an entity tag that does not match any of those listed in the field value.

For more details, please head over to RFC9110.

Responses
200

Live Copy Source found

304

Not Modified

401

Unauthorized

403

Forbidden

404

Not Found

406

Unacceptable. indicates that the target resource does not have a current representation that would be acceptable to the user agent, according to the proactive negotiation header fields received in the request.

500

The server encountered an unexpected error. Retrying the request after a certain time could help.

get/sources/{sourceId}
Request samples
Response samples
application/json
{
  • "sourcePath": "string",
  • "sourceId": "49af775d-0e7a-46c3-913d-00f762528373",
  • "liveCopies": [
    ]
}

Live Copy Management

List all Live Copies

This operation provides support for retrieving all the Live Copies accessible to the current user, determined via the applied request authorization. By default this call will return a maximum of 50 items. The caller can define other limits suited to their application (see the limit query parameter), but the limit cannot be higher than 50. To ask for the next set of items pass the value of the cursor provided in the response to the cursor query parameter.

SecurityBearer
Request
query Parameters
filterByResourceId
string <uuid> (UUID) non-empty

When present, results will be returned only for this Resource.

Example: filterByResourceId=49af775d-0e7a-46c3-913d-00f762528373
cursor
string (Cursor) non-empty

For a paginated request, this parameter defines the cursor from which to retrieve the next set of items.

limit
integer <int32> (Limit) [ 1 .. 50 ]

For a paginated request, this parameter defines the maximum number of items to retrieve.

header Parameters
If-None-Match
string

The If-None-Match header field makes the request method conditional on a recipient cache or origin server either not having any current representation of the target resource, when the field value is "*", or having a selected representation with an entity tag that does not match any of those listed in the field value.

For more details, please head over to RFC9110.

Responses
200

List of Live Copies

304

Not Modified

400

Bad Request. The Problem Details object will provide more information about the exact cause.

401

Unauthorized

403

Forbidden

406

Unacceptable. indicates that the target resource does not have a current representation that would be acceptable to the user agent, according to the proactive negotiation header fields received in the request.

500

The server encountered an unexpected error. Retrying the request after a certain time could help.

get/
Request samples
Response samples
application/json
{
  • "items": [
    ],
  • "cursor": "string"
}

Get the Details of the Live Copy

SecurityBearer
Request
path Parameters
liveCopyId
required
string <uuid> (UUID) non-empty

Id of the Live Copy for which the operation is performed

Example: 49af775d-0e7a-46c3-913d-00f762528373
header Parameters
If-None-Match
string

The If-None-Match header field makes the request method conditional on a recipient cache or origin server either not having any current representation of the target resource, when the field value is "*", or having a selected representation with an entity tag that does not match any of those listed in the field value.

For more details, please head over to RFC9110.

Responses
200

Live Copy found

304

Not Modified

401

Unauthorized

403

Forbidden

404

Not Found

406

Unacceptable. indicates that the target resource does not have a current representation that would be acceptable to the user agent, according to the proactive negotiation header fields received in the request.

500

The server encountered an unexpected error. Retrying the request after a certain time could help.

get/{liveCopyId}
Request samples
Response samples
application/json
{
  • "sourcePath": "string",
  • "sourceId": "49af775d-0e7a-46c3-913d-00f762528373",
  • "liveCopyId": "49af775d-0e7a-46c3-913d-00f762528373",
  • "rootPath": "string",
  • "title": "string",
  • "label": "string",
  • "shallow": true,
  • "rolloutConfigs": [
    ]
}

Delete the Live Copy

This operation deletes a Live Copy, given the appropriate parameters. The ETag value required by the If-Match header must contain the value of the ETag header returned by the corresponding GET request.

SecurityBearer
Request
path Parameters
liveCopyId
required
string <uuid> (UUID) non-empty

Id of the Live Copy for which the operation is performed

Example: 49af775d-0e7a-46c3-913d-00f762528373
query Parameters
softDelete
boolean
Default: false

When set to true, the Live Copy will be deleted without its content.

header Parameters
If-Match
required
string

The If-Match header field makes the request method conditional on the recipient origin server either having at least one current representation of the target resource, when the field value is "*", or having a current representation of the target resource that has an entity tag matching a member of the list of entity tags provided in the field value.

For more details, please head over to RFC9110.

Responses
204

No Content

400

Bad Request. The Problem Details object will provide more information about the exact cause.

403

Forbidden

404

Not Found

412

Precondition Failed

428

Precondition Required

500

The server encountered an unexpected error. Retrying the request after a certain time could help.

delete/{liveCopyId}
Request samples
Response samples
application/problem+json
{}

Trigger a synchronize operation from a given Live Copy

This operation triggers a synchronize (rollout) operation for a specific Live Copy.

SecurityBearer
Request
path Parameters
liveCopyId
required
string <uuid> (UUID) non-empty

Id of the Live Copy for which the operation is performed

Example: 49af775d-0e7a-46c3-913d-00f762528373
Request Body schema: application/json
required
object (GranularRolloutDetails)
scheduledDate
string <date-time>

A string that specifies the date when the Job should be executed. If it is missing then the rollout will happen immediately.

Responses
202

This is an asynchronous operation. Please follow the URL from the Location header to get the status of the Job that creates the Rollout Job.

400

Bad Request. The Problem Details object will provide more information about the exact cause.

401

Unauthorized

403

Forbidden

406

Unacceptable. indicates that the target resource does not have a current representation that would be acceptable to the user agent, according to the proactive negotiation header fields received in the request.

415

Unsupported Media Type. When provided as a response to a PATCH request, the response will provide an Accept-Patch response header to notify the client what patch document media types are supported.

500

The server encountered an unexpected error. Retrying the request after a certain time could help.

post/{liveCopyId}/synchronize
Request samples
application/json
{
  • "summary": "Example of Synchronize Request parameters",
  • "value": {
    }
}
Response samples
application/problem+json
{}

List the broken inheritance elements for this Live Copy

This operation provides support for retrieving all the elements of this Live Copy accessible to the current user that have a broken inheritance relationship. Depending on the liveCopyId, the response will be either a combination of Resources and paths (in case the liveCopyId parameter indicates a Page Live Copy) or a combination of variation and fields (in case the liveCopyId parameter indicates a Content Fragment Live Copy).

By default this call will return a maximum of 50 items. The caller can define other limits suited to their application (see the limit query parameter), but the limit cannot be higher than 50. To ask for the next set of items pass the value of the cursor provided in the response to the cursor query parameter.

SecurityBearer
Request
path Parameters
liveCopyId
required
string <uuid> (UUID) non-empty

Id of the Live Copy for which the operation is performed

Example: 49af775d-0e7a-46c3-913d-00f762528373
query Parameters
filterByResourceId
string <uuid> (UUID) non-empty

When present, results will be returned only for this Resource.

Example: filterByResourceId=49af775d-0e7a-46c3-913d-00f762528373
cursor
string (Cursor) non-empty

For a paginated request, this parameter defines the cursor from which to retrieve the next set of items.

limit
integer <int32> (Limit) [ 1 .. 50 ]

For a paginated request, this parameter defines the maximum number of items to retrieve.

header Parameters
If-None-Match
string

The If-None-Match header field makes the request method conditional on a recipient cache or origin server either not having any current representation of the target resource, when the field value is "*", or having a selected representation with an entity tag that does not match any of those listed in the field value.

For more details, please head over to RFC9110.

Responses
200

List of broken inheritance elements

304

Not Modified

400

Bad Request. The Problem Details object will provide more information about the exact cause.

401

Unauthorized

403

Forbidden

406

Unacceptable. indicates that the target resource does not have a current representation that would be acceptable to the user agent, according to the proactive negotiation header fields received in the request.

500

The server encountered an unexpected error. Retrying the request after a certain time could help.

get/{liveCopyId}/brokenInheritanceElements
Request samples
Response samples
application/json
{
  • "summary": "Example of BrokenInheritanceElements Request parameters",
  • "items": [
    ],
  • "cursor": "string"
}

Trigger a modify inheritance operation for a given Live Copy

This operation triggers a modify inheritance operation for a specific Live Copy. It can be used to break or restore inheritance for a given resource within the specified live copy.

SecurityBearer
Request
path Parameters
liveCopyId
required
string <uuid> (UUID) non-empty

Id of the Live Copy for which the operation is performed

Example: 49af775d-0e7a-46c3-913d-00f762528373
header Parameters
If-Match
required
string

The If-Match header field makes the request method conditional on the recipient origin server either having at least one current representation of the target resource, when the field value is "*", or having a current representation of the target resource that has an entity tag matching a member of the list of entity tags provided in the field value.

For more details, please head over to RFC9110.

Request Body schema: application/json
required
required
Array of objects (InheritanceElement)

List of children Sub-Resources or Content Fragments of the current Live Copy (liveCopyId).

Responses
200

The Updated List of broken inheritance elements

400

Bad Request. The Problem Details object will provide more information about the exact cause.

401

Unauthorized

403

Forbidden

406

Unacceptable. indicates that the target resource does not have a current representation that would be acceptable to the user agent, according to the proactive negotiation header fields received in the request.

412

Precondition Failed

415

Unsupported Media Type. When provided as a response to a PATCH request, the response will provide an Accept-Patch response header to notify the client what patch document media types are supported.

500

The server encountered an unexpected error. Retrying the request after a certain time could help.

put/{liveCopyId}/brokenInheritanceElements
Request samples
application/json
{
  • "summary": "Example of BrokenInheritanceElements Request parameters",
  • "items": [
    ]
}
Response samples
application/json
{
  • "summary": "Example of BrokenInheritanceElements Request parameters",
  • "Pages": {
    },
  • "Fragments": {
    },
  • "items": [
    ],
  • "type": "resource"
}

Create a Live Copy from a given Live Copy Source

This operation creates a Live Copy, starting from a Live Copy Source, given the appropriate parameters.

SecurityBearer
Request
path Parameters
sourceId
required
string <uuid> (UUID) non-empty

Id of the Live Copy Source for which the operation is performed.

Example: 49af775d-0e7a-46c3-913d-00f762528373
Request Body schema: application/json
required
title
required
string non-empty

The title of the Live Copy, as used for display purposes.

label
required
string non-empty

The label of the Live Copy, as used for display purposes.

shallow
boolean
Default: false

Specifies whether the Live Copy is deep or shallow. A deep Live Copy includes all the child pages of the source page. A shallow Live Copy includes only the source page.

destinationPath
required
string non-empty ^(?:(?!\*|\[|\]|\||\\|\|).)*$

A string that specifies the destination of the Live Copy.

rolloutConfigs
required
Array of strings (Path)

An array of strings that can contain various existent rollout configs defined in AEM. When not provided the default rollout config will be used.

scheduledDate
string <date-time>

A string that specifies the date when the job should be executed.

Responses
202

This is an asynchronous operation. Please follow the URL from the Location header to get the status of the Job that creates the Live Copy.

400

Bad Request. The Problem Details object will provide more information about the exact cause.

401

Unauthorized

403

Forbidden

406

Unacceptable. indicates that the target resource does not have a current representation that would be acceptable to the user agent, according to the proactive negotiation header fields received in the request.

415

Unsupported Media Type. When provided as a response to a PATCH request, the response will provide an Accept-Patch response header to notify the client what patch document media types are supported.

500

The server encountered an unexpected error. Retrying the request after a certain time could help.

post/sources/{sourceId}
Request samples
application/json
{
  • "summary": "Example of Create Live Copy Request parameters",
  • "value": {
    }
}
Response samples
application/problem+json
{}

Trigger a rollout operation from a given Live Copy Source

This operation triggers a rollout operation, starting from a Live Copy Source, given the appropriate parameters.

SecurityBearer
Request
path Parameters
sourceId
required
string <uuid> (UUID) non-empty

Id of the Live Copy Source for which the operation is performed.

Example: 49af775d-0e7a-46c3-913d-00f762528373
Request Body schema: application/json
required
Array of objects (RolloutLiveCopyDetails)

When present, this will execute the rollout only to the provided Live Copies; otherwise the rollout will execute to all Live Copies.

scheduledDate
string <date-time> non-empty

A string that specifies the date when the Job should be executed. If it is missing then the rollout will happen immediately.

Responses
202

This is an asynchronous operation. Please follow the URL from the Location header to get the status of the Job that creates the Rollout Job.

400

Bad Request. The Problem Details object will provide more information about the exact cause.

401

Unauthorized

403

Forbidden

406

Unacceptable. indicates that the target resource does not have a current representation that would be acceptable to the user agent, according to the proactive negotiation header fields received in the request.

415

Unsupported Media Type. When provided as a response to a PATCH request, the response will provide an Accept-Patch response header to notify the client what patch document media types are supported.

500

The server encountered an unexpected error. Retrying the request after a certain time could help.

post/sources/{sourceId}/rollout
Request samples
application/json
{
  • "summary": "Example of Rollout Request parameters",
  • "value": {
    }
}
Response samples
application/problem+json
{}

Jobs Status

Get Job status

Get information about the processing of the Job

SecurityBearer
Request
path Parameters
jobId
required
string

The id of the Job.

Responses
200

Job is processing.

303

Job completed.

401

Unauthorized

403

Forbidden

404

Not Found

406

Unacceptable. indicates that the target resource does not have a current representation that would be acceptable to the user agent, according to the proactive negotiation header fields received in the request.

415

Unsupported Media Type. When provided as a response to a PATCH request, the response will provide an Accept-Patch response header to notify the client what patch document media types are supported.

500

The server encountered an unexpected error. Retrying the request after a certain time could help.

get/jobs/{jobId}/status
Request samples
Response samples
application/json
{
  • "state": "ACTIVE"
}

Get the result of a processed job

SecurityBearer
Request
path Parameters
jobId
required
string

The id of the job.

Responses
200

Job completed.

400

Bad Request. The Problem Details object will provide more information about the exact cause.

401

Unauthorized

403

Forbidden

404

Not Found

406

Unacceptable. indicates that the target resource does not have a current representation that would be acceptable to the user agent, according to the proactive negotiation header fields received in the request.

415

Unsupported Media Type. When provided as a response to a PATCH request, the response will provide an Accept-Patch response header to notify the client what patch document media types are supported.

500

The server encountered an unexpected error. Retrying the request after a certain time could help.

get/jobs/{jobId}/result
Request samples
Response samples
{
  • "operation": "aem.msm.source.rollout",
  • "status": 500,
  • "description": "The job encountered an error during processing",
  • "data": {
    },
  • "errors": [
    ]
}