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.

Table 1. Details

Resource path

/api/core/v1/common/transform

HTTP method

POST

Request content type

  • application/xml; charset=UTF-8;

  • application/json

  • application/json+compact

Response content type

  • application/xml; charset=UTF-8;

  • application/json

  • application/json+compact

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

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
Table 2. Http response codes
Code Message Datatype

200

Responses for each message

OmnType

400

Bad request. Indicates an issue with the format of the request (missing required value or a wrong data type)

ResponsesType

Samples
Transform XML format to compact or default JSON
curl
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>'
Request body PimType in XML format

(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>
Response body with compact JSON format (Accept: application/json+compact)
{
    "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"
}
Response body with default JSON format (Accept: application/json)
{
    "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
Table 3. Details

Resource path

/api/core/v1/common/locales/retrieve

HTTP method

POST

Request content type

application/json

Response content type

  • application/xml; charset=UTF-8;

  • application/json

  • application/json+compact

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

Responses
Table 4. Http response codes
Code Message Datatype

200

PimType with list of locales

PimType

Samples
Please use transform endpoint to get the JSON/compact-JSON samples from the XML one.
Table 5. Request examples
Use-case Request body JSON

Get a list of all locales

{
    "mode": "ALL"
}

Get a list of specific locales by ids

{
"ids": [6000, 6003],
"mode": "ID"
}

Get a list of specific locales by identifiers

{
"tids": ["en_EN"],
"mode": "TID"
}

Get all content languages

{
"mode": "CONTENT"
}

Get all frontend languages

{
"mode": "FRONTEND"
}

Get a list of the specified locales with config information

{
"tids": ["en_EN", "de_DE"],
"mode": "TID",
"exportConfig": true
}
Get a list of all locales with configuration
curl
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
}'
Request body
{
    "mode": "ALL",
    "exportConfig": true
}
Response body
<?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
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
}'
Request body
{
"tids": ["en_EN"],
"mode": "TID"
}
Response body
<?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.
Table 6. Details

Resource path

/api/core/v1/common/keywords/retrieve

HTTP method

POST

Request content type

application/json

Response content type

  • application/xml; charset=UTF-8;

  • application/json

  • application/json+compact

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
Table 7. Http response codes
Code Message Datatype

200

OmnType with list of keywords

OmnType

400

Invalid input provided

ResponseType

404

The requested resource could not be found

ResponseType

500

An unknown internal error occurred

ResponseType

Samples
Please use transform endpoint to get the JSON/compact-JSON samples from the XML one.
Get a list of all keywords
Request body
{
    "path": "/",
    "level": -1
}
Response 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">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
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
}'
Request body
{
    "path": "/rootKwd",
    "level": 1
}
Response 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">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
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
}'
Request body
{
    "path": "/rootKwd",
    "level": 2,
    "retrieveLinks": true
}
Response 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">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
Table 8. Details

Resource path

/api/core/v1/common/keywords/persist

HTTP method

POST

Request content type

  • application/xml; charset=UTF-8;

  • application/json

  • application/json+compact

Response content type

  • application/xml; charset=UTF-8;

  • application/json

  • application/json+compact

Body parameters

PimType with filled KeywordsType

Return Type

PimType with filled ResponsesType

Responses
Table 9. Http response codes
Code Message Datatype

200

PimType with list of successful or error ResponseTypes

PimType

400

Invalid input provided

ResponseType

500

An unknown internal error occurred

ResponseType

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
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>'
Request body
<?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
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>'
Request body
<?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>
Response 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">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
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>'
Request body
<?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
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>'
Request body
<?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>
Response 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">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
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>'
Request body
<?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
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>'
Request body
<?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>
Response 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">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
No keyword 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-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>
No keyword by path
<?xml version="1.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>
Keyword is not available for update
<?xml version="1.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>
Parent keyword is not available
<?xml version="1.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>
Value is duplicated on the same level
<?xml version="1.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
Table 10. Details

Resource path

/api/core/v1/common/keywords/perform

HTTP method

POST

Request content type

  • application/xml; charset=UTF-8;

  • application/json

  • application/json+compact

Response content type

  • application/xml; charset=UTF-8;

  • application/json

  • application/json+compact

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
Table 11. Http response codes
Code Message Datatype

200

PimType with list of successful or error ResponseTypes

PimType

400

Invalid input provided

ResponseType

500

An unknown internal error occurred

ResponseType

Samples
Please use transform endpoint to get the JSON/compact-JSON samples from the XML one.
Delete keyword
Delete by id
curl
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
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>
Response 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">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
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>'
Request body
<?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
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>'
Request body
<?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>
Response 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">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
No keyword by id: Keyword has not been found for provided identity
<?xml version="1.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>
No access to destination keyword (Move): Access to destination keyword is limited 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-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>
No access to keyword: Access to source keyword is limited 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-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>
Wrong data type: Data type is not equal to "keyword"
<?xml version="1.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.
Table 12. Details

Resource path

/api/core/v1/common/glossaries/retrieve

HTTP method

POST

Request content type

application/json

Response content type

  • application/xml; charset=UTF-8;

  • application/json

  • application/json+compact

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
Table 13. Http response codes
Code Message Datatype

200

OmnType with list of keywords

OmnType

400

Invalid input provided

ResponseType

500

An unknown internal error occurred

ResponseType

Samples
Please use transform endpoint to get the JSON/compact-JSON samples from the XML one.
Retrieve all glossaries
curl
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/common/glossaries/retrieve' \
--header 'Authorization: Bearer <TOKEN>' \
--header 'Content-Type: application/json' \
--data-raw '{
}'
Request body
{
}
Response 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">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
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"
    ]
}'
Request body
{
    "names": [
        "Latest Glossary"
    ],
    "retrieveEntries": true,
    "sourceLocales": [
        "de_DE"
    ],
    "targetLocales": [
        "en_EN",
        "fr_FR"
    ]
}
Response 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">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
Table 14. Details

Resource path

/api/core/v1/common/glossaries/persist

HTTP method

POST

Request content type

  • application/xml; charset=UTF-8;

  • application/json

  • application/json+compact

Response content type

  • application/xml; charset=UTF-8;

  • application/json

  • application/json+compact

Body parameters

OmnType with filled GlossariesType

Return Type

OmnType with filled ResponsesType

Responses
Table 15. Http response codes
Code Message Datatype

200

OmnType with list of ResponseTypes

OmnType

400

Invalid input provided

ResponseType

404

The requested resource could not be found

ResponseType

500

An unknown internal error occurred

ResponseType

Samples
Please use transform endpoint to get the JSON/compact-JSON samples from the XML one.
Create glossary
curl
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>'
Request body
<?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>
Response 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">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
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>'
Request body
<?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
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>'
Request body
<?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>
Response 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">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
Unable to create the glossary: glossary with provided name already exists
<?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
Table 16. Details

Resource path

/api/core/v1/common/glossaries/perform

HTTP method

POST

Request content type

  • application/xml; charset=UTF-8;

  • application/json

  • application/json+compact

Response content type

  • application/xml; charset=UTF-8;

  • application/json

  • application/json+compact

Body parameters
Return Type
Responses
Table 17. Http response codes
Code Message Datatype

200

[OmnType] with list of [ResponseType]s

[OmnType]

400

Invalid input provided

[ResponseTypeDto]

401

Not authorized

[ResponseTypeDto]

404

The requested resource could not be found

[ResponseTypeDto]

500

An unknown internal error occurred

[ResponseTypeDto]

Samples
Please use transform endpoint to get the JSON/compact-JSON samples from the XML one.
Delete glossary attribute by glossary ID
curl
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>'
Request 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">2022-06-08T12:54:32.990Z</itm>
        <itm key="sourceEnv">web</itm>
    </meta>
    <actions>
        <action dataType="glossary" id="123" type="delete"/>
    </actions>
</pim>
Response body (Success)
<?xml version="1.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>
Response body (Error: a Glossary 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-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
Table 18. Details

Resource path

/api/core/v1/common/glossaryEntries/persist

HTTP method

POST

Request content type

  • application/xml; charset=UTF-8;

  • application/json

  • application/json+compact

Response content type

  • application/xml; charset=UTF-8;

  • application/json

  • application/json+compact

Body parameters
Return Type

PimType with filled ResponsesType

Responses
Table 19. Http response codes
Code Message Datatype

200

PimType with list of ResponseTypes

PimType

400

Invalid input provided

ResponseType

404

The requested resource could not be found

ResponseType

500

An unknown internal error occurred

ResponseType

Samples
Please use transform endpoint to get the JSON/compact-JSON samples from the XML one.
Create glossary entry
curl
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>'
Request body
<?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>
Response 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">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
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>'
Request body
<?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
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>'
Request body
<?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>
Response 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">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
Unknown translation entry type: Unsupported translation entry type was used
<?xml version="1.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>
Sentence/term not found: Sentence or term with provided ID/TID 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-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>
Glossary entry does not contain a link to glossary: Either parentId or parenTid must always be present
<?xml version="1.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>
Glossary does not exist: Glossary with provided parentId/parentTid 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-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
Table 20. Details

Resource path

/api/core/v1/common/glossaryEntries/perform

HTTP method

POST

Request content type

  • application/xml; charset=UTF-8;

  • application/json

  • application/json+compact

Response content type

  • application/xml; charset=UTF-8;

  • application/json

  • application/json+compact

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
Table 21. Http response codes
Code Message Datatype

200

OmnType with list of successful or error ResponseTypes

OmnType

400

Invalid input provided

ResponseType

500

An unknown internal error occurred

ResponseType

Samples
Please use transform endpoint to get the JSON/compact-JSON samples from the XML one.
Delete glossary entry
Delete by ID
curl
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>'
Request body
<?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
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>'
Request body
<?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>
Response 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">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
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>'
Request body
<?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>
Response 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">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
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>'
Request body
<?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>
Response 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">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
Glossary entry does not exist: Glossary entry with provided ID/TID 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 action="delete" dataType="glossaryEntry" id="30670">
        <description>There is no glossary entry with the given tid/identity</description>
        <status>ERROR</status>
      </response>
    </responses>
</pim>
Glossary does not exist: Glossary with provided ID/TID 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-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
Table 22. Details

Resource path

/api/core/v1/common/components/retrieve

HTTP method

POST

Response content type

application/json

Return Type

Map <String, String>. key - component name, value - status of the component

Responses
Table 23. Http response codes
Code Message Datatype

200

Components with statuses

Map <String, String>.

400

Invalid input provided

ResponseType

404

The requested resource could not be found

ResponseType

500

An unknown internal error occurred

ResponseType

Samples
Get all components
curl
curl --location --request POST 'https://<OMN_SERVER>/api/core/v1/common/components/retrieve' \
--header 'Authorization: Bearer <TOKEN> \
--header 'Content-Type: application/json'
Response body
{
    "omn-versioning": "inactive",
    "omn-search": "active"
}

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.

Table 24. Details

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

MessagesPersistRequest

X

Return Type
Responses
Table 25. Http response codes
Code Message Datatype

200

Responses for each message

ResponsesType

400

Bad request. Indicates an issue with the format of the request (missing required value or a wrong data type)

ResponsesType

Samples
Send a message
curl
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 body
{
    "response": [
        {
            "dataType": "message",
            "issues": [],
            "status": "SUCCESS",
            "tid": "85a4ebbc-7e19-4021-b76b-373436628bb8"
        }
    ]
}

Provides operations on OMN links.

/common/links/persist Create links between OMN objects (Assets, Products, Projects)
Table 26. Details

Resource path

/api/core/v1/common/links/persist

HTTP method

POST

Request content type

  • application/xml; charset=UTF-8;

  • application/json

  • application/json+compact

Response content type

  • application/xml; charset=UTF-8;

  • application/json

  • application/json+compact

Body parameters
Return Type

PimType with filled ResponsesType

Responses
Table 27. Http response codes
Code Message Datatype

200

PimType with list of ResponseTypes

PimType

500

An unknown internal error occurred

ResponseType

Samples
Please use transform endpoint to get the JSON/compact-JSON samples from the XML one.
1. Link single asset to single product
Request body
<?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>
Response 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">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
Request body
<?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>
Response 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">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
Request body
<?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>
Response 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">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
Request body
<?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>
Response 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">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
Request body
<?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>
Response 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">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
1. Asset not found: There is no asset(s) with provided identity / 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-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>
2. Product not found: There is no product(s) with provided identity / 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-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>
3. Attribute not found: There is no attribute with provided identifier
<?xml version="1.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>
4. Asset is not available by access rights: Asset(s) has/have been restricted 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-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>
5. Product is not available by access rights: Product(s) has/have been restricted 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-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>
6. Asset has been already linked to the product: Product already has provided asset(s) in linked assets
<?xml version="1.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>
7. Product attribute cardinality has been exceeded: Product attribute configured cardinality is less than it will be after linking asset(s)
<?xml version="1.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>

Welcome to the AI Chat!

Write a prompt to get started...