This page describes the different type of page models the REST API can return.
Each page model contains the following information.
{ key: string, // The key of the element functionalKey: string // The functional, readable, key of the element name: string, // The name of the element styles: string[], // Names of the presentationStyles properties: { [string]: object }, // Additional properties of the element type: 'asset' | 'breadcrumb' | 'breadcrumbcontainer' | 'button' | 'container' | 'contentitem' | 'failedelemend' | 'field' | 'image' | 'link' | 'page' | 'textitem' | 'unknown' | project specific, } |
Specific properties of the asset model.
{ /* specific */ format: string, // The format of the asset text: string, // The content of the asset /* generic */ type: 'asset', key: string, // The key of the element functionalKey: string // The functional, readable, key of the element name: string, // The name of the element styles: string[], // Names of the presentationStyles properties: { [string]: object }, // Additional properties of the element } |
Specific properties of the breadcrumb model.
{ /* specific */ children: string[], // Element keys of the children /* generic */ type: 'breadcrumb', key: string, // The key of the element functionalKey: string // The functional, readable, key of the element name: string, // The name of the element styles: string[], // Names of the presentationStyles properties: { [string]: object }, // Additional properties of the element } |
Specific properties of the breadcrumb container model.
{ /* specific */ children: string[], // Element keys of the children /* generic */ type: 'breadcrumbcontainer', key: string, // The key of the element functionalKey: string // The functional, readable, key of the element name: string, // The name of the element styles: string[], // Names of the presentationStyles properties: { [string]: object }, // Additional properties of the element } |
Specific properties of the button model.
{ /* specific */ disabled: bool, // If set to true the button is disabled refresh: bool, // If set to true the whole page will be refreshed when the button is clicked caption: string, // The caption displayed on the button /* generic */ type: 'button', key: string, // The key of the element functionalKey: string // The functional, readable, key of the element name: string, // The name of the element styles: string[], // Names of the presentationStyles properties: { [string]: object }, // Additional properties of the element } |
Specific properties of the container model.
{ /* specific */ displayName: string, // The displayed name of the container contentStyle: string, // The contentstyle of the container children: string[], // Element keys of the children /* generic */ type: 'container', key: string, // The key of the element functionalKey: string // The functional, readable, key of the element name: string, // The name of the element styles: string[], // Names of the presentationStyles properties: { [string]: object }, // Additional properties of the element } |
Specific properties of the content item model.
{ /* specific */ contentStyle: string, // The contentstyle of the content item children: string[], // Element keys of the children /* generic */ type: 'contentitem', key: string, // The key of the element functionalKey: string // The functional, readable, key of the element name: string, // The name of the element styles: string[], // Names of the presentationStyles properties: { [string]: object }, // Additional properties of the element } |
Specific properties of the failed element model.
{ /* specific */ message: string, // The message of the failed element stacktrace: string, // The stacktrace of the failed element /* generic */ type: 'failedelement', key: string, // The key of the element functionalKey: string // The functional, readable, key of the element name: string, // The name of the element styles: string[], // Names of the presentationStyles properties: { [string]: object }, // Additional properties of the element } |
Specific properties of the field model.
{ /* specific */ questionText: string, // The question text of the field explainText: string, // The explanation of the field dataType: string, // The datatype of the field rejectedValue: string, // The rejected value of the field readonly: bool, // If set to true the field is readonly required: bool, // If set to true the field is required hasDomain: bool, // If set to true the field has a domain multiValued: bool, // If set to true the field is multivalued refresh: bool, // If set to true the field will refresh the whole page displayLength: int, // The display length of the field values: string[], // Values of the field. Always an array, even if multiValued = false messages: [{ type: 'ERROR' | 'WARNING', // Message severity text: string, // The message text }], // Optional validation messages for the field. validations: [{ blocking: bool, // If set, the validation needs to be matched for the flow to continue. message: string, // The message text parameters: { [string]: string }, // The parameters for the validation type: string, // the type of the validation. }], // Optional validation definitions for the field domain: [{ // If hasDomain = true, this attribute describes the domain of the field displayValue: string, // The display value of this domain item value: string, // The value of this domain item styles: string[] // The presentation styles of this domain item }], /* generic */ type: 'field', key: string, // The key of the element functionalKey: string // The functional, readable, key of the element name: string, // The name of the element styles: string[], // Names of the presentationStyles properties: { [string]: object }, // Additional properties of the element } |
Specific properties of the image model.
{ /* specific */ imageType: string, // The type of the image height: int, // The height of the image (in pixels) width: int, // The width of the image (in pixels) /* generic */ type: 'image', key: string, // The key of the element functionalKey: string // The functional, readable, key of the element name: string, // The name of the element styles: string[], // Names of the presentationStyles properties: { [string]: object }, // Additional properties of the element } |
Specific properties of the link model.
{ /* specific */ text: string, // The text of the link textRef: string, // The reference to the text parameters: { [string]: string }, // The parameters of the link /* generic */ type: 'link', key: string, // The key of the element functionalKey: string // The functional, readable, key of the element name: string, // The name of the element styles: string[], // Names of the presentationStyles properties: { [string]: object }, // Additional properties of the element } |
Specific properties of the page model.
{ /* specific */ messages: [{ type: 'ERROR' | 'WARNING', // Message severity text: string, // The message text }], // The message model on the page] displayName: string, // The name of the container which will be displayed contentStyle: string, // The contentstyle of the container children: string[], // Element keys of the children /* generic */ type: 'page', key: string, // The key of the element functionalKey: string // The functional, readable, key of the element name: string, // The name of the element styles: string[], // Names of the presentationStyles properties: { [string]: object }, // Additional properties of the element } |
Specific properties of the text item model
{ /* specific */ nodes: TextItemNode[], // Node in a TextItem /* generic */ type: 'textitem', key: string, // The key of the element functionalKey: string // The functional, readable, key of the element name: string, // The name of the element styles: string[], // Names of the presentationStyles properties: { [string]: object }, // Additional properties of the element } |
TextItemNode
is an abstract model extended by 3 different models: TextItemStyleNode
, TextItemTextNode
and TextItemValueNode
, identifiable by its nodeType
property. These models are documented below.
Specific properties of the textitem style node model
{ nodeType: 'style', presentationStyle: string, // The presentation style of the TextItem nodes: TextItemNode[], // Node in a TextItem } |
Specific properties of the textitem text node model
{ nodeType: 'text', text: string, // The text of the TextItem } |
Specific properties of the textitem valuenode model
{ nodeType: 'value', values: string[], // The value of the TextItemValueNode } |
Specific properties of an unknown model
{ /* generic */ type: 'unknown', key: string, // The key of the element functionalKey: string // The functional, readable, key of the element name: string, // The name of the element styles: string[], // Names of the presentationStyles properties: { [string]: object }, // Additional properties of the element } |