You are viewing the documentation for Blueriq 17. Documentation for other versions is available in our documentation directory.

This page describes the different type of page models the REST API can return. 

General 

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,
}

Asset

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
}

BreadCrumb

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
}

BreadCrumbContainer

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
}

Button

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
}

Container 

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
}

ContentItem 

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
}

FailedElement

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
}

Field

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
}

Image 

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
}

Page

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
}

TextItem 

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

TextItemNode is an abstract model extended by 3 different models: TextItemStyleNode, TextItemTextNode and TextItemValueNode, identifiable by its nodeType property. These models are documented below.

TextItemStyleNode

Specific properties of the textitem style node model 

{	
	nodeType: 'style',
	presentationStyle: string,         // The presentation style of the TextItem
	nodes: TextItemNode[],             // Node in a TextItem
}

TextItemTextNode

Specific properties of the textitem text node model  

{	
	nodeType: 'text',
	text: string,                       // The text of the TextItem
}

TextItemValueNode

Specific properties of the textitem valuenode model   

{	
	nodeType: 'value',
	values: string[],                    // The value of the TextItemValueNode
}

Unknown

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
}
  • No labels