1. Overview
These enhanced services manage CMS-related items specifically designed for SmartEdit.
1.1. Version information
Version : 1.0
1.2. License information
License : Use of this file is subject to the terms of your agreement with SAP SE or its affiliates respecting the use of the SAP product for which this file relates.
Terms of service : null
1.3. URI scheme
Host : localhost:9001
BasePath : /cmssmarteditwebservices
1.4. Tags
-
catalogs : Catalog Controller
-
categories : Category Controller
-
inbox : Inbox Controller
-
page component types : Page Component Types Controller
-
page operations : Page Operations Controller
-
products : Product Controller
-
synchronizations : Synchronization Controller
-
workflows : Workflow Editable Items Controller
1.5. Produces
-
application/json
2. Paths
2.1. Retrieves component types.
GET /v1/catalogs/{catalogId}/versions/{versionId}/pages/{pageId}/types
2.1.1. Description
Retrieves the component types that can be added to a page.
2.1.2. Parameters
Type | Name | Description | Schema | Default |
---|---|---|---|---|
Path |
catalogId |
The catalog id |
string |
|
Path |
pageId |
The uid of the page for which to find its valid component types |
string |
|
Path |
versionId |
The uid of the catalog version |
string |
|
Query |
currentPage |
The requested page number |
string |
|
Query |
fields |
Response configuration (list of fields, which should be returned in response) |
enum (BASIC, DEFAULT, FULL) |
|
Query |
langIsoCode |
language ISO Code |
string |
|
Query |
mask |
Search mask applied to the type code and name fields, Uses partial matching |
string |
|
Query |
pageSize |
Page size for paging |
string |
|
Query |
readOnly |
Read only mode for attributes. Is only used if attributes are returned (FULL fields option is used) |
string |
|
Query |
sort |
string |
2.1.3. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
The dto containing the list of component types applicable to a page. The results are paged. |
|
400 |
If the given page cannot be found (CMSItemNotFoundException). |
No Content |
401 |
Must be authenticated as an Admin or CMS Manager to access this resource |
No Content |
2.1.4. Tags
-
page component types
2.1.5. Security
Type | Name |
---|---|
oauth2 |
|
oauth2 |
2.2. Retrieves the list of objects that tells whether a particular item is editable in any workflow or not
GET /v1/catalogs/{catalogId}/versions/{versionId}/workfloweditableitems
2.2.1. Description
Retrieves the list of objects that tells whether a particular item is editable in any workflow or not
2.2.2. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
catalogId |
The uid of the catalog |
string |
Path |
versionId |
The uid of the catalog version |
string |
Query |
itemUids |
List of item uids |
< string > array(multi) |
2.2.3. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
The dto containing the list of objects that tells whether a particular item is editable in any workflow or not. |
|
401 |
Must be authenticated as an Admin or CMS Manager to access this resource |
No Content |
404 |
When no cms item is found matching the given uid (UnknownIdentifierException). |
No Content |
2.2.4. Tags
-
workflows
2.2.5. Security
Type | Name |
---|---|
oauth2 |
|
oauth2 |
2.3. Retrieves all workflow tasks for the current user that are yet to be acted upon
GET /v1/inbox/workflowtasks
2.3.1. Description
Endpoint that retrieves all workflow tasks for the current user
2.3.2. Parameters
Type | Name | Description | Schema | Default |
---|---|---|---|---|
Query |
currentPage |
The requested page number |
string |
|
Query |
pageSize |
The maximum number of elements in the result list. |
string |
|
Query |
sort |
The string field the results will be sorted with |
string |
2.3.3. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
The dto containing the workflow tasks |
|
401 |
Must be authenticated as an Admin or CMS Manager to access this resource |
No Content |
2.3.4. Tags
-
inbox
2.3.5. Security
Type | Name |
---|---|
oauth2 |
|
oauth2 |
2.4. Find product categories by text or mask
GET /v1/productcatalogs/{catalogId}/versions/{versionId}/categories
2.4.1. Description
Endpoint to find product categories using a free text search field.
2.4.2. Parameters
Type | Name | Description | Schema | Default |
---|---|---|---|---|
Path |
catalogId |
The uid of the catalog |
string |
|
Path |
versionId |
The uid of the catalog version |
string |
|
Query |
currentPage |
The requested page number |
string |
|
Query |
langIsoCode |
The language iso code used to filter products |
string |
|
Query |
mask |
The string value on which products will be filtered if no text value is provided |
string |
|
Query |
pageSize |
The maximum number of elements in the result list. |
string |
|
Query |
sort |
The string field the results will be sorted with |
string |
|
Query |
text |
The string value on which products will be filtered |
string |
2.4.3. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
DTO which serves as a wrapper object that contains a list of CategoryData, never null |
|
400 |
Bad Request e.g. incorrect parameter value |
No Content |
401 |
Must be authenticated as an Admin or CMS Manager to access this resource |
No Content |
2.4.4. Tags
-
categories
2.4.5. Security
Type | Name |
---|---|
oauth2 |
|
oauth2 |
2.5. Find products by text or mask
GET /v1/productcatalogs/{catalogId}/versions/{versionId}/products
2.5.1. Description
Endpoint to retrieve products using a free text search field.
2.5.2. Parameters
Type | Name | Description | Schema | Default |
---|---|---|---|---|
Path |
catalogId |
The uid of the catalog |
string |
|
Path |
versionId |
The uid of the catalog version |
string |
|
Query |
currentPage |
The requested page number |
string |
|
Query |
langIsoCode |
The language iso code by which products will be filtered |
string |
|
Query |
mask |
The string value on which products will be filtered if no text value is provided |
string |
|
Query |
pageSize |
The maximum number of elements in the result list. |
string |
|
Query |
sort |
The string field the results will be sorted with |
string |
|
Query |
text |
The string value on which products will be filtered |
string |
2.5.3. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
DTO which serves as a wrapper object that contains a list of ProductData, never null |
|
401 |
Must be authenticated as an Admin or CMS Manager to access this resource |
No Content |
2.5.4. Tags
-
products
2.5.5. Security
Type | Name |
---|---|
oauth2 |
|
oauth2 |
2.6. Perform different operations on the page item.
POST /v1/sites/{baseSiteId}/catalogs/{catalogId}/pages/{pageId}/operations
2.6.1. Description
Endpoint to perform different operations on the page item such as delete a page etc.
2.6.2. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
baseSiteId |
Base site identifier |
string |
Path |
catalogId |
The uid of the catalog |
string |
Path |
pageId |
The uid of the page to be updated |
string |
Body |
dto |
The DTO object containing all the information about operation to be performed |
2.6.3. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
The page operation item. |
|
400 |
When the payload does not have the 'operation' property. (IllegalArgumentException) |
No Content |
401 |
Must be authenticated as an Admin or CMS Manager to access this resource |
No Content |
404 |
When the item has not been found (UnknownIdentifierException) |
No Content |
2.6.4. Consumes
-
application/json
2.6.5. Tags
-
page operations
2.6.6. Security
Type | Name |
---|---|
oauth2 |
|
oauth2 |
2.7. Perform synchronization
POST /v1/sites/{baseSiteId}/catalogs/{catalogId}/versions/{versionId}/synchronizations/versions/{targetCatalogVersion}
2.7.1. Description
Will perform synchronization status on a list of item identifier by their ItemSynchronizationWsDTO.
2.7.2. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
baseSiteId |
Base site identifier |
string |
Path |
catalogId |
The catalog uid |
string |
Path |
targetCatalogVersion |
The target catalog version from a synchronization perspective |
string |
Path |
versionId |
The source catalog version from a synchronization perspective |
string |
Body |
synchronizationWsDTO |
The SynchronizationWsDTO containing the list of requested synchronizations |
2.7.3. Responses
HTTP Code | Description | Schema |
---|---|---|
204 |
No Content |
No Content |
401 |
Must be authenticated as an Admin or CMS Manager to access this resource |
No Content |
2.7.4. Consumes
-
application/json
2.7.5. Tags
-
synchronizations
2.7.6. Security
Type | Name |
---|---|
oauth2 |
|
oauth2 |
2.8. Get synchronization status
GET /v1/sites/{baseSiteId}/catalogs/{catalogId}/versions/{versionId}/synchronizations/versions/{targetCatalogVersion}/pages/{pageId}
2.8.1. Description
Will build the synchronization status of a page including detailed status of its content slots and their cms components.
2.8.2. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
baseSiteId |
Base site identifier |
string |
Path |
catalogId |
The catalog uid |
string |
Path |
pageId |
The uid of the page from which to retrieve the synchronization status |
string |
Path |
targetCatalogVersion |
The target catalog version from a synchronization perspective |
string |
Path |
versionId |
The source catalog version from a synchronization perspective |
string |
2.8.3. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
DTO containing the complex synchronization status of the AbstractPageModel page |
|
401 |
Must be authenticated as an Admin or CMS Manager to access this resource |
No Content |
2.8.4. Tags
-
synchronizations
2.8.5. Security
Type | Name |
---|---|
oauth2 |
|
oauth2 |
2.9. Get category by code (uuid)
GET /v1/sites/{baseSiteId}/categories/{code}
2.9.1. Description
Endpoint to retrieve a category that matches the given product category code uuid.
2.9.2. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
baseSiteId |
Base site identifier |
string |
Path |
code |
Category code (uuid) |
string |
2.9.3. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
Category data |
|
400 |
When the item has not been found (CMSItemNotFoundException) or when there was problem during conversion (ConversionException). |
No Content |
401 |
Must be authenticated as an Admin or CMS Manager to access this resource |
No Content |
2.9.4. Tags
-
categories
2.9.5. Security
Type | Name |
---|---|
oauth2 |
|
oauth2 |
2.10. Get content catalogs
GET /v1/sites/{baseSiteId}/contentcatalogs
2.10.1. Description
Endpoint to retrieve content catalog information including the related catalog versions for all catalogs for a given site and its parents.
2.10.2. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
baseSiteId |
The site identifier |
string |
2.10.3. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
|
401 |
Must be authenticated as an Admin or CMS Manager to access this resource |
No Content |
2.10.4. Tags
-
catalogs
2.10.5. Security
Type | Name |
---|---|
oauth2 |
|
oauth2 |
2.11. Get product catalogs
GET /v1/sites/{baseSiteId}/productcatalogs
2.11.1. Description
Endpoint to retrieve product catalog information including the related catalog versions for all catalogs for a given site
2.11.2. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
baseSiteId |
The site identifier |
string |
2.11.3. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
OK |
|
401 |
Must be authenticated as an Admin or CMS Manager to access this resource |
No Content |
2.11.4. Tags
-
catalogs
2.11.5. Security
Type | Name |
---|---|
oauth2 |
|
oauth2 |
2.12. Get product by code (uuid)
GET /v1/sites/{baseSiteId}/products/{code}
2.12.1. Description
Endpoint to retrieve a product that matches the given product code uuid.
2.12.2. Parameters
Type | Name | Description | Schema |
---|---|---|---|
Path |
baseSiteId |
Base site identifier |
string |
Path |
code |
Product code (uuid) |
string |
2.12.3. Responses
HTTP Code | Description | Schema |
---|---|---|
200 |
Product data |
|
400 |
When the item has not been found (CMSItemNotFoundException) or when there was problem during conversion (ConversionException). |
No Content |
401 |
Must be authenticated as an Admin or CMS Manager to access this resource |
No Content |
2.12.4. Tags
-
products
2.12.5. Security
Type | Name |
---|---|
oauth2 |
|
oauth2 |
3. Definitions
3.1. AbstractPageWsDTO
Name | Schema |
---|---|
catalogVersionUuid |
string |
cloneComponents |
boolean |
creationtime |
string (date-time) |
defaultPage |
boolean |
modifiedtime |
string (date-time) |
name |
string |
onlyOneRestrictionMustApply |
boolean |
pk |
string |
restrictions |
< string > array |
template |
string |
title |
< string, string > map |
typeCode |
string |
uid |
string |
3.2. CMSComponentTypeListWsDTO
Name | Schema |
---|---|
componentTypes |
< ComponentTypeData > array |
pagination |
3.3. CMSPageOperationWsDTO
Name | Schema |
---|---|
catalogId |
string |
operation |
string |
sourceCatalogVersion |
string |
targetCatalogVersion |
string |
3.4. CMSWorkflowAction
Specifies properties of the CMS workflow action.
Name | Description | Schema |
---|---|---|
code |
Example : |
string |
description |
Example : |
< string, string > map |
isCurrentUserParticipant |
Example : |
boolean |
modifiedtime |
Example : |
string (date-time) |
name |
Example : |
< string, string > map |
startedAgoInMillis |
Example : |
integer (int64) |
status |
Example : |
string |
3.5. CMSWorkflowAttachmentData
Specifies properties of the CMS workflow attachment data.
Name | Description | Schema |
---|---|---|
catalogId |
Example : |
string |
catalogName |
Example : |
< string, string > map |
catalogVersion |
Example : |
string |
pageName |
Example : |
string |
pageUid |
Example : |
string |
3.6. CMSWorkflowEditableItemListWsDTO
Name | Schema |
---|---|
editableItems |
< CMSWorkflowEditableItemWsDTO > array |
3.7. CMSWorkflowEditableItemWsDTO
Contains information about whether the item from a workflow is editable by session user or not.
Name | Description | Schema |
---|---|---|
editableByUser |
Indicates whether the session user can edit the item from a workflow or not. |
boolean |
editableInWorkflow |
Contains the workflow code where item can be edited. It either contains the code of the oldest workflow that contains item or null if there is no workflow. Is used by SmartEdit ui to restrict user from editing an item in a workflow that is not the oldest one. |
string |
uid |
string |
|
uuid |
string |
3.8. CMSWorkflowTaskListWsDTO
Name | Schema |
---|---|
pagination |
|
tasks |
< CMSWorkflowTaskWsDTO > array |
3.9. CMSWorkflowTaskWsDTO
Name | Schema |
---|---|
action |
|
attachments |
< CMSWorkflowAttachmentData > array |
3.11. CategorySearchResultWsDTO
DTO which serves as a wrapper object that contains a list of CategoryData
Name | Schema |
---|---|
pagination |
|
productCategories |
< CategoryWsDTO > array |
3.12. CategoryWsDTO
Name | Schema |
---|---|
catalogId |
string |
catalogVersion |
string |
code |
string |
description |
< string, string > map |
name |
< string, string > map |
thumbnail |
|
uid |
string |
3.13. ComponentTypeAttributeData
Name | Schema |
---|---|
cmsStructureEnumType |
string |
cmsStructureType |
string |
collection |
boolean |
containedTypes |
< string > array |
dependsOn |
string |
editable |
boolean |
i18nKey |
string |
idAttribute |
string |
labelAttributes |
< string > array |
localized |
boolean |
options |
< OptionData > array |
paged |
boolean |
params |
< string, string > map |
placeholder |
string |
qualifier |
string |
required |
boolean |
subTypes |
< string, string > map |
uri |
string |
3.14. ComponentTypeData
Name | Schema |
---|---|
attributes |
< ComponentTypeAttributeData > array |
category |
string |
code |
string |
i18nKey |
string |
name |
string |
type |
string |
3.15. DisplayConditionData
Name | Schema |
---|---|
options |
< OptionData > array |
typecode |
string |
3.16. MediaWsDTO
Name | Schema |
---|---|
altText |
string |
catalogId |
string |
catalogVersion |
string |
code |
string |
description |
string |
downloadUrl |
string |
mime |
string |
url |
string |
3.17. OptionData
Name | Schema |
---|---|
id |
string |
label |
string |
3.18. ProductSearchResultWsDTO
Name | Schema |
---|---|
pagination |
|
products |
< ProductWsDTO > array |
3.19. ProductWsDTO
Name | Schema |
---|---|
catalogId |
string |
catalogVersion |
string |
code |
string |
description |
< string, string > map |
name |
< string, string > map |
thumbnail |
|
uid |
string |
3.20. SynchronizationWsDTO
Name | Schema |
---|---|
items |
< itemSynchronization > array |
3.21. catalog
Catalog DTO
Name | Schema |
---|---|
catalogId |
string |
name |
< string, string > map |
parents |
< catalogHierarchy > array |
sites |
< site > array |
versions |
< catalogVersion > array |
3.22. catalogHierarchy
Name | Schema |
---|---|
catalogId |
string |
catalogName |
< string, string > map |
sites |
< site > array |
versions |
< catalogVersion > array |
3.23. catalogVersion
Name | Schema |
---|---|
active |
boolean |
homepage |
|
pageDisplayConditions |
< DisplayConditionData > array |
thumbnailUrl |
string |
uuid |
string |
version |
string |
3.24. homepage
Name | Schema |
---|---|
current |
|
fallback |
|
old |
3.25. itemSynchronization
Name | Schema |
---|---|
itemId |
string |
itemType |
string |
3.26. itemType
Name | Schema |
---|---|
i18nKey |
string |
itemType |
string |
3.27. pagination
Pagination info
Name | Description | Schema |
---|---|---|
count |
Number of elements on this page |
integer (int32) |
hasNext |
Indicates if there is next page |
boolean |
hasPrevious |
Indicates if there is previous page |
boolean |
page |
Current page number |
integer (int32) |
totalCount |
Total number of elements |
integer (int64) |
totalPages |
Total number of pages |
integer (int32) |
3.28. site
Name | Schema |
---|---|
name |
< string, string > map |
uid |
string |
3.29. syncItemStatus
DTO that contains the complex synchronization status of the page
Name | Schema |
---|---|
catalogVersionUuid |
string |
dependentItemTypesOutOfSync |
< itemType > array |
itemId |
string |
itemType |
string |
lastModifiedDate |
integer (int64) |
lastSyncStatus |
integer (int64) |
name |
string |
selectedDependencies |
< syncItemStatus > array |
sharedDependencies |
< syncItemStatus > array |
status |
string |
unavailableDependencies |
< syncItemStatus > array |
4. Security
4.1. oauth2_client_credentials
Type : oauth2
Flow : application
Token URL : /authorizationserver/oauth/token
Name |
---|
extended |
4.2. oauth2_password
Type : oauth2
Flow : password
Token URL : /authorizationserver/oauth/token
Name |
---|
basic |