Headless Server Developer Manual / Version 2010
Table Of ContentsAs a more complex example, the following query returns a complete page (CMChannel), including data for all page grid placements, with image and video links (if present). Also included in the response: image map data.
query PageQuery($id: String!) {
content {
page(id: $id) {
__typename
...Reference
title
teaserTitle
teaserText
creationDate
grid {
cssClassName
rows {
placements {
name
viewtype
items {
...Teasable
...ImageMap
... on CMCollection {
viewtype
items {
...Teasable
}
}
}
}
}
}
}
}
}
fragment ContentInfo on Content_ {
name
creationDate
}
fragment Reference on CMLinkable {
...ContentInfo
title
segment
link {
id
type
}
}
fragment ImageMap on CMImageMap {
displayTitle
displayShortText
displayPicture
transformedHotZones {
crops {
name
coords {
x
y
}
}
points {
x
y
}
alt
shape
target
displayAsInlineOverlay
inlineOverlayTheme
linkedContent {
...Reference
...QuickInfo
}
}
}
fragment Teasable on CMTeasable {
...Reference
teaserTitle
teaserText
teaserTarget {
...Reference
}
teaserTargets {
target {
...Reference
}
callToActionEnabled
callToActionText
}
teaserOverlaySettings {
style
enabled
positionX
positionY
width
}
picture {
...Picture
}
video {
...Video
}
}
fragment QuickInfo on CMTeasable {
...Reference
teaserTitle
teaserText
picture {
...Picture
}
}
fragment Picture on CMPicture {
...ContentInfo
title
alt
link {
id
type
}
uriTemplate
base64Images {
cropName
base64
}
}
fragment Video on CMVideo {
...ContentInfo
title
alt
link {
id
type
}
data {
uri
}
dataUrl
}Page queries accept the numeric content ID of a CMChannel document as well as a site ID. In the latter case, the home page of the site will be returned, for example, for the Calista demo site (query variables: { "id": "ced8921aa7b7f9b736b90e19afc2dd2a"}).
Alternatively, a page may be queried by its navigation path, using the 'pageByPath' query.
{
content {
pageByPath(path: "corporate/for-professionals") {
id
title
}
}
}The path argument in the (abbreviated) example above consists of the segment path starting with the homepage segment 'corporate', the path separator '/' and the subpage segment 'for-professionals'. If the query is invoked using a site filter endpoint, like '/corporate/graphql', the homepage-segment of the path may be omitted, e.g. simply 'for-professionals'.


