Import a Component
/sites/management/api/v1/components
Import a component from a zip file. The zip file contains the component details and structure. The zip file must first be uploaded to any personal folder of the authenticated user. The zip file for this import should then be specified as part of the request body fields. Because components might already exist, a Component Import Conflict response will be received if there are any conflicts that prevent this component being imported and no conflict resolution has been specified. This response contains details about all the conflicts. Conflict resolution details can be specified in the request body fields, such as overwriting any existing component. If conflict resolution is specified, the import will attempt to resolve the conflict using the resolution specified, or will respond with an error if resolution is not possible. Examples of conflict resolution handling include overwriting the target resource, or creating the resource with a new identity.
Introduced in release 19.4.1.
Authorization
To invoke this operation, the authenticated user or client application must have one of the listed roles. However, if a service administrator has limited component creation to site administrators, only site administrators can create components.
- CECDeveloperUser
- CECContentAdministrator
- CECSitesAdministrator
Exporting a Component
A component package can be created manually by zipping up a component folder or by exporting an existing component.
For more information, see Export a Component.
Request Body Alternative Identifiers
The request body references resources that support alternative identifiers. These alternative identifiers can be used instead of using the default resource identifier.
pathFile Path
The default identifier for a Document File resource is the Id.
Instead of the file identifier the file path can be used to identify a file. A path
is built up using the names of the parent folders (relative to the user's home folder) followed by the file name,
joined by /
. File paths can only be used for personal folders; files in shared folders cannot be referenced by path.
Folder and file names are case-insensitive.
path:folder1/folder2/file.ext
Introduced in release 19.4.3.
Successful Response Examples
This operation responds with the following success (2xx) responses. For a full list of response HTTP status codes and example bodies, consult the Response section of this operation.
201Created - Import with no Conflict Resolution
Import a component with no conflict resolution. As no conflict resolution is specified in the request, the component will attempt to be imported without a change to its identity or name. If there are conflicts with any existing components, a Component Import Conflict response will be received.
Request
POST https://api.example.com/sites/management/api/v1/components
Request Body
{ "file": "path:packages/components/component.zip" }
201Created - Overwrite an Existing Component
Import a component into a system, overwriting any component that already exists with the same identity.
Request
POST https://api.example.com/sites/management/api/v1/components
Request Body
{ "file": "path:packages/components/component.zip", "conflicts": { "resolution": "overwrite" } }
201Created - Skip Import on Conflicts
Import a component into a system, but skip the import if there is any conflict and leave the existing component unchanged.
Request
POST https://api.example.com/sites/management/api/v1/components
Request Body
{ "file": "path:packages/components/component.zip", "conflicts": { "resolution": "skip" } }
201Created - Rename Component
Import a component with a new name to avoid any potential name conflict.
Request
POST https://api.example.com/sites/management/api/v1/components
Request Body
{ "file": "path:packages/components/component.zip", "conflicts": { "resolution": "rename", "name": "AnotherNavMenu" } }
201Created - Import with File Identifier
Import a component package with no conflict resolution, identifying the file using a file identifier rather than a path.
Request
POST https://api.example.com/sites/management/api/v1/components
Request Body
{ "file": "F40B9BE3E69F6DC440559A1F033BB2482DB740ECB2D8" }
Redirection Response Examples
This operation responds with the following redirection (3xx) responses. For a full list of response HTTP status codes and example bodies, consult the Response section of this operation. Note: Depending on the client technology used to invoke this operation a 2xx response may be returned if the redirection is followed automatically.
303See Other - Component Overwritten or Skipped
If an existing component is created, then the response will indicate that the component has been created and the Location
header will contain the location of the newly created component
Client Error Response Examples
This operation responds with following client error (4xx) responses with exception details in the response body. For a full list of response HTTP status codes and example bodies, consult the Response section of this operation.
400Bad Request - Invalid File
A file identified with an identifier cannot be found.
Error Code
OCE-DOCS-001002
Resolution - Check File Exists
Check that the file identifier is valid.
Resolution - Check Sharing Role in Parent Folder
Check that the authenticated user has a role in the folder that contains the file.
Exception Detail Fields
This error type includes the following fields/values in the response:
Field Name | Description |
file | File that does not exist. |
For detailed information about this exception detail type, consult the InvalidFileExceptionDetail schema in the definitions section of the swagger document.
Example Response Body
{ "type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1", "title": "Invalid File", "status": "400", "detail": "File does not exist or the authenticated user or client application does not have access to the file.", "o:errorCode": "OCE-DOCS-001002", "file": { "id": "F40B9BE3E69F6DC440559A1F033BB2482DB740ECB2D8" } }
Introduced in release 19.4.1.
400Bad Request - Invalid Import File
Invalid import file.
Error Code
OCE-SITEMGMT-009145
Example Response Body
{ "type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1", "title": "Invalid Import File", "status": "400", "detail": "Invalid import file.", "o:errorCode": "OCE-SITEMGMT-009145" }
Introduced in release 22.9.3.
403Forbidden - Component Overwrite Denied
When a component is imported with conflict resolution of overwrite
, and the component already exists but the authenticated user does not have the rights to overwrite it.
Error Code
OCE-SITEMGMT-009050
Resolution - Share Component
The owner can add the user as a manager of the component to allow the user to overwrite it.
Exception Detail Fields
This error type includes the following fields/values in the response:
Field Name | Description |
name | Component name. |
owner | Component owner contact details. |
For detailed information about this exception detail type, consult the ComponentOverwriteDeniedExceptionDetail schema in the definitions section of the swagger document.
Example Response Body
{ "type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1", "title": "Component Overwrite Denied", "status": "403", "detail": "Component '{name}' already exists and cannot be overwritten.", "o:errorCode": "OCE-SITEMGMT-009050", "name": "ContentNavMenu", "owner": { "displayName": "John Smith", "email": "jsmith@example.com", "userName": "jsmith" } }
Introduced in release 19.4.1.
403Forbidden - Component Overwrite In Trash
When a component is imported with conflict resolution of overwrite
, and the component already exists and is in trash.
Error Code
OCE-SITEMGMT-009108
Resolution - Permanently Delete Component
If you are the owner, permanently delete the component. If you are not the owner, ask the owner to permanently delete the component, and try again.
Resolution - Restore Component
If you are the owner, restore the component and try again.
Exception Detail Fields
This error type includes the following fields/values in the response:
Field Name | Description |
name | Component name. |
owner | Component owner contact details. |
For detailed information about this exception detail type, consult the ComponentOverwriteInTrashExceptionDetail schema in the definitions section of the swagger document.
Example Response Body
{ "type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1", "title": "Component Overwrite In Trash", "status": "403", "detail": "Component '{name}' is in trash so cannot be overwritten.", "o:errorCode": "OCE-SITEMGMT-009108", "name": "ContentNavMenu", "owner": { "displayName": "John Smith", "email": "jsmith@example.com", "userName": "jsmith" } }
Introduced in release 20.4.2.
403Forbidden - Component Create Denied
When importing a Content Layout component that already exists, it must be overwritten and not created as a new component during import.
Error Code
OCE-SITEMGMT-009068
Resolution - Overwrite Component
The component must be overwritten during import. If importing a template package, remove the component name from the forceCreate list of the component
conflict resolution. When importing an individual component specify overwrite
conflict resolution.
Exception Detail Fields
This error type includes the following fields/values in the response:
Field Name | Description |
name | Component name. |
For detailed information about this exception detail type, consult the ComponentCreateDeniedExceptionDetail schema in the definitions section of the swagger document.
Example Response Body
{ "type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1", "title": "Component Create Denied", "status": "403", "detail": "Component '{name}' is for an existing content layout and cannot be created as a new component.", "o:errorCode": "OCE-SITEMGMT-009068", "name": "ContentNavMenu" }
Introduced in release 19.4.1.
403Forbidden - Storage Limit Reached
Storage transfer limit has been reached. Billing limits have been set on the amount of storage available by the system administrator.
Error Code
OCE-SITEMGMT-009098
Resolution - Increase Storage Limit
Get a system administrator to increase the storage limit.
Exception Detail Fields
This error type includes the following fields/values in the response:
Field Name | Description |
used | Storage used, in GB. |
limit | Storage limit, in GB. |
For detailed information about this exception detail type, consult the StorageLimitReachedExceptionDetail schema in the definitions section of the swagger document.
Example Response Body
{ "type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1", "title": "Storage Limit Reached", "status": "403", "detail": "Storage limit has been reached.", "o:errorCode": "OCE-SITEMGMT-009098", "used": 1.23456789, "limit": 1.23456789 }
Introduced in release 20.3.1.
403Forbidden - Sites Administrator Role Required
The Sites Administrator role is required to create resources of this type.
Error Code
OCE-SITEMGMT-009140
Resolution - Change Sites System Settings
Creation of sites, templates, themes and components can be restricted to sites administrators. Update the Sites System settings to allow creation of sites resources of this type by non admin users.
Exception Detail Fields
This error type includes the following fields/values in the response:
Field Name | Description |
resourceType | Resource type that can only be created by Sites Administrators. Valid values are:
|
name | Name of resource being created, if available. |
For detailed information about this exception detail type, consult the SitesAdminRoleRequiredExceptionDetail schema in the definitions section of the swagger document.
Example Response Body
{ "type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1", "title": "Sites Administrator Role Required", "status": "403", "detail": "The Sites Administrator role is required to create resources of this type.", "o:errorCode": "OCE-SITEMGMT-009140", "resourceType": "site", "name": "value" }
Introduced in release 22.5.2.
409Conflict - Component Import Conflict
When a component is imported, the component may clash with an existing component if a component with the same identifier or name exists.
Error Code
OCE-SITEMGMT-009046
Resolution - Component Conflict
Use the component conflict resolution choices to specify a resolution: create a new component with a new identity and optional name, overwrite the conflicting component, rename the imported component to avoid a name clash, or skip the import of the component.
Exception Detail Fields
This error type includes the following fields/values in the response:
Field Name | Description |
componentConflicts | Component conflicts, contains any conflicts with existing components. |
For detailed information about this exception detail type, consult the ComponentImportConflictExceptionDetail schema in the definitions section of the swagger document.
Example Response Body
{ "type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1", "title": "Component Import Conflict", "status": "409", "detail": "Component package has not been imported because there is one or more conflicts with the component.", "o:errorCode": "OCE-SITEMGMT-009046", "componentConflicts": [ { "conflicts": [ { "itemGUID": "value", "name": "ContentNavMenu", "type": "name", "value": "value", "resolution": "value" } ], "itemGUID": "value", "name": "ContentNavMenu", "ownedBy": { "type": "user", "id": "1234", "name": "value", "displayName": "John Smith", "roles": [ "CECServiceAdministrator" ], "userName": "jsmith", "email": "jsmith@example.com" }, "lastModifiedBy": { "type": "user", "id": "1234", "name": "value", "displayName": "John Smith", "roles": [ "CECServiceAdministrator" ], "userName": "jsmith", "email": "jsmith@example.com" }, "lastModifiedAt": "2019-06-01T06:44:17.000Z", "deleted": false, "overwritable": false, "component": { "id": "F40B9BE3E69F6DC440559A1F033BB2482DB740ECB2D8" } } ] }
Introduced in release 19.4.1.
409Conflict - Component Already Exists
A component with the same name or identity already exists. Component names and identities must be unique across all components.
Error Code
OCE-SITEMGMT-009043
Resolution - Change the Component Name
If clashing on name during a copy or rename, choose a different name.
Resolution - Change the Conflict Resolution Name
If clashing on name during an import, choose a different name for the component conflict resolution.
Resolution - Change the Conflict Resolution Action
If clashing on identity during an import, change the component conflict resolution type to overwrite
or create
.
Exception Detail Fields
This error type includes the following fields/values in the response:
Field Name | Description |
component | Duplicate component. |
name | Duplicate name. |
itemGuid | Duplicate identity Guid. |
For detailed information about this exception detail type, consult the ComponentAlreadyExistsExceptionDetail schema in the definitions section of the swagger document.
Example Response Body
{ "type": "http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1", "title": "Component Already Exists", "status": "409", "detail": "A component with the same name or identity already exists.", "o:errorCode": "OCE-SITEMGMT-009043", "component": { "id": "F40B9BE3E69F6DC440559A1F033BB2482DB740ECB2D8" }, "name": "ContentNavMenu", "itemGuid": "value" }
Introduced in release 19.4.1.
Request
- application/json
Details of the component file and conflict resolution.
object
-
conflicts(optional):
object conflicts
Details of how component conflict resolution is performed. If not specified, then the import will attempt to create a new component.
Introduced in release 19.4.1. -
file:
string
Component package file.
Introduced in release 19.4.1. -
links(optional):
array links
HATEOS link to related resources and actions or actions on this resource. Must include at least a 'self' link that contains a link to the canonical representation of the resource.
{
"file":"path:packages/components/component.zip"
}
object
Details of how component conflict resolution is performed. If not specified, then the import will attempt to create a new component.
Introduced in release 19.4.1.-
name(optional):
string
Maximum Length:
255
If a resolution of
Introduced in release 19.4.1.rename
is chosen, a component name must be provided. If a resolution ofcreate
is chosen, a component name may optionally be provided. -
resolution:
string
How to handle component conflicts.
Valid values are:
-
create
- Import the component with a new identity if a component exists with the same identity. Optionally, a new component name can
-
rename
- Import the component with a new name but keeping its identity. If rename conflict resolution is chosen,
-
overwrite
- Overwrite the conflicting component with the one being imported if a component exists with the same identity -
skip
- Do not import the component if there is a conflict
-
array
HATEOS link to related resources and actions or actions on this resource. Must include at least a 'self' link that contains a link to the canonical representation of the resource.
object
REST HATEOAS link and related metadata. If responses provide links (for example, a self
link to the resource itself) the links provided will include one or more of the properties defined on this link structure.
-
href(optional):
string
The target resource URI. URI RFC3986 or URI Template RFC6570. If the value is set to URI Template, then the
templated
property must be set totrue
. -
mediaType(optional):
string
Media type, as defined by RFC 2046, describing the link target.
-
method(optional):
string
HTTP method for requesting the target of the link.
Valid values are:
-
OPTIONS
- HTTP OPTIONS -
HEAD
- HTTP HEAD -
GET
- HTTP GET -
POST
- HTTP POST -
PUT
- HTTP PUT -
PATCH
- HTTP PATCH -
DELETE
- HTTP DELETE
-
-
profile(optional):
string(uri)
Link to the metadata of the resource, such as JSON-schema, that describes the resource expected when dereferencing the target resource.
-
rel(optional):
string
Name of the link relation that, in addition to the type property, can be used to retrieve link details.
-
templated(optional):
boolean
Boolean flag that specifies the
href
property is a URI or URI Template. The property can be assumed to befalse
if the property is not present.
Response
201 Response
303 Response
400 Response
-
allOf
InvalidFileExceptionDetail
Introduced in release 19.4.1.
-
object
ExceptionDetail
In addition to HTTP error code and error messages, it is often desirable to provide additional information to the client when a request fails. In such cases, the additional information will be included in the response body.
-
object
InvalidFileExceptionDetail-allOf[1]
object
In addition to HTTP error code and error messages, it is often desirable to provide additional information to the client when a request fails. In such cases, the additional information will be included in the response body.
-
detail(optional):
string
Description specific to this occurrence of the problem. The human-readable, potentially multi-line details describing the problem in more details.
-
instance(optional):
string(uri)
URI to the link that provides more detail about the error.
-
o:errorCode(optional):
string
Application error code, which is different from HTTP error code. This code should be used to check for specific errors, rather than comparing fields such as the
title
ordetail
. -
o:errorDetails(optional):
array o:errorDetails
Multiple errors can be organized in a hierarchical structure.
-
o:errorPath(optional):
string
XPath or JSON path to indicate where the error occurs.
-
status(optional):
integer(int32)
Corresponding HTTP status code for the error.
-
title(optional):
string
Short, human-readable summary of the problem. It is not advisable to use the title as a way of checking for specific errors, use the
o:errorCode
for this purpose. -
type(optional):
string(uri)
Absolute URI that identifies the problem type. When this URI dereferenced, it should provide a human-readable summary of the problem, for example, as a HTML page.
object
-
file(optional):
string
File that does not exist.
Introduced in release 19.4.1.
array
Multiple errors can be organized in a hierarchical structure.
-
object
ExceptionDetail
In addition to HTTP error code and error messages, it is often desirable to provide additional information to the client when a request fails. In such cases, the additional information will be included in the response body.
{
"type":"http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1",
"title":"Invalid File",
"status":"400",
"detail":"File does not exist or the authenticated user or client application does not have access to the file.",
"o:errorCode":"OCE-DOCS-001002",
"file":{
"id":"F40B9BE3E69F6DC440559A1F033BB2482DB740ECB2D8"
}
}
{
"type":"http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1",
"title":"Invalid Import File",
"status":"400",
"detail":"Invalid import file.",
"o:errorCode":"OCE-SITEMGMT-009145"
}
401 Response
403 Response
-
allOf
ComponentOverwriteDeniedExceptionDetail
Introduced in release 19.4.1.
-
object
ExceptionDetail
In addition to HTTP error code and error messages, it is often desirable to provide additional information to the client when a request fails. In such cases, the additional information will be included in the response body.
-
object
ComponentOverwriteDeniedExceptionDetail-allOf[1]
object
In addition to HTTP error code and error messages, it is often desirable to provide additional information to the client when a request fails. In such cases, the additional information will be included in the response body.
-
detail(optional):
string
Description specific to this occurrence of the problem. The human-readable, potentially multi-line details describing the problem in more details.
-
instance(optional):
string(uri)
URI to the link that provides more detail about the error.
-
o:errorCode(optional):
string
Application error code, which is different from HTTP error code. This code should be used to check for specific errors, rather than comparing fields such as the
title
ordetail
. -
o:errorDetails(optional):
array o:errorDetails
Multiple errors can be organized in a hierarchical structure.
-
o:errorPath(optional):
string
XPath or JSON path to indicate where the error occurs.
-
status(optional):
integer(int32)
Corresponding HTTP status code for the error.
-
title(optional):
string
Short, human-readable summary of the problem. It is not advisable to use the title as a way of checking for specific errors, use the
o:errorCode
for this purpose. -
type(optional):
string(uri)
Absolute URI that identifies the problem type. When this URI dereferenced, it should provide a human-readable summary of the problem, for example, as a HTML page.
object
-
name(optional):
string
Maximum Length:
255
Component name.
Introduced in release 19.4.1. -
owner(optional):
owner
Component owner contact details.
Introduced in release 19.4.1.
array
Multiple errors can be organized in a hierarchical structure.
-
object
ExceptionDetail
In addition to HTTP error code and error messages, it is often desirable to provide additional information to the client when a request fails. In such cases, the additional information will be included in the response body.
Component owner contact details.
Introduced in release 19.4.1.-
allOf
UserContact
User contact details. Contains the display name and email address of a user.
User contact details. Contains the display name and email address of a user.
-
object
SingularResource
All singular resources include the properties of the singular resource definition. A singular resource includes a list of links that provide relationships to other resources, or in the case of the self link the resource itself.
-
object
UserContact-allOf[1]
object
All singular resources include the properties of the singular resource definition. A singular resource includes a list of links that provide relationships to other resources, or in the case of the self link the resource itself.
-
links(optional):
array links
HATEOS link to related resources and actions or actions on this resource. Must include at least a 'self' link that contains a link to the canonical representation of the resource.
object
-
displayName(optional):
string
Human-readable user display name.
-
email(optional):
string
Email address to use when sending email notifications.
-
userName(optional):
string
User login name. Typically the user email address is used as the user login name.
array
HATEOS link to related resources and actions or actions on this resource. Must include at least a 'self' link that contains a link to the canonical representation of the resource.
object
REST HATEOAS link and related metadata. If responses provide links (for example, a self
link to the resource itself) the links provided will include one or more of the properties defined on this link structure.
-
href(optional):
string
The target resource URI. URI RFC3986 or URI Template RFC6570. If the value is set to URI Template, then the
templated
property must be set totrue
. -
mediaType(optional):
string
Media type, as defined by RFC 2046, describing the link target.
-
method(optional):
string
HTTP method for requesting the target of the link.
Valid values are:
-
OPTIONS
- HTTP OPTIONS -
HEAD
- HTTP HEAD -
GET
- HTTP GET -
POST
- HTTP POST -
PUT
- HTTP PUT -
PATCH
- HTTP PATCH -
DELETE
- HTTP DELETE
-
-
profile(optional):
string(uri)
Link to the metadata of the resource, such as JSON-schema, that describes the resource expected when dereferencing the target resource.
-
rel(optional):
string
Name of the link relation that, in addition to the type property, can be used to retrieve link details.
-
templated(optional):
boolean
Boolean flag that specifies the
href
property is a URI or URI Template. The property can be assumed to befalse
if the property is not present.
{
"type":"http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1",
"title":"Component Overwrite Denied",
"status":"403",
"detail":"Component '{name}' already exists and cannot be overwritten.",
"o:errorCode":"OCE-SITEMGMT-009050",
"name":"ContentNavMenu",
"owner":{
"displayName":"John Smith",
"email":"jsmith@example.com",
"userName":"jsmith"
}
}
{
"type":"http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1",
"title":"Component Overwrite In Trash",
"status":"403",
"detail":"Component '{name}' is in trash so cannot be overwritten.",
"o:errorCode":"OCE-SITEMGMT-009108",
"name":"ContentNavMenu",
"owner":{
"displayName":"John Smith",
"email":"jsmith@example.com",
"userName":"jsmith"
}
}
{
"type":"http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1",
"title":"Component Create Denied",
"status":"403",
"detail":"Component '{name}' is for an existing content layout and cannot be created as a new component.",
"o:errorCode":"OCE-SITEMGMT-009068",
"name":"ContentNavMenu"
}
{
"type":"http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1",
"title":"Storage Limit Reached",
"status":"403",
"detail":"Storage limit has been reached.",
"o:errorCode":"OCE-SITEMGMT-009098",
"used":1.23456789,
"limit":1.23456789
}
{
"type":"http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1",
"title":"Sites Administrator Role Required",
"status":"403",
"detail":"The Sites Administrator role is required to create resources of this type.",
"o:errorCode":"OCE-SITEMGMT-009140",
"resourceType":"site",
"name":"value"
}
409 Response
-
allOf
ComponentImportConflictExceptionDetail
Introduced in release 19.4.1.
-
object
ExceptionDetail
In addition to HTTP error code and error messages, it is often desirable to provide additional information to the client when a request fails. In such cases, the additional information will be included in the response body.
-
object
ComponentImportConflictExceptionDetail-allOf[1]
object
In addition to HTTP error code and error messages, it is often desirable to provide additional information to the client when a request fails. In such cases, the additional information will be included in the response body.
-
detail(optional):
string
Description specific to this occurrence of the problem. The human-readable, potentially multi-line details describing the problem in more details.
-
instance(optional):
string(uri)
URI to the link that provides more detail about the error.
-
o:errorCode(optional):
string
Application error code, which is different from HTTP error code. This code should be used to check for specific errors, rather than comparing fields such as the
title
ordetail
. -
o:errorDetails(optional):
array o:errorDetails
Multiple errors can be organized in a hierarchical structure.
-
o:errorPath(optional):
string
XPath or JSON path to indicate where the error occurs.
-
status(optional):
integer(int32)
Corresponding HTTP status code for the error.
-
title(optional):
string
Short, human-readable summary of the problem. It is not advisable to use the title as a way of checking for specific errors, use the
o:errorCode
for this purpose. -
type(optional):
string(uri)
Absolute URI that identifies the problem type. When this URI dereferenced, it should provide a human-readable summary of the problem, for example, as a HTML page.
object
-
componentConflicts(optional):
array componentConflicts
Component conflicts, contains any conflicts with existing components.
Introduced in release 19.4.1.
array
Multiple errors can be organized in a hierarchical structure.
-
object
ExceptionDetail
In addition to HTTP error code and error messages, it is often desirable to provide additional information to the client when a request fails. In such cases, the additional information will be included in the response body.
array
Component conflicts, contains any conflicts with existing components.
Introduced in release 19.4.1.object
-
component:
string
Conflicting component.
Introduced in release 19.4.1. -
conflicts:
array conflicts
List of conflicts with an existing component.
Introduced in release 19.4.1. -
deleted:
boolean
Specifies if the conflicting component is soft deleted.
Introduced in release 19.4.1. -
itemGUID:
string
Internal identifier for the conflicting component. This is not the same as the folder GUID. This identifier can be used to identify the same component on two different services, i.e. a test and production service. This GUID is maintained on component export and import.
Introduced in release 19.4.1. -
lastModifiedAt:
string(date-time)
Date and time the conflicting component was last modified. Date and time values are in ISO 8601
Introduced in release 19.4.1.yyyy-MM-dd'T'HH:mm:ss.SSS'Z'
format using a UTC timezone. -
lastModifiedBy:
lastModifiedBy
User or client application that last modified the conflicting component.
Introduced in release 19.4.1. -
name:
string
Maximum Length:
255
Name of the conflicting component in the service.
Introduced in release 19.4.1. -
overwritable:
boolean
Specifies if the current authenticated user has permission to overwrite the component contents. Only Managers can overwrite the contents. If value is false, then a conflict resolution of overwrite will fail with access denied.
Introduced in release 19.4.1. -
ownedBy:
ownedBy
User or client application that owns the conflicting component.
Introduced in release 19.4.1.
array
List of conflicts with an existing component.
Introduced in release 19.4.1.User or client application that last modified the conflicting component.
Introduced in release 19.4.1.User or client application that owns the conflicting component.
Introduced in release 19.4.1.object
-
itemGUID:
string
Internal identifier for the component in the package. This is not the same as the folder GUID. This identifier can be used to identify the same component on two different services, i.e. a test and production service. This GUID is maintained on component export and import.
Introduced in release 19.4.1. -
name:
string
Maximum Length:
255
Human readable name for the component in the package.
Introduced in release 19.4.1. -
resolution(optional):
string
A resolution value, if applicable. Using this value will resolve the conflict.
Introduced in release 19.4.1. -
type:
string
Type of conflict.
Valid values are:
-
name
- Component conflicts on the component name -
identity
- Component conflicts on the component GUID based identity
-
-
value:
string
The clashing value.
Introduced in release 19.4.1.
type
Identity representing a user or client application. The identity contains the common information such as the identity identifier, unique name and display name.
Introduced in release 20.3.1.-
object
SingularResource
All singular resources include the properties of the singular resource definition. A singular resource includes a list of links that provide relationships to other resources, or in the case of the self link the resource itself.
-
object
Identity-allOf[1]
object
All singular resources include the properties of the singular resource definition. A singular resource includes a list of links that provide relationships to other resources, or in the case of the self link the resource itself.
-
links(optional):
array links
HATEOS link to related resources and actions or actions on this resource. Must include at least a 'self' link that contains a link to the canonical representation of the resource.
object
-
displayName(optional):
string
Human-readable display name.
Introduced in release 20.3.1. -
id(optional):
string
An identifier value allocated by CEC for the user or client application. The identifier is unique within the scope of the service.
No assumptions should be made about the content of the field; the field should be treated as an opaque value.
Introduced in release 20.3.1. -
name(optional):
string
Unique name, such as the user name or client application name.
Introduced in release 20.3.1. -
roles(optional):
array roles
Roles.
Valid values are:
-
CECServiceAdministrator
- Service Administrator
- Assign user enumerates
- Change user passwords and challenge questions
- Configure, monitor, and manage service instances
-
CECSitesAdministrator
- Sites Administrator
- Create sites, templates, themes or components
-
CECRepositoryAdministrator
- Repository Administrator -
CECDeveloperUser
- Developer User -
CECContentAdministrator
- Content Administrator
- Create new content types and publish items
-
CECStandardUser
- Standard User
- Manage content (view, upload, and edit documents)
- Share content and sites with others
- Use conversations to collaborate (discuss topics, direct message someone, assign flags to someone, add annotations to documents)
- Follow people
- Create, edit, and publish sites
- Manage and publish site themes
- Create, register, export, and import custom site components
- Create, edit, export, and import site templates
- View and interact with content items in sites
- Manage and view custom properties and edit values
-
CECEnterpriseUser
- Enterprise User
- Manage content (view, upload, and edit documents)
- Share content and sites with others
- Use conversations to collaborate (discuss topics, direct message someone, assign flags to someone, add annotations to documents)
- Follow people
- Digital Assets
- Content Items (editorial content management)
- Create, manage, view, and interact with content items
- Collections
- Create, edit, and publish sites
- Manage and publish site themes
- Create, register, export, and import custom site components
- Create, edit, export, and import site templates
- Manage and view custom properties and edit values
-
CECExternalUser
- External User
-
CECIntegrationUser
- Integration User
-
CECSitesVisitor
- Sites Visitor
-
-
type(optional):
string
Type of Identity. Valid values are:
Introduced in release 20.3.1.user
,service
,application
,unknown
.
array
HATEOS link to related resources and actions or actions on this resource. Must include at least a 'self' link that contains a link to the canonical representation of the resource.
object
REST HATEOAS link and related metadata. If responses provide links (for example, a self
link to the resource itself) the links provided will include one or more of the properties defined on this link structure.
-
href(optional):
string
The target resource URI. URI RFC3986 or URI Template RFC6570. If the value is set to URI Template, then the
templated
property must be set totrue
. -
mediaType(optional):
string
Media type, as defined by RFC 2046, describing the link target.
-
method(optional):
string
HTTP method for requesting the target of the link.
Valid values are:
-
OPTIONS
- HTTP OPTIONS -
HEAD
- HTTP HEAD -
GET
- HTTP GET -
POST
- HTTP POST -
PUT
- HTTP PUT -
PATCH
- HTTP PATCH -
DELETE
- HTTP DELETE
-
-
profile(optional):
string(uri)
Link to the metadata of the resource, such as JSON-schema, that describes the resource expected when dereferencing the target resource.
-
rel(optional):
string
Name of the link relation that, in addition to the type property, can be used to retrieve link details.
-
templated(optional):
boolean
Boolean flag that specifies the
href
property is a URI or URI Template. The property can be assumed to befalse
if the property is not present.
array
Roles.
Valid values are:
-
CECServiceAdministrator
- Service Administrator
- Assign user enumerates
- Change user passwords and challenge questions
- Configure, monitor, and manage service instances
-
CECSitesAdministrator
- Sites Administrator
- Create sites, templates, themes or components
-
CECRepositoryAdministrator
- Repository Administrator -
CECDeveloperUser
- Developer User -
CECContentAdministrator
- Content Administrator
- Create new content types and publish items
-
CECStandardUser
- Standard User
- Manage content (view, upload, and edit documents)
- Share content and sites with others
- Use conversations to collaborate (discuss topics, direct message someone, assign flags to someone, add annotations to documents)
- Follow people
- Create, edit, and publish sites
- Manage and publish site themes
- Create, register, export, and import custom site components
- Create, edit, export, and import site templates
- View and interact with content items in sites
- Manage and view custom properties and edit values
-
CECEnterpriseUser
- Enterprise User
- Manage content (view, upload, and edit documents)
- Share content and sites with others
- Use conversations to collaborate (discuss topics, direct message someone, assign flags to someone, add annotations to documents)
- Follow people
- Digital Assets
- Content Items (editorial content management)
- Create, manage, view, and interact with content items
- Collections
- Create, edit, and publish sites
- Manage and publish site themes
- Create, register, export, and import custom site components
- Create, edit, export, and import site templates
- Manage and view custom properties and edit values
-
CECExternalUser
- External User
-
CECIntegrationUser
- Integration User
-
CECSitesVisitor
- Sites Visitor
{
"type":"http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1",
"title":"Component Import Conflict",
"status":"409",
"detail":"Component package has not been imported because there is one or more conflicts with the component.",
"o:errorCode":"OCE-SITEMGMT-009046",
"componentConflicts":[
{
"conflicts":[
{
"itemGUID":"value",
"name":"ContentNavMenu",
"type":"name",
"value":"value",
"resolution":"value"
}
],
"itemGUID":"value",
"name":"ContentNavMenu",
"ownedBy":{
"type":"user",
"id":"1234",
"name":"value",
"displayName":"John Smith",
"roles":[
"CECServiceAdministrator"
],
"userName":"jsmith",
"email":"jsmith@example.com"
},
"lastModifiedBy":{
"type":"user",
"id":"1234",
"name":"value",
"displayName":"John Smith",
"roles":[
"CECServiceAdministrator"
],
"userName":"jsmith",
"email":"jsmith@example.com"
},
"lastModifiedAt":"2019-06-01T06:44:17.000Z",
"deleted":false,
"overwritable":false,
"component":{
"id":"F40B9BE3E69F6DC440559A1F033BB2482DB740ECB2D8"
}
}
]
}
{
"type":"http://www.w3.org/Protocols/rfc2616/rfc2616-sec10.html#sec10.4.1",
"title":"Component Already Exists",
"status":"409",
"detail":"A component with the same name or identity already exists.",
"o:errorCode":"OCE-SITEMGMT-009043",
"component":{
"id":"F40B9BE3E69F6DC440559A1F033BB2482DB740ECB2D8"
},
"name":"ContentNavMenu",
"itemGuid":"value"
}