OMN Core API Reference
Introduction
The OMN Core API is a REST over HTTP-like API used to create integrations/interactions between OMN and other applications. It offers endpoints that cover the main OMN modules (DAM, PIM, CM, PEO etc.) to retrieve/manage (CRUDe) the module’s resources (data objects) like Assets, Versions, Variations, Directories, Products, Classifications, Projects, Keywords, Glossaries and more.
Covered Modules
The OMN Core API covers the following modules.
| Module / Component | Description | Links |
|---|---|---|
|
Common API provides access to common, cross-module OMN resources that are not part of one specific OMN main module. |
|
|
DAM API provides access to resources of the DAM module and is used to manage and structure digital assets. |
|
|
PIM API provides access to resources of the PIM module. PIM is an abbreviation for Product Information Management. It refers to the management of all product-defining information and its provision for use in output channels. In addition to the classic product master data (item price, technical specifications, etc.), this information also includes advertising texts and associated image material. The supporting technology is called PIM system. |
|
|
DAM API provides access to resources of the CM module and is used to manage (sales) channels. |
|
|
DAM API provides access to PEO resources. PEO is an abbreviation for "Product Export Option". This refers to filters on articles or products of the OMN, e.g. to be able to define different prices or texts for an advertising material or for a web shop. |
Common API
Common API provides access to common, cross-module OMN resources that are not part of one specific OMN main module.
Main resources:
| Resource | Description |
|---|---|
Locale |
Set of parameters that define language and country/region codes and also locale configuration information and meta-data. |
Keyword |
Keywords are used to organize OMN resources in a virtual tree structure to enable users to navigate through these trees to find related resources (Keyword navigation). |
Glossary |
Glossaries represent list of terms in a particular context. A Glossary contains a name, languages, meta-data, numbers of terms/entries/sentences. |
Glossary Entries |
Represent concrete localized entries in a Glossary. |
Message |
Messages represent sent text messages. They can be written as well as retrieved. The user can receive messages from other users as well as notifications from the system, such as notifications about uploads. They can be managed via the Core API or in the UI via Message Client. |
Link |
Links represent references between OMN resources. |
Transform API
Provides the transformation between all supported API formats e.g. XML, JSON and compact JSON
Formats Transformation
Transformation between different API formats
Description
We currently support different API formats, e.g. XML, JSON, Compact JSON. This endpoint could transform them from any source format to target format. It helps the users to understand/compare the different formats easily.
|
It only supports the transformation for OmnType data. |
Resource path |
/api/core/v1/common/transform |
HTTP method |
POST |
Request content type |
|
Response content type |
|
Body Parameter
Accept one of the supported format (XML, JSON or Compact JSON) which has the data type OmnType.
Use HTTP header Content-Type to specify your source format.
| Name | Description | Required | Default | Pattern |
|---|---|---|---|---|
OmnType |
X |
Return Type
Return the expected format which has the same type OmnType.
Use HTTP header Accept to specify your expect target format.
Responses
| Code | Message | Datatype |
|---|---|---|
200 |
Responses for each message |
|
400 |
Bad request. Indicates an issue with the format of the request (missing required value or a wrong data type) |
Samples
Transform XML format to compact or default JSON
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/common/transform' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/xml' \
--header 'Accept: application/json+compact' \
--data-raw '<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageMode">delta</itm>
<itm key="messageTime">2019-09-17T11:32:08.022Z</itm>
<itm key="sourceEnv">customer-prod</itm>
<itm key="productImportPreProcessor">customerProductImportPreProcessor</itm>
<itm key="productImportPostProcessor">customerProductImportPostProcessor</itm>
<itm key="projectImportPostProcessor">defaultProjectImportPostProcessor</itm>
</meta>
</pim>'
(Content-Type Header: application/xml)
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageMode">delta</itm>
<itm key="messageTime">2019-09-17T11:32:08.022Z</itm>
<itm key="sourceEnv">customer-prod</itm>
<itm key="productImportPreProcessor">customerProductImportPreProcessor</itm>
<itm key="productImportPostProcessor">customerProductImportPostProcessor</itm>
<itm key="projectImportPostProcessor">defaultProjectImportPostProcessor</itm>
</meta>
</pim>
{
"meta": {
"messageType": "request",
"messageMode": "delta",
"messageTime": "2019-09-17T11:32:08.022Z",
"sourceEnv": "customer-prod",
"productImportPreProcessor": "customerProductImportPreProcessor",
"productImportPostProcessor": "customerProductImportPostProcessor",
"projectImportPostProcessor": "defaultProjectImportPostProcessor"
},
"schemaVersion": "5.6.0"
}
{
"meta": {
"itm": [
{
"key": "messageType",
"value": "request"
},
{
"key": "messageMode",
"value": "delta"
},
{
"key": "messageTime",
"value": "2019-09-17T11:32:08.022Z"
},
{
"key": "sourceEnv",
"value": "customer-prod"
},
{
"key": "productImportPreProcessor",
"value": "customerProductImportPreProcessor"
},
{
"key": "productImportPostProcessor",
"value": "customerProductImportPostProcessor"
},
{
"key": "projectImportPostProcessor",
"value": "defaultProjectImportPostProcessor"
}
]
},
"schemaVersion": "5.6.0"
}
Locales API
Provides operations on OMN locales.
Retrieve locales
| /common/locales/retrieve Returns locales by mode, ids or identifiers |
Resource path |
/api/core/v1/common/locales/retrieve |
HTTP method |
POST |
Request content type |
application/json |
Response content type |
|
Body parameters
Specified by LocaleRequest
-
ids - (List of type Integer) - a list of locale ids which should be returned; (Optional)
-
tids - (List of type String) - a list of locale tids which should be returned; (Optional)
-
mode - a specified mode of languages loading. The following values are here: (Required)
-
ID - locales for the given ids should be loaded;
-
TID - locales for the given identifiers should be loaded;
-
ALL - a list of all locales should be loaded;
-
CONTENT - a list of content locales should be loaded;
-
FRONTEND - a list of frontend locales should be loaded
-
-
exportConfig - (true|false) - whether the "config" information (tag) should be returned. By default, it is false; (Optional)
If "ids" parameter is set then the "mode" must be "ID" - it is required;
If "tids" parameter is set then the "mode" must be "TID" - it is required;
Return Type
PimType with filled LocalesType
Samples
| Please use transform endpoint to get the JSON/compact-JSON samples from the XML one. |
| Use-case | Request body JSON |
|---|---|
Get a list of all locales |
|
Get a list of specific locales by ids |
|
Get a list of specific locales by identifiers |
|
Get all content languages |
|
Get all frontend languages |
|
Get a list of the specified locales with config information |
|
Get a list of all locales with configuration
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/common/locales/retrieve' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json' \
--data-raw '{
"mode": "ALL",
"exportConfig": true
}'
{
"mode": "ALL",
"exportConfig": true
}
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<locales mode="delta">
<locale country="EN" id="6000" language="en" name="English" tid="en_EN">
<config>
<itms mode="delta" type="dateFormat">
<itm key="customDateFormatsEnabled">false</itm>
</itms>
</config>
<meta>
<itm key="contentLocale">true</itm>
<itm key="defaultContentLocale">true</itm>
<itm key="defaultFrontendLocale">false</itm>
<itm key="frontendLocale">true</itm>
</meta>
</locale>
<locale country="DE" id="6003" language="de" name="German" tid="de_DE">
<config>
<itms mode="delta" type="dateFormat">
<itm key="customDateFormatsEnabled">false</itm>
</itms>
</config>
<meta>
<itm key="contentLocale">true</itm>
<itm key="defaultContentLocale">false</itm>
<itm key="defaultFrontendLocale">true</itm>
<itm key="frontendLocale">true</itm>
</meta>
</locale>
</locales>
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-12-19T07:17:57.303Z</itm>
<itm key="sourceEnv">dev</itm>
<itm key="itemInformationType">locale</itm>
</meta>
</pim>
Get a list of specific locales
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/common/locales/retrieve' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json' \
--data-raw '{
"tids": ["en_EN"],
"mode": "TID",
"exportConfig": true
}'
{
"tids": ["en_EN"],
"mode": "TID"
}
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<locales mode="delta">
<locale country="EN" id="6000" language="en" name="English" tid="en_EN">
<meta>
<itm key="contentLocale">true</itm>
<itm key="defaultContentLocale">true</itm>
<itm key="defaultFrontendLocale">false</itm>
<itm key="frontendLocale">true</itm>
</meta>
</locale>
</locales>
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-12-19T07:23:29.494Z</itm>
<itm key="sourceEnv">pddevelop_test</itm>
<itm key="itemInformationType">locale</itm>
</meta>
</pim>
Keywords API
Provides operations on OMN keywords.
Retrieve keywords
| /common/keywords/retrieve Returns keywords by specified path. |
Resource path |
/api/core/v1/common/keywords/retrieve |
HTTP method |
POST |
Request content type |
application/json |
Response content type |
|
Body parameters
Specified by KeywordRequest
-
path - (String) - Keyword path
-
level - (Integer) - It defines how many level should be loaded. Default value is 1. -1 means to load all levels. 0 is invalid value
-
retrieveLinks - (true|false) - It defines whether linked to keyword items should be retrieved or not By default, it is false; (Optional)
Return Type
OmnType with filled KeywordsType
Responses
| Code | Message | Datatype |
|---|---|---|
200 |
OmnType with list of keywords |
|
400 |
Invalid input provided |
|
404 |
The requested resource could not be found |
|
500 |
An unknown internal error occurred |
Samples
| Please use transform endpoint to get the JSON/compact-JSON samples from the XML one. |
Get a list of all keywords
{
"path": "/",
"level": -1
}
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-11-29T21:55:49.197Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<kwds>
<kwd id="46190" path="/rootKwd">
<name>
<itm>rootKwd</itm>
<itm loc="en_EN">rootKwd_en</itm>
</name>
<meta>
<itm key="creationDate">2022-06-10T20:07:45.684Z</itm>
<itm key="orderNumber">0</itm>
</meta>
</kwd>
<kwd id="57210" path="/root2">
<name>
<itm>root2</itm>
</name>
<meta>
<itm key="creationDate">2022-07-14T20:05:17.534Z</itm>
<itm key="orderNumber">0</itm>
</meta>
</kwd>
</kwds>
</pim>
Get a list of child keywords for the specified keyword
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/common/keywords/retrieve' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json' \
--data-raw '{
"path": "/rootKwd",
"level": 1
}'
{
"path": "/rootKwd",
"level": 1
}
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-11-29T21:56:42.688Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<kwds>
<kwd id="46190" path="/rootKwd">
<name>
<itm>rootKwd</itm>
<itm loc="en_EN">rootKwd_en</itm>
</name>
<meta>
<itm key="creationDate">2022-06-10T20:07:45.684Z</itm>
<itm key="orderNumber">0</itm>
</meta>
</kwd>
</kwds>
</pim>
Get a list of keywords with linked assets
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/common/keywords/retrieve' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json' \
--data-raw '{
"path": "/rootKwd",
"level": 2,
"retrieveLinks": true
}'
{
"path": "/rootKwd",
"level": 2,
"retrieveLinks": true
}
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-11-29T21:57:37.832Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<kwds>
<kwd id="46190" path="/rootKwd">
<name>
<itm>rootKwd</itm>
<itm loc="en_EN">rootKwd_en</itm>
</name>
<meta>
<itm key="creationDate">2022-06-10T20:07:45.684Z</itm>
<itm key="orderNumber">0</itm>
</meta>
<links>
<itms type="asset">
<itm>C150E62E-F9F5-4DF5-B5FB-5AFDC5A3B87C</itm>
<itm>0CA65815-03DF-40CA-ACCD-309882B74A36</itm>
</itms>
</links>
</kwd>
<kwd id="46191"
parentId="46190"
path="/rootKwd/subKwd"
parentPath="/rootKwd">
<name>
<itm>subKwd</itm>
</name>
<meta>
<itm key="creationDate">2022-06-10T20:08:13.339Z</itm>
<itm key="orderNumber">1</itm>
<itm key="parent">rootKwd</itm>
</meta>
<links>
<itms type="asset">
<itm>C150E62E-F9F5-4DF5-B5FB-5AFDC5A3B87C</itm>
</itms>
</links>
</kwd>
</kwds>
</pim>
Persist keywords
| /common/keywords/persist Create or update the keywords |
Resource path |
/api/core/v1/common/keywords/persist |
HTTP method |
POST |
Request content type |
|
Response content type |
|
Body parameters
PimType with filled KeywordsType
Return Type
PimType with filled ResponsesType
Responses
| Code | Message | Datatype |
|---|---|---|
200 |
PimType with list of successful or error ResponseTypes |
|
400 |
Invalid input provided |
|
500 |
An unknown internal error occurred |
Samples
| Please use transform endpoint to get the JSON/compact-JSON samples from the XML one. |
Create a root Keyword
Create without specifying path
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/common/keywords/persist' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/xml' \
--data-raw '<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<kwds>
<kwd>
<name>
<itm>rootKeyword</itm>
<itm loc="en_GB">rootKeyword-en</itm>
<itm loc="de_DE">rootKeyword-de</itm>
</name>
</kwd>
</kwds>
</pim>'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<kwds>
<kwd>
<name>
<itm>rootKeyword</itm>
<itm loc="en_GB">rootKeyword-en</itm>
<itm loc="de_DE">rootKeyword-de</itm>
</name>
</kwd>
</kwds>
</pim>
Create with specifying path
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/common/keywords/persist' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/xml' \
--data-raw '<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<kwds>
<kwd parentPath="/">
<name>
<itm>rootKeyword</itm>
<itm loc="en_GB">rootKeyword-en</itm>
<itm loc="de_DE">rootKeyword-de</itm>
</name>
</kwd>
</kwds>
</pim>'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<kwds>
<kwd parentPath="/">
<name>
<itm>rootKeyword</itm>
<itm loc="en_GB">rootKeyword-en</itm>
<itm loc="de_DE">rootKeyword-de</itm>
</name>
</kwd>
</kwds>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-07-06T11:42:19.832Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="keyword" id="52731" action="create" path="/rootKeyword">
<status>SUCCESS</status>
<description>The keyword has been created successfully</description>
</response>
</responses>
</pim>
Create a sub Keyword
Create under specified path
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/common/keywords/persist' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/xml' \
--data-raw '<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<kwds>
<kwd parentPath="/rootKeyword">
<name>
<itm>keyword1</itm>
<itm loc="en_GB">keyword1-en</itm>
<itm loc="de_DE">keyword1-de</itm>
</name>
</kwd>
</kwds>
</pim>'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<kwds>
<kwd parentPath="/rootKeyword">
<name>
<itm>keyword1</itm>
<itm loc="en_GB">keyword1-en</itm>
<itm loc="de_DE">keyword1-de</itm>
</name>
</kwd>
</kwds>
</pim>
Create under specified parent keyword
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/common/keywords/persist' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/xml' \
--data-raw '<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<kwds>
<kwd parentId="12345">
<name>
<itm>keyword1</itm>
<itm loc="en_GB">keyword1-en</itm>
<itm loc="de_DE">keyword1-de</itm>
</name>
</kwd>
</kwds>
</pim>'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<kwds>
<kwd parentId="12345">
<name>
<itm>keyword1</itm>
<itm loc="en_GB">keyword1-en</itm>
<itm loc="de_DE">keyword1-de</itm>
</name>
</kwd>
</kwds>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-07-06T11:39:54.776Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="keyword"
id="52730"
action="create"
path="/rootKeyword/keyword1">
<status>SUCCESS</status>
<description>The keyword has been created successfully</description>
</response>
</responses>
</pim>
Update a Keyword
Update by id
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/common/keywords/persist' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/xml' \
--data-raw '<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<kwds>
<kwd parentId="12345">
<name>
<itm>keyword1</itm>
<itm loc="en_GB">keyword1-en</itm>
<itm loc="de_DE">keyword1-de</itm>
</name>
</kwd>
</kwds>
</pim>'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<kwds>
<kwd id="12345">
<name>
<itm>keyword1</itm>
<itm loc="en_GB">new-name-en</itm>
<itm loc="de_DE">new-name-de</itm>
</name>
</kwd>
</kwds>
</pim>
Update by path
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/common/keywords/persist' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/xml' \
--data-raw '<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<kwds>
<kwd path="/kwd1/kwd11">
<name>
<itm>kwd11</itm>
<itm loc="en_GB">new-name-en</itm>
<itm loc="de_DE">new-name-de</itm>
</name>
</kwd>
</kwds>
</pim>'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<kwds>
<kwd path="/kwd1/kwd11">
<name>
<itm>kwd11</itm>
<itm loc="en_GB">new-name-en</itm>
<itm loc="de_DE">new-name-de</itm>
</name>
</kwd>
</kwds>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-14T14:34:40.177Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="keyword" id="12345" path="/rootKeyword/new-name-en" action="update">
<status>SUCCESS</status>
<description>The keyword has been saved successfully</description>
</response>
</responses>
</pim>
Error responses
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-07-06T11:45:41.247Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="keyword" id="12345" action="update">
<status>ERROR</status>
<description>Entity class com.meylemueller.obj.isy.KeywordEntity with identity=111 not found</description>
</response>
</responses>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-07-06T11:49:25.214Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="keyword" action="update" path="/rootKeyword">
<status>ERROR</status>
<description>No keyword by path '/rootKeyword'</description>
</response>
</responses>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-07-06T11:50:01.107Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="keyword" id="39400" action="update" path="/Root">
<status>ERROR</status>
<description>The keyword is not available by access rights</description>
</response>
</responses>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-07-06T11:50:27.170Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="keyword" action="create" path="/Root">
<status>ERROR</status>
<description>Parent keyword is not available by access rights</description>
</response>
</responses>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-07-06T11:51:21.269Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="keyword" action="create">
<status>ERROR</status>
<description>Keyword value 'child2-1' for language 'de_DE' is duplicated. Unique keyword values under one parent should be provided</description>
</response>
</responses>
</pim>
Perform keywords
| /common/keywords/perform Perform actions of the specific type on keywords |
Resource path |
/api/core/v1/common/keywords/perform |
HTTP method |
POST |
Request content type |
|
Response content type |
|
Body parameters
PimType with filled ActionsType
-
Provided ActionTypes must have the following fields:
-
Data type: keyword;
-
ID or path of keyword;
-
Action type: delete, move, etc.
-
Return Type
PimType with filled ResponsesType
Responses
| Code | Message | Datatype |
|---|---|---|
200 |
PimType with list of successful or error ResponseTypes |
|
400 |
Invalid input provided |
|
500 |
An unknown internal error occurred |
Samples
| Please use transform endpoint to get the JSON/compact-JSON samples from the XML one. |
Delete keyword
Delete by id
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/common/keywords/perform' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/xml' \
--data-raw '<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<actions>
<action dataType="keyword" id="73452957" type="delete"/>
</actions>
</pim>'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<actions>
<action dataType="keyword" id="73452957" type="delete"/>
</actions>
</pim>
Delete by path
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/common/keywords/perform' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/xml' \
--data-raw '<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<actions>
<action dataType="keyword" path="/rootKeyword/keyword1" type="delete"/>
</actions>
</pim>'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<actions>
<action dataType="keyword" path="/rootKeyword/keyword1" type="delete"/>
</actions>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-04T13:24:53.286Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="keyword"
id="73452957"
path="/rootKeyword/keyword1"
action="delete">
<status>SUCCESS</status>
<description>The keyword has been deleted successfully</description>
</response>
</responses>
</pim>
Move keyword to another parent
Move by id
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/common/keywords/perform' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/xml' \
--data-raw '<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<actions>
<action dataType="keyword" id="73452957" type="move">
<meta>
<itm key="destinationKwdId">73452957</itm>
</meta>
</action>
</actions>
</pim>'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<actions>
<action dataType="keyword" id="73452957" type="move">
<meta>
<itm key="destinationKwdId">73452957</itm>
</meta>
</action>
</actions>
</pim>
Move by path
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/common/keywords/perform' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/xml' \
--data-raw '<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<actions>
<action dataType="keyword" path="/rootKeyword2/keyword1" type="move">
<meta>
<itm key="destinationKwdPath">/rootKeyword</itm>
</meta>
</action>
</actions>
</pim>'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<actions>
<action dataType="keyword" path="/rootKeyword2/keyword1" type="move">
<meta>
<itm key="destinationKwdPath">/rootKeyword</itm>
</meta>
</action>
</actions>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-08-17T10:54:57.295Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="keyword"
id="73452957"
path="/rootKeyword/keyword1"
action="move">
<status>SUCCESS</status>
<description>keyword has been moved</description>
</response>
</responses>
</pim>
Error responses
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-04T13:36:54.983Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="keyword"
id="73452957"
path="/rootKeyword/keyword1"
action="delete">
<status>ERROR</status>
<description>There is no keyword with the given id</description>
</response>
</responses>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-08-17T10:54:57.295Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="keyword"
id="73452957"
path="/rootKeyword/keyword1"
action="move">
<status>ERROR</status>
<description>Error during moving: No access to destination object '/rootKeyword/keyword1'</description>
</response>
</responses>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-08-17T11:06:29.771Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="keyword"
id="73452957"
path="/rootKeyword/keyword1"
action="move">
<status>ERROR</status>
<description>Error during moving: No access to source objects</description>
</response>
</responses>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-04T13:38:16.444Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="keyword"
id="73452957"
path="/rootKeyword/keyword1"
action="delete">
<status>ERROR</status>
<description>The data type of the passed item is wrong. It must be 'keyword'</description>
</response>
</responses>
</pim>
Glossaries API
Provides operations on OMN glossaries.
Retrieve glossaries
| /common/glossaries/retrieve Retrieve a list of glossaries by specified params. |
Resource path |
/api/core/v1/common/glossaries/retrieve |
HTTP method |
POST |
Request content type |
application/json |
Response content type |
|
Body parameters
Specified by GlossaryRequest
-
names - (List of type String) - The names of the glossaries to retrieve;
-
ids - (List of type Integer) - The ids of the glossaries to retrieve;
-
retrieveLinks - (true|false) - It defines whether the contained entries (terms and sentences) should be included in the response. By default, it is false; (Optional)
-
sourceLocales - (List of type String) - Limits the source languages to the specified list of locales. Default: empty array which means all languages;
-
targetLocales - (List of type String) - Limits the target languages to the specified list of locales. Default: empty array which means all languages;
Return Type
OmnType with filled GlossariesType
Responses
| Code | Message | Datatype |
|---|---|---|
200 |
OmnType with list of keywords |
|
400 |
Invalid input provided |
|
500 |
An unknown internal error occurred |
Samples
| Please use transform endpoint to get the JSON/compact-JSON samples from the XML one. |
Retrieve all glossaries
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/common/glossaries/retrieve' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json' \
--data-raw '{
}'
{
}
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-08-30T07:20:18.420Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<glossaries>
<glossary id="0">
<meta>
<itm key="creationDate">1970-01-20T05:27:05.461Z</itm>
<itm key="creationUser">system</itm>
<itm key="getNumberOfTerms">0</itm>
<itm key="modificationDate">1970-01-20T05:27:05.461Z</itm>
<itm key="modificationUser">system</itm>
<itm key="numberOfSentences">0</itm>
</meta>
<name>Default</name>
</glossary>
...
<glossary id="180350">
<meta>
<itm key="creationDate">1970-01-20T05:27:05.461Z</itm>
<itm key="creationUser">system</itm>
<itm key="getNumberOfTerms">4</itm>
<itm key="modificationDate">1970-01-20T05:27:05.461Z</itm>
<itm key="modificationUser">system</itm>
<itm key="numberOfAllEntries">8</itm>
<itm key="numberOfSentences">4</itm>
</meta>
<name>Latest Glossary</name>
<vals>
<val attr="CUSTOM_DATE_ATTRIBUTE">
<itm>2022-08-24T02:37:38.000Z</itm>
</val>
<val attr="CUSTOM_BOOLEAN_ATTRIBUTE">
<itm>false</itm>
</val>
</vals>
</glossary>
</glossaries>
</pim>
Retrieve specific Glossary with entries, target links embedded and filter source- and target-languages
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/common/glossaries/retrieve' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json' \
--data-raw '{
"names": [
"Latest Glossary"
],
"retrieveEntries": true,
"sourceLocales": [
"de_DE"
],
"targetLocales": [
"en_EN",
"fr_FR"
]
}'
{
"names": [
"Latest Glossary"
],
"retrieveEntries": true,
"sourceLocales": [
"de_DE"
],
"targetLocales": [
"en_EN",
"fr_FR"
]
}
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-08-30T09:13:17.366Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<glossaries>
<glossary id="180350">
<meta>
<itm key="creationDate">1970-01-20T05:27:05.461Z</itm>
<itm key="creationUser">system</itm>
<itm key="getNumberOfTerms">4</itm>
<itm key="modificationDate">1970-01-20T05:27:05.461Z</itm>
<itm key="modificationUser">system</itm>
<itm key="numberOfAllEntries">8</itm>
<itm key="numberOfSentences">4</itm>
</meta>
<name>Latest Glossary</name>
<vals>
<val attr="CUSTOM_DATE_ATTRIBUTE">
<itm>2022-08-24T02:37:38.000Z</itm>
</val>
<val attr="CUSTOM_BOOLEAN_ATTRIBUTE">
<itm>false</itm>
</val>
</vals>
</glossary>
</glossaries>
<glossaryEntries>
<glossaryEntry id="185852" parentId="180350" loc="de_DE" type="term">
<meta>
<itm key="value" loc="de_DE">de</itm>
<itm key="lastEditedUsername">admin</itm>
<itm key="lastEditedDate">2022-08-15T00:00:00.000Z</itm>
</meta>
<links>
<itms id="185850" loc="en_EN" type="term">
<itm key="similarity">100</itm>
<itm key="forbidden">true</itm>
<itm key="value" loc="en_EN">en</itm>
<itm key="lastEditedUsername">admin</itm>
<itm key="lastEditedDate">2022-08-15T00:00:00.000Z</itm>
</itms>
<itms id="185851" loc="fr_FR" type="term">
<itm key="similarity">100</itm>
<itm key="forbidden">true</itm>
<itm key="value" loc="fr_FR">fr</itm>
<itm key="lastEditedUsername">admin</itm>
<itm key="lastEditedDate">2022-08-15T00:00:00.000Z</itm>
</itms>
</links>
</entry>
</glossaryEntries>
</pim>
Persist glossaries
| /common/glossaries/persist Create or update the glossaries |
Resource path |
/api/core/v1/common/glossaries/persist |
HTTP method |
POST |
Request content type |
|
Response content type |
|
Body parameters
OmnType with filled GlossariesType
Return Type
OmnType with filled ResponsesType
Responses
| Code | Message | Datatype |
|---|---|---|
200 |
OmnType with list of ResponseTypes |
|
400 |
Invalid input provided |
|
404 |
The requested resource could not be found |
|
500 |
An unknown internal error occurred |
Samples
| Please use transform endpoint to get the JSON/compact-JSON samples from the XML one. |
Create glossary
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/common/glossaries/persist' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/xml' \
--data-raw '<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<glossaries>
<glossary>
<name>Default</name>
<meta>
<itm key="multipleTranslations">true</itm>
</meta>
</glossary>
</glossaries>
</pim>'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<glossaries>
<glossary>
<name>Default</name>
<meta>
<itm key="multipleTranslations">true</itm>
</meta>
</glossary>
</glossaries>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-14T14:34:40.177Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response action="create" dataType="glossary" id="2380740">
<description>The glossary has been created successfully</description>
<status>SUCCESS</status>
</response>
</responses>
</pim>
Update glossary
Update glossary by ID
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/common/glossaries/persist' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/xml' \
--data-raw '<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<glossaries>
<glossary id="180350">
<name>New glossary name</name>
<vals>
<val attr="STRING_PROP_TO_EDIT">
<itm>new value</itm>
</val>
</vals>
</glossary>
</glossaries>
</pim>'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<glossaries>
<glossary id="180350">
<name>New glossary name</name>
<vals>
<val attr="STRING_PROP_TO_EDIT">
<itm>new value</itm>
</val>
</vals>
</glossary>
</glossaries>
</pim>
Update glossary by TID
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/common/glossaries/persist' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/xml' \
--data-raw '<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<glossaries>
<glossary tid="56948c33-29bc-46d1-be81-6fd9452d910f">
<vals>
<val attr="NUM_PROP_TO_EDIT">
<itm>1234</itm>
</val>
</vals>
</glossary>
</glossaries>
</pim>'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<glossaries>
<glossary tid="56948c33-29bc-46d1-be81-6fd9452d910f">
<vals>
<val attr="NUM_PROP_TO_EDIT">
<itm>1234</itm>
</val>
</vals>
</glossary>
</glossaries>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-14T14:34:40.177Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="glossary" id="180350" action="update">
<status>SUCCESS</status>
<description>The glossary has been updated successfully</description>
</response>
</responses>
</pim>
Error responses
<?xml version="1.0" encoding="UTF-8"?>
<response xmlns="http://www.apollon.de/omn">
<details>
<itm key="supportId">3C5D451A-91D9-437F-8477-03A232C13527</itm>
</details>
<issues>
<itm key="code">1000</itm>
<itm key="description">An unknown internal error occurred</itm>
<itms type="details">
<itm key="errorMessage">Unable to create the glossary: glossary with name 'Default' already exists.</itm>
</itms>
</issues>
<status>ERROR</status>
</response>
Delete glossaries
| /common/glossaries/perform Delete Glossaries Custom Attributes |
Resource path |
/api/core/v1/common/glossaries/perform |
HTTP method |
POST |
Request content type |
|
Response content type |
|
Body parameters
[OmnType] with [GlossariesType] with filled [ValuesType]
Return Type
[OmnType] with filled [ResponsesType]
Responses
| Code | Message | Datatype |
|---|---|---|
200 |
[OmnType] with list of [ResponseType]s |
|
400 |
Invalid input provided |
|
401 |
Not authorized |
|
404 |
The requested resource could not be found |
|
500 |
An unknown internal error occurred |
Samples
| Please use transform endpoint to get the JSON/compact-JSON samples from the XML one. |
Delete glossary attribute by glossary ID
curl --location -g --request POST 'https://<OMN_SERVER>/common/glossaries/perform' \
--header 'Content-Type: application/xml' \
--data-raw '<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-08T12:54:32.990Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<actions>
<action dataType="glossary" id="37272" type="delete"/>
</actions>
</pim>'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-08T12:54:32.990Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<actions>
<action dataType="glossary" id="123" type="delete"/>
</actions>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-08-15T13:37:04.635Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="glossary" id="123" action="delete">
<status>SUCCESS</status>
<description>Glossary has been deleted.</description>
</response>
</responses>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-08-15T13:37:53.018Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="glossary" action="delete" id="123">
<status>ERROR</status>
<description>The glossary with id "123" does not exist.</description>
</response>
</responses>
</pim>
Glossary entries API
Provides operations on OMN glossary entries.
Persist glossary entries
| /common/glossaryEntries/persist Create or update the glossary entries |
Resource path |
/api/core/v1/common/glossaryEntries/persist |
HTTP method |
POST |
Request content type |
|
Response content type |
|
Body parameters
PimType with filled GlossaryEntriesType
Return Type
PimType with filled ResponsesType
Responses
| Code | Message | Datatype |
|---|---|---|
200 |
PimType with list of ResponseTypes |
|
400 |
Invalid input provided |
|
404 |
The requested resource could not be found |
|
500 |
An unknown internal error occurred |
Samples
| Please use transform endpoint to get the JSON/compact-JSON samples from the XML one. |
Create glossary entry
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/common/glossaryEntries/persist' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/xml' \
--data-raw '<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<glossaryEntries>
<glossaryEntry parentId="41550" loc="de_DE" type="term">
<meta>
<itm key="value" loc="de_DE">T DE 1</itm>
<itm key="forbidden">false</itm>
<itm key="lastEditedUsername">admin</itm>
<itm key="lastEditedDate">2022-12-14T03:00:00.000+03:00</itm>
</meta>
<links>
<itms loc="en_EN" mode="delta" type="term">
<itm key="similarity">100</itm>
<itm key="value" loc="en_EN">T EN 1</itm>
<itm key="forbidden">false</itm>
<itm key="lastEditedUsername">admin</itm>
<itm key="lastEditedDate">2022-12-14T03:00:00.000+03:00</itm>
</itms>
</links>
</glossaryEntry>
</glossaryEntries>
</pim>'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<glossaryEntries>
<glossaryEntry parentId="41550" loc="de_DE" type="term">
<meta>
<itm key="value" loc="de_DE">T DE 1</itm>
<itm key="forbidden">false</itm>
<itm key="lastEditedUsername">admin</itm>
<itm key="lastEditedDate">2022-12-14T03:00:00.000+03:00</itm>
</meta>
<links>
<itms loc="en_EN" mode="delta" type="term">
<itm key="similarity">100</itm>
<itm key="value" loc="en_EN">T EN 1</itm>
<itm key="forbidden">false</itm>
<itm key="lastEditedUsername">admin</itm>
<itm key="lastEditedDate">2022-12-14T03:00:00.000+03:00</itm>
</itms>
</links>
</glossaryEntry>
</glossaryEntries>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-07-06T11:42:19.832Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response action="create" dataType="glossaryEntry" tid="56948c33-29bc-46d1-be81-6fd9452d910f">
<description>The glossary entry has been created successfully</description>
<status>SUCCESS</status>
</response>
</responses>
</pim>
Update glossary entry
Update by ID
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/common/glossaryEntries/persist' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/xml' \
--data-raw '<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<glossaryEntries>
<glossaryEntry id="29638" parentId="99" loc="de_DE" type="term">
<meta>
<itm key="value" loc="de_DE">T DE 1 updated</itm>
</meta>
</glossaryEntry>
</glossaryEntires>
</pim>'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<glossaryEntries>
<glossaryEntry id="29638" parentId="99" loc="de_DE" type="term">
<meta>
<itm key="value" loc="de_DE">T DE 1 updated</itm>
</meta>
</glossaryEntry>
</glossaryEntries>
</pim>
Update by TID
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/common/glossaryEntries/persist' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/xml' \
--data-raw '<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<glossaryEntries>
<glossaryEntry tid="3C5D451A-91D9-437F-8477-03A232C13527" parentTid="D870FF6D-BDF9-41D3-944D-67A8296BD095" loc="de_DE" type="term">
<meta>
<itm key="value" loc="de_DE">T DE 1 updated</itm>
</meta>
</glossaryEntry>
</glossaryEntires>
</pim>'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<glossaryEntries>
<glossaryEntry tid="3C5D451A-91D9-437F-8477-03A232C13527" parentTid="D870FF6D-BDF9-41D3-944D-67A8296BD095" loc="de_DE" type="term">
<meta>
<itm key="value" loc="de_DE">T DE 1 updated</itm>
</meta>
</glossaryEntry>
</glossaryEntires>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-14T14:34:40.177Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response action="update" dataType="glossaryEntry" id="29638">
<description>The glossary entry has been updated successfully</description>
<status>SUCCESS</status>
</response>
</responses>
</pim>
Error responses
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-07-06T11:45:41.247Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="glossaryEntry" id="29638">
<description>Unknown translation entry type 'sentenc'</description>
<status>ERROR</status>
</response>
</responses>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-07-06T11:45:41.247Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="glossaryEntry" id="29638">
<description>Sentence with identity '29638' not found.</description>
<status>ERROR</status>
</response>
</responses>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-07-06T11:45:41.247Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="glossaryEntry" tid="56948c33-29bc-46d1-be81-6fd9452d910f">
<description>Glossary entry '56948c33-29bc-46d1-be81-6fd9452d910f' does not contain a link to glossary.</description>
<status>ERROR</status>
</response>
</responses>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-08-17T10:54:57.295Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="glossaryEntry" id="25246">
<description>There is no glossary with the given identity</description>
<status>ERROR</status>
</response>
</responses>
</pim>
Perform glossary entries
| /common/glossaryEntries/perform Perform action of the specific type on glossary entries |
Resource path |
/api/core/v1/common/glossaryEntries/perform |
HTTP method |
POST |
Request content type |
|
Response content type |
|
Body parameters
OmnType with filled ActionsType
-
Provided ActionTypes must have the following fields:
-
Data type: glossaryEntry;
-
ID or TID of glossary entry;
-
Action type: delete, copyToGlossary or moveToGlossary.
-
Return Type
OmnType with filled ResponsesType
Responses
| Code | Message | Datatype |
|---|---|---|
200 |
OmnType with list of successful or error ResponseTypes |
|
400 |
Invalid input provided |
|
500 |
An unknown internal error occurred |
Samples
| Please use transform endpoint to get the JSON/compact-JSON samples from the XML one. |
Delete glossary entry
Delete by ID
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/common/glossaryEntries/perform' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/xml' \
--data-raw '<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<actions>
<action dataType="glossaryEntry" id="30670" type="delete"/>
</actions>
</pim>'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<actions>
<action dataType="glossaryEntry" id="30670" type="delete"/>
</actions>
</pim>
Delete by TID
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/common/glossaryEntries/perform' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/xml' \
--data-raw '<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<actions>
<action dataType="glossaryEntry" tid="56948c33-29bc-46d1-be81-6fd9452d910f" type="delete"/>
</actions>
</pim>'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<actions>
<action dataType="glossaryEntry" tid="56948c33-29bc-46d1-be81-6fd9452d910f" type="delete"/>
</actions>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-04T13:24:53.286Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response action="delete" dataType="glossaryEntry" id="30670">
<description>The glossary entry has been deleted successfully</description>
<status>SUCCESS</status>
</response>
</responses>
</pim>
Copy glossary entry to another glossary
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/common/glossaryEntries/perform' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/xml' \
--data-raw '<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<actions>
<action dataType="glossaryEntry" id="29637" type="copyToGlossary">
<meta>
<itm key="glossaryId">25246</itm>
</meta>
</action>
</actions>
</pim>'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<actions>
<action dataType="glossaryEntry" id="29637" type="copyToGlossary">
<meta>
<itm key="glossaryId">25246</itm>
</meta>
</action>
</actions>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-04T13:24:53.286Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response action="copyToGlossary" dataType="glossaryEntry" id="29637">
<description>Glossary entry has been copied</description>
<status>SUCCESS</status>
</response>
</responses>
</pim>
Move glossary entry to another glossary
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/common/glossaryEntries/perform' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/xml' \
--data-raw '<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<actions>
<action dataType="glossaryEntry" id="29637" type="moveToGlossary">
<meta>
<itm key="glossaryId">25246</itm>
</meta>
</action>
</actions>
</pim>'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<actions>
<action dataType="glossaryEntry" id="29637" type="moveToGlossary">
<meta>
<itm key="glossaryId">25246</itm>
</meta>
</action>
</actions>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-04T13:24:53.286Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response action="moveToGlossary" dataType="glossaryEntry" id="29637">
<description>Glossary entry has been moved</description>
<status>SUCCESS</status>
</response>
</responses>
</pim>
Error responses
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-04T13:36:54.983Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response action="delete" dataType="glossaryEntry" id="30670">
<description>There is no glossary entry with the given tid/identity</description>
<status>ERROR</status>
</response>
</responses>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-08-17T10:54:57.295Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response action="copyToGlossary" dataType="glossaryEntry" id="25246">
<description>There is no glossary with the given identity</description>
<status>ERROR</status>
</response>
</responses>
</pim>
Components API
Provides information about enabled OMN components.
Retrieve components
| /common/components/retrieve Retrieves a list of enabled OMN components |
Resource path |
/api/core/v1/common/components/retrieve |
HTTP method |
POST |
Response content type |
application/json |
Messages API
Provides operations on OMN Messages.
Persist messages
| /common/messages/persist Sends a message to a user and/or group |
Description
Sends a message to a user or role whereby the role has precedence if both are specified. Either a recipient user or a recipient role has to be specified. They can not both be empty.
Resource path |
/api/core/v1/common/messages/persist |
HTTP method |
POST |
Request content type |
application/json |
Response content type |
application/json |
Body Parameter
Specified by MessagesPersistRequest
| Name | Description | Required | Default | Pattern |
|---|---|---|---|---|
MessagesPersistRequest |
X |
Responses
| Code | Message | Datatype |
|---|---|---|
200 |
Responses for each message |
|
400 |
Bad request. Indicates an issue with the format of the request (missing required value or a wrong data type) |
Samples
Send a message
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/common/messages/persist' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json' \
--data-raw '{
"messages": [
{
"tid": "85a4ebbc-7e19-4021-b76b-373436628bb8",
"subject": "AI-Tagging Failed",
"body": "The AI-Tagging process for asset with id '\''43691245'\'' failed!",
"severity": "ERROR",
"recipientUser": "ap-admin",
"recipientRole": "monitoring",
"senderApplication": "Camunda",
"senderPlugin": "AI-Tagging",
"parameters": {
"additionalProp1": "string",
"additionalProp2": "string",
"additionalProp3": "string"
}
}
]
}'
{
"messages": [
{
"tid": "85a4ebbc-7e19-4021-b76b-373436628bb8",
"subject": "AI-Tagging Failed",
"body": "The AI-Tagging process for asset with id '43691245' failed!",
"severity": "ERROR",
"recipientUser": "ap-admin",
"recipientRole": "monitoring",
"senderApplication": "Camunda",
"senderPlugin": "AI-Tagging",
"parameters": {
"additionalProp1": "string",
"additionalProp2": "string",
"additionalProp3": "string"
}
}
]
}
{
"response": [
{
"dataType": "message",
"issues": [],
"status": "SUCCESS",
"tid": "85a4ebbc-7e19-4021-b76b-373436628bb8"
}
]
}
Links API
Provides operations on OMN links.
Persist links
| /common/links/persist Create links between OMN objects (Assets, Products, Projects) |
Resource path |
/api/core/v1/common/links/persist |
HTTP method |
POST |
Request content type |
|
Response content type |
|
Return Type
PimType with filled ResponsesType
Responses
| Code | Message | Datatype |
|---|---|---|
200 |
PimType with list of ResponseTypes |
|
500 |
An unknown internal error occurred |
Samples
| Please use transform endpoint to get the JSON/compact-JSON samples from the XML one. |
1. Link single asset to single product
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<links>
<itms type="assetToProduct">
<itms type="Main_Image">
<itm key="assetTid">assetTid1</itm>
<itm key="productTid">productTid1</itm>
</itms>
</itms>
</links>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-14T14:34:40.177Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="link" action="create">
<status>SUCCESS</status>
<description>The link has been saved successfully</description>
<details>
<itm key="productTid">productTid1</itm>
<itm key="assetTid">assetTid1</itm>
<itm key="linkType">Main_Image</itm>
</details>
</response>
</responses>
</pim>
2. Link single asset to single product by id
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<links>
<itms type="assetToProduct">
<itms type="Main_Image">
<itm key="assetId">1</itm>
<itm key="productId">2</itm>
</itms>
</itms>
</links>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-14T14:34:40.177Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="link" action="create">
<status>SUCCESS</status>
<description>The link has been saved successfully</description>
<details>
<itm key="productTid">productTid3</itm>
<itm key="assetTid">assetTid3</itm>
<itm key="linkType">Main_Image</itm>
</details>
</response>
</responses>
</pim>
3. Link multiple assets to single product
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<links>
<itms type="assetToProduct">
<itms type="Main_Image">
<itms type="assetTid">
<itm>assetTid1</itm>
<itm>assetTid2</itm>
</itms>
<itm key="productTid">productTid1</itm>
</itms>
</itms>
</links>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-14T14:34:40.177Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="link" action="create">
<status>SUCCESS</status>
<description>The link has been saved successfully</description>
<details>
<itms type="assetTid">
<itm>assetTid1</itm>
<itm>assetTid2</itm>
</itms>
<itm key="productTid">productTid1</itm>
</details>
</response>
</responses>
</pim>
4. Link single asset to multiple products
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<links>
<itms type="assetToProduct">
<itms type="Main_Image">
<itm key="assetTid">assetTid1</itm>
<itms type="productTid">
<itm>productTid1</itm>
<itm>productTid2</itm>
</itms>
</itms>
</itms>
</links>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-14T14:34:40.177Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="link" action="create">
<status>SUCCESS</status>
<description>The link has been saved successfully</description>
<details>
<itm key="productTid">productTid1</itm>
<itm key="assetTid">assetTid1</itm>
<itm key="linkType">Main_Image</itm>
</details>
</response>
<response dataType="link" action="create">
<status>SUCCESS</status>
<description>The link has been saved successfully</description>
<details>
<itm key="productTid">productTid1</itm>
<itm key="assetTid">assetTid2</itm>
<itm key="linkType">Main_Image</itm>
</details>
</response>
</responses>
</pim>
5. Link multiple assets to multiple products
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<links>
<itms type="assetToProduct">
<itms type="Main_Image">
<itms type="assetTid">
<itm>assetTid1</itm>
<itm>assetTid2</itm>
</itms>
<itms type="productTid">
<itm>productTid1</itm>
<itm>productTid2</itm>
</itms>
</itms>
</itms>
</links>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-14T14:34:40.177Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="link" action="create">
<status>SUCCESS</status>
<description>The link has been saved successfully</description>
<details>
<itm key="productTid">productTid1</itm>
<itms type="assetTid">
<itm>assetTid1</itm>
<itm>assetTid2</itm>
</itms>
<itm key="linkType">Main_Image</itm>
</details>
</response>
<response dataType="link" action="create">
<status>SUCCESS</status>
<description>The link has been saved successfully</description>
<details>
<itm key="productTid">productTid1</itm>
<itms type="assetTid">
<itm>assetTid1</itm>
<itm>assetTid2</itm>
</itms>
<itm key="linkType">Main_Image</itm>
</details>
</response>
</responses>
</pim>
Error responses
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-14T14:34:40.177Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="link" id="1">
<status>ERROR</status>
<description>Asset not found</description>
</response>
</responses>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-14T14:34:40.177Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="link" id="2">
<status>ERROR</status>
<description>Product not found</description>
</response>
</responses>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-14T14:34:40.177Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="link" tid="Main_Image">
<status>ERROR</status>
<description>Attribute not found</description>
</response>
</responses>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-14T14:34:40.177Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="link" tid="assetTid">
<status>ERROR</status>
<description>Asset is not available by access rights</description>
</response>
</responses>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-14T14:34:40.177Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="link" tid="productTid">
<status>ERROR</status>
<description>Product is not available by access rights</description>
</response>
</responses>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-14T14:34:40.177Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="link" tid="productTid1">
<status>ERROR</status>
<description>Asset has been already linked to the product</description>
<details>
<itm key="assetTid">assetTid1</itm>
<itm key="productTid">productTid1</itm>
</details>
</response>
</responses>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-14T14:34:40.177Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="link" action="create">
<status>ERROR</status>
<description>Product attribute cardinality has been exceeded</description>
<details>
<itms type="assetTid">
<itm>assetTid1</itm>
<itm>assetTid2</itm>
</itms>
<itm key="productTid">productTid1</itm>
</details>
</response>
</responses>
</pim>
DAM API
DAM API provides access to resources of the DAM module and is used to manage and structure digital assets.
Main resources:
| Resource | Description |
|---|---|
Asset |
Any digital asset that is supported by OMN. An asset can be, for example, an image, a photo, a graphic, a video, an audio file, a 3D file, a 360° product image or a document. |
Version |
Versions are different states of a file, e.g. a modified version of an image. Each version of a file has the same file name. In contrast to Variations , there can only be one active version of a file in OMN at one time, which is displayed in all standard views, e.g. in the table, and is used in OMN. |
Variation |
Variations (aka variants) are separate files that are related to each other and usually have different file names. |
Directory |
Represents a directory (aka folder) in a directory tree structure which can contain sub-directories or Assets. |
RNC |
Abbreviation for Root Node Configuration which represents a configuration of FileSystem accesses for OMN, which is configured in the OMN configuration client. |
Assets API
Provides operations on OMN assets and related asset information.
Chunked upload. Start
| /dam/assets/bin/chunked/start Initializes a chunk upload session for the file |
Chunk upload workflow consist of 3 general steps:
Resource path |
/api/core/v1/dam/assets/bin/chunked/start |
HTTP method |
POST |
Request content type |
application/json |
Response content type |
|
Return Type
OmnType with filled ResponsesType
Response type contains upload tid - the unique identity of the upload session. Upload tid is required for next upload steps.
Responses
| Code | Message | Datatype |
|---|---|---|
200 |
OmnType with filled ResponsesType |
|
400 |
Invalid input provided |
|
500 |
An unknown internal error occurred |
Samples
| Please use transform endpoint to get the JSON/compact-JSON samples from the XML one. |
Start upload session
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/dam/assets/bin/chunked/start' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json' \
--data-raw '{
"path":"/MAM/demo/file2.jpg",
"tid": "AAAAA-AAAAA-AAAAAA-AAAAAA",
}'
{
"tid":"0AA31C0C-F2AE-422C-9C6A-25BAB368706E",
"path": "/MAM/demo/filename.jpg"
}
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn">
<responses>
<response tid="9f9417cc-031b-4bf4-ae98-e1df1fc93fef">
<status>SUCCESS</status>
<description>Chunk upload could be started by upload UUID/tid</description>
</response>
</responses>
</pim>
Error responses
<?xml version="1.0" encoding="UTF-8"?>
<response xmlns="http://www.apollon.de/omn">
<details>
<itm key="supportId">f21311c9-a868-4d4e-bc48-adaa96436335</itm>
</details>
<issues>
<itm key="code">1000</itm>
<itm key="description">An unknown internal error occurred</itm>
<itms type="details">
<itm key="errorMessage">File already exists by path: '/demo/file.jpg'</itm>
</itms>
</issues>
<status>ERROR</status>
</response>
<?xml version="1.0" encoding="UTF-8"?>
<response xmlns="http://www.apollon.de/omn">
<details>
<itm key="supportId">f21311c9-a868-4d4e-bc48-adaa96436335</itm>
</details>
<issues>
<itm key="code">1000</itm>
<itm key="description">An unknown internal error occurred</itm>
<itms type="details">
<itm key="errorMessage">File already exists by path: '/demo/file.jpg'</itm>
</itms>
</issues>
<status>ERROR</status>
</response>
<?xml version="1.0" encoding="UTF-8"?>
<response xmlns="http://www.apollon.de/omn">
<details>
<itm key="supportId">9fdfc6ce-6999-4f3b-8513-be5c431974ee</itm>
</details>
<issues>
<itm key="code">1000</itm>
<itm key="description">An unknown internal error occurred</itm>
<itms type="details">
<itm key="errorMessage">No permissions to upload by path: /demo/file.jpg</itm>
</itms>
</issues>
<status>ERROR</status>
</response>
<?xml version="1.0" encoding="UTF-8"?>
<response xmlns="http://www.apollon.de/omn">
<details>
<itm key="supportId">9fdfc6ce-6999-4f3b-8513-be5c431974ee</itm>
</details>
<issues>
<itm key="code">1000</itm>
<itm key="description">An unknown internal error occurred</itm>
<itms type="details">
<itm key="errorMessage">No target directory by path: '[demo]' in rnc: 'MAM'</itm>
</itms>
</issues>
<status>ERROR</status>
</response>
Chunked upload. Upload a chunk
| /dam/assets/bin/chunked/upload/{uploadTid} Upload a specified chunk of an asset. |
| Upload session must be started before a chunk upload. |
Resource path |
|
HTTP method |
POST |
Request content type |
multipart/form-data |
Response content type |
|
Path Parameters
| Name | Description | Required | Default | Pattern |
|---|---|---|---|---|
uploadTid |
The session identifier of the started chunked upload. |
X |
Form Parameters
| Name | Description | Required | Default | Pattern |
|---|---|---|---|---|
chunkId |
Identity of an asset chunk which should be uploaded integer |
X |
Int32. Positive numbers starting from 0. |
|
payload |
Blob file |
X |
Responses
| Code | Message | Datatype |
|---|---|---|
200 |
PimType with filled ResponsesType |
|
500 |
An unknown internal error occurred |
Samples
| Please use transform endpoint to get the JSON/compact-JSON samples from the XML one. |
Upload a chunk
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/dam/assets/bin/chunked/upload/9f9417cc-031b-4bf4-ae98-e1df1fc93fef' \
--header 'Authorization: Bearer <TOKEN>' \
--form 'payload=@"<PATH_TO_FILE>500x500.jpg"' \
--form 'chunkId="0";type=application/json'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn">
<responses>
<response action="create" id="0" tid="c15af96a-4ce2-4d05-8965-e375c00daf1b">
<status>SUCCESS</status>
<description>Chunk has been uploaded</description>
</response>
</responses>
</pim>
Chunked upload. Finish
| /dam/assets/bin/chunked/persist/{uploadTid} Finalize the chunking upload of an asset. |
| Some chunks should be uploaded before notifying the server that API consumer uploaded all chunks. |
Resource path |
|
HTTP method |
PUT |
Request content type |
application/json |
Response content type |
|
Path Parameters
| Name | Description | Required | Default | Pattern |
|---|---|---|---|---|
uploadTid |
The session identifier of the started chunked upload. |
X |
Body parameters
Specified by AssetUploadRequest.
The AssetUploadRequest's path and tid parameters should be the same as was sent for /dam/assets/bin/chunked/start
| path is required and should contain the file name. |
Return Type
PimType with filled ResponsesType
Response type contains status and info about asset that were uploaded to the system.
Responses
| Code | Message | Datatype |
|---|---|---|
200 |
PimType with filled ResponsesType |
|
400 |
Invalid input provided |
|
500 |
An unknown internal error occurred |
Samples
| Please use transform endpoint to get the JSON/compact-JSON samples from the XML one. |
Finalize upload session
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/dam/assets/bin/chunked/persist/c9fd0ff5-69e6-4053-b895-887be66ccfd9' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json' \
--data-raw '{
"path":"/MAM/demo/file2.jpg",
"tid": "AAAAA-AAAAA-AAAAAA-AAAAAA",
"doPreviewsAsync": true,
"doOverwrite": true
}'
{
"tid":"0AA31C0C-F2AE-422C-9C6A-25BAB368706E",
"path": "/MAM/demo/filename.jpg",
"doPreviewsAsync": true,
"doOverwrite": true
}
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn">
<responses>
<response action="create"
dataType="asset"
id="75440"
path="/demo/file.jpg"
tid="1296BDF9-E367-492C-ACB8-59FA7C310CE8">
<status>SUCCESS</status>
<description>The asset has been uploaded</description>
</response>
</responses>
</pim>
Error responses
It is possible, that during chunks upload, the another file with the same name and path or tid was uploaded to the system, target or the target directory is not available.
<?xml version="1.0" encoding="UTF-8"?>
<response xmlns="http://www.apollon.de/omn">
<details>
<itm key="supportId">f21311c9-a868-4d4e-bc48-adaa96436335</itm>
</details>
<issues>
<itm key="code">1000</itm>
<itm key="description">An unknown internal error occurred</itm>
<itms type="details">
<itm key="errorMessage">File already exists by path: '/demo/file.jpg'</itm>
</itms>
</issues>
<status>ERROR</status>
</response>
<?xml version="1.0" encoding="UTF-8"?>
<response xmlns="http://www.apollon.de/omn">
<details>
<itm key="supportId">f21311c9-a868-4d4e-bc48-adaa96436335</itm>
</details>
<issues>
<itm key="code">1000</itm>
<itm key="description">An unknown internal error occurred</itm>
<itms type="details">
<itm key="errorMessage">File already exists by path: '/demo/file.jpg'</itm>
</itms>
</issues>
<status>ERROR</status>
</response>
<?xml version="1.0" encoding="UTF-8"?>
<response xmlns="http://www.apollon.de/omn">
<details>
<itm key="supportId">9fdfc6ce-6999-4f3b-8513-be5c431974ee</itm>
</details>
<issues>
<itm key="code">1000</itm>
<itm key="description">An unknown internal error occurred</itm>
<itms type="details">
<itm key="errorMessage">No permissions to upload by path: /demo/file.jpg</itm>
</itms>
</issues>
<status>ERROR</status>
</response>
<?xml version="1.0" encoding="UTF-8"?>
<response xmlns="http://www.apollon.de/omn">
<details>
<itm key="supportId">9fdfc6ce-6999-4f3b-8513-be5c431974ee</itm>
</details>
<issues>
<itm key="code">1000</itm>
<itm key="description">An unknown internal error occurred</itm>
<itms type="details">
<itm key="errorMessage">No target directory by path: '[demo]' in rnc: 'MAM'</itm>
</itms>
</issues>
<status>ERROR</status>
</response>
Retrieve Binary Assets
| /dam/assets/bin/retrieve Retrieves binary data of asset(s). |
Resource path |
/api/core/v1/dam/assets/bin/retrieve |
HTTP method |
POST |
Request content type |
application/json |
Response content type |
application/octet-stream |
Body parameters
Specified by AssetRequest
-
tids - (List of String) - Filter parameter, asset TIDs (Metatag GUID), identifying unique objects
-
ids - (List of Integer) - Filter parameter, asset IDs, identifying unique objects
-
formats - (List of String) - Filter parameter, asset formats, identifying preview format or asset.
Return Type
Binary data. In case when multiple assets and / or multiple formats are requested, then files will be compressed into the zip. The zip file should be of the following structure: One directory per tid/id. In this directory the file name of the asset + the format prefix (+ file-suffix) should be used as file name.
Responses
| Code | Message | Datatype |
|---|---|---|
200 |
OmnType with list of keywords |
|
400 |
Invalid input provided |
|
404 |
The requested resource could not be found |
|
500 |
An unknown internal error occurred |
Samples
curl --location --request POST 'http://<OMN_SERVER>/api/core/v1/dam/assets/bin/retrieve' \
--header 'content-type: application/json' \
--header 'Authorization: Bearer <TOKEN> ' \
--data-raw <REQUEST_BODY>
Initial data: 2 files
1st file:
-
name: apollon_logo.jpg
-
identity: 1331131
-
tid: 05954601-9289-49A7-8652-BE74A7DB0E06
2nd file:
-
name: apollon_bg.png
-
identity: 22738178
-
tid: 7CD062AE-B69E-47D5-8422-8840E4A22E88
1. Retrieve asset by id
{
"ids": [1331131]
}
apollon_logo_original.png
2. Retrieve single asset by tid
{
"tids": ["7CD062AE-B69E-47D5-8422-8840E4A22E88"]
}
apollon_bg_original.png
3. Retrieve multiple assets by tids/ids:
{
"ids": [1331131, 22738178]
}
or
{
"tids": ["7CD062AE-B69E-47D5-8422-8840E4A22E88", "05954601-9289-49A7-8652-BE74A7DB0E06"]
}
result.zip
|----- 7CD062AE-B69E-47D5-8422-8840E4A22E88
| |---- apollon_logo_original.jpg
|
|----- 05954601-9289-49A7-8652-BE74A7DB0E06
|---- apollon_bg_original.png
4. Retrieve single asset’s single preview
{
"ids": [1331131],
"formats": ["previewThumbnail"]
}
apollon_logo_previewThumbnail.png
5. Retrieve single asset’s multiple previews:
{
"ids": [1331131],
"formats": ["previewThumbnail", "previewOriginal"]
}
result.zip
|----- 7CD062AE-B69E-47D5-8422-8840E4A22E88
|---- apollon_logo_previewThumbnail.jpg
|---- apollon_logo_previewOriginal.jpg
6. Retrieve multiple asset’s multiple previews:
{
"tids": ["7CD062AE-B69E-47D5-8422-8840E4A22E88", "05954601-9289-49A7-8652-BE74A7DB0E06"],
"formats": ["previewThumbnail", "previewOriginal"]
}
result.zip
|----- 7CD062AE-B69E-47D5-8422-8840E4A22E88
| |---- apollon_logo_previewThumbnail.jpg
| |---- apollon_logo_previewOriginal.jpg
|
|----- 05954601-9289-49A7-8652-BE74A7DB0E06
|---- apollon_bg_previewThumbnail.jpg
|---- apollon_bg_previewOriginal.jpg
Asset upload
| /dam/assets/bin/persist Upload asset to the system. |
Semantic is the same as in chunked asset upload. Within this endpoint it’s possible to upload file per one request without splitting to chunks.
Resource path |
|
HTTP method |
POST |
Request content type |
multipart/form-data |
Response content type |
|
Form Parameters
| AssetUploadRequest.path should be provided to the OMN known directory. |
| Name | Description | Required | Default | Pattern |
|---|---|---|---|---|
params |
Upload parameters AssetUploadRequest |
X |
||
payload |
Blob file |
X |
Return Type
PimType with filled ResponsesType
Response type contains status and info about upload asset operation.
Responses
| Code | Message | Datatype |
|---|---|---|
200 |
PimType with filled ResponsesType |
|
400 |
Invalid input |
|
409 |
File already exists |
|
500 |
An unknown internal error occurred |
Samples
| Please use transform endpoint to get the JSON/compact-JSON samples from the XML one. |
Upload a file
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/dam/assets/bin/persist' \
--header 'Authorization: Bearer <TOKEN>' \
--form 'payload=@"/<FILE_PATH>/artworks-bQbImNIL55TZ52he-gAKJ7w-t500x500.jpg"' \
--form 'params="{
\"path\":\"/MAM/demo/\",
\"tid\": \"AAAAA-AAAAA-AAAAAA-AAAAAA\",
\"doPreviewsAsync\": true,
\"doOverwrite\": true
}";type=application/json''
{
"path":"/MAM/demo/",
"tid": "AAAAA-AAAAA-AAAAAA-AAAAAA",
"doPreviewsAsync": true,
"doOverwrite": true
}
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn">
<responses>
<response action="create"
dataType="asset"
id="86670"
path="/MAM/demo/file.jpg"
tid="AAAAA-AAAAA-AAAAAA-AAAAAA">
<status>SUCCESS</status>
<description>The asset has been uploaded</description>
</response>
</responses>
</pim>
Error response
<?xml version="1.0" encoding="UTF-8"?>
<response xmlns="http://www.apollon.de/omn">
<details>
<itm key="supportId">9fdfc6ce-6999-4f3b-8513-be5c431974ee</itm>
</details>
<issues>
<itm key="code">1000</itm>
<itm key="description">An unknown internal error occurred</itm>
<itms type="details">
<itm key="errorMessage">No permissions to upload by path: /demo/file.jpg</itm>
</itms>
</issues>
<status>ERROR</status>
</response>
<?xml version="1.0" encoding="UTF-8"?>
<response xmlns="http://www.apollon.de/omn">
<details>
<itm key="supportId">d2540d63-e9b5-4647-b875-bcb0c9dfabe5</itm>
</details>
<issues>
<itm key="code">1003</itm>
<itm key="description">The resource already exists</itm>
<itms type="details">
<itm key="errorMessage">File already exists by path: '/demo/file.jpg'</itm>
</itms>
</issues>
<status>ERROR</status>
</response>
Retrieve assets previews info
| /dam/assets/previews/retrieve Retrieve assets previews information. |
Resource path |
/api/core/v1/dam/assets/previews/retrieve |
HTTP method |
POST |
Request content type |
application/json |
Response content type |
|
Body parameters
Specified by PreviewInfoRequest
Return Type
OmnType with filled AssetsType. More info AssetType
Responses
| Code | Message | Datatype |
|---|---|---|
200 |
OmnType with assets preview info in AssetType |
|
500 |
Error in ResponseType |
Samples
| Please use transform endpoint to get the JSON/compact-JSON samples from the XML one. |
Get previews info
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/dam/assets/previews/retrieve' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json' \
--data-raw '{
"tids":[
"11319367-DE26-4FB8-9148-3C341766C1BA"
],
"formats": [
"original",
"previewOriginal",
"previewCoarse",
"previewThumbnail",
"previewCustom",
"previewOriginalPixel",
"previewOriginalVector",
"previewOriginalMultimedia"
]
}'
Request body:
{
"ids": [
74628354
],
"formats": [
"original",
"previewOriginal",
"previewCoarse",
"previewThumbnail",
"previewCustom",
"previewOriginalPixel",
"previewOriginalVector",
"previewOriginalMultimedia"
]
}
{
"tids": [
"11319367-DE26-4FB8-9148-3C341766C1BA"
],
"formats": [
"original",
"previewOriginal",
"previewCoarse",
"previewThumbnail",
"previewCustom",
"previewOriginalPixel",
"previewOriginalVector",
"previewOriginalMultimedia"
]
}
{
"paths": [
"/MAM/rootDirectory/childDirectory1/pic.jpeg"
],
"formats": [
"original",
"previewOriginal",
"previewCoarse",
"previewThumbnail",
"previewCustom",
"previewOriginalPixel",
"previewOriginalVector",
"previewOriginalMultimedia"
]
}
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-09-19T09:46:46.471Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<assets>
<asset tid="11319367-DE26-4FB8-9148-3C341766C1BA">
<name>artworks-bQbImNIL55TZ52he-gAKJ7w-t500x500_print_variation_print_variation.jpg</name>
<meta>
<itm key="identity">87961</itm>
<itm key="pathStringStr">/demo/artworks-bQbImNIL55TZ52he-gAKJ7w-t500x500_print_variation_print_variation.jpg</itm>
</meta>
<previews>
<preview tid="E5B04787-87BD-4D18-AAA6-6CD26498EB0A" type="ORIGINAL_PIXEL">
<meta>
<itm key="extension">jpeg</itm>
<itm key="height">230</itm>
<itm key="modificationDate">2022-09-08T13:11:29.802Z</itm>
<itm key="pageNumber">-1</itm>
<itm key="size">0</itm>
<itm key="status">ORIGINAL</itm>
<itm key="url">/dam/assets/bin?assetTid=11319367-DE26-4FB8-9148-3C341766C1BA&format=previewOriginalPixel</itm>
<itm key="width">219</itm>
</meta>
</preview>
<preview tid="0B0A042E-6F51-44C2-8CE7-5F13E4719FCF" type="THUMBNAIL">
<meta>
<itm key="extension">jpeg</itm>
<itm key="height">40</itm>
<itm key="modificationDate">2022-09-08T13:11:29.802Z</itm>
<itm key="pageNumber">-1</itm>
<itm key="size">0</itm>
<itm key="status">ORIGINAL</itm>
<itm key="url">/dam/assets/bin?assetTid=11319367-DE26-4FB8-9148-3C341766C1BA&format=previewThumbnail</itm>
<itm key="width">38</itm>
</meta>
</preview>
<preview tid="11F00126-6D35-4355-99C3-2763A9743C00" type="COARSE">
<meta>
<itm key="extension">jpeg</itm>
<itm key="height">480</itm>
<itm key="modificationDate">2022-09-08T13:11:29.802Z</itm>
<itm key="pageNumber">-1</itm>
<itm key="size">0</itm>
<itm key="status">ORIGINAL</itm>
<itm key="url">/dam/assets/bin?assetTid=11319367-DE26-4FB8-9148-3C341766C1BA&format=previewCoarse</itm>
<itm key="width">457</itm>
</meta>
</preview>
</previews>
</asset>
</assets>
</pim>
Perform actions on assets
| /dam/assets/perform Perform different types of actions on DAM assets |
Available action types:
-
Delete
-
Move
-
Copy
-
Checkin (unlock)
-
Checkout (lock)
-
Clean checkout (force unlock)
Resource path |
/api/core/v1/dam/assets/perform |
HTTP method |
POST |
Request content type |
|
Response content type |
|
Body parameters
PimType with ActionTypes
API consumer should provide one of asset identifiers (usually tid) to perform action/s on the asset.
Some actions require additional info that should be provided in MetaType in key/value way.
ActionType's type is required and be provided.
Possible values:
-
delete
-
checkout
-
checkin
-
cleanCheckout
-
unlink
-
move
-
copy
ActionType's dataType is - asset
|
Tables legend
"As <action> attribute" describes, that parameter is in the xml attribute of <action> tag. Otherwise, parameter should be in ItemType. "Required groups" - one of parameter in the one group is required e.g. entity identifier (e.g. tid or id or path) |
| Parameter Name | As <action> attribute | Required | Type | Description | Format |
|---|---|---|---|---|---|
tid |
X |
X |
string |
Tid of the asset that should be deleted |
| Parameter Name | As <action> attribute | Required | Type | Description | Format |
|---|---|---|---|---|---|
tid |
X |
X G1 |
string |
Tid of the asset that should be moved |
|
id |
X |
X G1 |
Long |
Asset identity |
int64 |
path |
X |
X G1 |
string |
Path to the asset. Starts from RNC name. |
/ (forward slash) - as separator. RNC identifier - as root entry. |
destinationDirTid |
X G2 |
string |
Destination directory Tid |
||
destinationDirId |
X G2 |
Long |
Destination directory Id |
int64 |
|
destinationDirPath |
X G2 |
string |
Path to the destination directory. Starts from RNC name. |
/ (forward slash) - as separator. RNC identifier - as root entry. |
|
overwrite |
boolean |
Overwrite file if exists |
true/false |
| Parameter Name | As <action> attribute | Required | Type | Description | Format |
|---|---|---|---|---|---|
tid |
X |
X |
string |
Tid of the asset that should checked-in/checked-out or cleaned from checkout |
Return Type
PimType with filled ResponsesType
Response types contains status information about each action passed to perform.
Responses
| Actions are processed separately. ResponseType for individual action need to checked. Exceptions thrown during the execution of actions will be reported in ResponseType. |
| Code | Message | Datatype |
|---|---|---|
200 |
PimType with filled ResponsesType. |
|
400 |
Invalid input provided |
|
500 |
An unknown internal error occurred |
Samples
| Please use transform endpoint to get the JSON/compact-JSON samples from the XML one. |
Delete
Delete asset by tid
curl
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/dam/assets/perform' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json' \
--data-raw '<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<actions>
<action dataType="asset" tid="37590039-3AEA-4A13-9C3A-C6EC3C94ADCE" type="delete"/>
</actions>
</pim>'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<actions>
<action dataType="asset" tid="37590039-3AEA-4A13-9C3A-C6EC3C94ADCE" type="delete"/>
</actions>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-04T13:24:53.286Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="asset"
tid="37590039-3AEA-4A13-9C3A-C6EC3C94ADCE"
action="delete">
<status>SUCCESS</status>
<description>The asset has been deleted successfully</description>
</response>
</responses>
</pim>
Error response case
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-04T13:36:54.983Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="asset"
tid="37590039-3AEA-4A13-9C3A-C6EC3C94ADCE2"
action="delete">
<status>ERROR</status>
<description>There is no asset with the given tid</description>
</response>
</responses>
</pim>
Move
Move asset by tid/id/path
curl
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/dam/assets/perform' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/xml; charset=UTF8' \
--data-raw '<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<actions>
<action dataType="asset" tid="52F78637-63AE-4F3E-8D4B-664E070C6AA1" type="move">
<meta>
<itm key="destinationDirTid">52F78637-63AE-4F3E-8D4B-664E070C6AB8</itm>
<itm key="overwrite">false</itm>
</meta>
</action>
</actions>
</pim>'
Move request body examples:
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<actions>
<action dataType="asset" tid="52F78637-63AE-4F3E-8D4B-664E070C6AA1" type="move">
<meta>
<itm key="destinationDirTid">52F78637-63AE-4F3E-8D4B-664E070C6AB8</itm>
<itm key="overwrite">false</itm>
</meta>
</action>
</actions>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<actions>
<action dataType="asset" id="74638" type="move">
<meta>
<itm key="destinationDirId">55273453</itm>
<itm key="overwrite">false</itm>
</meta>
</action>
</actions>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<actions>
<action dataType="asset" path="/MAM/demo/photo.jpg" type="move">
<meta>
<itm key="destinationDirPath">/MAM/demo/copies/</itm>
<itm key="overwrite">false</itm>
</meta>
</action>
</actions>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-08-17T10:53:35.841Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="asset"
tid="52F78637-63AE-4F3E-8D4B-664E070C6AA1"
id="74638"
action="move"
path="/MAM/demo/copies/photo.jpg">
<status>SUCCESS</status>
<description>asset has been moved</description>
<details>
<itm key="monitorId">77833</itm>
</details>
</response>
</responses>
</pim>
Error responses
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-08-17T10:54:05.989Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="asset" action="move" path="/MAM/demo/copies/photo2.jpg">
<status>ERROR</status>
<description>The asset does not exist</description>
</response>
</responses>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-08-17T10:54:31.036Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="asset" action="move" path="/MAM/demo/photo.jpg">
<status>ERROR</status>
<description>The destination does not exist</description>
</response>
</responses>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-08-17T11:06:29.771Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="asset"
tid="9EC194D7-07B6-48A1-BDD3-19C729492F7E"
id="76890"
action="move"
path="/MAM/demo/copies/tempAR/photo.jpg">
<status>ERROR</status>
<description>Error during moving: No access to source objects</description>
</response>
</responses>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-08-17T10:54:57.295Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="asset"
tid="0F837828-AE84-431A-BC79-65B967C6400D"
id="73442"
action="move"
path="/MAM/demo/photo.jpg">
<status>ERROR</status>
<description>Error during moving: No access to destination object '/demo/copies/tempAR'</description>
</response>
</responses>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-08-17T11:07:26.533Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="asset"
tid="E40ACAEB-963C-4D06-B3ED-7C01B3E51C37"
id="77971"
action="move"
path="/MAM/demo/photo.jpg">
<status>ERROR</status>
<description>Collision during move. Collision asset name:'photo.jpg'</description>
<details>
<itm key="collision">true</itm>
<itm key="monitorId">77835</itm>
</details>
</response>
</responses>
</pim>
Copy
Copy asset by tid/id/path
curl
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/dam/assets/perform' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/xml; charset=UTF8' \
--data-raw '<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<actions>
<action dataType="asset" tid="52F78637-63AE-4F3E-8D4B-664E070C6AA1" type="copy">
<meta>
<itm key="destinationDirTid">52F78637-63AE-4F3E-8D4B-664E070C6AB8</itm>
<itm key="overwrite">false</itm>
</meta>
</action>
</actions>
</pim>'
Copy request body examples:
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<actions>
<action dataType="asset" tid="52F78637-63AE-4F3E-8D4B-664E070C6AA1" type="copy">
<meta>
<itm key="destinationDirTid">52F78637-63AE-4F3E-8D4B-664E070C6AB8</itm>
<itm key="overwrite">false</itm>
</meta>
</action>
</actions>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<actions>
<action dataType="asset" id="74638" type="copy">
<meta>
<itm key="destinationDirId">55273453</itm>
<itm key="overwrite">false</itm>
</meta>
</action>
</actions>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<actions>
<action dataType="asset" path="/MAM/demo/photo.jpg" type="copy">
<meta>
<itm key="destinationDirPath">/MAM/demo/copies/</itm>
<itm key="overwrite">false</itm>
</meta>
</action>
</actions>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-08-17T10:53:35.841Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="asset"
tid="52F78637-63AE-4F3E-8D4B-664E070C6AA1"
id="74638"
action="copy"
path="/MAM/demo/copies/photo.jpg">
<status>SUCCESS</status>
<description>asset has been copied</description>
<details>
<itm key="monitorId">77833</itm>
</details>
</response>
</responses>
</pim>
Error responses
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-08-17T10:54:05.989Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="asset" action="copy" path="/MAM/demo/copies/photo2.jpg">
<status>ERROR</status>
<description>The asset does not exist</description>
</response>
</responses>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-08-17T10:54:31.036Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="asset" action="copy" path="/MAM/demo/photo.jpg">
<status>ERROR</status>
<description>The destination does not exist</description>
</response>
</responses>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-08-17T11:06:29.771Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="asset"
tid="9EC194D7-07B6-48A1-BDD3-19C729492F7E"
id="76890"
action="copy"
path="/MAM/demo/copies/tempAR/photo.jpg">
<status>ERROR</status>
<description>Error during moving: No access to source objects</description>
</response>
</responses>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-08-17T10:54:57.295Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="asset"
tid="0F837828-AE84-431A-BC79-65B967C6400D"
id="73442"
action="copy"
path="/MAM/demo/photo.jpg">
<status>ERROR</status>
<description>Error during moving: No access to destination object '/demo/copies/tempAR'</description>
</response>
</responses>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-08-17T11:07:26.533Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="asset"
tid="E40ACAEB-963C-4D06-B3ED-7C01B3E51C37"
id="77971"
action="copy"
path="/MAM/demo/photo.jpg">
<status>ERROR</status>
<description>Collision during copy. Collision asset name:'photo.jpg'</description>
<details>
<itm key="collision">true</itm>
<itm key="monitorId">77845</itm>
</details>
</response>
</responses>
</pim>
Checkin
Checkin asset by tid
curl
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/dam/assets/perform' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/xml; charset=UTF8' \
--data-raw '<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<actions>
<action dataType="asset" tid="71A1021B-786C-4538-8883-70A1C6754034" type="checkin"/>
</actions>
</pim>'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<actions>
<action dataType="asset" tid="71A1021B-786C-4538-8883-70A1C6754034" type="checkin"/>
</actions>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-17T09:23:08.154Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="asset"
tid="71A1021B-786C-4538-8883-70A1C6754034"
action="update">
<status>SUCCESS</status>
<description>The asset has been checked-in</description>
</response>
</responses>
</pim>
Error responses
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-14T14:38:06.734Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="asset" tid="DB2B33D8-C9DF-4A0B-BCC4-F5222CB8A5122" action="update">
<status>ERROR</status>
<description>Isy object with meta tag guid 'DB2B33D8-C9DF-4A0B-BCC4-F5222CB8A5122' is not found.</description>
</response>
</responses>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-14T14:40:00.264Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="asset" tid="DB2B33D8-C9DF-4A0B-BCC4-F5222CB8A512" action="update">
<status>ERROR</status>
<description>The asset is checked-out (locked) by another user</description>
</response>
</responses>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-14T14:40:00.264Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="asset" tid="DB2B33D8-C9DF-4A0B-BCC4-F5222CB8A512" action="update">
<status>ERROR</status>
<description>The asset access is denied</description>
</response>
</responses>
</pim>
Checkout
Checkout asset by tid
curl
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/dam/assets/perform' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/xml; charset=UTF8' \
--data-raw '<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<actions>
<action dataType="asset" tid="71A1021B-786C-4538-8883-70A1C6754034" type="checkout"/>
</actions>
</pim>'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<actions>
<action dataType="asset" tid="71A1021B-786C-4538-8883-70A1C6754034" type="checkout"/>
</actions>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-17T09:23:08.154Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="asset"
tid="71A1021B-786C-4538-8883-70A1C6754034"
action="update">
<status>SUCCESS</status>
<description>The asset has been checked-out</description>
</response>
</responses>
</pim>
Error responses
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-14T14:38:06.734Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="asset" tid="DB2B33D8-C9DF-4A0B-BCC4-F5222CB8A5122" action="update">
<status>ERROR</status>
<description>Isy object with meta tag guid 'DB2B33D8-C9DF-4A0B-BCC4-F5222CB8A5122' is not found.</description>
</response>
</responses>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-14T14:40:00.264Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="asset" tid="DB2B33D8-C9DF-4A0B-BCC4-F5222CB8A512" action="update">
<status>ERROR</status>
<description>The asset is checked-out (locked) by another user</description>
</response>
</responses>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-14T14:40:00.264Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="asset" tid="DB2B33D8-C9DF-4A0B-BCC4-F5222CB8A512" action="update">
<status>ERROR</status>
<description>The asset access is denied</description>
</response>
</responses>
</pim>
Clean checkout
Clean checkout asset by tid
curl
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/dam/assets/perform' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/xml; charset=UTF8' \
--data-raw '<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<actions>
<action dataType="asset" tid="71A1021B-786C-4538-8883-70A1C6754034" type="cleanCheckout"/>
</actions>
</pim>'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<actions>
<action dataType="asset" tid="71A1021B-786C-4538-8883-70A1C6754034" type="cleanCheckout"/>
</actions>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-17T09:23:08.154Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="asset"
tid="71A1021B-786C-4538-8883-70A1C6754034"
action="update">
<status>SUCCESS</status>
<description>The asset has been clean from checkout</description>
</response>
</responses>
</pim>
Error responses
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-14T14:38:06.734Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="asset" tid="DB2B33D8-C9DF-4A0B-BCC4-F5222CB8A5122" action="update">
<status>ERROR</status>
<description>Isy object with meta tag guid 'DB2B33D8-C9DF-4A0B-BCC4-F5222CB8A5122' is not found.</description>
</response>
</responses>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-14T14:40:00.264Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="asset" tid="DB2B33D8-C9DF-4A0B-BCC4-F5222CB8A512" action="update">
<status>ERROR</status>
<description>The asset access is denied</description>
</response>
</responses>
</pim>
Retrieve assets
| /dam/assets/retrieve Retrieve asset information and attributes details. |
The endpoint can also provide information about previews and asset’s history.
Resource path |
/api/core/v1/dam/assets/retrieve |
HTTP method |
POST |
Request content type |
application/json |
Response content type |
|
Asset attributes
Asset attributes are stored in AssetType.vals
Asset attributes type and examples
| Attribute type | Is localized | Response template | Example |
|---|---|---|---|
Boolean |
|
|
|
Boolean |
X |
|
|
Date |
|
|
|
Date |
X |
|
|
Enumeration |
|
|
|
Enumeration |
X |
|
|
Number |
|
|
|
Number |
X |
|
|
String |
|
|
|
String |
X |
|
|
XMP |
|
|
Body parameters
Specified by AssetRequest
Return Type
PimType with filled AssetsType. More info AssetType
Responses
| Code | Message | Datatype |
|---|---|---|
200 |
PimType with list of assets |
|
500 |
Error in ResponseType |
Samples
| Please use transform endpoint to get the JSON/compact-JSON samples from the XML one. |
Get asset details with asset history and previews info
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/dam/assets/retrieve' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json' \
--data-raw '{
"ids": [
24478
],
"retrieveHistory": true,
"retrievePreviews": true
}'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<assets>
<asset parent="01427CB0-AF41-41CF-96FC-51EC7B6ADEC1"
tid="6FC0022A-E978-4ADF-ABFE-DBF0BE99042F"
type="IMG">
<name>100192855000_96p.jpg</name>
<meta>
<itm key="annotationstate">false</itm>
<itm key="archivestate">ONLINE</itm>
<itm key="creationDate">2022-10-04T11:39:13.943+02:00</itm>
<itm key="discriminator">IMG</itm>
<itm key="fileCreationDate">2022-10-04T11:39:13.937+02:00</itm>
<itm key="fileModificationDate">2022-10-04T11:39:13.937+02:00</itm>
<itm key="fileTypeShortName">JPEG</itm>
<itm key="hidden">false</itm>
<itm key="identity">24478</itm>
<itm key="imageColorspace">YCBCR</itm>
<itm key="imageHeightInMM">705.5555555555555</itm>
<itm key="imageHeightInPixel">2000</itm>
<itm key="imageICCProfile">sRGB IEC61966-2-1 withBPC</itm>
<itm key="imageWidthInMM">465.66666666666663</itm>
<itm key="imageWidthInPixel">1320</itm>
<itm key="imageXResolutionValue">72.0</itm>
<itm key="imageYResolutionValue">72.0</itm>
<itm key="modificationDate">2022-10-04T11:39:16.272+02:00</itm>
<itm key="nameWithoutExtension">100192855000_96p</itm>
<itm key="numberOfVersions">0</itm>
<itm key="online">true</itm>
<itm key="pathStringStr">/Productimages/100/192/855/100192855000_96p.jpg</itm>
<itm key="previewCoarse">1C85040C-D61C-41E7-97CC-15B08B0675FE</itm>
<itm key="previewOriginal"/>
<itm key="previewOriginalMultimedia"/>
<itm key="previewOriginalPixel">48C064B8-B3EC-4476-A84B-11474684FF2B</itm>
<itm key="previewOriginalVector"/>
<itm key="previewThumbnail">FC24D91C-69FE-4FB3-A6FA-B9A66EB37CBC</itm>
<itm key="resourceSize">0</itm>
<itm key="rncIdentifier">MAM</itm>
<itm key="size">112209</itm>
<itm key="totalChecksum">8a6c74821055ccc8da8603eed6976017</itm>
<itm key="totalChecksumHashAlgorithm">MD5</itm>
<itm key="totalSize">112209</itm>
</meta>
<vals>
<val attr="xmp.IPTC.Description" type="xmp">
<itm>100192296041383437</itm>
</val>
<val attr="xmp.dc:description" type="xmp">
<itm>100192296041383437</itm>
</val>
<val attr="xmp.dc:subject" type="xmp">
<itm>1001/100192/855000/19;</itm>
</val>
<val attr="xmp.tiff.Orientation" type="xmp">
<itm>1</itm>
</val>
<val attr="xmp.dc:creator" type="xmp">
<itm>p</itm>
</val>
<val attr="xmp.IPTC.Keywords" type="xmp">
<itm>1001/100192/855000/19;</itm>
</val>
<val attr="xmp.dc:format" type="xmp">
<itm>image/jpeg</itm>
</val>
<val attr="xmp.IPTC.Creator" type="xmp">
<itm>p</itm>
</val>
<val attr="xmp.exif:ExposureTime" type="xmp">
<itm>1/160</itm>
</val>
<val attr="STRING_SIMPLE">
<itm>string</itm>
</val>
<val attr="ENUMERATION_L" type="multi_loc">
<i18n loc="en_EN">
<itm pos="0">Brown</itm>
<itm pos="1">Yellow</itm>
</i18n>
</val>
</vals>
<histories>
<history id="37220">
<meta>
<itm key="changedProperty">STRING_SIMPLE</itm>
<itm key="eventDate">2022-10-21T15:45:04.110+02:00</itm>
<itm key="eventDescription">Saving object details.</itm>
<itm key="eventIdentifier">SAVE_DETAILS</itm>
<itm key="newValue">testttest</itm>
<itm key="oldValue">aeorosol</itm>
<itm key="userIdentifier">test@apollon.de</itm>
</meta>
</history>
<history id="54321">
<meta>
<itm key="changedProperty">STRING_SIMPLE</itm>
<itm key="eventDate">2022-10-21T15:45:15.928+02:00</itm>
<itm key="eventDescription">Saving object details.</itm>
<itm key="eventIdentifier">SAVE_DETAILS</itm>
<itm key="newValue">hi</itm>
<itm key="oldValue">testttest</itm>
<itm key="userIdentifier">test@apollon.de</itm>
</meta>
</history>
</histories>
<previews>
<preview tid="E5B04787-87BD-4D18-AAA6-6CD26498EB0A" type="ORIGINAL_PIXEL">
<meta>
<itm key="extension">jpeg</itm>
<itm key="height">230</itm>
<itm key="modificationDate">2022-09-08T13:11:29.802Z</itm>
<itm key="pageNumber">-1</itm>
<itm key="size">0</itm>
<itm key="status">ORIGINAL</itm>
<itm key="url">/dam/assets/bin?assetTid=11319367-DE26-4FB8-9148-3C341766C1BA&format=previewOriginalPixel</itm>
<itm key="width">219</itm>
</meta>
</preview>
<preview tid="0B0A042E-6F51-44C2-8CE7-5F13E4719FCF" type="THUMBNAIL">
<meta>
<itm key="extension">jpeg</itm>
<itm key="height">40</itm>
<itm key="modificationDate">2022-09-08T13:11:29.802Z</itm>
<itm key="pageNumber">-1</itm>
<itm key="size">0</itm>
<itm key="status">ORIGINAL</itm>
<itm key="url">/dam/assets/bin?assetTid=11319367-DE26-4FB8-9148-3C341766C1BA&format=previewThumbnail</itm>
<itm key="width">38</itm>
</meta>
</preview>
<preview tid="11F00126-6D35-4355-99C3-2763A9743C00" type="COARSE">
<meta>
<itm key="extension">jpeg</itm>
<itm key="height">480</itm>
<itm key="modificationDate">2022-09-08T13:11:29.802Z</itm>
<itm key="pageNumber">-1</itm>
<itm key="size">0</itm>
<itm key="status">ORIGINAL</itm>
<itm key="url">/dam/assets/bin?assetTid=11319367-DE26-4FB8-9148-3C341766C1BA&format=previewCoarse</itm>
<itm key="width">457</itm>
</meta>
</preview>
</previews>
</asset>
</assets>
</pim>
Persist assets
| /dam/assets/persist Saves asset information and asset attributes details. |
Allows to
Resource path |
/api/core/v1/dam/assets/persist |
HTTP method |
POST |
Request content type |
|
Response content type |
|
Asset attribute persisting
Asset attributes are stored in AssetType.vals. More info about asset attributes
| Only provided attribute values are persisted, other values that are not provided in AssetType.vals will be not changed. |
| Only values of attributes registered in OMN could be saved. |
Keyword link persisting
Keyword links are stored in AssetType.links. See below for sample
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2024-05-08T09:42:06.853Z</itm>
<itm key="sourceEnv">ocd_dev</itm>
</meta>
<assets>
<asset id="58525" parent="7CFD9FB3-8124-4363-8C06-B844CC58249C" tid="5B8EF672-A396-43BC-B880-E8B1FC2F7376" type="IMG">
<name>MyAsset.jpg</name>
<links>
<itms mode="delta" type="kwds">
<itm pos="1">/MyRootKW/MySubKW</itm>
</itms>
</links>
</asset>
</assets>
</pim>
| Only existing keywords can be linked. Non-existent keywords won’t be created automatically. |
Body parameters
Accepts PimType with AssetsType
Return Type
PimType with statuses ResponsesType about each persisted asset.
Responses
| Code | Message | Datatype |
|---|---|---|
200 |
PimType with list of responses |
|
500 |
Error in ResponseType |
Samples
| Please use transform endpoint to get the JSON/compact-JSON samples from the XML one. |
Save asset attributes and new name
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/dam/assets/retrieve' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json' \
--data-raw '<BODY>'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<assets>
<asset parent="01427CB0-AF41-41CF-96FC-51EC7B6ADEC1"
tid="6FC0022A-E978-4ADF-ABFE-DBF0BE99042F"
type="IMG">
<name>100192855000_96p.jpg</name>
<vals>
<val attr="STRING_SIMPLE">
<itm>string</itm>
</val>
<val attr="NUMBER_SIMPLE">
<itm>6395629</itm>
</val>
<val attr="ENUMERATION_L" type="multi_loc">
<i18n loc="en_EN">
<itm pos="0">Brown</itm>
<itm pos="1">Yellow</itm>
</i18n>
</val>
<val attr="xmp.IPTC.Description" type="xmp">
<itm>100192296041383437</itm>
</val>
<val attr="xmp.dc:description" type="xmp">
<itm>100192296041383437</itm>
</val>
<val attr="xmp.dc:subject" type="xmp">
<itm>1001/100192/855000/19;</itm>
</val>
<val attr="xmp.tiff.Orientation" type="xmp">
<itm>1</itm>
</val>
<val attr="xmp.IPTC.Keywords" type="xmp">
<itm>1001/100192/855000/19;</itm>
</val>
<val attr="xmp.dc:format" type="xmp">
<itm>image/jpeg</itm>
</val>
<val attr="xmp.IPTC.Creator" type="xmp">
<itm>p</itm>
</val>
<val attr="xmp.exif:ExposureTime" type="xmp">
<itm>1/160</itm>
</val>
</vals>
</asset>
</assets>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-03T07:28:00.168Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="ASSET" tid="71A1021B-786C-4538-8883-70A1C6754034" action="update">
<status>SUCCESS</status>
<description>The asset has been saved successfully</description>
</response>
</responses>
</pim>
Link keywords to asset
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/dam/assets/retrieve' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json' \
--data-raw '<BODY>'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2024-05-08T09:42:06.853Z</itm>
<itm key="sourceEnv">ocd_dev</itm>
</meta>
<assets>
<asset id="58525" parent="7CFD9FB3-8124-4363-8C06-B844CC58249C" tid="5B8EF672-A396-43BC-B880-E8B1FC2F7376" type="IMG">
<name>MyAsset.jpg</name>
<links>
<itms mode="delta" type="kwds">
<itm pos="0">/MyRootKeyword</itm>
<itm pos="1">/AnotherRootKeyword/MySubKeyword</itm>
</itms>
</links>
</asset>
</assets>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-03T07:28:00.168Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="ASSET" tid="71A1021B-786C-4538-8883-70A1C6754034" action="update">
<status>SUCCESS</status>
<description>The asset has been saved successfully</description>
</response>
</responses>
</pim>
Error responses
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-03T07:46:16.200Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="asset" tid="71A1021B-786C-4538-8883-70A1C675403422" action="update">
<status>ERROR</status>
<description>The asset does not exist</description>
</response>
</responses>
</pim>
<?xml version="1.0" encoding="UTF-8" standalone="yes"?>
<pim xmlns="http://www.apollon.de/omn">
<meta>
<itm key="messageType">response</itm>
<itm key="messageTime">2024-05-13T04:54:05.030Z</itm>
<itm key="refMessageId">1131</itm>
<itm key="sourceEnv">ocd_dev</itm>
</meta>
<responses>
<response dataType="asset" tid="5B8EF672-A396-43BC-B880-E8B1FC2F7376">
<status>SUCCESS</status>
<issues type="1002">
<itm key="description">Keyword could not be linked: Keyword with path '/nonexistentkeyword' not found.</itm>
</issues>
</response>
</responses>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-03T07:46:16.200Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="asset" tid="71A1021B-786C-4538-8883-70A1C675403422" action="update">
<status>ERROR</status>
<description>The asset does not exist</description>
</response>
</responses>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-04T09:15:35.301Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="ASSET" tid="71A1021B-786C-4538-8883-70A1C6754034" action="update">
<status>WARNING</status>
<description>The asset has been saved successfully. Some attributes were not saved due to Access Rights</description>
</response>
</responses>
</pim>
Query assets
| /dam/assets/query Gets list of asset tids by allowed criteria |
Allows to get assets tids by:
-
By modification date (from/until)
-
By file type
-
By directory
Tip: Criteria combined with AND operator.
Resource path |
/api/core/v1/dam/assets/query |
HTTP method |
POST |
Request content type |
application/json; |
Response content type |
application/json; |
Body parameters
Accepts AssetQuery
Return Type
Filled with asset tids AssetRequest
Responses
| Code | Message | Datatype |
|---|---|---|
200 |
Found assets ids |
|
400 |
Invalid input error ResponseType |
|
500 |
Error in ResponseType |
Samples
Query asset by modified dates, asset discriminator, parent directory
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/dam/assets/query' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json' \
--data-raw '{
"modifiedFrom": "2022-12-09T08:33:09.734Z",
"modifiedUntil": "2022-12-12T08:33:09.734Z",
"fileTypes": [
"IMG"
],
"directory": {
"path": "/MAM/dir1/dir2/dir3"
}
}
'
Request body examples:
{
"modifiedFrom": "2022-12-09T08:33:09.734Z",
"modifiedUntil": "2022-12-12T08:33:09.734Z",
"fileTypes": [
"IMG"
],
"directory": {
"path": "/MAM/dir1/dir2/dir3"
}
}
{
"directory": {
"tid": "DBF6D18D-6CB4-4765-8966-10000DD22A6E"
}
}
{
"directory": {
"id": 74628354
}
}
{
"directory": {
"path": "/MAM/rootDirectory/childDirectory"
}
}
{
"tids": [
"8E93BA7A-0521-4FB2-A7B7-40941C7A5AFA",
"218BCAED-A63B-4CE4-B23F-42B479E4E9FB",
"C3617CA4-0869-4A60-9CDC-32DCA0322F63",
"2BA8E460-964E-4197-9292-1E4365B29386",
"5BD22A27-7C2E-49B9-B90F-00F209900480",
"A168315F-24BF-4EF3-8BF9-619C71502D42",
"C9229729-D0D6-4CDA-92C8-3B916D1B4F85",
"2ABE86E5-6261-4BBF-A30B-235964B6EDBD",
"365F8ED1-1B75-4218-824A-E0B394D1DFEE",
"2312639C-F5D7-4F82-BEEF-4DD5E9668425",
"8195578A-AB9D-4BFD-9B86-2519E0A74E85",
"FC2E1C48-5904-4754-9E4E-8032ABE6949C",
"599641D5-7637-46DB-97BC-635F915C188A",
"D1019EE5-F1E0-49FA-8C2B-AD7FE3F8402C",
"6BD4B93B-2F35-4B9F-909E-974443B7C96B",
"DA32F94E-98B8-4F62-B588-EE804D97717B",
"08E3AF9C-1D28-4962-9C82-4E54633A9A4B",
"F008FE89-7372-4C17-83AB-670A664B57D9",
"95E7D312-1C4B-43BF-93C9-2219248ABF33",
"A905D075-8312-49EA-AB09-65D6FDBEE573",
"19F2C143-68D0-410C-BC24-53B33B70D270"
],
"retrieveHistory": false,
"retrievePreviews": false
}
Retrieve statuses of an assets
| /dam/assets/status Gets the status information for given assets. |
The endpoint could provide information about asset import and object statuses.
Resource path |
/api/core/v1/dam/assets/status |
HTTP method |
POST |
Request content type |
application/json |
Response content type |
|
Body parameters
Specified by AssetRequest
-
ids: it might be used to get assets statuses by asset’s id's
-
tids: it might be used to get assets statuses by asset’s tid's
| Assets statuses are retrieved by tids OR ids. ids are ignored if the request contains tids and ids. |
Return Type
OmnType with filled AssetsType. More info AssetType
Responses
| Value | Description |
|---|---|
pending |
Import is in processing queue |
running |
General status if import is running |
available |
Asset, previews and metadata available |
incomplete |
Import failed at some state and is incomplete (most of the time Asset is available but not synchronized) |
| Value | Description |
|---|---|
import incomplete |
Object is not synchronized (check-in not complete) |
available |
Asset, previews and metadata available after import/checkin |
locked |
Asset is "checked out" |
marked for deletion |
Asset is marked for deletion |
| Code | Message | Datatype |
|---|---|---|
200 |
PimType with filled AssetsType |
|
400 |
Invalid input provided |
|
401 |
Not authorized |
|
404 |
Not found |
|
500 |
An unknown internal error occurred |
Samples
| Please use transform endpoint to get the JSON/compact-JSON samples from the XML one. |
1. To get a list of assets statuses by assets tids
curl
curl --location --request POST 'http://<OMN_SERVER>/api/core/v1/dam/assets/status' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json' \
--data-raw '{
"tids": ["986A971D-1B8B-4E72-ACB3-0ED272CB504"]
}'
{
"tids": ["986A971D-1B8B-4E72-ACB3-0ED272CB504"]
}
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-09-27T12:41:38.795Z</itm>
<itm key="itemInformationType">asset</itm>
</meta>
<assets>
<asset tid="986A971D-1B8B-4E72-ACB3-0ED272CB504" id="64556">
<meta>
<itm key="ImportState">available</itm>
<itm key="ObjectState">available</itm>
</meta>
</asset>
</assets>
</pim>
2. To get a list of assets statuses by assets ids
curl
curl --location --request POST 'http://<OMN_SERVER>/api/core/v1/dam/assets/status' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json' \
--data-raw '{
"ids": ["15185"]
}'
{
"ids": ["15185"]
}
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-09-27T12:41:38.795Z</itm>
<itm key="itemInformationType">asset</itm>
</meta>
<assets>
<asset tid="986A971D-1B8B-4E72-ACB3-0ED272CBCCC" id="15185">
<meta>
<itm key="ImportState">available</itm>
<itm key="ObjectState">available</itm>
</meta>
</asset>
</assets>
</pim>
Retrieve Histories
| /dam/assets/histories/retrieve Retrieve asset histories by specified path. |
Resource path |
/api/core/v1/dam/assets/histories/retrieve |
HTTP method |
POST |
Request content type |
application/json |
Response content type |
|
Body parameters
Specified by HistoryRequest
-
tids - (List of String) - Filter parameter, asset TIDs (Metatag GUID), identifying unique objects
-
ids - (List of Integer) - Filter parameter, asset IDs, identifying unique objects
-
paths - (List of String) - Filter parameter, asset paths, identifying unique objects
Return Type
OmnType with filled HistoriesType
Responses
| Code | Message | Datatype |
|---|---|---|
200 |
OmnType with list of histories |
|
404 |
The requested resource could not be found |
|
500 |
An unknown internal error occurred |
Samples
| Please use transform endpoint to get the JSON/compact-JSON samples from the XML one. |
Retrieve history for assets by tids/ids/paths
Request body:
{
"tids": ["71A1021B-786C-4538-8883-70A1C6754034", "5FB0C015-2937-4B5C-AD45-7E7A49EEF026"]
}
{
"ids": [25151, 25167]
}
{
"paths": ["/MAM/test/invisible/image1.png", "/MAM/test/simple/image2.png"]
}
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-05-24T06:45:03.459Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<assets>
<asset tid="71A1021B-786C-4538-8883-70A1C6754034">
<name>image1.png</name>
<meta>
<itm key="identity">25151</itm>
<itm key="pathStringStr">MAM/test/invisible/image1.png</itm>
</meta>
<histories>
<history id="98765">
<itm key='changedProperty'>prop1</itm>
<itm key='eventDate'>02.02.2022</itm>
<itm key='eventDescription'>Description</itm>
<itm key='eventIdentifier'>SAVE_DETAILS</itm>
<itm key='newValue'>NewText</itm>
<itm key='oldValue'>OldText</itm>
<itm key='userIdentifier'>admin</itm>
</history>
</histories>
</asset>
<asset tid="5FB0C015-2937-4B5C-AD45-7E7A49EEF026">
<name>image2.png</name>
<meta>
<itm key="identity">25167</itm>
<itm key="pathStringStr">MAM/test/simple/image2.png</itm>
</meta>
<history id="54321">
<itm key='changedProperty'>prop2</itm>
<itm key='eventDate'>02.02.2022</itm>
<itm key='eventDescription'>Description</itm>
<itm key='eventIdentifier'>SAVE_DETAILS</itm>
<itm key='newValue'>future</itm>
<itm key='oldValue'>past</itm>
<itm key='userIdentifier'>user</itm>
</history>
</histories>
</asset>
</assets>
</pim>
Versions API
Provides operations on OMN assets version and related version information.
Version chunked upload. Start
| /dam/assets/versions/bin/chunked/start Initialize chunk upload session for the version file. |
Initialize chunk upload session for the file
Version chunk upload workflow consist from 3 general steps like the asset upload:
|
|
Resource path |
/api/core/v1/dam/assets/versions/bin/chunked/start |
HTTP method |
POST |
Request content type |
application/json |
Response content type |
|
Body parameters
Specified by AssetVersionUploadRequest
| tid - is required and refers to asset for which version file will be uploaded. |
Return Type
PimType with filled ResponsesType
Response type contains upload tid - the unique identity of the upload session. Upload tid is required for next upload steps.
Responses
| Code | Message | Datatype |
|---|---|---|
200 |
PimType with filled ResponsesType |
|
400 |
Invalid input provided |
|
500 |
An unknown internal error occurred |
Samples
| Please use transform endpoint to get the JSON/compact-JSON samples from the XML one. |
Start upload session
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/dam/assets/versions/bin/chunked/start' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json' \
--data-raw '{
"tid": "0AA31C0C-F2AE-422C-9C6A-25BAB368706E",
}'
{
"tid":"0AA31C0C-F2AE-422C-9C6A-25BAB368706E",
}
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn">
<responses>
<response tid="614cde94-fdd6-47aa-86e6-c090d900032c">
<status>SUCCESS</status>
<description>Version chunk upload could be started by upload UUID/tid</description>
</response>
</responses>
</pim>
Error responses
<?xml version="1.0" encoding="UTF-8"?>
<response xmlns="http://www.apollon.de/omn">
<details>
<itm key="supportId">8dbfd28d-9487-4c6c-a878-9f30557f2e1b</itm>
</details>
<issues>
<itm key="code">1002</itm>
<itm key="description">The requested resource could not be found</itm>
<itms type="details">
<itm key="errorMessage">Isy object with meta tag guid '0AA31C0C-F2AE-422C-9C6A-25BAB368706E' is not found.</itm>
</itms>
</issues>
<status>ERROR</status>
</response>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn">
<responses>
<response action="update"
dataType="asset"
tid="0AA31C0C-F2AE-422C-9C6A-25BAB368706E">
<status>ERROR</status>
<description>Asset is not available by access rights</description>
</response>
</responses>
</pim>
Version chunked upload. Upload a chunk
| /dam/assets/versions/bin/chunked/upload/{uploadTid} Upload a specified chunk of an asset. |
| Upload session must be started before a chunk upload. |
Resource path |
|
HTTP method |
POST |
Request content type |
multipart/form-data |
Response content type |
|
Path Parameters
| Name | Description | Required | Default | Pattern |
|---|---|---|---|---|
uploadTid |
The session identifier of the started chunked upload. |
X |
Form Parameters
| Name | Description | Required | Default | Pattern |
|---|---|---|---|---|
chunkId |
Identity of an asset chunk which should be uploaded |
X |
Int32. Positive numbers starting from 0. |
|
payload |
Blob file |
X |
Responses
| Code | Message | Datatype |
|---|---|---|
200 |
PimType with filled ResponsesType |
|
500 |
An unknown internal error occurred |
Samples
| Please use transform endpoint to get the JSON/compact-JSON samples from the XML one. |
Upload a chunk
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/dam/assets/versions/bin/chunked/upload/614cde94-fdd6-47aa-86e6-c090d900032c' \ --header 'Authorization: Bearer <TOKEN>' \ --form 'payload=@"<PATH_TO_FILE>500x500.jpg"' \ --form 'chunkId="0";type=application/json'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn">
<responses>
<response action="create" id="0" tid="614cde94-fdd6-47aa-86e6-c090d900032c">
<status>SUCCESS</status>
<description>Chunk has been uploaded</description>
</response>
</responses>
</pim>
Version chunked upload. Finish
| /dam/assets/versions/bin/chunked/persist/{uploadTid} Finalize the chunk upload of the asset version. |
Finalize the chunking upload of the asset version.
Upload as version feature will create a version for file that currently is on the system and then replace the file on the system with the uploaded.
| Some chunks should be uploaded before notifying the server that API consumer uploaded all chunks. |
Resource path |
|
HTTP method |
PUT |
Request content type |
application/json |
Response content type |
|
Path Parameters
| Name | Description | Required | Default | Pattern |
|---|---|---|---|---|
uploadTid |
The session identifier of the started chunked upload. |
X |
Body parameters
Specified by AssetVersionUploadRequest.
Version of the existing file will be created with provided parameters AssetVersionUploadRequest
It’s a finalization step for file version upload.
The AssetVersionUploadRequest's tid parameter should be the same as was sent for /dam/assets/versions/bin/chunked/start.
|
Return Type
PimType with filled ResponsesType
Response type contains status and info about asset that was uploaded to the system.
Responses
| Code | Message | Datatype |
|---|---|---|
200 |
PimType with filled ResponsesType |
|
400 |
Invalid input provided |
|
500 |
An unknown internal error occurred |
Samples
| Please use transform endpoint to get the JSON/compact-JSON samples from the XML one. |
Finalize upload session
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/dam/assets/versions/bin/chunked/persist/614cde94-fdd6-47aa-86e6-c090d900032c' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json' \
--data-raw '{
"tid": "0AA31C0C-F2AE-422C-9C6A-25BAB368706E",
"versionComment": "Created before upload via API",
"timeoutDate": "2022-09-07T09:16:09.171Z",
"protectedAfterDate": "2022-09-07T09:16:09.171Z",
"protectedBeforeDate": "2022-09-07T09:16:09.171Z",
}'
{
"tid":"0AA31C0C-F2AE-422C-9C6A-25BAB368706E",
"versionComment": "Created before upload via API",
"timeoutDate": "{Date in the ISO8601 format}",
"protectedAfterDate": "{Date in the ISO8601 format}",
"protectedBeforeDate": "{Date in the ISO8601 format}"
}}
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn">
<responses>
<response action="update"
dataType="asset"
tid="0AA31C0C-F2AE-422C-9C6A-25BAB368706E">
<status>SUCCESS</status>
<description>Old file has been versioned and new file has been uploaded</description>
</response>
</responses>
</pim>
Error responses
It is possible, that during chunks upload, the target is not available.
<?xml version="1.0" encoding="UTF-8"?>
<response xmlns="http://www.apollon.de/omn">
<details>
<itm key="supportId">8dbfd28d-9487-4c6c-a878-9f30557f2e1b</itm>
</details>
<issues>
<itm key="code">1002</itm>
<itm key="description">The requested resource could not be found</itm>
<itms type="details">
<itm key="errorMessage">Isy object with meta tag guid '0AA31C0C-F2AE-422C-9C6A-25BAB368706E' is not found.</itm>
</itms>
</issues>
<status>ERROR</status>
</response>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn">
<responses>
<response action="update"
dataType="asset"
tid="0AA31C0C-F2AE-422C-9C6A-25BAB368706E">
<status>ERROR</status>
<description>Asset is not available by access rights</description>
</response>
</responses>
</pim>
Version upload
| /dam/assets/versions/bin/persist Upload asset as version to the system. |
Semantic is the same as in chunked version upload. Within this endpoint it’s possible to upload file per one request without splitting to chunks.
Upload as version feature will create a version for file that currently is on the system and then replace the file on the system with the uploaded.
Resource path |
|
HTTP method |
POST |
Request content type |
multipart/form-data |
Response content type |
|
Form Parameters
| Name | Description | Required | Default | Pattern |
|---|---|---|---|---|
params |
Version upload and creation parameters AssetVersionUploadRequest |
X |
||
payload |
Blob file |
X |
Return Type
PimType with filled ResponsesType
Response type contains status and info about upload asset version operation.
Responses
| Code | Message | Datatype |
|---|---|---|
200 |
PimType with filled ResponsesType |
|
400 |
Invalid input provided |
|
404 |
No asset by tid |
|
500 |
An unknown internal error occurred |
Samples
| Please use transform endpoint to get the JSON/compact-JSON samples from the XML one. |
Upload file version
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/dam/assets/versions/bin/persist' \
--header 'Authorization: Bearer <TOKEN>' \
--form 'payload=@"/<FILE_PATH>/artworks-bQbImNIL55TZ52he-gAKJ7w-t500x500.jpg"' \
--form 'params="{\"versionComment\": \"Created before upload via API\", \"tid\":\"F103F147-428C-4427-AA65-8A46AE066803\"}";type=application/json'
{
"tid":"F103F147-428C-4427-AA65-8A46AE066803",
"versionComment": "Created before upload via API",
"timeoutDate": "{Date in the ISO8601 format}",
"protectedAfterDate": "{Date in the ISO8601 format}",
"protectedBeforeDate": "{Date in the ISO8601 format}"
}
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-07-16T09:30:46.743Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="asset"
tid="F103F147-428C-4427-AA65-8A46AE066803"
action="update">
<status>SUCCESS</status>
<description>Old file has been versioned and new file has been uploaded</description>
</response>
</responses>
</pim>
Error response
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-07-16T09:45:15.768Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="asset"
tid="BA7A3E08-A48B-47FE-8150-6986A61588732"
action="update">
<status>ERROR</status>
<description>Asset is not available by access rights</description>
</response>
</responses>
</pim>
Retrieve Binary Versions
| /dam/assets/versions/bin Retrieves the binary data of asset version. |
Resource path |
/api/core/v1/dam/assets/versions/bin |
HTTP method |
POST |
Request content type |
Request params |
Response content type |
application/octet-stream |
Body parameters
Specified by request URL params
-
assetTid - (String) - tid of asset
-
assetId - (Integer) - identity of asset
-
format - (String) - type of version preview
-
versionNumber - (Integer) - number of version
-
versionTid - (String) - tid of version
Responses
| Code | Message | Datatype |
|---|---|---|
200 |
OmnType with list of keywords |
|
404 |
The requested resource could not be found |
|
500 |
An unknown internal error occurred |
Samples
1. Retrieve binary version by assetId
curl --location --request POST 'http://<OMN_SERVER>/api/core/v1/dam/assets/versions/bin?assetId=<ASSET_IDENTITY>&versionNumber=<VERSION_NUMBER>' \
--header 'Authorization: Bearer <TOKEN> ' \
--data-raw ''
Request params:
assetId=12345, versionNumber=1
Response body:
apollon_logo_original.png
2. Retrieve binary version by assetTid
curl --location --request POST 'http://<OMN_SERVER>/api/core/v1/dam/assets/versions/bin?assetTid=<ASSET_TID>&versionNumber=<VERSION_NUMBER>' \
--header 'Authorization: Bearer <TOKEN> ' \
--data-raw ''
Request params:
assetId=B29ECF60-0AB0-431D-8510-94490F27B229, versionNumber=1
Response body:
apollon_logo_original.png
3. Retrieve version preview by version tid and preview type
curl --location --request POST 'http://<OMN_SERVER>/api/core/v1/dam/assets/versions/bin?versionTid=<VERSION_TID>&format=<PREVIEW_FORMAT>' \
--header 'Authorization: Bearer <TOKEN> ' \
--data-raw ''
Request params:
versionTid=B29ECF60-0AB0-431D-8510-94490F27B229, previewType=previewThumbnail
Response body:
thumbnail.png
Variations API
Provides operations on OMN asset variations.
Retrieve variations
| /dam/assets/variations/retrieve Retrieves asset variations. |
Variation object represents link between assets.
Resource path |
/api/core/v1/dam/assets/variations/retrieve |
HTTP method |
POST |
Request content type |
application/json |
Response content type |
|
Body parameters
Specified by VariationRequest
Return Type
OmnType with filled VariationsType. More info VariationType
Responses
| Code | Message | Datatype |
|---|---|---|
200 |
OmnType with list of asset variations |
|
500 |
Error in ResponseType |
Samples
| Please use transform endpoint to get the JSON/compact-JSON samples from the XML one. |
Get asset variations
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/dam/assets/variations/retrieve' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json' \
--data-raw '{
"assetPaths": ["/MAM/demo/copies/tempAR/pcUXFux_77I.jpg", "/MAM/demo/artworks-bQbImNIL55TZ52he-gAKJ7w-t500x500_print_variation.jpg"]
}'
Request body examples:
{
"assetIds": [12333]
}
{
"assetTids": ["38043B75-5BB3-44CE-AFD1-401503C6F322"]
}
{
"assetPaths": ["/RNC/Dir1/Dir2/file.jpg"]
}
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-09-01T11:41:47.507Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<variations>
<variation assetId="86430" assetTid="DB32DAAC-6A80-4BEB-A09C-C020CA941F4E"/>
<variation assetId="87960"
assetTid="C6E3F14B-092A-4267-9A5D-C16FE4295DC3"
parentTid="DB32DAAC-6A80-4BEB-A09C-C020CA941F4E">
<meta>
<itm key="variationType">Print</itm>
</meta>
</variation>
<variation assetId="87961"
assetTid="11319367-DE26-4FB8-9148-3C341766C1BA"
parentTid="C6E3F14B-092A-4267-9A5D-C16FE4295DC3">
<meta>
<itm key="variationType">Print</itm>
</meta>
</variation>
</variations>
</pim>
Retrieve variation types
| /dam/assets/variations/types Retrieves asset variation types. |
Resource path |
/api/core/v1/dam/assets/variations/types |
HTTP method |
GET |
Response content type |
|
Return Type
OmnType with filled VariationTypesType. More info VariationTypeType
Responses
| Code | Message | Datatype |
|---|---|---|
200 |
OmnType with filled VariationTypesType |
|
400 |
Invalid input provided |
|
401 |
Not authorized |
|
404 |
Not found |
|
500 |
An unknown internal error occurred |
Samples
| Please use transform endpoint to get the JSON/compact-JSON samples from the XML one. |
Request examples
curl --location --request GET 'http://<OMN_SERVER>/api/core/v1/dam/assets/variations/types' \
--header 'Authorization: Bearer <TOKEN>' \
--data-raw ''
Response example
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn">
<variationTypes>
<variationType tid="Print"/>
</variationTypes>
</pim>
Upload as Variation
| /dam/assets/variations/bin/persist Upload file as variation to the system. |
Resource path |
|
HTTP method |
POST |
Request content type |
multipart/form-data |
Response content type |
|
Form Parameters
| AssetVariationUploadRequest.tid should be provided to the OMN asset. |
| Name | Description | Required |
|---|---|---|
params |
Upload parameters AssetVariationUploadRequest |
X |
payload |
Blob file |
X |
Return Type
PimType with filled ResponsesType
Response type contains status and info about uploaded asset variation.
Responses
| Code | Message | Datatype |
|---|---|---|
200 |
PimType with filled ResponsesType |
|
400 |
Invalid input |
|
404 |
The requested resource could not be found |
|
500 |
An unknown internal error occurred |
Samples
| Please use transform endpoint to get the JSON/compact-JSON samples from the XML one. |
1. Upload a file as variation
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/dam/assets/variations/bin/persist' \
--header 'Authorization: Bearer <TOKEN>' \
--form 'payload=@"/<FILE_PATH>/artworks-bQbImNIL55TZ52he-gAKJ7w-t500x500.jpg"' \
--form 'params="{
\"tid\":\"52F78637-63AE-4F3E-8D4B-664E070C6AB8\",
\"variationType\": \"Print\"
}";type=application/json'
{
"tid": "52F78637-63AE-4F3E-8D4B-664E070C6AB8",
"variationType": "Print"
}
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-07-16T09:30:46.743Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="variation"
tid="52F78637-63AE-4F3E-8D4B-664E070C6AB8"
action="update">
<status>SUCCESS</status>
<description>Asset variation has been created</description>
</response>
</responses>
</pim>
2. Upload a file as variation with specified name
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/dam/assets/variations/bin/persist' \
--header 'Authorization: Bearer <TOKEN>' \
--form 'payload=@"/<FILE_PATH>/artworks-bQbImNIL55TZ52he-gAKJ7w-t500x500.jpg"' \
--form 'params="{
\"tid\":\"52F78637-63AE-4F3E-8D4B-664E070C6AB8\",
\"variationType\": \"Print\",
\"variationFileName\": \"assetVariation.png\"
}";type=application/json'
{
"tid": "52F78637-63AE-4F3E-8D4B-664E070C6AB8",
"variationType": "Print",
"variationFileName": "assetVariation.png"
}
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-07-16T09:30:46.743Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="variation"
tid="52F78637-63AE-4F3E-8D4B-664E070C6AB8"
action="update">
<status>SUCCESS</status>
<description>Asset variation has been created</description>
</response>
</responses>
</pim>
Error response
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-07-16T09:45:15.768Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="variation"
tid="52F78637-63AE-4F3E-8D4B-664E070C6AB8"
action="update">
<status>ERROR</status>
<description>Asset is not available by access rights</description>
</response>
</responses>
</pim>
Directories API
Provides operations on OMN directories.
Retrieve directories
| /dam/dirs/retrieve Retrieves a list of sub-directories of the given RNC or directory. .Details |
Resource path |
/api/core/v1/dam/dirs/retrieve |
HTTP method |
POST |
Request content type |
application/json |
Response content type |
|
Body parameters
Specified by DirectoryRequest
-
rncTid: it might be used to get a top level directories within the given RNC
-
dirTid: it might be used to get a list of directories
-
dirPath: it might be used to get a list of directories
-
level: it sets how many directory level should be loaded Default value is 1. "-1" means to load all levels. 0 (zero) - is invalid value
Return Type
PimType with filled DirectoriesType. More info DirectoryType
Responses
| Code | Message | Datatype |
|---|---|---|
200 |
PimType with filled DirectoriesType |
|
400 |
Invalid input provided |
|
401 |
Not authorized |
|
404 |
Not found |
|
500 |
An unknown internal error occurred |
Samples
| Please use transform endpoint to get the JSON/compact-JSON samples from the XML one. |
1. To get a list of directories of a given RNC using rncTid parameter
curl
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/dam/dirs/retrieve' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json' \
--data-raw '{
"rncTid": "MAM",
"level": 1
}'
{
"rncTid": "MAM",
"level": 1
}
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-03-22T11:14:11.882Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<dirs>
<dir tid="tid1" rnc="DATA">
<name>directory1</name>
<meta>
<itm key="discriminator">DIR</itm>
<itm key="identity">26576991</itm>
<itm key="creationDate">2019-05-03T15:50:55.664Z</itm>
<itm key="modificationDate">2020-02-14T17:58:59.275Z</itm>
</meta>
</dir>
<dir tid="tid2" rnc="DATA">
<name>directory2</name>
<meta>
<itm key="discriminator">DIR</itm>
<itm key="identity">26576992</itm>
<itm key="creationDate">2019-05-03T15:50:55.664Z</itm>
<itm key="modificationDate">2020-02-14T17:58:59.275Z</itm>
</meta>
</dir>
</dirs>
</pim>
2. To get a list of directories of a given RNC using dirPath parameter
curl
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/dam/dirs/retrieve' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json' \
--data-raw '{
"dirPath": "/DATA",
"level": 1
}'
{
"dirPath": "/DATA",
"level": 1
}
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-03-22T11:14:11.882Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<dirs>
<dir tid="tid1" rnc="DATA">
<name>directory1</name>
<meta>
<itm key="discriminator">DIR</itm>
<itm key="identity">26576991</itm>
<itm key="creationDate">2019-05-03T15:50:55.664Z</itm>
<itm key="modificationDate">2020-02-14T17:58:59.275Z</itm>
</meta>
</dir>
<dir tid="tid2" rnc="DATA">
<name>directory2</name>
<meta>
<itm key="discriminator">DIR</itm>
<itm key="identity">26576992</itm>
<itm key="creationDate">2019-05-03T15:50:55.664Z</itm>
<itm key="modificationDate">2020-02-14T17:58:59.275Z</itm>
</meta>
</dir>
</dirs>
</pim>
3. To get a list of sub-directories of a directory by dirTid parameter:
curl
curl --location --request POST 'http://<OMN_SERVER>/api/core/v1/dam/dirs/retrieve' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json' \
--data-raw '{
"dirTid": "2401C4CE-D223-4C3B-AE20-6260DFA6ECC5",
"level": 1
}'
{
"dirTid": "2401C4CE-D223-4C3B-AE20-6260DFA6ECC5",
"level": 1
}
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-03-22T11:14:11.882Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<dirs>
<dir tid="tid1" parent="tid0">
<name>directory1</name>
<meta>
...
</meta>
</dir>
<dir tid="tid1.1" parent="tid1">
<name>directory1.1</name>
<meta>
...
</meta>
</dir>
<dir tid="tid2" parent="tid0">
<name>directory2</name>
<meta>
...
</meta>
</dir>
</dirs>
</pim>
4. To get a list of sub-directories of a directory by dirPath parameter:
curl
curl --location --request POST 'http://<OMN_SERVER>/api/core/v1/dam/dirs/retrieve' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json' \
--data-raw '{
"dirPath": "2401C4CE-D223-4C3B-AE20-6260DFA6ECC5",
"level": 1
}'
{
"dirPath": "/DATA/assets",
"level": 1
}
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-03-22T11:14:11.882Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<dirs>
<dir tid="tid1" parent="tid0">
<name>directory1</name>
<meta>
...
</meta>
</dir>
<dir tid="tid1.1" parent="tid1">
<name>directory1.1</name>
<meta>
...
</meta>
</dir>
<dir tid="tid2" parent="tid0">
<name>directory2</name>
<meta>
...
</meta>
</dir>
</dirs>
</pim>
Persist directories
| /dam/dirs/persist Persist a list of directories. |
Resource path |
/api/core/v1/dam/dirs/persist |
HTTP method |
POST |
Request content type |
|
Response content type |
|
Directory attributes
Directory attributes are stored in DirectoryType.vals
Directory attributes type and examples
| Attribute type | Is localized | Response template | Example |
|---|---|---|---|
Boolean |
|
|
|
Boolean |
X |
|
|
Date |
|
|
|
Date |
X |
|
|
Enumeration |
|
|
|
Enumeration |
X |
|
|
Number |
|
|
|
Number |
X |
|
|
String |
|
|
|
String |
X |
|
|
Body parameters
PimType with DirectoriesType
Specified by DirectoryType
-
rnc: root node configuration
-
tid: unique identifier
-
parent: parent directory unique identifier
-
name: new directory name
| Directory attributes can be persisted in the same request with directory. See Directory attributes |
Return Type
PimType with filled ResponsesType
Responses
| Code | Message | Datatype |
|---|---|---|
200 |
PimType with list of successful or error ResponseTypes |
|
400 |
Invalid input provided |
|
401 |
Not authorized |
|
404 |
Not found |
|
500 |
An unknown internal error occurred |
Samples
| Please use transform endpoint to get the JSON/compact-JSON samples from the XML one. |
1. Create a directory:
1.1. Create in the given RNC
curl
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/dam/dirs/persist' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/xml' \
--data-raw '<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<dirs>
<dir rnc="MAM">
<name>New directory</name>
</dir>
</dirs>
</pim>'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<dirs>
<dir rnc="MAM">
<name>New Directory</name>
</dir>
</dirs>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-05-13T16:20:23.420Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="dir"
tid="7D534991-B623-418C-A7CB-A273C877A37D"
action="create">
<status>SUCCESS</status>
<description>The directory has been saved successfully</description>
</response>
</responses>
</pim>
1.2. Create in the given parent directory
curl
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/dam/dirs/persist' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/xml' \
--data-raw '<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<dirs>
<dir parent="63FBCD05-4DB0-42D5-AB13-C87F3366CA82">
<name>New directory</name>
</dir>
</dirs>
</pim>'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<dirs>
<dir parent="483AAC0B-57F2-4B70-95F9-FF1DAD9AA9C6">
<name>New Directory</name>
</dir>
</dirs>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-05-13T16:20:23.420Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="dir"
tid="7D534991-B623-418C-A7CB-A273C877A37D"
action="create">
<status>SUCCESS</status>
<description>The directory has been saved successfully</description>
</response>
</responses>
</pim>
Error responses
Missing directory parameter 'name'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-07-06T11:45:41.247Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="dir" action="create">
<status>ERROR</status>
<description>Missing directory parameter 'name'"</description>
</response>
</responses>
</pim>
2. Update a directory
2.1. Update in the given RNC
curl
curl --location --request POST 'http://<OMN_SERVER>/api/core/v1/dam/dirs/persist' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/xml' \
--data-raw '<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<dirs>
<dir tid="7D534991-B623-418C-A7CB-A273C877A37D" rnc="MAM">
<name>Updated Directory</name>
</dir>
</dirs>
</pim>'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<dirs>
<dir tid="7D534991-B623-418C-A7CB-A273C877A37D" rnc="MAM">
<name>Updated Directory</name>
</dir>
</dirs>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-05-13T16:25:28.200Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="dir"
tid="7D534991-B623-418C-A7CB-A273C877A37D"
action="update">
<status>SUCCESS</status>
<description>The directory has been saved successfully</description>
</response>
</responses>
</pim>
2.2. Update in the parent directory
curl
curl --location --request POST 'http://<OMN_SERVER>/api/core/v1/dam/dirs/persist' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/xml' \
--data-raw '<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<dirs>
<dir tid="41A7CF7F-60DA-4F76-8288-D9721389812A" parent="778B4AFD-6EC5-45D8-95B4-DA2213243B77">
<name>Updated Directory</name>
</dir>
</dirs>
</pim>'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<dirs>
<dir tid="41A7CF7F-60DA-4F76-8288-D9721389812A" parent="778B4AFD-6EC5-45D8-95B4-DA2213243B77">
<name>Updated Directory</name>
</dir>
</dirs>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-05-13T16:25:28.200Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="dir"
tid="7D534991-B623-418C-A7CB-A273C877A37D"
action="update">
<status>SUCCESS</status>
<description>The directory has been saved successfully</description>
</response>
</responses>
</pim>
Error responses
Move directory to itself or to the parent directory
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-07-06T11:45:41.247Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="dir" action="update">
<status>ERROR</status>
<description>"Target directory is itself or target parent directory"</description>
</response>
</responses>
</pim>
Missing directory parameter 'name' when updating
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-07-06T11:45:41.247Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="dir" action="update">
<status>ERROR</status>
<description>Missing directory parameter 'name'</description>
</response>
</responses>
</pim>
Common error responses
Directory attributes missing
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-07-06T11:45:41.247Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="dir" action="create">
<status>ERROR</status>
<description>Directory attributes missing: 'rnc' or 'parent' attribute must be</description>
</response>
</responses>
</pim>
Directory attributes mismatched
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-07-06T11:45:41.247Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="dir" action="create">
<status>ERROR</status>
<description>There must be only one of the attributes - 'rnc' or 'parent'</description>
</response>
</responses>
</pim>
Permissions missing
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-07-06T11:45:41.247Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="dir" action="create">
<status>ERROR</status>
<description>Permissions missing for directory with tid '7D534991-B623-418C-A7CB-A273C877A37D'</description>
</response>
</responses>
</pim>
RNC not found
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-07-06T11:45:41.247Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="dir" action="create">
<status>ERROR</status>
<description>Cannot find RNC with identifier 'MAM'</description>
</response>
</responses>
</pim>
Directory already exists
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-07-06T11:45:41.247Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="dir" action="create">
<status>ERROR</status>
<description>Directory with name 'Directory' already exists</description>
</response>
</responses>
</pim>
Parent directory not found
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-07-06T11:45:41.247Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="dir" action="create">
<status>ERROR</status>
<description>Directory not found</description>
</response>
</responses>
</pim>
File Management Synchronizer error
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-07-06T11:45:41.247Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="dir" action="create">
<status>ERROR</status>
<description>File Management Synchronizer error</description>
</response>
</responses>
</pim>
Directory not found
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-07-06T11:45:41.247Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="dir" action="update">
<status>ERROR</status>
<description>Cannot find directory with tid '7D534991-B623-418C-A7CB-A273C877A37D'</description>
</response>
</responses>
</pim>
Perform directories
| /dam/dirs/perform Perform action of the specific type on directory |
Resource path |
/api/core/v1/dam/dirs/perform |
HTTP method |
POST |
Request content type |
|
Response content type |
|
Body parameters
PimType with filled ActionsType
Provided ActionTypes must have the following fields:
-
Data type: dir;
-
tid, id or path of directory;
-
Action type: delete, move, copy, createPath.
Return Type
PimType with filled ResponsesType
Responses
| Code | Message | Datatype |
|---|---|---|
200 |
PimType with list of successful or error ResponseTypes |
|
400 |
Invalid input provided |
|
401 |
Not authorized |
|
404 |
Not found |
|
500 |
An unknown internal error occurred |
Samples
| Please use transform endpoint to get the JSON/compact-JSON samples from the XML one. |
1. Delete directory
1.1. Delete by tid
curl
curl --location --request POST 'http://<OMN_SERVER>/api/core/v1/dam/dirs/perform' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/xml' \
--data-raw '<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-04T10:10:16.774Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<actions>
<action dataType="dir" tid="730DD2AE-3AEA-4A13-9C3A-C6EC3C94ADCE" type="delete"/>
</actions>
</pim>'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-04T10:10:16.774Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<actions>
<action dataType="dir" tid="730DD2AE-3AEA-4A13-9C3A-C6EC3C94ADCE" type="delete"/>
</actions>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-12-09T11:39:25.555Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="dir"
tid="51F78647-63AE-4F3E-8D4B-664E070C6AA2"
action="delete">
<status>SUCCESS</status>
<description>The directory has been deleted successfully</description>
</response>
</responses>
</pim>
2. Move directory
2.1. Move by tid
curl
curl --location --request POST 'http://<OMN_SERVER>/api/core/v1/dam/dirs/perform' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/xml' \
--data-raw '<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-08T12:54:32.990Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<actions>
<action dataType="dir" tid="E769ABBC-9AFC-47F2-8983-8DB40610937B" type="move">
<meta>
<itm key="destinationDirTid">EEB36E10-5B45-492A-BAB5-5737DDCC9B12</itm>
<itm key="overwrite">false</itm>
</meta>
</action>
</actions>
</pim>'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-08T12:54:32.990Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<actions>
<action dataType="dir" tid="E769ABBC-9AFC-47F2-8983-8DB40610937B" type="move">
<meta>
<itm key="destinationDirTid">EEB36E10-5B45-492A-BAB5-5737DDCC9B12</itm>
<itm key="overwrite">false</itm>
</meta>
</action>
</actions>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-08-18T06:22:10.069Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="dir"
tid="E54AC373-09D8-478D-B201-9775D046EF4F"
id="23902"
action="move"
path="/MAM/dirToMove">
<status>SUCCESS</status>
<description>dir has been moved</description>
<details>
<itm key="monitorId">23955</itm>
</details>
</response>
</responses>
</pim>
2.2. Move by id
curl
curl --location --request POST 'http://<OMN_SERVER>/api/core/v1/dam/dirs/perform' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/xml' \
--data-raw '<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-08T12:54:32.990Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<actions>
<action dataType="dir" id="23901" type="move">
<meta>
<itm key="destinationDirId">23900</itm>
<itm key="overwrite">false</itm>
</meta>
</action>
</actions>
</pim>'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-08T12:54:32.990Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<actions>
<action dataType="dir" id="23901" type="move">
<meta>
<itm key="destinationDirId">23900</itm>
<itm key="overwrite">false</itm>
</meta>
</action>
</actions>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-08-18T06:22:10.069Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="dir"
tid="E54AC373-09D8-478D-B201-9775D046EF4F"
id="23902"
action="move"
path="/MAM/dirToMove">
<status>SUCCESS</status>
<description>dir has been moved</description>
<details>
<itm key="monitorId">23955</itm>
</details>
</response>
</responses>
</pim>
2.3. Move by path
curl
curl --location --request POST 'http://<OMN_SERVER>/api/core/v1/dam/dirs/perform' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/xml' \
--data-raw '<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-08T12:54:32.990Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<actions>
<action dataType="dir" path="/MAM/dirToMove" type="move">
<meta>
<itm key="destinationDirPath">/MAM/destinationDir</itm>
<itm key="overwrite">false</itm>
</meta>
</action>
</actions>
</pim>'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-08T12:54:32.990Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<actions>
<action dataType="dir" path="/MAM/dirToMove" type="move">
<meta>
<itm key="destinationDirPath">/MAM/destinationDir</itm>
<itm key="overwrite">false</itm>
</meta>
</action>
</actions>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-08-18T06:22:10.069Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="dir"
tid="E54AC373-09D8-478D-B201-9775D046EF4F"
id="23902"
action="move"
path="/MAM/dirToMove">
<status>SUCCESS</status>
<description>dir has been moved</description>
<details>
<itm key="monitorId">23955</itm>
</details>
</response>
</responses>
</pim>
Error responses
Destination directory does not exist
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-08-18T06:27:00.349Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="dir" action="move" path="/MAM/dirToMove">
<status>ERROR</status>
<description>The directory does not exist</description>
</response>
</responses>
</pim>
No access to destination directory
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-08-18T07:00:03.303Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="dir"
tid="4E1D4697-5085-4BDA-80CE-8DDCEAA9E584"
id="23905"
action="move"
path="/MAM/dirToMove">
<status>ERROR</status>
<description>Error during moving: No access to destination object '/destinationDir'</description>
</response>
</responses>
</pim>
Collision during move
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-08-18T06:22:10.069Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="dir"
tid="E54AC373-09D8-478D-B201-9775D046EF4F"
id="23902"
action="move"
path="/MAM/dirToMove">
<status>ERROR</status>
<description>Collision during move. Collision dir name:'dirToMove'</description>
<details>
<itm key="collision">true</itm>
<itm key="monitorId">77835</itm>
</details>
</response>
</responses>
</pim>
3. Copy directory
3.1. Copy by tid
curl
curl --location --request POST 'http://<OMN_SERVER>/api/core/v1/dam/dirs/perform' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/xml' \
--data-raw '<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-08T12:54:32.990Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<actions>
<action dataType="dir" tid="957836F4-840A-492B-B149-9720D177BC56" type="copy">
<meta>
<itm key="destinationDirTid">957836F4-840A-492B-B149-9720D177BC59</itm>
<itm key="overwrite">false</itm>
</meta>
</action>
</actions>
</pim>'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-08T12:54:32.990Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<actions>
<action dataType="dir" tid="957836F4-840A-492B-B149-9720D177BC56" type="copy">
<meta>
<itm key="destinationDirTid">957836F4-840A-492B-B149-9720D177BC59</itm>
<itm key="overwrite">false</itm>
</meta>
</action>
</actions>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-08-19T11:54:34.959Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="dir"
tid="957836F4-840A-492B-B149-9720D177BC56"
id="72030"
action="copy"
path="/MAM/demo/copies/tempAR">
<status>SUCCESS</status>
<description>dir has been copied</description>
<details>
<itm key="monitorId">79851</itm>
</details>
</response>
</responses>
</pim>
3.2. Copy by id
curl
curl --location --request POST 'http://<OMN_SERVER>/api/core/v1/dam/dirs/perform' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/xml' \
--data-raw '<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-08T12:54:32.990Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<actions>
<action dataType="dir" id="3221749" type="copy">
<meta>
<itm key="destinationDirId">2376394</itm>
<itm key="overwrite">false</itm>
</meta>
</action>
</actions>
</pim>'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-08T12:54:32.990Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<actions>
<action dataType="dir" id="3221749" type="copy">
<meta>
<itm key="destinationDirId">2376394</itm>
<itm key="overwrite">false</itm>
</meta>
</action>
</actions>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-08-19T11:54:34.959Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="dir"
tid="957836F4-840A-492B-B149-9720D177BC56"
id="72030"
action="copy"
path="/MAM/demo/copies/tempAR">
<status>SUCCESS</status>
<description>dir has been copied</description>
<details>
<itm key="monitorId">79851</itm>
</details>
</response>
</responses>
</pim>
3.3. Copy by path
curl
curl --location --request POST 'http://<OMN_SERVER>/api/core/v1/dam/dirs/perform' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/xml' \
--data-raw '<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-08T12:54:32.990Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<actions>
<action dataType="dir" path="/MAM/demo/copies/tempAR" type="copy">
<meta>
<itm key="destinationDirPath">/MAM/</itm>
<itm key="overwrite">false</itm>
</meta>
</action>
</actions>
</pim>'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-08T12:54:32.990Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<actions>
<action dataType="dir" path="/MAM/demo/copies/tempAR" type="copy">
<meta>
<itm key="destinationDirPath">/MAM/</itm>
<itm key="overwrite">false</itm>
</meta>
</action>
</actions>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-08-19T11:54:34.959Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="dir"
tid="957836F4-840A-492B-B149-9720D177BC56"
id="72030"
action="copy"
path="/MAM/demo/copies/tempAR">
<status>SUCCESS</status>
<description>dir has been copied</description>
<details>
<itm key="monitorId">79851</itm>
</details>
</response>
</responses>
</pim>
Error responses
Destination directory does not exist
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-08-18T06:27:00.349Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="dir" action="copy" path="/MAM/dirToCopy">
<status>ERROR</status>
<description>The directory does not exist</description>
</response>
</responses>
</pim>
No access to destination directory
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-08-18T07:00:03.303Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="dir"
tid="4E1D4697-5085-4BDA-80CE-8DDCEAA9E584"
id="23905"
action="copy"
path="/MAM/dirToCopy">
<status>ERROR</status>
<description>Error during moving: No access to destination object '/destinationDir'</description>
</response>
</responses>
</pim>
Collision during copy
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-08-19T12:46:31.213Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="dir"
tid="957836F4-840A-492B-B149-9720D177BC56"
id="72030"
action="copy"
path="/MAM/demo/copies/tempAR">
<status>ERROR</status>
<description>Collision during copy. Collision dir name:'tempAR'</description>
<details>
<itm key="collision">true</itm>
<itm key="monitorId">79856</itm>
</details>
</response>
</responses>
</pim>
3. Create path (multiple directories)
3.1. Create by path
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<actions>
<action dataType="dir" path="/MAM/test2/1" type="createPath"/>
</actions>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2023-10-19T11:35:25.013Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response action="create" dataType="dir" tid="0E680AA4-5749-46FB-8A46-02282E37BAC1">
<description>The directory has been saved successfully</description>
<status>SUCCESS</status>
</response>
</responses>
</pim>
Common error responses
Directory does not exist
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-04T13:36:54.983Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="dir"
tid="37590039-3AEA-4A13-9C3A-C6EC3C94ADCE2"
action="delete">
<status>ERROR</status>
<description>Cannot find directory with tid '37590039-3AEA-4A13-9C3A-C6EC3C94ADCE2'</description>
</response>
</responses>
</pim>
Wrong request data type
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-04T13:38:16.444Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="asset"
tid="37590039-3AEA-4A13-9C3A-C6EC3C94ADCE2"
action="delete">
<status>ERROR</status>
<description>The data type of the passed item is wrong. It must be 'dir'</description>
</response>
</responses>
</pim>
No access to directory
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-08-18T07:04:12.515Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="dir"
tid="4E1D4697-5085-4BDA-80CE-8DDCEAA9E584"
id="23905"
action="move"
path="/MAM/dirToMove">
<status>ERROR</status>
<description>Error during moving: No access to source objects</description>
</response>
</responses>
</pim>
RNCs API
Provides operations on OMN Root nodes configurations.
Retrieve RNCs
| /dam/rncs/retrieve Returns all Root Node Configurations [RNC]. |
Resource path |
/api/core/v1/dam/rncs/retrieve |
HTTP method |
POST |
Request content type |
|
Response content type |
|
Responses
| Code | Message | Datatype |
|---|---|---|
200 |
PimType with list of RNCs |
|
404 |
The requested resource could not be found |
|
500 |
An unknown internal error occurred |
Samples
| Please use transform endpoint to get the JSON/compact-JSON samples from the XML one. |
Retrieve RNCs
curl --location --request POST 'http://<OMN_SERVER>/api/core/v1/dam/rncs/retrieve' \
--header 'Authorization: Bearer <TOKEN>' \
--data-raw ''
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-07-18T03:46:11.950Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<rncs>
<rnc tid="MAM">
<meta>
<itm key="rncCreationDate">2022-01-13T05:34:43.262Z</itm>
<itm key="rncDisablePreviewGeneration">false</itm>
<itm key="rncEventBasePath">/localhost/omn/data/MAM/</itm>
<itm key="rncIdentifier">MAM</itm>
<itm key="rncIdentity">15030</itm>
<itm key="rncLocalPathAsString">/omn/data/MAM/</itm>
<itm key="rncModificationDate">2022-01-13T05:34:43.262Z</itm>
<itm key="rncOriginalMaxSize">1280x1024</itm>
<itm key="rncOriginalResolution">72</itm>
<itm key="rncPdfFirstPagePreviewOnly">false</itm>
<itm key="rncUseResolution">false</itm>
<itm key="rncVolumeName">MAM</itm>
<itm key="rndDisableEvents">false</itm>
<itm key="serverDescription"/>
<itm key="serverHost">localhost</itm>
<itm key="serverIdentifier">localhost</itm>
<itm key="serverIdentity">15020</itm>
<itm key="serverPort">6900</itm>
</meta>
</rnc>
</rncs>
</pim>
PIM API
PIM API provides access to product management resources of OMN and operations on them.
PIM API provides access to resources of the PIM module. PIM is an abbreviation for Product Information Management. It refers to the management of all product-defining information and its provision for use in output channels. In addition to the classic product master data (item price, technical specifications, etc.), this information also includes advertising texts and associated image material. The supporting technology is called PIM system.
Main resources:
| Resource | Description |
|---|---|
Product |
General form of an item. A product comprises the subset of articles. Products are usually not order-able without further specification by the customer. E.g. T-shirt "Model A". |
Attribute |
Product property that is maintained in a separate (database) field (e.g. length, weight, price). A text field containing marketing information is also an attribute of an item or product in OMN. |
Attribute Definition |
Define attributes, their localized name, type (e.g. text), domain values and the value cardinality. |
Classification Node |
Represents a node in the classification tree which can be used to classify product types. |
Classifications API
Provides operations on OMN classifications.
GET /pim/classes
| /pim/classes Get classifications. Operation Id:: getClasses |
get classes
Retrieve classifications
| /pim/classes/retrieve Retrieve classifications information without or with nodes and nodes attributes. |
The endpoint could provide information about classifications, nodes and nodes attributes.
Resource path |
/api/core/v1/pim/classes/retrieve |
HTTP method |
POST |
Request content type |
application/json |
Response content type |
|
Body parameters
Specified by ClassificationRequest
-
ids: it might be used to get classifications by id's
-
tids: it might be used to get classifications by tid's
-
withNodes: it might be used to get classifications with nodes
-
flatNodes: it might be used to get classification nodes in flat structure. By default parameter value is true.
|
Return Type
PimType with filled ClassificationsType. More info ClassificationType
Responses
| Code | Message | Datatype |
|---|---|---|
200 |
PimType with filled ClassificationsType |
|
400 |
Invalid input provided |
|
401 |
Not authorized |
|
404 |
Not found |
|
500 |
An unknown internal error occurred |
Samples
| Please use transform endpoint to get the JSON/compact-JSON samples from the XML one. |
1. To get a list of classifications by tids without nodes
curl
curl --location --request POST 'http://<OMN_SERVER>/api/core/v1/pim/classes/retrieve' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json' \
--header 'Accept: application/xml (or application/json)' \
--data-raw '{
"tids":["Standard", "Standart"]
}'
{
"tids":["Standard", "Standart"]
}
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-12-21T08:44:09.377Z</itm>
<itm key="sourceEnv">web</itm>
<itm key="itemInformationType">classification</itm>
</meta>
<classes>
<class tid="Standard">
<name/>
</class>
<class tid="Standart">
<name/>
</class>
</classes>
</pim>
{
"meta": {
"messageType": "request",
"messageTime": "2022-12-21T08:44:09.377Z",
"sourceEnv": "web",
"itemInformationType": "classification"
},
"classes": {
"entries": [
{
"name": {},
"tid": "Standard"
},
{
"name": {},
"tid": "Standart"
}
]
},
"schemaVersion": "5.6.0"
}
2. To get a list of classifications by ids without nodes
curl
curl --location --request POST 'http://<OMN_SERVER>/api/core/v1/pim/classes/retrieve' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json' \
--header 'Accept: application/xml (or application/json)' \
--data-raw '{
"ids":[15360, 1]
}'
{
"ids":[15360, 1]
}
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-12-21T08:48:01.469Z</itm>
<itm key="sourceEnv">web</itm>
<itm key="itemInformationType">classification</itm>
</meta>
<classes>
<class tid="Standard">
<name/>
</class>
<class tid="Standart">
<name/>
</class>
</classes>
</pim>
{
"meta": {
"messageType": "request",
"messageTime": "2022-12-21T08:44:09.377Z",
"sourceEnv": "web",
"itemInformationType": "classification"
},
"classes": {
"entries": [
{
"name": {},
"tid": "Standard"
},
{
"name": {},
"tid": "Standart"
}
]
},
"schemaVersion": "5.6.0"
}
3. To get a list of classifications by tids with nodes and attributes in flat structure
curl
curl --location --request POST 'http://<OMN_SERVER>/api/core/v1/pim/classes/retrieve' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json' \
--data-raw '{
"tids":["Standard"],
"withNodes":true
}'
{
"tids":["Standard"],
"withNodes":true
}
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-12-21T09:06:52.939Z</itm>
<itm key="sourceEnv">web</itm>
<itm key="itemInformationType">classification</itm>
</meta>
<classes>
<class tid="Standard">
<name/>
</class>
</classes>
<nodes>
<node class="Standard" id="15370" path="/Standard">
<name/>
<attr inheritance="visible"
key="gender"
level="p"
localized="true"
restriction="optional">
<domainVals allowNewValue="false" sortDirection="MANUAL">
<domainVal tid="female">
<itm loc="en_EN">female</itm>
<itm loc="de_DE">weiblich</itm>
</domainVal>
</domainVals>
</attr>
</node>
<node class="Standard"
id="15371"
parentId="15370"
parentPath="/Standard"
path="/Standard/Bekleidung">
<name/>
</node>
</nodes>
</pim>
4. To get a list of classifications by tids with nodes and attributes in tree structure
curl
curl --location --request POST 'http://<OMN_SERVER>/api/core/v1/pim/classes/retrieve' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json' \
--data-raw '{
"tids":["Standard"],
"withNodes":true,
"flatNodes": false
}'
{
"tids":["Standard"],
"withNodes":true,
"flatNodes": false
}
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-12-21T09:15:21.161Z</itm>
<itm key="sourceEnv">web</itm>
<itm key="itemInformationType">classification</itm>
</meta>
<classes>
<class tid="Standard">
<name/>
<node class="Standard" id="15370" path="/Standard">
<name/>
<attr inheritance="visible"
key="gender"
level="p"
localized="true"
restriction="optional">
<domainVals allowNewValue="false" sortDirection="MANUAL">
<domainVal tid="female">
<itm loc="en_EN">female</itm>
<itm loc="de_DE">weiblich</itm>
</domainVal>
</domainVals>
</attr>
<node class="Standard"
id="15371"
parentId="15370"
parentPath="/Standard"
path="/Standard/Bekleidung">
<name/>
</node>
</node>
</class>
</classes>
</pim>
5. To get a list of all classifications
curl
curl --location --request POST 'http://<OMN_SERVER>/api/core/v1/pim/classes/retrieve' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json' \
--data-raw '{
}'
curl --location --request POST 'http://<OMN_SERVER>/api/core/v1/pim/classes/retrieve' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json' \
--data-raw '{
"tids": []
}'
curl --location --request POST 'http://<OMN_SERVER>/api/core/v1/pim/classes/retrieve' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json' \
--data-raw '{
"ids": []
}'
{
}
{
"tids": []
}
{
"ids": []
}
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-12-21T09:24:29.058Z</itm>
<itm key="sourceEnv">web</itm>
<itm key="itemInformationType">classification</itm>
</meta>
<classes>
<class tid="Standart">
<name/>
</class>
<class tid="Standard">
<name/>
</class>
</classes>
</pim>
Persist classifications
| /pim/classes/persist Saves classifications and classification nodes with attributes. |
Allow to
-
Create classification
-
Update classification
-
Create classification nodes and nodes attributes
-
Update classification nodes and nodes attributes
Resource path |
/api/core/v1/pim/classes/persist |
HTTP method |
POST |
Request content type |
|
Response content type |
|
Body parameters
Accepts PimType with ClassificationsType and ClassificationNodesType.
Return Type
PimType with statuses ResponsesType about each persisted classification.
Responses
| Code | Message | Datatype |
|---|---|---|
200 |
PimType with filled ResponsesType |
|
400 |
Invalid input provided |
|
401 |
Not authorized |
|
404 |
Not found |
|
500 |
An unknown internal error occurred |
Samples
| Please use transform endpoint to get the JSON/compact-JSON samples from the XML one. |
1. Create a classification without nodes and attributes
curl
curl --location --request POST 'http://<OMN_SERVER>/api/core/v1/pim/classes/persist' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/xml' \
--data-raw '<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-12-05T11:38:06.882Z</itm>
<itm key="sourceEnv">web</itm>
<itm key="itemInformationType">classification</itm>
</meta>
<classes>
<class tid="NewClassification">
</class>
</classes>
</pim>'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-12-05T11:38:06.882Z</itm>
<itm key="sourceEnv">web</itm>
<itm key="itemInformationType">classification</itm>
</meta>
<classes>
<class tid="NewClassification">
</class>
</classes>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-12-05T11:38:06.882Z</itm>
<itm key="sourceEnv">web</itm>
<itm key="itemInformationType">classification</itm>
</meta>
<responses>
<response dataType="classification" action="create" tid="NewClassification">
<status>SUCCESS</status>
<description>The classification has been created successfully</description>
</response>
</responses>
</pim>
2. Create or update a classification with localizations, nodes and attributes
| A Classification must have a root node which name equals classification name. At First a root node must be created. After that the remaining nodes must be created. |
| Nodes are created/updated strictly in turn, as specified in the request. |
| A Root node does not have a parent node. |
| Be precise with classification tid values. A Classification will be created if it is not found by tid. |
curl
curl --location --request POST 'http://<OMN_SERVER>/api/core/v1/pim/classes/persist' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/xml' \
--data-raw '<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-11-17T03:22:30.207Z</itm>
<itm key="sourceEnv">web</itm>
<itm key="itemInformationType">classification</itm>
</meta>
<classes>
<class tid="Classification">
<name>
<itm loc="en_GB">Class_en</itm>
<itm loc="de_DE">Class_de</itm>
</name>
<meta>
...
</meta>
</class>
</classes>
<nodes>
<node class="Classification" id="00000" path="/Classification">
<attr key="product_id"
level="p"
inheritance="visible"
restriction="optional"
localized="false"/>
</node>
<node class="Classification" id="00001" parentId="00000" path="/Classification/node" parentPath="/Classification">
<attr key="product_title"
level="p"
inheritance="visible"
restriction="optional"
localized="true"/>
</node>
<node class="Classification" id="00002" parentId="00001" path="/Classification/node/node1" parentPath="/Classification/node">
<attr key="description_long"
level="p"
inheritance="visible"
restriction="optional"
localized="true"/>
</node>
</nodes>
</pim>'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-11-17T03:22:30.207Z</itm>
<itm key="sourceEnv">web</itm>
<itm key="itemInformationType">classification</itm>
</meta>
<classes>
<class tid="Classification">
<name>
<itm loc="en_GB">Class_en</itm>
<itm loc="de_DE">Class_de</itm>
</name>
<meta>
...
</meta>
</class>
</classes>
<nodes>
<node class="Classification" id="00000" path="/Classification">
<attr key="product_id"
level="p"
inheritance="visible"
restriction="optional"
localized="false"/>
</node>
<node class="Classification" id="00001" parentId="00000" path="/Classification/node" parentPath="/Classification">
<attr key="product_title"
level="p"
inheritance="visible"
restriction="optional"
localized="true"/>
</node>
<node class="Classification" id="00002" parentId="00001" path="/Classification/node/node1" parentPath="/Classification/node">
<attr key="description_long"
level="p"
inheritance="visible"
restriction="optional"
localized="true"/>
</node>
</nodes>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-11-17T03:22:30.207Z</itm>
<itm key="sourceEnv">web</itm>
<itm key="itemInformationType">classification</itm>
</meta>
<responses>
<response dataType="classification" action="create" tid="NewClassification">
<status>SUCCESS</status>
<description>The classification has been created successfully</description>
</response>
</responses>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-11-17T03:22:30.207Z</itm>
<itm key="sourceEnv">web</itm>
<itm key="itemInformationType">classification</itm>
</meta>
<responses>
<response dataType="classification" action="update" tid="NewClassification">
<status>SUCCESS</status>
<description>The classification has been saved successfully</description>
</response>
</responses>
</pim>
Error response examples
Classification not found when updating by id
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-09-27T12:41:38.795Z</itm>
<itm key="sourceEnv">web</itm>
<itm key="itemInformationType">classification</itm>
</meta>
<responses>
<response dataType="classification" action="create">
<status>ERROR</status>
<description>There is no classification with the given identity '15342'</description>
</response>
</responses>
</pim>
Unable to create root node
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-09-27T12:41:38.795Z</itm>
<itm key="sourceEnv">web</itm>
<itm key="itemInformationType">classification</itm>
</meta>
<responses>
<response dataType="classification" action="create">
<status>ERROR</status>
<description>Unable to create the root node, identifier should match the classification name, classification: NewClassification, root node: NewClassification1</description>
</response>
</responses>
</pim>
Language code not found
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-09-27T12:41:38.795Z</itm>
<itm key="sourceEnv">web</itm>
<itm key="itemInformationType">classification</itm>
</meta>
<responses>
<response dataType="classification" action="create">
<status>WARNING</status>
<description>The classification has been saved successfully|Cannot find language id with code 'e_DE'.</description>
</response>
</responses>
</pim>
Classification localization already exists
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-09-27T12:41:38.795Z</itm>
<itm key="sourceEnv">web</itm>
<itm key="itemInformationType">classification</itm>
</meta>
<responses>
<response dataType="classification" action="create">
<status>WARNING</status>
<description>The classification has been saved successfully|Unable to create new classification. Classification with name NewClassification-en already exist.</description>
</response>
</responses>
</pim>
Perform classifications
| /pim/classes/perform Deletes classifications and classification nodes with attributes. |
Resource path |
/api/core/v1/pim/classes/perform |
HTTP method |
POST |
Request content type |
|
Response content type |
|
Body parameters
Accepts PimType with ActionsType.
| The API consumer should provide one of the classification identifiers tid or id to perform action/s on the classification. |
| Actions are performed by tid if both tid and id parameters are present in the request. |
Return Type
PimType with statuses ResponsesType about each persisted classification.
Responses
| Code | Message | Datatype |
|---|---|---|
200 |
PimType with filled ResponsesType |
|
400 |
Invalid input provided |
|
401 |
Not authorized |
|
404 |
Not found |
|
500 |
An unknown internal error occurred |
Samples
| Please use transform endpoint to get the JSON/compact-JSON samples from the XML one. |
1. Delete classification by tid
curl
curl --location --request POST 'http://<OMN_SERVER>/api/core/v1/pim/classes/perform' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/xml' \
--data-raw '<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<actions>
<action dataType="classification"
tid="Classification"
type="delete"/>
</actions>
</pim>'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<actions>
<action dataType="classification"
tid="Classification"
type="delete"/>
</actions>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-12-22T03:19:45.983Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response action="delete" dataType="classification" tid="Classification">
<description>The classification has been deleted successfully</description>
<status>SUCCESS</status>
</response>
</responses>
</pim>
2. Delete classification by id
curl
curl --location --request POST 'http://<OMN_SERVER>/api/core/v1/pim/classes/perform' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/xml' \
--data-raw '<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<actions>
<action dataType="classification"
id="24101"
type="delete"/>
</actions>
</pim>'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<actions>
<action dataType="classification"
id="24101"
type="delete"/>
</actions>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-12-22T03:25:07.523Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response action="delete" dataType="classification" id="24101">
<description>The classification has been deleted successfully</description>
<status>SUCCESS</status>
</response>
</responses>
</pim>
Error response examples
Classification not found by id
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-12-22T03:27:01.713Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response action="delete" dataType="classification" id="241001">
<description>The classification not found by given id: '241001'</description>
<status>ERROR</status>
</response>
</responses>
</pim>
Classification not found by tid
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-12-22T03:28:25.751Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response action="delete" dataType="classification" tid="ClassificationNotExists">
<description>The classification not found by given tid: 'ClassificationNotExists'</description>
<status>ERROR</status>
</response>
</responses>
</pim>
Wrong data type
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-12-22T03:31:16.094Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response action="delete" dataType="classification" tid="Classification">
<description>The data type of the passed item is wrong. It must be 'classification'</description>
<status>ERROR</status>
</response>
</responses>
</pim>
Missing tid and id request attributes
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-12-22T03:31:57.779Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response action="delete" dataType="classification">
<description>Classification attributes missing: 'tid' or 'id' attribute must be</description>
<status>ERROR</status>
</response>
</responses>
</pim>
Attribute definitions API
Provides operations on OMN Attribute definitions.
Get attribute definitions
| /pim/attribute-definitions Gets information about all attribute definitions. |
Resource path |
/api/core/v1/pim/attribute-definitions |
HTTP method |
GET |
Response content type |
|
Return Type
PimType with filled AttributeDefinitionsType. More info AttrDefinitionType
Responses
| Code | Message | Datatype |
|---|---|---|
200 |
PimType with filled AttributeDefinitionsType |
|
401 |
Not authorized |
|
404 |
Not found |
|
500 |
An unknown internal error occurred |
Samples
| Please use transform endpoint to get the JSON/compact-JSON samples from the XML one. |
To get a list of all attribute definitions
curl
curl --location --request GET 'http://<OMN_SERVER>/api/core/v1/pim/attribute-definitions' \
--header 'Authorization: Bearer <TOKEN>' \
--data-raw ''
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<attrDefs>
<attrDef id="15210" tid="product_id" type="text">
<name>
<itm loc="en_EN">SKU product</itm>
<itm loc="de_DE">SKU Produkt</itm>
</name>
</attrDef>
<attrDef id="15219" tid="care_note" type="text">
<domainVals allowNewValue="false" mode="FULL" sortDirection="MANUAL">
<domainVal tid="Chlorine bleaching possible">
<itm loc="en_EN">Chlorine bleaching possible</itm>
<itm loc="de_DE">Chlorbleiche möglich</itm>
</domainVal>
...
</domainVals>
<multiValued>true</multiValued>
<name>
<itm loc="en_EN">Care note</itm>
<itm loc="de_DE">Pflegehinweis</itm>
</name>
</attrDef>
...
</attrDefs>
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-12-23T07:20:36.916Z</itm>
<itm key="sourceEnv">web</itm>
<itm key="itemInformationType">attrDefinition</itm>
</meta>
</pim>
Query attribute definitions ids
| /pim/attribute-definitions/query Gets attribute definition ids by allowed criteria. |
Allows to get attribute definitions ids by:
-
By type
Resource path |
/api/core/v1/pim/attribute-definitions/query |
HTTP method |
POST |
Request content type |
application/json; |
Response content type |
application/json; |
Body parameters
Accepts AttributeDefinitionsQueryRequest
Return Type
Filled with attribute definitions ids AttributeDefinitionsRequest
Responses
| Code | Message | Datatype |
|---|---|---|
200 |
Found attribute definitions ids |
|
400 |
Invalid input error ResponseType |
|
401 |
Not authorized |
|
500 |
Error in ResponseType |
Samples
To get a list of attribute definitions ids by types
curl
curl --location 'http://<OMN_SERVER>/api/core/v1/pim/attribute-definitions/query' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json' \
--data '{
"types": ["text", "date", "number", "boolean", "ref", "table"]
} '
{
"types": ["text", "date", "number", "boolean", "ref", "table"]
}
{
"ids": [
15210,
15211,
15212,
15213,
15214,
15215,
15216,
15217,
15218,
15219,
15310,
15311,
15313,
15314,
15315,
15316,
15317,
15318,
30160,
30161
],
"all": false
}
List of types is empty
curl
curl --location 'http://<OMN_SERVER>/api/core/v1/pim/attribute-definitions/query' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json' \
--data '{
"types": []
} '
{
"types": []
}
{
"all": false
}
Retrieve attribute definitions
| /pim/attribute-definitions/retrieve Retrieves information about attribute definitions. |
Resource path |
/api/core/v1/pim/attribute-definitions/retrieve |
HTTP method |
POST |
Request content type |
application/json |
Response content type |
|
Body parameters
Specified by AttributeDefinitionsRequest
-
ids: it might be used to get attribute definitions by id's
-
tids: it might be used to get attribute definitions by tid's
-
all: it might be used to get all attribute definitions. Default parameter value is false.
| If all parameter value is true, tids and ids values are ignored. |
| Attribute definitions are retrieved by tids OR ids. ids are ignored if the request contains tids and ids. |
Return Type
PimType with filled AttributeDefinitionsType. More info AttrDefinitionType
Responses
| Code | Message | Datatype |
|---|---|---|
200 |
PimType with filled AttributeDefinitionsType |
|
400 |
Invalid input provided |
|
401 |
Not authorized |
|
404 |
Not found |
|
500 |
An unknown internal error occurred |
Samples
| Please use transform endpoint to get the JSON/compact-JSON samples from the XML one. |
1. To get a list of attribute definitions by tids
curl
curl --location --request POST 'http://<OMN_SERVER>/api/core/v1/pim/attribute-definitions/retrieve' \
--header 'Authorization: Bearer <OMN_SERVER>' \
--header 'Content-Type: application/json' \
--data-raw '{
"tids": ["product_id", "product_title"]
}'
{
"tids": ["product_id", "product_title"]
}
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<attrDefs>
<attrDef id="15210" tid="product_id" type="text">
<name>
<itm loc="en_EN">SKU product</itm>
<itm loc="de_DE">SKU Produkt</itm>
</name>
</attrDef>
<attrDef id="15211" tid="product_title" type="text">
<name>
<itm loc="en_EN">Title</itm>
<itm loc="de_DE">Titel</itm>
</name>
</attrDef>
</attrDefs>
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-12-23T08:28:03.722Z</itm>
<itm key="sourceEnv">web</itm>
<itm key="itemInformationType">attrDefinition</itm>
</meta>
</pim>
2. To get a list of attribute definitions by ids
curl
curl --location --request POST 'http://<OMN_SERVER>/api/core/v1/pim/attribute-definitions/retrieve' \
--header 'Authorization: Bearer <OMN_SERVER>' \
--header 'Content-Type: application/json' \
--data-raw '{
"ids": [15210,15211]
}'
{
"ids": [15210,15211]
}
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<attrDefs>
<attrDef id="15210" tid="product_id" type="text">
<name>
<itm loc="en_EN">SKU product</itm>
<itm loc="de_DE">SKU Produkt</itm>
</name>
</attrDef>
<attrDef id="15211" tid="product_title" type="text">
<name>
<itm loc="en_EN">Title</itm>
<itm loc="de_DE">Titel</itm>
</name>
</attrDef>
</attrDefs>
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-12-23T08:33:00.633Z</itm>
<itm key="sourceEnv">web</itm>
<itm key="itemInformationType">attrDefinition</itm>
</meta>
</pim>
3. To get a list of all attribute definitions
curl
curl --location --request POST 'http://<OMN_SERVER>/api/core/v1/pim/attribute-definitions/retrieve' \
--header 'Authorization: Bearer <OMN_SERVER>' \
--header 'Content-Type: application/json' \
--data-raw '{
"all": true
}'
{
"all": true
}
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<attrDefs>
<attrDef id="15210" tid="product_id" type="text">
<name>
<itm loc="en_EN">SKU product</itm>
<itm loc="de_DE">SKU Produkt</itm>
</name>
</attrDef>
<attrDef id="15219" tid="care_note" type="text">
<domainVals allowNewValue="false" mode="FULL" sortDirection="MANUAL">
<domainVal tid="Chlorine bleaching possible">
<itm loc="en_EN">Chlorine bleaching possible</itm>
<itm loc="de_DE">Chlorbleiche möglich</itm>
</domainVal>
...
</domainVals>
<multiValued>true</multiValued>
<name>
<itm loc="en_EN">Care note</itm>
<itm loc="de_DE">Pflegehinweis</itm>
</name>
</attrDef>
...
</attrDefs>
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-12-23T07:20:36.916Z</itm>
<itm key="sourceEnv">web</itm>
<itm key="itemInformationType">attrDefinition</itm>
</meta>
</pim>
Perform attribute definitions
| /pim/attribute-definitions/perform Deletes attribute definitions. |
Allow to
-
Delete attribute definition by id
-
Delete attribute definition by identifier
Resource path |
/api/core/v1/pim/attribute-definitions/perform |
HTTP method |
POST |
Request content type |
|
Response content type |
|
Body parameters
Accepts PimType with ActionsType.
| The API consumer should provide only one of the attribute definitions identifiers: identifiers or ids in all actions. |
Return Type
PimType with statuses ResponsesType about each performed attribute definition.
Responses
| Code | Message | Datatype |
|---|---|---|
200 |
PimType with filled ResponsesType |
|
400 |
Invalid input provided |
|
401 |
Not authorized |
|
404 |
Not found |
|
500 |
An unknown internal error occurred |
Samples
| Please use transform endpoint to get the JSON/compact-JSON samples from the XML one. |
1. Delete attribute definition by identifier
curl
curl --location 'http://<OMN_SERVER>/api/core/v1/pim/attribute-definitions/perform' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/xml' \
--data '<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-04T10:10:16.774Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<actions>
<action dataType="attrDefinition" tid="product_tid" type="delete"/>
</actions>
</pim>'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-04T10:10:16.774Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<actions>
<action dataType="attrDefinition" tid="product_tid" type="delete"/>
</actions>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2023-02-14T11:29:11.613Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response action="delete" dataType="attrDefinition" tid="product_tid">
<description>The attribute definition has been deleted successfully</description>
<status>SUCCESS</status>
</response>
</responses>
</pim>
2. Delete attribute definition by id
curl
curl --location 'http://<OMN_SERVER>/api/core/v1/pim/attribute-definitions/perform' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/xml' \
--data '<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-04T10:10:16.774Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<actions>
<action dataType="attrDefinition" id="45260" type="delete"/>
</actions>
</pim>'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-04T10:10:16.774Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<actions>
<action dataType="attrDefinition" id="45260" type="delete"/>
</actions>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2023-02-14T11:35:08.230Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response action="delete" dataType="attrDefinition" id="45260">
<description>The attribute definition has been deleted successfully</description>
<status>SUCCESS</status>
</response>
</responses>
</pim>
Error response examples
The attribute definition does not exist
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2023-02-14T11:37:25.990Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response action="delete" dataType="attrDefinition" id="45260">
<description>There is no attribute definition with the given tid or id</description>
<status>ERROR</status>
</response>
</responses>
</pim>
The attribute definition could not be deleted
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2023-02-14T11:37:25.990Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="attrDefinition"
tid="product_tid"
action="delete">
<status>ERROR</status>
<description>The attribute definition could not be deleted. Reason: {errormessage}</description>
</response>
</responses>
</pim>
Persist attribute definitions
| /pim/attribute-definitions/persist Creates or updates attribute definitions. |
Allow to
-
Create an attribute definition
-
Update the attribute definition
Resource path |
/api/core/v1/pim/attribute-definitions/persist |
HTTP method |
POST |
Request content type |
|
Response content type |
|
Body parameters
Accepts PimType with filled AttributeDefinitionsType.
| Code | Message | Datatype |
|---|---|---|
200 |
PimType with filled ResponsesType |
|
400 |
Invalid input provided |
|
401 |
Not authorized |
|
404 |
Not found |
|
500 |
An unknown internal error occurred |
Samples
| Please use transform endpoint to get the JSON/compact-JSON samples from the XML one. |
1. Create an attribute definition
curl
curl --location 'http://<OMN_SERVER>/api/core/v1/pim/attribute-definitions/persist' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/xml' \
--data '<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<attrDefs>
<attrDef tid="product_tid" type="text">
<name>
<itm loc="en_GB">SKU product</itm>
<itm loc="de_DE">SKU Produkt</itm>
</name>
</attrDef>
</attrDefs>
</pim>'
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<attrDefs>
<attrDef tid="product_tid" type="text">
<name>
<itm loc="en_GB">SKU product</itm>
<itm loc="de_DE">SKU Produkt</itm>
</name>
</attrDef>
</attrDefs>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2023-02-14T08:39:54.996Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response action="create" dataType="attrDefinition" tid="product_tid">
<description>The attribute definition has been saved successfully</description>
<status>SUCCESS</status>
</response>
</responses>
</pim>
2. Update the attribute definition
curl
curl --location 'http://<OMN_SERVER>/api/core/v1/pim/attribute-definitions/persist' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/xml' \
--data '<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<attrDefs>
<attrDef tid="product_tid" type="text">
<name>
<itm loc="en_GB">New value</itm>
<itm loc="de_DE">New value</itm>
</name>
</attrDef>
</attrDefs>
</pim>'
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<attrDefs>
<attrDef tid="product_tid" type="text">
<name>
<itm loc="en_GB">New value</itm>
<itm loc="de_DE">New value</itm>
</name>
</attrDef>
</attrDefs>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2023-02-14T08:39:54.996Z</itm>
<itm key="sourceEnv">web</itm>
<itm key="itemInformationType">attrDefinition</itm>
</meta>
<responses>
<response action="update" dataType="attrDefinition" tid="product_tid">
<description>The attribute definition has been saved successfully</description>
<status>SUCCESS</status>
</response>
</responses>
</pim>
Error response examples
The attribute definition could not be saved
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-04T13:38:16.444Z</itm>
<itm key="sourceEnv">web</itm>
<itm key="itemInformationType">attrDefinition</itm>
</meta>
<responses>
<response dataType="attrDefinition"
id="12345"
tid="attrDefinitionIdentifier"
action="update">
<status>ERROR</status>
<description>The attribute definition could not be saved. Reason: {errormessage}</description>
</response>
</responses>
</pim>
The attribute definition not found
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-04T13:38:16.444Z</itm>
<itm key="sourceEnv">web</itm>
<itm key="itemInformationType">attrDefinition</itm>
</meta>
<responses>
<response dataType="attrDefinition"
id="54321"
action="update">
<status>ERROR</status>
<description>No attribute definition by id: 54321</description>
</response>
</responses>
</pim>
Attributes API
Provides operations on OMN node attributes.
Query attributes
| /pim/attributes/query Gets list of attribute IDs. |
Allow to query attributes ids by:
-
Product tid
-
Product id
-
Node id
-
Node path
| includeParentAttributes parameter indicates whether to query inherited attributes. |
| includeParentAttributes parameters default value is false for querying by nodeId or nodePath. Querying by productTid or productId is always with inherited attributes and this parameter is ignored. |
Resource path |
/api/core/v1/pim/attributes/query |
HTTP method |
POST |
Request content type |
application/json; |
Response content type |
application/json; |
Body parameters
Accepts AttributesQueryRequest
Return Type
AttributesRequest with attributes ids.
Responses
| Code | Message | Datatype |
|---|---|---|
200 |
Found attributes ids. |
|
400 |
Invalid input provided |
|
401 |
Not authorized |
|
404 |
Not found |
|
500 |
An unknown internal error occurred |
Samples
1.Query attributes by product id
curl
curl --location 'http://<OMN_SERVER>/api/core/v1/pim/attributes/query' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json' \
--data '{
"productId": [65874]
}'
{
"productId": [65874]
}
{
"ids": [75662, 34345, 43213]
}
2.Query attributes by product tid
curl
curl --location 'http://<OMN_SERVER>/api/core/v1/pim/attributes/query' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json' \
--data '{
"productTid": [150185]
}'
{
"productTid": [150185]
}
{
"ids": [75662, 34345, 43213]
}
3.Query attributes by node id
curl
curl --location 'http://<OMN_SERVER>/api/core/v1/pim/attributes/query' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json' \
--data '{
"nodeId": [96648]
}'
{
"nodeId": [96648]
}
{
"ids": [75662, 34345, 43213]
}
4.Query attributes by node path with inherited attributes
curl
curl --location 'http://<OMN_SERVER>/api/core/v1/pim/attributes/query' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json' \
--data '{
"nodePath": [96648],
"includeParentAttributes": true
}'
{
"nodePath": [96648],
"includeParentAttributes": true
}
{
"ids": [75662, 34345, 43213, 96884, 55478]
}
Retrieve attributes
| /pim/attributes/retrieve Retrieves attributes information. |
Allow to retrieve attributes by:
-
list of ids
-
list of product ids
-
list of product tids
-
list of node ids
-
list of node paths
|
| includeParentAttributes parameters default value is false for querying by nodeIds or nodePaths. Querying by productTids or productIds is always with inherited attributes and this parameter is ignored. |
Resource path |
/api/core/v1/pim/attributes/retrieve |
HTTP method |
POST |
Request content type |
application/json |
Response content type |
|
Body parameters
Accepts AttributesRetrieveRequest
| Only one of input parameters ids, productIds, productTids, nodeIds or nodePaths should be specified in request. |
Return Type
PimType with filled AttributesType.
Responses
| Code | Message | Datatype |
|---|---|---|
200 |
PimType with filled AttributesType |
|
400 |
Invalid input provided |
|
401 |
Not authorized |
|
404 |
Not found |
|
500 |
An unknown internal error occurred |
Samples
1.Retrieve attributes by ids parameter with Domain Values and Default Values
curl
curl --location 'http://<OMN_SERVER>/api/core/v1/pim/attributes/retrieve' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json' \
--data '{
"ids": [46190],
"withDomainValues": true,
"withDefaultValues": true
}'
{
"ids": [46190],
"withDomainValues": true,
"withDefaultValues": true
}
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<attrs>
<attr id="46190" inheritance="not_visible" key="new1" level="p" localized="false" restriction="optional">
<defaultVal tid="domain1"/>
<domainVals allowNewValue="false" mode="FULL" sortDirection="MANUAL">
<domainVal tid="domain1">
<itm loc="en_GB">domain1-en</itm>
<itm loc="de_DE">domain1-de</itm>
</domainVal>
</domainVals>
</attr>
</attrs>
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2023-02-20T08:13:06.210Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
</pim>
2.Retrieve attributes by productTids parameter with parent attributes, Domain Values and Default Values
curl
curl --location 'http://<OMN_SERVER>/api/core/v1/pim/attributes/retrieve' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json' \
--data '{
"productTids": ["ec98dde6-4064-465d-a1fb-237e2f10a336"],
"withDomainValues": true,
"withDefaultValues": true
}'
{
"productTids": ["ec98dde6-4064-465d-a1fb-237e2f10a336"],
"withDomainValues": true,
"withDefaultValues": true
}
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<attrs>
<attr id="44793" inheritance="not_visible" key="new2" level="p" localized="false" restriction="optional"/>
<attr id="46190" inheritance="not_visible" key="new1" level="p" localized="false" restriction="optional">
<defaultVal tid="domain1"/>
<domainVals allowNewValue="false" mode="FULL" sortDirection="MANUAL">
<domainVal tid="domain1">
<itm loc="en_GB">domain1-en</itm>
<itm loc="de_DE">domain1-dee</itm>
</domainVal>
</domainVals>
</attr>
</attrs>
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2023-02-20T08:22:32.516Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
</pim>
3.Retrieve attributes by productIds parameter with parent attributes and without Domain Values and Default Values
curl
curl --location 'http://<OMN_SERVER>/api/core/v1/pim/attributes/retrieve' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json' \
--data '{
"productIds": [44812]
}'
{
"productIds": [44812]
}
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<attrs>
<attr id="44793" inheritance="not_visible" key="new2" level="p" localized="false" restriction="optional"/>
<attr id="46190" inheritance="not_visible" key="new1" level="p" localized="false" restriction="optional">
</attr>
</attrs>
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2023-02-20T08:22:32.516Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
</pim>
4.Retrieve attributes by nodeIds parameter with parent attributes, without Domain Values and Default Values
curl
curl --location 'http://<OMN_SERVER>/api/core/v1/pim/attributes/retrieve' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json' \
--data '{
"nodeIds": [34812],
"includeParentAttributes": true
}'
{
"nodeIds": [34812],
"includeParentAttributes": true
}
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<attrs>
<attr id="44793" inheritance="not_visible" key="new2" level="p" localized="false" restriction="optional"/>
<attr id="46190" inheritance="not_visible" key="new1" level="p" localized="false" restriction="optional">
</attr>
</attrs>
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2023-02-20T08:22:32.516Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
</pim>
5.Retrieve attributes by nodePaths parameter without parent attributes, Domain Values and Default Values
curl
curl --location 'http://<OMN_SERVER>/api/core/v1/pim/attributes/retrieve' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json' \
--data '{
"nodePaths": ["RootNode/ChildNode"]
}'
{
"nodePaths": ["RootNode/ChildNode"]
}
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<attrs>
<attr id="46190" inheritance="not_visible" key="new1" level="p" localized="false" restriction="optional">
</attr>
</attrs>
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2023-02-20T08:22:32.516Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
</pim>
Persist attributes
| /pim/attributes/persist Saves node attributes information. |
Allow to
-
Create the attribute
-
Update attribute values (AttributeType.vals)
Resource path |
/api/core/v1/pim/attributes/persist |
HTTP method |
POST |
Request content type |
|
Response content type |
|
Body parameters
Accepts PimType with AttributesType
| When creating attribute nodePath or nodeId parameters must be specified. |
When updating attributes one of parameters combination below must be used:
-
attribute id
-
nodeId and attribute key
-
nodePath and attribute key
| Attribute parameter key is attribute definition value. |
Return Type
PimType with statuses ResponsesType about each persisted attribute.
Responses
| Code | Message | Datatype |
|---|---|---|
200 |
PimType with filled ResponsesType |
|
400 |
Invalid input provided |
|
401 |
Not authorized |
|
404 |
Not found |
|
500 |
An unknown internal error occurred |
Samples
1.Create attribute by node id
curl
curl --location --request POST 'http://<OMN_SERVER>/api/core/v1/pim/attributes/persist' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/xml' \
--data-raw '<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<attrs>
<attr nodeId="23456"
key="gender"
level="p"
inheritance="visible"
restriction="optional"
localized="true">
<domainVals allowNewValue="false" sortDirection="MANUAL">
<domainVal tid="female">
<itm loc="en_EN">female</itm>
<itm loc="de_DE">weiblich</itm>
</domainVal>
</domainVals>
</attr>
</attrs>
</pim>'
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<attrs>
<attr nodeId="23456"
key="gender"
level="p"
inheritance="visible"
restriction="optional"
localized="true">
<domainVals allowNewValue="false" sortDirection="MANUAL">
<domainVal tid="female">
<itm loc="en_EN">female</itm>
<itm loc="de_DE">weiblich</itm>
</domainVal>
</domainVals>
</attr>
</attrs>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-09-27T12:41:38.795Z</itm>
<itm key="sourceEnv">web</itm>
<itm key="itemInformationType">attribute</itm>
</meta>
<responses>
<response dataType="attribute" action="create" id="95547" nodeId="23456">
<status>SUCCESS</status>
<description>The attribute has been created successfully</description>
</response>
</responses>
</pim>
2.Create attribute by node path
curl
curl --location --request POST 'http://<OMN_SERVER>/api/core/v1/pim/attributes/persist' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/xml' \
--data-raw '<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<attrs>
<attr nodePath="/RootNode/someNode"
inheritance="visible"
key="product_id"
level="p"
localized="false"
restriction="optional"/>
</attrs>
</pim>'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<attrs>
<attr nodePath="/RootNode/someNode"
inheritance="visible"
key="product_id"
level="p"
localized="false"
restriction="optional"/>
</attrs>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-09-27T12:41:38.795Z</itm>
<itm key="sourceEnv">web</itm>
<itm key="itemInformationType">attribute</itm>
</meta>
<responses>
<response dataType="attribute" action="create" id="95547" nodePath="/RootNode/someNode">
<status>SUCCESS</status>
<description>The attribute has been created successfully</description>
</response>
</responses>
</pim>
3.Update attribute by attribute id
curl
curl --location --request POST 'http://<OMN_SERVER>/api/core/v1/pim/attributes/persist' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/xml' \
--data-raw '<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<attrs>
<attr id="95547"
inheritance="visible"
key="product_id"
level="p"
localized="false"
restriction="optional"/>
</attrs>
</pim>'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<attrs>
<attr id="95547"
inheritance="visible"
key="product_id"
level="p"
localized="false"
restriction="optional"/>
</attrs>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-09-27T12:41:38.795Z</itm>
<itm key="sourceEnv">web</itm>
<itm key="itemInformationType">attribute</itm>
</meta>
<responses>
<response dataType="attribute" action="update" id="95547">
<status>SUCCESS</status>
<description>The attribute has been saved successfully</description>
</response>
</responses>
</pim>
4.Update attribute by nodePath and attribute key
curl
curl --location --request POST 'http://<OMN_SERVER>/api/core/v1/pim/attributes/persist' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/xml' \
--data-raw '<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<attrs>
<attr nodePath="/RootNode/someNode"
inheritance="visible"
key="product_id"
level="p"
localized="false"
restriction="optional"/>
</attrs>
</pim>'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<attrs>
<attr nodePath="/RootNode/someNode"
inheritance="visible"
key="product_id"
level="p"
localized="false"
restriction="optional"/>
</attrs>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-09-27T12:41:38.795Z</itm>
<itm key="sourceEnv">web</itm>
<itm key="itemInformationType">attribute</itm>
</meta>
<responses>
<response dataType="attribute" action="update" nodePath="/RootNode/someNode" key="product_id">
<status>SUCCESS</status>
<description>The attribute has been saved successfully</description>
</response>
</responses>
</pim>
5.Update attribute by nodeId and attribute key
curl
curl --location --request POST 'http://<OMN_SERVER>/api/core/v1/pim/attributes/persist' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/xml' \
--data-raw '<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<attrs>
<attr nodeId="65425"
inheritance="visible"
key="product_id"
level="p"
localized="false"
restriction="optional"/>
</attrs>
</pim>'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<attrs>
<attr nodeId="65425"
inheritance="visible"
key="product_id"
level="p"
localized="false"
restriction="optional"/>
</attrs>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-09-27T12:41:38.795Z</itm>
<itm key="sourceEnv">web</itm>
<itm key="itemInformationType">attribute</itm>
</meta>
<responses>
<response dataType="attribute" action="update" nodeId="65425" key="product_id">
<status>SUCCESS</status>
<description>The attribute has been saved successfully</description>
</response>
</responses>
</pim>
Error responses
Attribute not found by attribute id
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-12-27T08:49:34.889Z</itm>
<itm key="sourceEnv">web</itm>
<itm key="itemInformationType">attribute</itm>
</meta>
<responses>
<response action="update" dataType="attribute" key="product_id">
<status>ERROR</status>
<description>Attribute with id 23456 was not found.</description>
</response>
</responses>
</pim>
Node not found by node id
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-12-27T08:52:40.287Z</itm>
<itm key="sourceEnv">web</itm>
<itm key="itemInformationType">attribute</itm>
</meta>
<responses>
<response action="create"
dataType="attribute"
key="product_id"
nodeId="23456">
<status>ERROR</status>
<description>Node with id 23456 not found</description>
</response>
</responses>
</pim>
Node not found by nodePath
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-12-27T08:53:36.908Z</itm>
<itm key="sourceEnv">web</itm>
<itm key="itemInformationType">attribute</itm>
</meta>
<responses>
<response action="create"
dataType="attribute"
key="product_id"
nodePath="RootNode/someNode">
<status>ERROR</status>
<description>Node with path RootNode/someNode not found</description>
</response>
</responses>
</pim>
Attribute definition not found
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-12-27T08:55:28.589Z</itm>
<itm key="sourceEnv">web</itm>
<itm key="itemInformationType">attribute</itm>
</meta>
<responses>
<response action="create"
dataType="attribute"
key="not_exists"
nodePath="RootNode/someNod">
<status>ERROR</status>
<description>Attribute definition: 'not_exists' cannot be found</description>
</response>
</responses>
</pim>
Perform attributes
| /pim/attributes/perform Deletes attributes. |
Allow to
-
Delete attribute definition by id
Resource path |
/api/core/v1/pim/attributes/perform |
HTTP method |
POST |
Request content type |
|
Response content type |
|
Body parameters
Accepts PimType with ActionsType.
Return Type
PimType with statuses ResponsesType about each performed attribute.
Responses
| Code | Message | Datatype |
|---|---|---|
200 |
PimType with filled ResponsesType |
|
400 |
Invalid input provided |
|
401 |
Not authorized |
|
404 |
Not found |
|
500 |
An unknown internal error occurred |
Samples
1. Delete attribute by id
curl
curl --location 'http://<OMN_SERVER>/api/core/v1/pim/attributes/perform' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/xml' \
--data '<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-04T10:10:16.774Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<actions>
<action dataType="attribute" id="98756" type="delete"/>
</actions>
</pim>'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-04T10:10:16.774Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<actions>
<action dataType="attribute" id="98756" type="delete"/>
</actions>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2023-02-14T11:29:11.613Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response action="delete" dataType="attribute" id="98756">
<description>Attribute definition has been deleted successfully</description>
<status>SUCCESS</status>
</response>
</responses>
</pim>
Error response examples
The attribute does not exist
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2023-02-14T11:37:25.990Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response action="delete" dataType="attribute" id="45260">
<description>Attribute not found with given id</description>
<status>ERROR</status>
</response>
</responses>
</pim>
The attribute id is missing in request
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2023-02-14T11:37:25.990Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="attribute" action="delete">
<status>ERROR</status>
<description>"Attribute 'id' is required to process attribute deletion"</description>
</response>
</responses>
</pim>
Classification Nodes API
Provides operations on OMN Classification nodes.
Query classification nodes
| /pim/nodes/query Gets node ids. |
Allow to query classification nodes ids by:
-
product tid
-
product id
-
attribute definition id
-
attribute definition tid
-
attribute id
Resource path |
/api/core/v1/pim/nodes/query |
HTTP method |
POST |
Request content type |
application/json; |
Response content type |
application/json; |
| API restriction for users without admin role - endpoint is not available. |
Body parameters
Specified by NodesQueryRequest
Return Type
Specified by NodesRequest
Responses
| Code | Message | Datatype |
|---|---|---|
200 |
Found classification nodes ids. |
|
400 |
Invalid input provided |
|
401 |
Not authorized |
|
500 |
An unknown internal error occurred |
Samples
Query classification nodes
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/pim/nodes/retrieve' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json' \
--data-raw '{
"productId": 123
}'
{
"productId": 18765
}
{
"productTid": "A239A197-5287-494A-B5EE-36F3EB0E95AB"
}
{
"attributeId": "986655"
}
{
"attributeDefinitionId": "778554"
}
{
"attributeDefinitionTid": "7D534991-B623-418C-A7CB-A273C877A37D"
}
{
"ids": [756362, 34345, 43213],
"level": 1
}
Retrieve classification nodes
| /pim/nodes/retrieve Returns nodes structure with attributes. |
Resource path |
/api/core/v1/pim/nodes/retrieve |
HTTP method |
POST |
Request content type |
application/json |
Response content type |
|
| API restriction for users without admin role - endpoint is not available. |
Body parameters
Specified by NodesRequest
Return Type
PimType with filled ClassificationNodesType. Represents flatten tree structure
Responses
| Code | Message | Datatype |
|---|---|---|
200 |
PimType with list of nodes |
|
500 |
Error in ResponseType |
Samples
| Please use transform endpoint to get the JSON/compact-JSON samples from the XML one. |
Get a root node of the classification by tid/id
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/pim/nodes/retrieve' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json' \
--data-raw '{
"classificationId": 18765
}'
{
"classificationId": 18765
}
{
"classificationTid": "Standard"
}
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-09-27T12:41:38.795Z</itm>
<itm key="sourceEnv">web</itm>
<itm key="itemInformationType">node</itm>
</meta>
<nodes>
<node id="15270"
path="/"
tid="Standard">
<name/>
</node>
</nodes>
</pim>
Get children of node by path
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/pim/nodes/retrieve' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json' \
--data-raw '{
"path": "/Root",
"level": 1
}'
{
"path": "/Standard",
"level": 1
}
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-09-27T12:41:38.795Z</itm>
<itm key="sourceEnv">web</itm>
<itm key="itemInformationType">node</itm>
</meta>
<nodes>
<node id="15271" parentId="15270" path="/Standard/Bekleidung" tid="Bekleidung">
<name/>
</node>
<node id="114740" parentId="15270" path="/Standard/Test" tid="Test">
<name/>
</node>
</nodes>
</pim>
Get nodes by ids
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/pim/nodes/retrieve' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json' \
--data-raw '{
"ids": [114740]
}'
{
"ids": [114740]
}
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-09-27T12:41:38.795Z</itm>
<itm key="sourceEnv">web</itm>
<itm key="itemInformationType">node</itm>
</meta>
<nodes>
<node id="114740" parentId="15270" path="/Standard/Test" tid="Test">
<name/>
</node>
</nodes>
</pim>
Error responses
<?xml version="1.0" encoding="UTF-8"?>
<response xmlns="http://www.apollon.de/omn">
<details>
<itm key="supportId">3de17988-a17c-4341-bf57-024753d636c8</itm>
</details>
<issues>
<itm key="code">1001</itm>
<itm key="description">Invalid input provided</itm>
<itms type="details">
<itm key="errorMessage">Path or ids array or classificationId should be provided to get nodes</itm>
</itms>
</issues>
<status>ERROR</status>
</response>
<?xml version="1.0" encoding="UTF-8"?>
<response xmlns="http://www.apollon.de/omn">
<details>
<itm key="supportId">1737617c-3718-411a-b113-5121d8b679bb</itm>
</details>
<issues>
<itm key="code">1001</itm>
<itm key="description">Invalid input provided</itm>
<itms type="details">
<itm key="errorMessage">The level should not be 0</itm>
</itms>
</issues>
<status>ERROR</status>
</response>
Persist classification nodes
| /pim/nodes/persist Saves nodes structure. Several nodes could be persisted. |
Resource path |
/api/core/v1/pim/nodes/persist |
HTTP method |
POST |
Request content type |
|
Response content type |
|
| API restriction for users without admin role - endpoint is not available. |
Body parameters
Accepts PimType with ClassificationNodesType
Return Type
PimType with statuses ResponsesType about each persisted node.
Responses
| Code | Message | Datatype |
|---|---|---|
200 |
PimType with responses |
|
500 |
Error in ResponseType |
Samples
| Please use transform endpoint to get the JSON/compact-JSON samples from the XML one. |
Create a node
curl
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/pim/nodes/persist' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/xml; charset=UTF-8;' \
--data-raw '<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<nodes>
<node
parentId="123"
tid="Accessories">
<name>
<itm loc="en_EN">Accessories EN</itm>
<itm loc="de_DE">Accessories DE</itm>
<itm loc="fr_FR">Accessories FR</itm>
</name>
</node>
</nodes>
</pim>'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<nodes>
<node
parentId="123"
tid="Accessories">
<name>
<itm loc="en_EN">Accessories EN</itm>
<itm loc="de_DE">Accessories DE</itm>
<itm loc="fr_FR">Accessories FR</itm>
</name>
</node>
</nodes>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<nodes>
<node
parentPath="/Standard/Bekleidung"
tid="Accessories">
<name>
<itm loc="en_EN">Accessories EN</itm>
<itm loc="de_DE">Accessories DE</itm>
<itm loc="fr_FR">Accessories FR</itm>
</name>
</node>
</nodes>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-10-21T08:22:23.363Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response action="create"
dataType="classNode"
id="110140"
path="/Standard/Bekleidung/Accessories"
tid="Accessories">
<status>SUCCESS</status>
<description>Node has been saved</description>
</response>
</responses>
</pim>
Create a root node
curl
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/pim/nodes/persist' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/xml; charset=UTF-8;' \
--data-raw '<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<nodes>
<node
classificationTid="Standart"
tid="Standart">
<name>
<itm loc="en_EN">Standart EN</itm>
<itm loc="de_DE">Standart DE</itm>
</name>
</node>
</nodes>
</pim>'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<nodes>
<node
classificationTid="Standart"
tid="Standart">
<name>
<itm loc="en_EN">Standart EN</itm>
<itm loc="de_DE">Standart DE</itm>
</name>
</node>
</nodes>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-10-21T08:22:23.363Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response action="create"
dataType="classNode"
id="11040"
path="/Standard"
tid="Standart">
<status>SUCCESS</status>
<description>Node has been saved</description>
</response>
</responses>
</pim>
Update a node
curl
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/pim/nodes/persist' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/xml; charset=UTF-8;' \
--data-raw '<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<nodes>
<node path="/Standard" tid="Standard">
<name>
<itm loc="en_EN">Standard EN 1</itm>
<itm loc="fr_FR">Standard FR 1</itm>
</name>
</node>
</nodes>
</pim>'
Several nodes could be persisted.
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<nodes>
<node path="/Standard" tid="Standard">
<name>
<itm loc="en_EN">Standard EN 1</itm>
<itm loc="fr_FR">Standard FR 1</itm>
</name>
</node>
</nodes>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<nodes>
<node id="654332" tid="Standard">
<name>
<itm loc="en_EN">Standard EN 1</itm>
<itm loc="fr_FR">Standard FR 1</itm>
</name>
</node>
</nodes>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-10-21T08:22:23.363Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response action="update"
dataType="classNode"
id="654332"
path="/Standard"
tid="Standart">
<status>SUCCESS</status>
<description>Node has been saved</description>
</response>
</responses>
</pim>
Error responses
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-11-04T13:56:20.501Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response action="create" dataType="classNode" tid="AAAA12">
<status>ERROR</status>
<description>An error occurred while node creation. Parent node path: null, or id: 1147412, node: AAAA12, the reason: Node with id 1147412 does not exist.</description>
</response>
</responses>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-11-04T13:56:20.501Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response action="create" dataType="classNode" tid="AAAA11">
<status>ERROR</status>
<description>An error occurred while node creation. Parent node path: /Root/node1, or id: null, node: AAAA11, the reason: Node with path '[Root, node1]' does not exist.</description>
</response>
</responses>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-11-04T13:57:20.483Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response action="update"
dataType="classNode"
id="1147423"
path="/Standard/AAAA1/AAAA12"
tid="AAAA12">
<status>ERROR</status>
<description>Node with id 1147423 does not exist.</description>
</response>
</responses>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-11-04T13:57:20.483Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response action="update"
dataType="classNode"
path="/Standard/AAAA1/AAAA12/Gürtel"
tid="Gürtel">
<status>ERROR</status>
<description>Node with path '[Standard, AAAA1, AAAA12, Gürtel]' does not exist.</description>
</response>
</responses>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<response xmlns="http://www.apollon.de/omn">
<details>
<itm key="supportId">bb58d0b5-231a-4097-bd05-9c447615899c</itm>
</details>
<issues>
<itm key="code">1010</itm>
<itm key="description">Access to the requested resource endpoint is forbidden</itm>
<itms type="details">
<itm key="errorMessage">Nodes persist API is restricted for users</itm>
</itms>
</issues>
<status>ERROR</status>
</response>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-11-04T13:48:55.442Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response action="create" dataType="classNode" tid="AAAA111">
<status>ERROR</status>
<description>An error occurred while node creation. Parent node path: null, or id: null, node: AAAA111, the reason: No classification by name: Standard1</description>
</response>
</responses>
</pim>
Perform actions on classification nodes
| /pim/nodes/perform Deletes nodes. |
Available action types:
-
Delete
Resource path |
/api/core/v1/pim/nodes/perform |
HTTP method |
POST |
Request content type |
|
Response content type |
|
Body parameters
PimType with ActionTypes
Some actions require additional info that should be provided in MetaType in key/value way.
ActionType's type is required and be provided.
Possible values:
-
delete
ActionType's dataType is - classNode
|
Tables legend
"As <action> attribute" describes, that parameter is in the xml attribute of <action> tag. Otherwise, parameter should be in ItemType. "Required groups" - one of parameter in the one group is required e.g. entity identifier (e.g. tid or id or path) |
| Parameter Name | As <action> attribute | Required | Type | Description | Format |
|---|---|---|---|---|---|
id |
X |
X G1 |
Long |
id of the node that should be deleted |
|
path |
X |
X G1 |
string |
path of the node that should be deleted |
Return Type
PimType with filled ResponsesType
Response types contains status information about each action passed to perform.
Responses
| Actions are processed separately. Exceptions thrown during the execution of actions will be reported in ResponseType. |
| Code | Message | Datatype |
|---|---|---|
200 |
PimType with filled ResponsesType. |
|
400 |
Invalid input provided |
|
500 |
An unknown internal error occurred |
Samples
| Please use transform endpoint to get the JSON/compact-JSON samples from the XML one. |
Delete
curl
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/pim/nodes/perform' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json' \
--data-raw '<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<actions>
<action dataType="classNode" id="759365" type="delete"/>
</actions>
</pim>'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<actions>
<action dataType="classNode" id="759365" type="delete"/>
</actions>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<actions>
<action dataType="classNode" path="/Root/Node1/Node1.1/" type="delete"/>
</actions>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-04T13:24:53.286Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="classNode"
id="759365"
action="delete">
<status>SUCCESS</status>
<description>The node has been deleted successfully</description>
</response>
</responses>
</pim>
Error responses
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-04T13:36:54.983Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="classNode"
id="4444"
action="delete">
<status>ERROR</status>
<description>There is no node with the given path or id</description>
</response>
</responses>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-04T13:38:16.444Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="classNode"
id="4444"
action="delete">
<status>ERROR</status>
<description>The node could not be deleted. Reason: {errormessage}</description>
</response>
</responses>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-10-11T12:14:28.978Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="classNode">
<status>ERROR</status>
<description>Nodes delete API is restricted for the user</description>
</response>
</responses>
</pim>
Products API
Provides operations on OMN products and related product information.
Persist products
| /pim/products/persist Saves products information and product attributes details. |
Allow to
-
Create a Product / Article / Variation
-
Rename Product / Article / Variation
-
Change attribute values (ProductType.vals)
Resource path |
/api/core/v1/pim/products/persist |
HTTP method |
POST |
Request content type |
|
Response content type |
|
Product attribute persisting
Asset attributes are stored in ProductType .vals. More info about product attributes
| Only provided attribute values are persisted, other values that are not provided in ProductType.vals will be not changed. |
| Only values of attributes registered in OMN could be saved. |
Body parameters
Accepts PimType with ProductsType
Return Type
PimType with statuses ResponsesType about each persisted product.
Responses
| Code | Message | Datatype |
|---|---|---|
200 |
PimType with list of responses |
|
500 |
Error in ResponseType |
Samples
| Please use transform endpoint to get the JSON/compact-JSON samples from the XML one. |
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/pim/products/persist' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json' \
--data-raw '<BODY>'
1. Create a new Product
Without Product tid:
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<products>
<product>
<name>Product1</name>
<node>/RootNode/Node</node>
</product>
</products>
</pim>
With specified tid:
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<products>
<product tid="73c7992f-5f66-4d99-9ca7-9efa3f1b8281">
<name>Product1</name>
<node>/RootNode/Node</node>
</product>
</products>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-08-30T08:05:35.462Z</itm>
<itm key="sourceEnv">web</itm>
<itm key="itemInformationType">product</itm>
</meta>
<responses>
<response dataType="product"
tid="73c7992f-5f66-4d99-9ca7-9efa3f1b8281"
action="create">
<status>SUCCESS</status>
<description>The product has been saved successfully</description>
</response>
</responses>
</pim>
2. Create a new Article
Without Article tid:
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<products>
<product tid="73c7992f-5f66-4d99-9ca7-9efa3f1b8281">
<articles>
<article>
<name>Article1</name>
</article>
</articles>
</product>
</products>
</pim>
With specified tid:
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<products>
<product tid="73c7992f-5f66-4d99-9ca7-9efa3f1b8281">
<articles>
<article tid="e8712bfd-6701-4833-9197-b259ea42dd84">
<name>Article1</name>
</article>
</articles>
</product>
</products>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-08-30T08:05:35.462Z</itm>
<itm key="sourceEnv">web</itm>
<itm key="itemInformationType">product</itm>
</meta>
<responses>
<response dataType="article"
tid="28E09C5F-9F23-4274-8BB5-4E0924D52076"
action="create">
<status>SUCCESS</status>
<description>The article has been saved successfully</description>
</response>
</responses>
</pim>
3. Create a new Variation
Without Variation tid:
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<products>
<product tid="73c7992f-5f66-4d99-9ca7-9efa3f1b8281">
<articles>
<article tid="e8712bfd-6701-4833-9197-b259ea42dd84">
<variants>
<variant>
<name>Variant1</name>
</variant>
</variants>
</article>
</articles>
</product>
</products>
</pim>
With specified tid:
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<products>
<product tid="73c7992f-5f66-4d99-9ca7-9efa3f1b8281">
<articles>
<article tid="e8712bfd-6701-4833-9197-b259ea42dd84">
<variants>
<variant tid="73c7992f-5f66-4d99-9ca7-9efa3f1b8281">
<name>Variant1</name>
</variant>
</variants>
</article>
</articles>
</product>
</products>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-08-30T08:05:35.462Z</itm>
<itm key="sourceEnv">web</itm>
<itm key="itemInformationType">product</itm>
</meta>
<responses>
<response dataType="variant"
tid="73c7992f-5f66-4d99-9ca7-9efa3f1b8281"
action="create">
<status>SUCCESS</status>
<description>The variant has been saved successfully</description>
</response>
</responses>
</pim>
4. Rename Product
By id:
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<products>
<product>
<meta>
<itm key="id">26594</itm>
</meta>
<name>Product2</name>
</product>
</products>
</pim>
By tid:
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<products>
<product tid="73c7992f-5f66-4d99-9ca7-9efa3f1b8281">
<name>Product2</name>
</product>
</products>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-08-30T08:05:35.462Z</itm>
<itm key="sourceEnv">web</itm>
<itm key="itemInformationType">product</itm>
</meta>
<responses>
<response dataType="product"
tid="73c7992f-5f66-4d99-9ca7-9efa3f1b8281"
action="update">
<status>SUCCESS</status>
<description>The product has been saved successfully</description>
</response>
</responses>
</pim>
5. Rename Article
By id:
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<products>
<product tid="73c7992f-5f66-4d99-9ca7-9efa3f1b8281">
<articles>
<article>
<meta>
<itm key="id">21655</itm>
</meta>
<name>Article2</name>
</article>
</articles>
</product>
</products>
</pim>
By tid:
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<products>
<product tid="73c7992f-5f66-4d99-9ca7-9efa3f1b8281">
<articles>
<article tid="73c7992f-5f66-4d99-9ca7-9efa3f1b8281">
<name>Article2</name>
</article>
</articles>
</product>
</products>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-08-30T08:05:35.462Z</itm>
<itm key="sourceEnv">web</itm>
<itm key="itemInformationType">product</itm>
</meta>
<responses>
<response dataType="article"
tid="73c7992f-5f66-4d99-9ca7-9efa3f1b8281"
action="update">
<status>SUCCESS</status>
<description>The article has been saved successfully</description>
</response>
</responses>
</pim>
6. Rename Variation
By id:
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<products>
<product tid="73c7992f-5f66-4d99-9ca7-9efa3f1b8281">
<articles>
<article tid="73c7992f-5f66-4d99-9ca7-9efa3f1b8281">
<variants>
<variant>
<meta>
<itm key="id">20444</itm>
</meta>
<name>Variant2</name>
</variant>
</variants>
</article>
</articles>
</product>
</products>
</pim>
By tid:
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<products>
<product tid="73c7992f-5f66-4d99-9ca7-9efa3f1b8281">
<articles>
<article tid="73c7992f-5f66-4d99-9ca7-9efa3f1b8281">
<variants>
<variant tid="e8712bfd-6701-4833-9197-b259ea42dd84">
<name>Variant2</name>
</variant>
</variants>
</article>
</articles>
</product>
</products>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-08-30T08:05:35.462Z</itm>
<itm key="sourceEnv">web</itm>
<itm key="itemInformationType">product</itm>
</meta>
<responses>
<response dataType="variant"
tid="e8712bfd-6701-4833-9197-b259ea42dd84"
action="update">
<status>SUCCESS</status>
<description>The variant has been saved successfully</description>
</response>
</responses>
</pim>
7. Save product attributes and new name
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<products>
<product tid="73c7992f-5f66-4d99-9ca7-9efa3f1b8281">
<name>Product2</name>
<vals>
<val attr="STRING_SIMPLE">
<itm>string</itm>
</val>
<val attr="NUMBER_SIMPLE">
<itm>6395629</itm>
</val>
<val attr="ENUMERATION_L" type="multi_loc">
<i18n loc="en_EN">
<itm pos="0">Brown</itm>
<itm pos="1">Yellow</itm>
</i18n>
</val>
</vals>
</product>
</products>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-08-30T08:05:35.462Z</itm>
<itm key="sourceEnv">web</itm>
<itm key="itemInformationType">product</itm>
</meta>
<responses>
<response dataType="product"
tid="73c7992f-5f66-4d99-9ca7-9efa3f1b8281"
action="create">
<status>SUCCESS</status>
<description>The product has been saved successfully</description>
</response>
</responses>
</pim>
Error responses
Product creation failed
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-08-30T08:05:35.462Z</itm>
<itm key="sourceEnv">web</itm>
<itm key="itemInformationType">product</itm>
</meta>
<responses>
<response dataType="product"
tid="28E09C5F-9F23-4274-8BB5-4E0924D52076"
action="create">
<status>ERROR</status>
<description>An error while doing action 'create' with the product, tid: '28E09C5F-9F23-4274-8BB5-4E0924D52076', caused by: Unable to create or update product. Product name is duplicated.</description>
</response>
</responses>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-08-30T08:05:35.462Z</itm>
<itm key="sourceEnv">web</itm>
<itm key="itemInformationType">product</itm>
</meta>
<responses>
<response dataType="product"
tid="28E09C5F-9F23-4274-8BB5-4E0924D52076"
action="create">
<status>ERROR</status>
<description>An error while product classification, caused by: 'Node with path '[Standard, Bekleidung, Herren, Unterteile, Jeans2]' does not exist.</description>
</response>
</responses>
</pim>
Article creation failed
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-08-30T08:05:35.462Z</itm>
<itm key="sourceEnv">web</itm>
<itm key="itemInformationType">product</itm>
</meta>
<responses>
<response dataType="article"
tid="28E09C5F-9F23-4274-8BB5-4E0924D52076"
action="create">
<status>ERROR</status>
<description>An error while doing action 'create' with the article, tid: '28E09C5F-9F23-4274-8BB5-4E0924D52076', caused by: Unable to create or update product. Product name is duplicated.</description>
</response>
</responses>
</pim>
Variation creation failed
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-08-30T08:05:35.462Z</itm>
<itm key="sourceEnv">web</itm>
<itm key="itemInformationType">product</itm>
</meta>
<responses>
<response dataType="variant"
tid="28E09C5F-9F23-4274-8BB5-4E0924D52076"
action="create">
<status>ERROR</status>
<description>An error while doing action 'create' with the variation, tid: '28E09C5F-9F23-4274-8BB5-4E0924D52076', caused by: Unable to create or update product. Product name is duplicated.</description>
</response>
</responses>
</pim>
Product update failed
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-08-30T08:05:35.462Z</itm>
<itm key="sourceEnv">web</itm>
<itm key="itemInformationType">product</itm>
</meta>
<responses>
<response dataType="product"
tid="28E09C5F-9F23-4274-8BB5-4E0924D52076"
action="update">
<status>ERROR</status>
<description>An error while doing action 'update' with the product, tid: '28E09C5F-9F23-4274-8BB5-4E0924D52076', caused by: Unable to create or update product. Product name is duplicated.</description>
</response>
</responses>
</pim>
Article update failed
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-08-30T08:05:35.462Z</itm>
<itm key="sourceEnv">web</itm>
<itm key="itemInformationType">product</itm>
</meta>
<responses>
<response dataType="article"
tid="28E09C5F-9F23-4274-8BB5-4E0924D52076"
action="create">
<status>ERROR</status>
<description>An error while doing action 'create' with the article, tid: '28E09C5F-9F23-4274-8BB5-4E0924D52076', caused by: Unable to create or update product. Product name is duplicated.</description>
</response>
</responses>
</pim>
Variation update failed
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-08-30T08:05:35.462Z</itm>
<itm key="sourceEnv">web</itm>
<itm key="itemInformationType">product</itm>
</meta>
<responses>
<response dataType="variant"
tid="28E09C5F-9F23-4274-8BB5-4E0924D52076"
action="update">
<status>ERROR</status>
<description>An error while doing action 'update' with the variant, tid: '28E09C5F-9F23-4274-8BB5-4E0924D52076', caused by: Unable to create or update product. Product name is duplicated.</description>
</response>
</responses>
</pim>
No access to endpoint
<?xml version="1.0" encoding="UTF-8"?>
<response xmlns="http://www.apollon.de/omn">
<details>
<itm key="supportId">e7f3eeb5-82c3-4928-88cc-cdf6bec08d25</itm>
</details>
<issues>
<itm key="code">1010</itm>
<itm key="description">Access to the requested resource endpoint is forbidden</itm>
<itms type="details">
<itm key="errorMessage">Products persist is restricted for users</itm>
</itms>
</issues>
<status>ERROR</status>
</response>
Perform actions on products
| /pim/products/perform Deletes / copies products. |
Available action types:
-
Delete
-
Copy
|
Copy action
Product copy will be available in the same product parent.
|
Resource path |
/api/core/v1/pim/products/perform |
HTTP method |
POST |
Request content type |
|
Response content type |
|
Body parameters
PimType with ActionsType
Some actions require additional info that should be provided in MetaType in key/value way.
ActionType's type
is required and must be provided.
Possible values:
-
delete
-
copy
ActionType's dataType is - product
|
Tables legend
"As <action> attribute" describes, that parameter is in the xml attribute of <action> tag. Otherwise, parameter should be in ItemType. "Required groups" - one of parameter in the one group is required e.g. entity identifier (tid or id) |
| Parameter Name | As <action> attribute | Required | Type | Description | Format |
|---|---|---|---|---|---|
id |
X |
X G1 |
Long |
id of the product that should be deleted |
|
tid |
X |
X G1 |
string |
tid of the product that should be deleted |
| Parameter Name | As <action> attribute | Required | Type | Description | Format |
|---|---|---|---|---|---|
id |
X |
X G1 |
Long |
id of the product that should be copied |
|
tid |
X |
X G1 |
string |
tid of the product that should be copied |
|
newProductName |
X |
string |
new name of the product that should be copied |
||
newProductTid |
string |
new tid of the product that should be copied |
Return Type
PimType with filled ResponsesType
Response types contains status information about each action passed to perform.
Responses
| Actions are processed separately. Exceptions thrown during the execution of actions will be reported in ResponseType. |
| Code | Message | Datatype |
|---|---|---|
200 |
PimType with filled ResponsesType. |
|
400 |
Invalid input provided |
|
500 |
An unknown internal error occurred |
Samples
| Please use transform endpoint to get the JSON/compact-JSON samples from the XML one. |
Delete
curl
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/pim/products/perform' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json' \
--data-raw '<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<actions>
<action dataType="product" tid="37590039-3AEA-4A13-9C3A-C6EC3C94ADCE" type="delete"/>
</actions>
</pim>'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<actions>
<action dataType="product" tid="37590039-3AEA-4A13-9C3A-C6EC3C94ADCE" type="delete"/>
</actions>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<actions>
<action dataType="product" id="552200" type="delete"/>
</actions>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-12-26T15:28:53.286Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="product"
tid="37590039-3AEA-4A13-9C3A-C6EC3C94ADCE"
action="delete">
<status>SUCCESS</status>
<description>The product has been deleted successfully</description>
</response>
</responses>
</pim>
Error responses
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-12-26T15:24:32.321Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="product"
tid="37590039-3AEA-4A13-9C3A-C6EC3C94ADCE2"
action="delete">
<status>ERROR</status>
<description>There is no product with the given tid or id</description>
</response>
</responses>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-12-26T15:50:42.328Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="product"
tid="37590039-3AEA-4A13-9C3A-C6EC3C94ADCE2"
action="delete">
<status>ERROR</status>
<description>The product could not be deleted. Reason: {errormessage}</description>
</response>
</responses>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-12-26T15:54:28.638Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="product">
<status>ERROR</status>
<description>Products delete API is restricted for user</description>
</response>
</responses>
</pim>
Copy
curl
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/pim/products/perform' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json' \
--data-raw '<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<actions>
<action dataType="product" tid="37590039-3aea-4a13-9c3a-c6ec3c94adce" type="copy">
<meta>
<itm key="newProductName">NewProduct</itm>
<itm key="newProductTid">37590039-aaaa-4a13-9c3a-c6ec3c94adce</itm>
</meta>
</action>
</actions>
</pim>'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<actions>
<action dataType="product" tid="37590039-3aea-4a13-9c3a-c6ec3c94adce" type="copy">
<meta>
<itm key="newProductName">NewProduct</itm>
<itm key="newProductTid">37590039-aaaa-4a13-9c3a-c6ec3c94adce</itm>
</meta>
</action>
</actions>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<actions>
<action dataType="product" id="123123" type="copy">
<meta>
<itm key="newProductName">NewProduct</itm>
<itm key="newProductTid">37590039-aaaa-4a13-9c3a-c6ec3c94adce</itm>
</meta>
</action>
</actions>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-04T13:24:53.286Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="product"
tid="37590039-3aea-4a13-9c3a-c6ec3c94adce"
action="copy">
<status>SUCCESS</status>
<description>The product has been copied successfully</description>
<details>
<itm key="productId">77833</itm>
</details>
</response>
</responses>
</pim>
Error responses
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-04T13:36:54.983Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="product"
tid="37590039-3aea-4a13-9c3a-c6ec3c94adce2"
action="copy">
<status>ERROR</status>
<description>There is no product with the given tid or id</description>
</response>
</responses>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-04T13:38:16.444Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="product"
tid="37590039-3aea-4a13-9c3a-c6ec3c94adce2"
action="copy">
<status>ERROR</status>
<description>The product could not be copied. Reason: {errorMessageFromOMN}</description>
</response>
</responses>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-10-11T12:14:28.978Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="product">
<status>ERROR</status>
<description>Products copy API is restricted for user</description>
</response>
</responses>
</pim>
Retrieve products
| /pim/products/retrieve Returns list of product trees by identifiers. |
Resource path |
/api/core/v1/pim/products/retrieve |
HTTP method |
POST |
Request content type |
application/json |
Response content type |
|
Types of products:
-
Product
-
Article
-
Variation
Product attributes values
Product attributes values are stored in related product type (P,A,V) in <vals> element.
Attribute types:
-
simple
-
localized
-
multiple
-
multi_loc
-
domain
-
loc_domain
-
multi_domain
-
multi_loc_domain
Attribute data types:
-
string
-
real
-
date
-
boolean
-
table
Product attributes types and examples
| Attribute type | Response template | Example |
|---|---|---|
Boolean |
|
|
Date |
|
|
Number |
|
|
String |
|
|
Table |
Allows to use as columns listable attributes with domains and/or localization
|
|
Listable attribute (String or Date or Number or Boolean) |
|
|
Localized attribute (String or Date or Number or Boolean) |
|
|
Localized listable attribute (String or Date or Number or Boolean) |
|
|
Domain attribute (String) |
|
|
Domain localized attribute |
|
|
Domain listed attribute |
|
|
Domain listed localized attribute |
|
|
Body parameters
Specified by ProductRequest
Return Type
PimType with filled ProductsType. More info ProductType
Responses
| Code | Message | Datatype |
|---|---|---|
200 |
PimType with list of products tree (P,A,V) |
|
403 |
No access to the endpoint |
|
500 |
Error in ResponseType |
Samples
| Please use transform endpoint to get the JSON/compact-JSON samples from the XML one. |
Get product
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/pim/products/retrieve' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json' \
--data-raw '{
"ids": [
598800
]
}'
{
"ids": [
598800
]
}
{
"tids": [
"78fc9abb-2223-40dc-ac3e-26d42102d050"
]
}
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-12-28T16:27:22.403Z</itm>
<itm key="sourceEnv">web</itm>
<itm key="itemInformationType">product</itm>
</meta>
<products>
<product tid="78fc9abb-2223-40dc-ac3e-26d42102d050">
<articles>
<article tid="e9e74b50-0a64-4bf5-995e-41940cac29ea">
<meta>
<itm key="id">599790</itm>
<itm key="creationDate">2022-12-28T16:25:10.451Z</itm>
<itm key="modificationDate">2022-12-28T16:25:10.451Z</itm>
<itm key="valueModificationDate">2022-12-28T16:25:38.389Z</itm>
<itm key="status">READY</itm>
</meta>
<name>Article</name>
<vals>
<val attr="color" dataType="text" node="/Standard" type="localized">
<itm loc="en_EN">Black</itm>
</val>
</vals>
<variants>
<variant tid="ab96e6b1-d874-4cea-9ab9-141fcf6804bc">
<meta>
<itm key="id">599791</itm>
<itm key="creationDate">2022-12-28T16:25:15.553Z</itm>
<itm key="modificationDate">2022-12-28T16:25:15.553Z</itm>
<itm key="valueModificationDate">2022-12-28T16:25:46.481Z</itm>
<itm key="status">READY</itm>
</meta>
<name>Variation</name>
<vals>
<val attr="currency" dataType="text" node="/Standard" type="loc_domain">
<itm key="EUR" loc="en_EN">EUR</itm>
</val>
</vals>
</variant>
</variants>
</article>
</articles>
<links>
<itms mode="delta" type="channels"/>
<itms mode="delta" type="assets">
<itms attr="REFERENCE_TABLE" mode="delta">
<itm key="BBF33C7E-E412-4C9E-B313-735C8C681D71">/100192517000_97f.jpg</itm>
</itms>
</itms>
<itms mode="delta" type="products"/>
</links>
<meta>
<itm key="id">598800</itm>
<itm key="creationDate">2022-12-27T06:24:56.610Z</itm>
<itm key="modificationDate">2022-12-27T06:24:56.610Z</itm>
<itm key="valueModificationDate">2022-12-28T16:24:54.488Z</itm>
<itm key="status">READY</itm>
</meta>
<name>Product</name>
<node>/Standard/Demo</node>
<vals>
<val attr="STRING_LISTED_LOC" dataType="text" inheritance="false" node="/Standard/Demo" type="multi_loc">
<i18N loc="en_EN">
<itm pos="0">en</itm>
</i18N>
<i18N loc="de_DE">
<itm pos="0">text</itm>
</i18N>
</val>
<val attr="BOOLEAN_LISTED" dataType="boolean" inheritance="false" node="/Standard/Demo" type="multi_loc">
<i18N loc="en_EN">
<itm pos="0">true</itm>
<itm pos="1">false</itm>
</i18N>
<i18N loc="de_DE">
<itm pos="0">true</itm>
<itm pos="1">false</itm>
</i18N>
</val>
<val attr="DATE_LISTED" dataType="date" inheritance="false" node="/Standard/Demo" type="multi_loc">
<i18N loc="en_EN">
<itm pos="0">2022-12-15T14:55:00.000Z</itm>
<itm pos="1">2022-12-04T14:55:00.000Z</itm>
</i18N>
<i18N loc="de_DE">
<itm pos="0">2022-12-22T14:55:00.000Z</itm>
<itm pos="1">2022-12-31T14:55:00.000Z</itm>
</i18N>
</val>
<val attr="DATE_LISTED_2" dataType="date" inheritance="false" node="/Standard/Demo" type="multiple">
<itm pos="0">2022-12-14T06:26:00.000Z</itm>
<itm pos="1">2022-12-16T06:26:00.000Z</itm>
</val>
<val attr="BOOLEAN" dataType="boolean" inheritance="false" node="/Standard/Demo" type="localized">
<itm loc="en_EN">true</itm>
</val>
<val attr="REAL_LISTED_2" dataType="number" inheritance="false" node="/Standard/Demo" type="multiple">
<itm pos="0">3</itm>
<itm pos="1">1</itm>
</val>
<val attr="NUBMER_LISTED" dataType="number" inheritance="false" node="/Standard/Demo" type="multi_loc">
<i18N loc="en_EN">
<itm pos="0">1</itm>
<itm pos="1">2</itm>
</i18N>
<i18N loc="de_DE">
<itm pos="0">3</itm>
<itm pos="1">4</itm>
</i18N>
</val>
<val attr="STRING_LISTED_DOMAIN" dataType="text" inheritance="false" node="/Standard/Demo" type="multi_loc_domain">
<i18N loc="en_EN">
<itm key="Value 1" pos="0">Value 1 EN</itm>
</i18N>
<i18N loc="fr_FR">
<itm key="Value 2" pos="0"></itm>
</i18N>
</val>
<val attr="STRING_DOMAIN" dataType="text" inheritance="false" node="/Standard/Demo" type="loc_domain">
<itm key="Domain value 1" loc="en_EN"></itm>
<itm key="Domain value 2" loc="de_DE"></itm>
</val>
<val attr="STRING" dataType="text" inheritance="false" node="/Standard/Demo" type="localized">
<itm loc="en_EN">3343</itm>
<itm loc="fr_FR">French</itm>
</val>
<val attr="NUMBER_LISTABLE_TABLE" dataType="number" inheritance="false" node="/Standard/Demo" parent="TABLE" type="multi_loc">
<i18N loc="en_EN">
<itm pos="0">54</itm>
<itm pos="1">45</itm>
</i18N>
</val>
<val attr="STRING_LISTABLE_DOMAIN_TABLE" dataType="text" inheritance="false" node="/Standard/Demo" parent="TABLE" type="multi_loc">
<i18N loc="en_EN">
<itm pos="0">1</itm>
<itm pos="1">2</itm>
</i18N>
</val>
<val attr="DATE" dataType="date" inheritance="false" node="/Standard/Demo" type="localized">
<itm loc="en_EN">2022-12-20T11:06:18.000Z</itm>
</val>
<val attr="DATE_2" dataType="date" inheritance="false" node="/Standard/Demo" type="localized">
<itm loc="en_EN">2022-12-20T06:26:00.000Z</itm>
<itm loc="de_DE">2022-12-19T06:26:00.000Z</itm>
</val>
<val attr="NUMBER" dataType="number" inheritance="false" node="/Standard/Demo" type="localized">
<itm loc="en_EN">5.432</itm>
</val>
<val attr="NUMBER_2" dataType="number" inheritance="false" node="/Standard/Demo" type="localized">
<itm loc="en_EN">1</itm>
<itm loc="de_DE">3</itm>
</val>
</vals>
</product>
</products>
</pim>
Query products
| /pim/products/query Get tids of products by allowed criteria |
Allows to get products tids by:
-
By modification date (from/until)
-
By classification node paths
-
By search strategy
| Criteria combined with AND operator. |
Resource path |
/api/core/v1/pim/products/query |
HTTP method |
POST |
Request content type |
application/json; |
Response content type |
application/json; |
Body parameters
Accepts ProductQuery
Return Type
Filled with asset tids ProductRequest
Responses
| Code | Message | Datatype |
|---|---|---|
200 |
Found products tids |
|
400 |
Invalid input error ResponseType |
|
500 |
Error in ResponseType |
Samples
Query product by modified dates, classification node paths and search strategy
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/pim/products/query' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json' \
--data-raw '{
"modifiedFrom": "2018-02-25T01:00:00.000",
"modifiedUntil": "2020-12-25T01:00:00.000",
"nodePaths": [
"/seasons/2021/clothes",
"/seasons/2022/clothes"
],
"searchStrategy": "defaultSearchStrategy"
}
'
Request body examples:
{
"modifiedFrom": "2018-02-25T01:00:00.000",
"modifiedUntil": "2020-12-25T01:00:00.000",
"nodePaths": [
"/seasons/2021/clothes"
],
"searchStrategy": "defaultSearchStrategy"
}
{
"tids": [
"8E93BA7A-0521-4FB2-A7B7-40941C7A5AFA",
"218BCAED-A63B-4CE4-B23F-42B479E4E9FB",
"C3617CA4-0869-4A60-9CDC-32DCA0322F63",
"2BA8E460-964E-4197-9292-1E4365B29386",
"5BD22A27-7C2E-49B9-B90F-00F209900480",
"D1019EE5-F1E0-49FA-8C2B-AD7FE3F8402C",
"6BD4B93B-2F35-4B9F-909E-974443B7C96B",
"DA32F94E-98B8-4F62-B588-EE804D97717B",
"08E3AF9C-1D28-4962-9C82-4E54633A9A4B",
"F008FE89-7372-4C17-83AB-670A664B57D9",
"95E7D312-1C4B-43BF-93C9-2219248ABF33",
"A905D075-8312-49EA-AB09-65D6FDBEE573",
"19F2C143-68D0-410C-BC24-53B33B70D270"
]
}
Perform actions on products links
| /pim/products/links/perform Unlink products from products. |
-
unlink
Allow to unlink products by:
-
product tid
-
product id
Resource path |
/api/core/v1/pim/products/links/perform |
HTTP method |
POST |
Request content type |
|
Response content type |
|
Body parameters
PimType with ActionTypes
Actions require additional info that should be provided in MetaType in key/value way.
ActionType's type
is required and must be provided.
Possible values:
-
unlink
ActionType's dataType is -
productToProductLink
Return Type
PimType with filled ResponsesType
Response types contains status information about each action passed to perform.
Responses
| Actions are processed separately. Exceptions thrown during the execution of actions will be reported in ResponseType. |
| Code | Message | Datatype |
|---|---|---|
200 |
PimType with filled ResponsesType. |
|
400 |
Invalid input provided |
|
401 |
Not authorized |
|
500 |
An unknown internal error occurred |
Samples
| Please use transform endpoint to get the JSON/compact-JSON samples from the XML one. |
1.Unlink products by product tid
curl
curl --location --request POST 'http://<OMN_SERVER>/api/core/v1/pim/products/links/perform' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/xml' \
--data-raw '<?xml version="1.0" encoding="UTF-8"?>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="sourceEnv">web</itm>
</meta>
<actions>
<action dataType="productToProductLink" type="unlink">
<meta>
<itm key="productTid">product_tid</itm>
<itm key="targetProductTid">targetProduct_tid</itm>
<itm key="type">PRODUCT_REF</itm>
</meta>
</action>
</actions>
</pim>'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="sourceEnv">web</itm>
</meta>
<actions>
<action dataType="productToProductLink" type="unlink">
<meta>
<itm key="productTid">product_tid</itm>
<itm key="targetProductTid">targetProduct_tid</itm>
<itm key="type">PRODUCT_REF</itm>
</meta>
</action>
</actions>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-04T13:24:53.286Z</itm>
<itm key="sourceEnv">web</itm>
<itm key="itemInformationType">link</itm>
</meta>
<responses>
<response dataType="productToProductLink" action="unlink">
<status>SUCCESS</status>
<description>The product has been unlinked successfully</description>
</response>
</responses>
</pim>
2.Unlink products by product id
curl
curl --location --request POST 'http://<OMN_SERVER>/api/core/v1/pim/products/links/perform' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/xml' \
--data-raw '<?xml version="1.0" encoding="UTF-8"?>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="sourceEnv">web</itm>
</meta>
<actions>
<action dataType="productToProductLink" type="unlink">
<meta>
<itm key="productId">985547</itm>
<itm key="targetProductId">554785</itm>
<itm key="type">PRODUCT_REF</itm>
</meta>
</action>
</actions>
</pim>'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="sourceEnv">web</itm>
</meta>
<actions>
<action dataType="productToProductLink" type="unlink">
<meta>
<itm key="productId">985547</itm>
<itm key="targetProductId">554785</itm>
<itm key="type">PRODUCT_REF</itm>
</meta>
</action>
</actions>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2023-02-21T14:54:28.781Z</itm>
<itm key="sourceEnv">web</itm>
<itm key="itemInformationType">link</itm>
</meta>
<responses>
<response dataType="productToProductLink" action="unlink">
<status>SUCCESS</status>
<description>The product has been unlinked successfully</description>
</response>
</responses>
</pim>
Error responses
A product does not exist
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2023-02-21T14:54:28.781Z</itm>
<itm key="sourceEnv">web</itm>
<itm key="itemInformationType">link</itm>
</meta>
<responses>
<response dataType="productToProductLink"
action="unlink">
<status>ERROR</status>
<description>There is no target products with the given tid or id to perform unlink: {details}</description>
</response>
</responses>
</pim>
An attribute definition does not exist
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2023-02-21T14:54:28.781Z</itm>
<itm key="sourceEnv">web</itm>
<itm key="itemInformationType">link</itm>
</meta>
<responses>
<response dataType="productToProductLink"
action="unlink">
<status>ERROR</status>
<description>There is no target attribute definition with the given identifier: {tid}</description>
</response>
</responses>
</pim>
Unlink could not be performed
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2023-02-21T14:54:28.781Z</itm>
<itm key="sourceEnv">web</itm>
<itm key="itemInformationType">link</itm>
</meta>
<responses>
<response dataType="productToProductLink"
action="unlink">
<status>ERROR</status>
<description>Unlink could not be performed. Reason: {errormessage}</description>
</response>
</responses>
</pim>
No access to the endpoint
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2023-02-21T14:54:28.781Z</itm>s
<itm key="sourceEnv">web</itm>
<itm key="itemInformationType">link</itm>
</meta>
<responses>
<response dataType="productToProductLink">
<status>ERROR</status>
<description>Unlink API is restricted for user</description>
</response>
</responses>
</pim>
Link products
| /pim/products/links/persist Link products to another products. |
Allow to link products by:
-
product tid
-
product id
Resource path |
/pim/products/links/persist |
HTTP method |
POST |
Request content type |
|
Response content type |
|
Return Type
PimType with statuses ResponsesType about each linked product.
| Code | Message | Datatype |
|---|---|---|
200 |
PimType with filled ResponsesType |
|
400 |
Invalid input provided |
|
401 |
Not authorized |
|
500 |
An unknown internal error occurred |
Samples
| Please use transform endpoint to get the JSON/compact-JSON samples from the XML one. |
1. Link single product to single product by tids
curl
curl --location --request POST 'http://<OMN_SERVER>/api/core/v1/pim/products/links/persist' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/xml' \
--data-raw '<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<links>
<itms type="productToProduct">
<itms type="PRODUCT_REF">
<itm key="targetProductTid">73c7992f-5f66-4d99-9ca7-9efa3f1b8281</itm>
<itm key="productTid">e8712bfd-6701-4833-9197-b259ea42dd84</itm>
</itms>
</itms>
</links>
</pim>'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<links>
<itms type="productToProduct">
<itms type="PRODUCT_REF">
<itm key="targetProductTid">73c7992f-5f66-4d99-9ca7-9efa3f1b8281</itm>
<itm key="productTid">e8712bfd-6701-4833-9197-b259ea42dd84</itm>
</itms>
</itms>
</links>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-04T13:24:53.286Z</itm>
<itm key="sourceEnv">web</itm>
<itm key="itemInformationType">link</itm>
</meta>
<responses>
<response dataType="productToProductLink"
action="link">
<status>SUCCESS</status>
<description>The products has been linked successfully</description>
<details>
<itms type="PRODUCT_REF">
<itm key="targetProductTid">73c7992f-5f66-4d99-9ca7-9efa3f1b8281</itm>
<itm key="productTid">e8712bfd-6701-4833-9197-b259ea42dd84</itm>
</itms>
</details>
</response>
</responses>
</pim>
2. Link single product to single product by ids
curl
curl --location --request POST 'http://<OMN_SERVER>/api/core/v1/pim/products/links/persist' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/xml' \
--data-raw '<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<links>
<itms type="productToProduct">
<itms type="PRODUCT_REF">
<itm key="targetProductId">12345</itm>
<itm key="productId">54321</itm>
</itms>
</itms>
</links>
</pim>'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<links>
<itms type="productToProduct">
<itms type="PRODUCT_REF">
<itm key="targetProductId">12345</itm>
<itm key="productId">54321</itm>
</itms>
</itms>
</links>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-04T13:24:53.286Z</itm>
<itm key="sourceEnv">web</itm>
<itm key="itemInformationType">link</itm>
</meta>
<responses>
<response dataType="productToProductLink"
action="link">
<status>SUCCESS</status>
<description>The products has been linked successfully</description>
<details>
<itms type="PRODUCT_REF">
<itm key="targetProductId">12345</itm>
<itm key="productId">54321</itm>
</itms>
</details>
</response>
</responses>
</pim>
3. Link several products to single product by tids
curl
curl --location --request POST 'http://<OMN_SERVER>/api/core/v1/pim/products/links/persist' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/xml' \
--data-raw '<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<links>
<itms type="productToProduct">
<itms type="PRODUCT_REF">
<itms type="productTid">
<itm>73c7992f-5f66-4d99-9ca7-9efa3f1b8281</itm>
<itm>ab96e6b1-d874-4cea-9ab9-141fcf6804bc</itm>
</itms>
<itm key="targetProductTid">e8712bfd-6701-4833-9197-b259ea42dd84</itm>
</itms>
</itms>
</links>
</pim>'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<links>
<itms type="productToProduct">
<itms type="PRODUCT_REF">
<itms type="productTid">
<itm>73c7992f-5f66-4d99-9ca7-9efa3f1b8281</itm>
<itm>ab96e6b1-d874-4cea-9ab9-141fcf6804bc</itm>
</itms>
<itm key="targetProductTid">e8712bfd-6701-4833-9197-b259ea42dd84</itm>
</itms>
</itms>
</links>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-04T13:24:53.286Z</itm>
<itm key="sourceEnv">web</itm>
<itm key="itemInformationType">link</itm>
</meta>
<responses>
<response dataType="productToProductLink"
action="link">
<status>SUCCESS</status>
<description>The products has been linked successfully</description>
<details>
<itms type="PRODUCT_REF">
<itms type="productTid">
<itm>73c7992f-5f66-4d99-9ca7-9efa3f1b8281</itm>
<itm>ab96e6b1-d874-4cea-9ab9-141fcf6804bc</itm>
</itms>
<itm key="targetProductTid">e8712bfd-6701-4833-9197-b259ea42dd84</itm>
</itms>
</details>
</response>
</responses>
</pim>
4. Link single products to several products by tids
curl
curl --location --request POST 'http://<OMN_SERVER>/api/core/v1/pim/products/links/persist' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/xml' \
--data-raw '<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<links>
<itms type="productToProduct">
<itms type="PRODUCT_REF">
<itm key="productTid">73c7992f-5f66-4d99-9ca7-9efa3f1b8281</itm>
<itms type="targetProductTid">
<itm>ab96e6b1-d874-4cea-9ab9-141fcf6804bc</itm>
<itm>e8712bfd-6701-4833-9197-b259ea42dd84</itm>
</itms>
</itms>
</itms>
</links>
</pim>'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<links>
<itms type="productToProduct">
<itms type="PRODUCT_REF">
<itm key="productTid">73c7992f-5f66-4d99-9ca7-9efa3f1b8281</itm>
<itms type="targetProductTid">
<itm>ab96e6b1-d874-4cea-9ab9-141fcf6804bc</itm>
<itm>e8712bfd-6701-4833-9197-b259ea42dd84</itm>
</itms>
</itms>
</itms>
</links>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-04T13:24:53.286Z</itm>
<itm key="sourceEnv">web</itm>
<itm key="itemInformationType">link</itm>
</meta>
<responses>
<response dataType="productToProductLink"
action="link">
<status>SUCCESS</status>
<description>The products has been linked successfully</description>
<details>
<itms type="PRODUCT_REF">
<itm key="productTid">73c7992f-5f66-4d99-9ca7-9efa3f1b8281</itm>
<itms type="targetProductTid">
<itm>ab96e6b1-d874-4cea-9ab9-141fcf6804bc</itm>
<itm>e8712bfd-6701-4833-9197-b259ea42dd84</itm>
</itms>
</itms>
</details>
</response>
</responses>
</pim>
5. Link several products to several products by tids
curl
curl --location --request POST 'http://<OMN_SERVER>/api/core/v1/pim/products/links/persist' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/xml' \
--data-raw '<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<links>
<itms type="productToProduct">
<itms type="PRODUCT_REF">
<itms type="productTid">
<itm>73c7992f-5f66-4d99-9ca7-9efa3f1b8281</itm>
<itm>28e09c5f-9f23-4274-8bb5-4e0924d52076</itm>
</itms>
<itms type="targetProductTid">
<itm>ab96e6b1-d874-4cea-9ab9-141fcf6804bc</itm>
<itm>e8712bfd-6701-4833-9197-b259ea42dd84</itm>
</itms>
</itms>
</itms>
</links>
</pim>'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<links>
<itms type="productToProduct">
<itms type="PRODUCT_REF">
<itms type="productTid">
<itm>73c7992f-5f66-4d99-9ca7-9efa3f1b8281</itm>
<itm>28e09c5f-9f23-4274-8bb5-4e0924d52076</itm>
</itms>
<itms type="targetProductTid">
<itm>ab96e6b1-d874-4cea-9ab9-141fcf6804bc</itm>
<itm>e8712bfd-6701-4833-9197-b259ea42dd84</itm>
</itms>
</itms>
</itms>
</links>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-04T13:24:53.286Z</itm>
<itm key="sourceEnv">web</itm>
<itm key="itemInformationType">link</itm>
</meta>
<responses>
<response dataType="productToProductLink"
action="link">
<status>SUCCESS</status>
<description>The products has been linked successfully</description>
<details>
<itms type="PRODUCT_REF">
<itms type="productTid">
<itm>73c7992f-5f66-4d99-9ca7-9efa3f1b8281</itm>
<itm>28e09c5f-9f23-4274-8bb5-4e0924d52076</itm>
</itms>
<itms type="targetProductTid">
<itm>ab96e6b1-d874-4cea-9ab9-141fcf6804bc</itm>
<itm>e8712bfd-6701-4833-9197-b259ea42dd84</itm>
</itms>
</itms>
</details>
</response>
</responses>
</pim>
Channel management API
Provides operations on OMN channel management.
DAM API provides access to resources of the CM module and is used to manage (sales) channels.
Main resources:
| Resource | Description |
|---|---|
Channel |
(Sales) channel that can be planned and controlled. |
Query channels
| /cm/channels/query Query for channel TIDs |
POST /cm/channels/query
Resource path |
/api/core/v1/cm/channels/query |
HTTP method |
POST |
Request content type |
application/json |
Response content type |
application/json |
Description
Query for channel tids hierarchically by providing a parent channel. Options to limit the depth of children returned or query all root channels without a parent.
Body Parameter
Specified by ChannelQueryDto
Return Type
Specified by ChannelRequest (only tids are filled in the response)
Responses
| Code | Message | Datatype |
|---|---|---|
200 |
channel found |
|
401 |
Not authorized |
<<>> |
404 |
Not found |
<<>> |
500 |
Server error |
<<>> |
Samples
Query Channels by tid or id
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/cm/channels/query' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json' \
--data-raw '{
"id": 598800
}'
{
"id": 598800
}
{
"tid": "AWS"
}
{
"id": 598800,
"level": 2
}
{
"id": 598800,
"level": 0
}
{
"tids": [
"Print",
"FS2021",
"Sample Catalog",
"Document FS21-01_01",
"Document FS21-01_02",
"Document FS21-01_03",
"Document FS21-01_04"
]
}
{
"tids": [
"Print"
]
}
{
"details": {
"itm": [
{
"key": "supportId",
"value": "4d28646b-b4f6-421f-9a46-f285cd7fd680"
}
]
},
"issues": [
{
"itm": [
{
"key": "code",
"value": "1000"
},
{
"key": "description",
"value": "An unknown internal error occurred"
}
],
"itms": [
{
"itm": [
{
"key": "errorMessage",
"value": "project by id 383010 not found"
}
],
"type": "details"
}
]
}
],
"status": "ERROR"
}
Query Channels, all root level channels without parent
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/cm/channels/query' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json' \
--data-raw '{
"root": true
}'
{
"root": true
}
{
"tids": [
"Print",
"Shootings1"
]
}
{
"tids": []
}
Retrieve channels
| /cm/channels/retrieve Retrieve channels |
POST /cm/channels/retrieve
Resource path |
/api/core/v1/cm/channels/retrieve |
HTTP method |
POST |
Request content type |
application/json |
Response content type |
|
Body Parameter
Specified by ChannelRequestDto
Return Type
PimType with filled ProjectsType More info ProjectType
Responses
| Code | Message | Datatype |
|---|---|---|
200 |
PimType with list of projects tree |
|
403 |
No access to the endpoint |
|
500 |
Error in ResponseType |
Samples
| Please use transform endpoint to get the JSON/compact-JSON samples from the XML one. |
Retrieve Channels
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/cm/channels/retrieve' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json' \
--data-raw '{
"ids": [
598800
]
}'
{
"ids": [
598800
]
}
{
"tids": [
"AWS"
]
}
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2024-03-12T08:53:11.795Z</itm>
<itm key="sourceEnv">jli_docker</itm>
<itm key="itemInformationType">project</itm>
</meta>
<projects>
<project tid="AWS" type="AWS" orderSequence="1048576">
<name>AWS</name>
<meta>
<itm key="id">21788</itm>
<itm key="creationDate">2023-08-04T09:36:06.802Z</itm>
<itm key="modificationDate">2024-01-10T11:06:06.587Z</itm>
<itm key="htmlIcon"/>
<itm key="icon">/static/assets/projects/i3p1.gif</itm>
<itm key="allowedFunctions">F.JavaFunction.ACC.CSVExportProduct,ProjectMoveUpFunction,SetFavouriteProjectFunction</itm>
</meta>
<vals>
<val attr="ENUMTEST">
<itm>V1,V2</itm>
</val>
<val attr="TRESHOLD_VALUE">
<itm>0.4</itm>
</val>
</vals>
<links>
<itm key="FA1B5E2F-4869-4991-B17B-AA8BD3709AF6">MAM/cat.jpg</itm>
<itm key="B3DC4775-D3F8-4C2A-BE9B-5E9BC5E60849">MAM/dog.jpg</itm>
</links>
<peos>
<peo tid="3b6e1b67-aa7f-43a0-bea0-b124129c3480"
product="58695a3d-f6d6-44fa-89f0-6a5e027ac79a"
template="Web"
default="true">
<meta>
<itm key="id">134320</itm>
<itm key="creationDate">2024-03-01T08:40:27.027Z</itm>
<itm key="modificationDate">2024-03-01T08:40:27.170Z</itm>
</meta>
<name>test1</name>
<nodes>
<node>AWS</node>
</nodes>
<vals>
<val attr="material"
type="localized"
origin="PRODUCT"
node="/Standard"
dataType="text">
<itm loc="en_EN">en1</itm>
<itm loc="de_DE">de2</itm>
</val>
</vals>
</peo>
</peos>
</project>
</projects>
</pim>
Retrieve channel briefings
| /cm/channels/briefings/retrieve Retrieve channel briefings |
POST /cm/channels/briefings/retrieve
- Operation Id
-
retrieveChannelBriefings
retrieve channel briefings
Parameters
Responses
| Code | Message | Datatype |
|---|---|---|
200 |
channel found |
|
401 |
Not authorized |
<<>> |
404 |
Not found |
<<>> |
500 |
Server error |
<<>> |
Samples
Retrieve channel briefing by channel tid
curl
curl --location 'http://<OMN_SERVER>/api/core/v1/cm/channels/briefings/retrieve' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json' \
--data '{
"tids": [
"Project Lvl 5"
],
"briefingInfo": {
"locale": "de_DE",
"briefingModuleCfgTid": "F.BriefingModule.ACC"
}
}'
{
"tids": [
"Project Lvl 5"
],
"briefingInfo": {
"locale": "de_DE",
"briefingModuleCfgTid": "F.BriefingModule.ACC"
}
}
<patch-briefing>
<layout id="64882" name="">
<attribute identifier="width">5000.0</attribute>
<attribute identifier="height">3000.0</attribute>
<seitenbriefing/>
<boxes>
<box id="64900" layer="Default" name="Assets" type="Assets">
<attribute identifier="width">454.7786</attribute>
<attribute identifier="height">588.4206</attribute>
<attribute identifier="xpos">1759.5819</attribute>
<attribute identifier="ypos">661.82874</attribute>
<attribute identifier="zpos">1000</attribute>
<attribute identifier="content_width">100.0%</attribute>
<attribute identifier="content_height">99.838646%</attribute>
<attribute identifier="content_xpos">0.0</attribute>
<attribute identifier="content_ypos">0.47470373</attribute>
<attribute identifier="content_rotate_angle">0.0</attribute>
<attribute identifier="content_reflection">0</attribute>
<attribute identifier="order_name"></attribute>
<attribute identifier="dummy_width">0.0%</attribute>
<attribute identifier="dummy_height">0.0%</attribute>
<attribute identifier="dummy_xpos">0.0</attribute>
<attribute identifier="dummy_ypos">0.0</attribute>
<attribute identifier="dummy_rotate_angle">0.0</attribute>
<attribute identifier="dummy_reflection">0</attribute>
<attribute identifier="text_article">false</attribute>
<images>
<image type="origin">
<attribute identifier="image_path">/file-formats/jpg.jpg</attribute>
<attribute identifier="image_width">100.0%</attribute>
<attribute identifier="image_height">99.838646%</attribute>
<attribute identifier="image_offset_x">0.0</attribute>
<attribute identifier="image_offset_y">0.47470373</attribute>
<attribute identifier="image_rotate_angle">0.0</attribute>
<attribute identifier="flipped_horizontal">0</attribute>
<attribute identifier="flipped_vertical"></attribute>
<attribute identifier="image_scale"></attribute>
</image>
</images>
<box_data/>
<related_products/>
<box_data_attributes/>
<briefing_images/>
</box>
<box id="64902" layer="Default" name="Assets" type="Assets">
<attribute identifier="width">300.0</attribute>
<attribute identifier="height">1006.993</attribute>
<attribute identifier="xpos">1315.331</attribute>
<attribute identifier="ypos">1219.1582</attribute>
<attribute identifier="zpos">1001</attribute>
<attribute identifier="content_width">100.0%</attribute>
<attribute identifier="content_height">97.70311%</attribute>
<attribute identifier="content_xpos">0.0</attribute>
<attribute identifier="content_ypos">11.564788</attribute>
<attribute identifier="content_rotate_angle">0.0</attribute>
<attribute identifier="content_reflection">0</attribute>
<attribute identifier="order_name"></attribute>
<attribute identifier="dummy_width">0.0%</attribute>
<attribute identifier="dummy_height">0.0%</attribute>
<attribute identifier="dummy_xpos">0.0</attribute>
<attribute identifier="dummy_ypos">0.0</attribute>
<attribute identifier="dummy_rotate_angle">0.0</attribute>
<attribute identifier="dummy_reflection">0</attribute>
<attribute identifier="text_article">false</attribute>
<images>
<image type="origin">
<attribute identifier="image_path">/file-formats/tif.tif</attribute>
<attribute identifier="image_width">100.0%</attribute>
<attribute identifier="image_height">97.70311%</attribute>
<attribute identifier="image_offset_x">0.0</attribute>
<attribute identifier="image_offset_y">11.564788</attribute>
<attribute identifier="image_rotate_angle">0.0</attribute>
<attribute identifier="flipped_horizontal">0</attribute>
<attribute identifier="flipped_vertical"></attribute>
<attribute identifier="image_scale"></attribute>
</image>
</images>
<box_data/>
<related_products/>
<box_data_attributes/>
<briefing_images/>
</box>
</boxes>
<briefing_images/>
</layout>
</patch-briefing>
Retrieve channel briefing by channel id
curl
curl --location 'http://<OMN_SERVER>/api/core/v1/cm/channels/briefings/retrieve' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json' \
--data '{
"ids": [
39112
],
"briefingInfo": {
"locale": "de_DE",
"briefingModuleCfgTid": "F.BriefingModule.ACC"
}
}'
{
"ids": [
39112
],
"briefingInfo": {
"locale": "de_DE",
"briefingModuleCfgTid": "F.BriefingModule.ACC"
}
}
<patch-briefing>
<layout id="64880" name="">
<attribute identifier="width">5000.0</attribute>
<attribute identifier="height">3000.0</attribute>
<seitenbriefing/>
<boxes/>
<briefing_images/>
</layout>
</patch-briefing>
PEO API
PEO API provides access to peos management resources of OMN and operations on them.
DAM API provides access to PEO resources. PEO is an abbreviation for "Product Export Option". This refers to filters on articles or products of the OMN, e.g. to be able to define different prices or texts for an advertising material or for a web shop.
Main resources:
| Resource | Description |
|---|---|
PEO |
Product Export Options. |
Links |
Represent references between PEOs and Projects |
Peos API
Provides operations on OMN peos.
Query peos
| /peo/peos/query Get lost of PEO tids by allowed criteria. |
Allows to get peos tids by:
-
By modification date (from/until)
-
By project tid
-
By peos names
| When project tid is set the peos linked to child projects are exported as well by default. withChildren boolean parameter is responsible for this functionality. By default, this parameters value is true. |
Tip: Request can be performed by one parameter or by many at once. Criteria combined with AND operator.
Resource path |
/api/core/v1/peo/peos/query |
HTTP method |
POST |
Request content type |
application/json; |
Response content type |
application/json; |
Body parameters
Accepts PeoQuery
Return Type
Filled with peos tids PeoRequest
Responses
| Code | Message | Datatype |
|---|---|---|
200 |
Found products tids |
|
400 |
Invalid input provided |
|
401 |
Not authorized |
|
404 |
Not found |
|
500 |
An unknown internal error occurred |
Samples
Query by product tid, modified date interval, peo names and project tid with child projects peos
curl
curl --location 'http://<OMN_SERVER>/api/core/v1/peo/peos/query' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json' \
--data '{
"tidProduct": "ec98dde6-4064-465d-a1fb-237e2f10a336",
"modifiedFrom": "2018-02-25T01:00:00.000",
"modifiedUntil": "2023-02-24T01:00:00.000",
"names": ["PEO name", "PEO other name"],
"tidProject": "t0t8de6-9874-46a1-f11t-ec98dde6"
}'
{
"tidProduct": "ec98dde6-4064-465d-a1fb-237e2f10a336",
"modifiedFrom": "2018-02-25T01:00:00.000",
"modifiedUntil": "2023-02-24T01:00:00.000",
"names": ["PEO name", "PEO other name"],
"tidProject": "t0t8de6-9874-46a1-f11t-ec98dde6"
}
{
"tids": [
"55beafb6-a80b-48ab-8a7b-9e1a98d67b24",
"38b42b94-ffca-445c-b395-fa6ee612cbb3",
"8d4e6770-67d2-49db-874c-bf4d5dfa315b"
]
}
Query by product tid, modified date interval, peo names and project tid without child projects peos
curl
curl --location 'http://<OMN_SERVER>/api/core/v1/peo/peos/query' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json' \
--data '{
"tidProduct": "ec98dde6-4064-465d-a1fb-237e2f10a336",
"modifiedFrom": "2018-02-25T01:00:00.000",
"modifiedUntil": "2023-02-24T01:00:00.000",
"names": ["PEO name", "PEO other name"],
"tidProject": "t0t8de6-9874-46a1-f11t-ec98dde6",
"withChildren": false
}'
{
"tidProduct": "ec98dde6-4064-465d-a1fb-237e2f10a336",
"modifiedFrom": "2018-02-25T01:00:00.000",
"modifiedUntil": "2023-02-24T01:00:00.000",
"names": ["PEO name", "PEO other name"],
"tidProject": "t0t8de6-9874-46a1-f11t-ec98dde6",
"withChildren": false
}
{
"tids": [
"55beafb6-a80b-48ab-8a7b-9e1a98d67b24",
"38b42b94-ffca-445c-b395-fa6ee612cbb3"
]
}
Retrieve peos
| /peo/peos/retrieve Retrieves information about PEOs. |
Resource path |
/api/core/v1/peo/peos/retrieve |
HTTP method |
POST |
Request content type |
application/json |
Response content type |
|
Body parameters
Specified by PeoRequest
-
ids: it might be used to get peos by id's
-
tids: it might be used to get peos by tid's
| Boolean withMetadata parameter indicates to return peos with metadata or not. By default, this parameter is false. |
| Boolean namesOnly parameter indicates to return peos with names only for performance reasons. By default, this parameter is false. |
| Peos are retrieved by tids OR ids. ids are ignored if the request contains tids and ids. |
Return Type
PimType with peos as String
| Code | Message | Datatype |
|---|---|---|
200 |
PimType with peos as String |
|
400 |
Invalid input provided |
|
401 |
Not authorized |
|
404 |
Not found |
|
500 |
An unknown internal error occurred |
Samples
| Please use transform endpoint to get the JSON/compact-JSON samples from the XML one. |
Retrieve peo with metadata by peo tids
curl
curl --location 'http://<OMN_SERVER>/api/core/v1/pim/peos/retrieve' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json' \
--data '{
"tids": ["55beafb6-a80b-48ab-8a7b-9e1a98d67b24", "38b42b94-ffca-445c-b395-fa6ee612cbb3"],
"withMetadata" : true
}'
{
"tids": ["55beafb6-a80b-48ab-8a7b-9e1a98d67b24", "38b42b94-ffca-445c-b395-fa6ee612cbb3"],
"withMetadata" : true
}
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2023-02-27T07:20:20.659Z</itm>
<itm key="sourceEnv">web</itm>
<itm key="itemInformationType">peo</itm>
</meta>
<peos>
<peo default="false"
product="ec98dde6-4064-465d-a1fb-237e2f10a336"
template="PeoTemplate1"
tid="55beafb6-a80b-48ab-8a7b-9e1a98d67b24">
<meta>
<itm key="id">47230</itm>
<itm key="creationDate">2023-02-24T07:54:45.523Z</itm>
<itm key="modificationDate">2023-02-24T07:54:45.523Z</itm>
</meta>
<name>PEO name</name>
<nodes/>
</peo>
<peo default="false"
product="ec98dde6-4064-465d-a1fb-237e2f10a336"
template="PeoTemplate1"
tid="38b42b94-ffca-445c-b395-fa6ee612cbb3">
<meta>
<itm key="id">47231</itm>
<itm key="creationDate">2023-02-24T07:57:29.386Z</itm>
<itm key="modificationDate">2023-02-24T07:57:29.386Z</itm>
</meta>
<name>PEO name</name>
<nodes/>
</peo>
</peos>
</pim>
Retrieve peo without metadata by peo ids
curl
curl --location 'http://<OMN_SERVER>/api/core/v1/pim/peos/retrieve' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json' \
--data '{
"ids": [47230, 47231]
}'
{
"ids": [47230, 47231]
}
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2023-02-27T07:22:00.004Z</itm>
<itm key="sourceEnv">web</itm>
<itm key="itemInformationType">peo</itm>
</meta>
<peos>
<peo default="false"
product="ec98dde6-4064-465d-a1fb-237e2f10a336"
template="PeoTemplate1"
tid="55beafb6-a80b-48ab-8a7b-9e1a98d67b24">
<name>PEO name</name>
<nodes/>
</peo>
<peo default="false"
product="ec98dde6-4064-465d-a1fb-237e2f10a336"
template="PeoTemplate1"
tid="38b42b94-ffca-445c-b395-fa6ee612cbb3">
<name>PEO name</name>
<nodes/>
</peo>
</peos>
</pim>
Retrieve peo without metadata with name only by peo id
curl
curl --location 'http://<OMN_SERVER>/api/core/v1/pim/peos/retrieve' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json' \
--data '{
"ids": [46560],
"withMetadata": false,
"namesOnly": true
}'
{
"ids": [
46560
],
"withMetadata": false,
"namesOnly": true
}
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2024-03-06T12:13:32.763Z</itm>
<itm key="sourceEnv">ocd_dev</itm>
<itm key="itemInformationType">peo</itm>
</meta>
<peos>
<peo default="true" product="56606a59-3b13-4693-8354-6e4a04263869" template="Print" tid="cc896f41-d73b-432b-9e92-4d88c3e99702">
<name>Project_Print_06.03.2024_10:19:25</name>
</peo>
</peos>
</pim>
Persist peos
| /peo/peos/persist Creates or updates PEOs. |
Allow to
-
Create peo
-
Update peo
Resource path |
/api/core/v1/peo/peos/persist |
HTTP method |
POST |
Request content type |
|
Response content type |
|
Return Type
PimType with statuses ResponsesType about each persisted peo.
| Code | Message | Datatype |
|---|---|---|
200 |
PimType with filled ResponsesType |
|
400 |
Invalid input provided |
|
401 |
Not authorized |
|
500 |
An unknown internal error occurred |
Samples
| Please use transform endpoint to get the JSON/compact-JSON samples from the XML one. |
1. Create peo linked to product
curl
curl --location --request POST 'http://<OMN_SERVER>/api/core/v1/peo/peos/persist \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/xml' \
--data-raw '<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<peos>
<peo productTid="ec98dde6-4064-465d-a1fb-237e2f10a336" templateId="47220">
<name>PEO name3</name>
</peo>
</peos>
</pim>'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<peos>
<peo productTid="ec98dde6-4064-465d-a1fb-237e2f10a336" templateId="47220">
<name>PEO name</name>
</peo>
</peos>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2023-02-27T12:23:02.746Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="peo" id="52730">
<status>SUCCESS</status>
<description>PEO has been saved successfully</description>
</response>
</responses>
</pim>
2. Create peo linked to product and projects
During creation peo can be linked to several projects, which tids and ids contains in request.
curl
curl --location --request POST 'http://<OMN_SERVER>/api/core/v1/peo/peos/persist \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/xml' \
--data-raw '<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<peos>
<peo productTid="tid1" templateId="1">
<name>PEO name</name>
<nodes>
<node>projectTid1</node>
<node>projectTid2</node>
<node tid="projectTid3"/>
<node id="1"/>
</nodes>
</peo>
</peos>
</pim>'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<peos>
<peo productTid="ec98dde6-4064-465d-a1fb-237e2f10a336" templateId="47220">
<name>PEO name</name>
<nodes>
<node>projectTid1</node>
<node>projectTid2</node>
<node tid="projectTid3"/>
<node id="1"/>
</nodes>
</peo>
</peos>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2023-02-27T12:23:02.746Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="peo" id="52730">
<status>SUCCESS</status>
<description>PEO has been saved successfully</description>
</response>
</responses>
</pim>
3. Update peo
curl
curl --location --request POST 'http://<OMN_SERVER>/api/core/v1/peo/peos/persist \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/xml' \
--data-raw '<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<peos>
<peo productTid="55beafb6-a80b-48ab-8a7b-9e1a98d67b24">
<name>PEO new name</name>
</peo>
</peos>
</pim>'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<peos>
<peo productTid="55beafb6-a80b-48ab-8a7b-9e1a98d67b24">
<name>PEO new name</name>
</peo>
</peos>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2023-02-27T13:50:44.539Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="peo">
<description>Peo has been saved successfully</description>
<status>SUCCESS</status>
</response>
</responses>
</pim>
Error responses
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-07-06T11:49:25.214Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="peo" action="update">
<status>ERROR</status>
<description>Product not found</description>
</response>
</responses>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-07-06T11:49:25.214Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="peo" action="update">
<status>ERROR</status>
<description>PEO template has not been found</description>
</response>
</responses>
</pim>
Perform actions on peos
| /peo/peos/perform Perform different types of actions on peos (delete/copy) |
Available action types:
-
Delete
-
Copy
Resource path |
/api/core/v1/peo/peos/perform |
HTTP method |
POST |
Request content type |
|
Response content type |
|
Body parameters
PimType with ActionsType
Some actions require additional info that should be provided in MetaType in key/value way.
ActionType's type
is required and must be provided.
Possible values:
-
delete
-
copy
ActionType's dataType is - peo
Tip: .Tables legend "As <action> attribute" describes, that parameter is in the xml attribute of <action> tag. Otherwise, parameter should be in ItemType.
"Required groups" - one of parameter in the one group is required e.g. entity identifier (tid or id)
| Parameter Name | As <action> attribute | Required | Type | Description | Format |
|---|---|---|---|---|---|
id |
X |
X G1 |
Long |
id of the peo that should be deleted or copied |
|
tid |
X |
X G1 |
string |
tid of the peo that should be deleted or copied |
Return Type
PimType with filled ResponsesType
Response types contains status information about each action passed to perform.
Responses
| Actions are processed separately. Exceptions thrown during the execution of actions will be reported in ResponseType. |
| Code | Message | Datatype |
|---|---|---|
200 |
PimType with filled ResponsesType. |
|
400 |
Invalid input provided |
|
500 |
An unknown internal error occurred |
Samples
| Please use transform endpoint to get the JSON/compact-JSON samples from the XML one. |
Delete
curl
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/pim/products/perform' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json' \
--data-raw '<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<actions>
<action dataType="peo" tid="7D534991-B623-418C-A7CB-A273C877A37D" type="delete"/>
</actions>
</pim>'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<actions>
<action dataType="peo" tid="7d534991-b623-418c-a7cb-a273c877a37d" type="delete"/>
</actions>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<actions>
<action dataType="peo" id="2364684" type="delete"/>
</actions>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-04T13:24:53.286Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="peo" tid="7d534991-b623-418c-a7cb-a273c877a37d" action="delete">
<status>SUCCESS</status>
<description>PEO has been deleted successfully</description>
</response>
</responses>
</pim>
Error responses
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-04T13:36:54.983Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="peo"
tid="7d534991-b623-418c-a7cb-a273c877a37d"
action="delete">
<status>ERROR</status>
<description>There is no peo with the given tid</description>
</response>
</responses>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-04T13:38:16.444Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="peo"
tid="7d534991-b623-418c-a7cb-a273c877a37d"
action="delete">
<status>ERROR</status>
<description>PEO is not available by access rights</description>
</response>
</responses>
</pim>
Copy
curl
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/pim/products/perform' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json' \
--data-raw '<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<actions>
<action dataType="peo" tid="ab6492-bc76439a-aaaa-aaaaa" type="copy">
<meta>
<itm key="name">PEO copy name</itm>
</meta>
</action>
</actions>
</pim>'
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<actions>
<action dataType="peo" tid="ab6492-bc76439a-aaaa-aaaaa" type="copy">
<meta>
<itm key="name">PEO copy name</itm>
</meta>
</action>
</actions>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<actions>
<action dataType="peo" id="2364684" type="copy">
<meta>
<itm key="name">PEO copy name</itm>
</meta>
</action>
</actions>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-08-15T13:37:04.635Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="peo"
tid="64467fe8-863a-4fcd-ba4e-82914affb3f8"
id="76890"
action="copy">
<status>SUCCESS</status>
<description>peo has been copied</description>
</response>
</responses>
</pim>
Error responses
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-08-15T13:37:53.018Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="peo"
tid="64467fe8-863a-4fcd-ba4e-82914affb3f8"
id="76890"
action="copy">
<status>ERROR</status>
<description>PEO does not exist</description>
</response>
</responses>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-06-04T13:38:16.444Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="peo" tid="7D534991-B623-418C-A7CB-A273C877A37D" action="copy">
<status>ERROR</status>
<description>PEO is not available by access rights</description>
</response>
</responses>
</pim>
Link peos
| /peo/peos/links/persist Link PEOs to projects. |
Allow to link peos by:
-
peo and project tid
-
peo and project id
Resource path |
/peo/peos/links/persist |
HTTP method |
POST |
Request content type |
|
Response content type |
|
Return Type
PimType with statuses ResponsesType about each linked peo.
| Code | Message | Datatype |
|---|---|---|
200 |
PimType with filled ResponsesType |
|
400 |
Invalid input provided |
|
401 |
Not authorized |
|
500 |
An unknown internal error occurred |
Samples
| Please use transform endpoint to get the JSON/compact-JSON samples from the XML one. |
1. Link peo to project by tids
curl
curl --location --request POST 'http://<OMN_SERVER>/api/core/v1/peo/peos/links/persist' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/xml' \
--data-raw '<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<links>
<itms type="peoToProject">
<itms>
<itm key="peoTid">55beafb6-a80b-48ab-8a7b-9e1a98d67b24</itm>
<itm key="projectTid">acc0000232</itm>
</itms>
</itms>
</links>
</pim>'
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<links>
<itms type="peoToProject">
<itms>
<itm key="peoTid">55beafb6-a80b-48ab-8a7b-9e1a98d67b24</itm>
<itm key="projectTid">acc0000232</itm>
</itms>
</itms>
</links>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2023-02-27T08:29:14.678Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response action="link" dataType="peoToProjectLink">
<description>The link has been saved successfully</description>
<details mode="delta">
<itm key="peoTid">55beafb6-a80b-48ab-8a7b-9e1a98d67b24</itm>
<itm key="projectTid">acc0000232</itm>
</details>
<status>SUCCESS</status>
</response>
</responses>
</pim>
2. Link peo to project by ids
curl
curl --location --request POST 'http://<OMN_SERVER>/api/core/v1/peo/peos/links/persist' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/xml' \
--data-raw '<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<links>
<itms type="peoToProject">
<itms>
<itm key="peoId">47230</itm>
<itm key="projectId">23488</itm>
</itms>
</itms>
</links>
</pim>'
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<links>
<itms type="peoToProject">
<itms>
<itm key="peoId">47230</itm>
<itm key="projectId">23488</itm>
</itms>
</itms>
</links>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2023-02-27T08:29:14.678Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response action="link" dataType="peoToProjectLink">
<description>The link has been saved successfully</description>
<details mode="delta">
<itm key="peoId">47230</itm>
<itm key="projectId">23488</itm>
</details>
<status>SUCCESS</status>
</response>
</responses>
</pim>
Error responses
Peo not found
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2023-02-27T08:55:39.051Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response action="link" dataType="peoToProjectLink" id="475230">
<description>PEO not found</description>
<status>ERROR</status>
</response>
</responses>
</pim>
Peo is not available by access rights
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-07-06T11:49:25.214Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="peo" action="unlink" path="/111">
<status>ERROR</status>
<description>PEO is not available by access rights</description>
</response>
</responses>
</pim>
Project not found
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2023-02-27T09:02:48.326Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response action="link" dataType="peoToProjectLink" id="754545">
<description>Project not found</description>
<status>ERROR</status>
</response>
</responses>
</pim>
Perform actions on peos links
| /peo/peos/links/perform Unlinks PEOs from projects. |
Available action types:
-
Unlink
Allow to unlink peos by:
-
peo and project tid
-
peo and project id
Resource path |
/api/core/v1/peo/peos/links/perform |
HTTP method |
POST |
Request content type |
|
Response content type |
|
Body parameters
PimType with ActionsType
Some actions require additional info that should be provided in MetaType in key/value way.
ActionType's type
is required and must be provided.
Possible values:
-
unlink
ActionType's dataType is - peoToProjectLink
| Code | Message | Datatype |
|---|---|---|
200 |
PimType with filled ResponsesType |
|
400 |
Invalid input provided |
|
401 |
Not authorized |
|
500 |
An unknown internal error occurred |
Samples
| Please use transform endpoint to get the JSON/compact-JSON samples from the XML one. |
1. Unlink peo from project by tid
curl
curl --location --request POST 'http://<OMN_SERVER>/api/core/v1/peo/peos/links/perform' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/xml' \
--data-raw '<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<actions>
<action dataType="peoToProjectLink" type="unlink">
<meta>
<itm key="peoTid">55beafb6-a80b-48ab-8a7b-9e1a98d67b24</itm>
<itm key="projectTid">acc0000232</itm>
</meta>
</action>
</actions>
</pim>'
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<actions>
<action dataType="peoToProjectLink" type="unlink">
<meta>
<itm key="peoTid">55beafb6-a80b-48ab-8a7b-9e1a98d67b24</itm>
<itm key="projectTid">acc0000232</itm>
</meta>
</action>
</actions>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2023-02-27T11:19:26.180Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response action="unlink" dataType="peo" tid="55beafb6-a80b-48ab-8a7b-9e1a98d67b24">
<description>PEO has been unlinked successfully</description>
<status>SUCCESS</status>
</response>
</responses>
</pim>
2. Unlink peo from project by id
curl
curl --location --request POST 'http://<OMN_SERVER>/api/core/v1/peo/peos/links/perform' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/xml' \
--data-raw '<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<actions>
<action dataType="peoToProjectLink" type="unlink">
<meta>
<itm key="peoId">47230</itm>
<itm key="projectId">23488</itm>
</meta>
</action>
</actions>
</pim>'
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<actions>
<action dataType="peoToProjectLink" type="unlink">
<meta>
<itm key="peoId">47230</itm>
<itm key="projectId">23488</itm>
</meta>
</action>
</actions>
</pim>
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2023-02-27T11:21:28.539Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response action="unlink" dataType="peo" tid="55beafb6-a80b-48ab-8a7b-9e1a98d67b24">
<description>PEO has been unlinked successfully</description>
<status>SUCCESS</status>
</response>
</responses>
</pim>
Error responses
Peo not found
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2023-02-27T08:55:39.051Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response action="link" dataType="peoToProjectLink" id="475230">
<description>PEO not found</description>
<status>ERROR</status>
</response>
</responses>
</pim>
Peo is not available by access rights
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2022-07-06T11:49:25.214Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response dataType="peo" action="unlink" path="/111">
<status>ERROR</status>
<description>PEO is not available by access rights</description>
</response>
</responses>
</pim>
Project not found
<?xml version="1.0" encoding="UTF-8"?>
<pim xmlns="http://www.apollon.de/omn" schemaVersion="5.6.0">
<meta>
<itm key="messageType">request</itm>
<itm key="messageTime">2023-02-27T09:02:48.326Z</itm>
<itm key="sourceEnv">web</itm>
</meta>
<responses>
<response action="link" dataType="peoToProjectLink" id="754545">
<description>Project not found</description>
<status>ERROR</status>
</response>
</responses>
</pim>