Document Tree
Document Properties
Kbid
2956B7
Last Modified
28-May-2024
Added to KB
20-Jul-2020
Public Access
Everyone
Status
Online
Doc Type
References
Product
  • ICM 7.10
  • ICM 11
  • ICM 12
Reference - CMS REST API 1.0.0


This API specification is available for download as an Open API 3.0 YAML file: 

References

The following page lists available REST APIs for ICM 7.10 and their version dependencies:

API Specification

Introduction
OpenAPI Version: 3.0.1
CMS Version: 1.0.0

Content Management System API

The Intershop Content Management System REST API contains resources that reflect the main aspects of the content management system. These include pagelets, pages, includes and more.
You can use the API to retrieve information about individual CMS objects and their composition.

Adaptables

Some of the RestResourceObjects in this API refer to other objects. A pagelet for example contains slots, which need to be returned or referred to.

Since the Intershop Content Management System REST API has a hierarchical structure which can be manipulated by depth regulation,
these elements can either be links to specific resources or the complete resolved resource as is.
This will be expressed through specific adaptables, in which for example a SlotAdaptable can be a SlotRO (for the element) or a SlotLinkRO (for the link to the resource).

class PageletRO{
  Map<String, SlotAdaptable> slots // This can either be SlotROs or SlotLinkROs
}

// JSON with SlotLinkROs:
{
  slots:{
    foo: { uri : '.../s1'},
    bar: { uri : '.../s1'}
  }
}

// JSON with SlotROs:
{
  slots:{
    foo: {
      pagelets:[ ... ],
      ...
    },
    bar: {
      pagelets:[ ... ],
      ...
    }
  }
}

Depth Regulation

All item resources in this API, like includes, pages, pagelets and viewcontexts are described in hierarchical render structures.
As these can grow very large, the response can be limited with the optional depth query parameter. As soon as the requested depth is reached, a deeper element in the hierarchy will not be resolved anymore - instead a link to this resource will be provided.

Paging

All list resources in this API are pageable, so you can provide an offset and an amount as query parameters to select the range of results. You can also provide a pageable-ID (which will be returned from these resources) to your next call, to use the cached data from the server.

Personalized Content

All operations in this API can serve personalized data.
If you request any data without further authentication, you will be treated as anonymous.

To get personalized data, you must provide a basic authentication header, together with a personalization group ID (pgid).
This ID must be applied as a matrix parameter at the /cms -path segment.

Anonymous Request for page my.page:

curl -X GET -i /cms/pages/my.page

Personalized Request for page my.page:

curl -X GET -H 'Authorization: Basic <auth>' -i /cms;pgid=<pgid>/pages/my.page

As a result of a personalized request, all links in the response will contain the pgid to simplify navigation.


Notes:

  • Use the /personalization endpoint to retrieve the pgid of a specific user.
  • If you provide a basic authentication header without a pgid, you will get a bad request.

Open ReDoc-rendered Open API documentation in separate window.

Disclaimer
The information provided in the Knowledge Base may not be applicable to all systems and situations. Intershop Communications will not be liable to any party for any direct or indirect damages resulting from the use of the Customer Support section of the Intershop Corporate Web site, including, without limitation, any lost profits, business interruption, loss of programs or other data on your information handling system.
The Intershop Knowledge Portal uses only technically necessary cookies. We do not track visitors or have visitors tracked by 3rd parties. Please find further information on privacy in the Intershop Privacy Policy and Legal Notice.
Home
Knowledge Base
Product Releases
Log on to continue
This Knowledge Base document is reserved for registered customers.
Log on with your Intershop Entra ID to continue.
Write an email to supportadmin@intershop.de if you experience login issues,
or if you want to register as customer.