Reference

JoyDoc property reference and descriptions

Contents

Full JSON

Object{ //Document
  identifier: String,
  group: String,
  type: String,
  stage: String,
  name: String,
  files: Array[
    Object{ //File
      identifier: String,
      name: String,
      styles: Object
      pages: Array[
        Object{ //Page
          identifier: String,
          name: String,
          width: Number,
          height: Number,
          cols: Number,
          rowHeight: Number,
          layout: String,
          presentation: String,
          backgroundImage: String,
          margin: Number,
          padding: Number,
          borderWidth: Number,
          borderColor: String,
          borderStyle: String,
          fieldPositions: Array[
            Object{ //Field Position
              _id: String,
              field: String,
              type: String,
              displayType: String,
              width: Number,
              height: Number,
              x: Number,
              y: Number,
              condition: String,
              targetValue: String,
              targetValueDisplayType: String, 
              customTrueTargetDisplayValue: String,
              customFalseTargetDisplayValue: String,
              invertBooleanCondition: Boolean,
              rowIndex: Number,
              column: String,
              primaryDisplayOnly: Boolean,
              primaryMaxWidth: Number, 
              primaryMaxHeight: Number,
              maxImageWidth: Number,
              maxImageHeight: Number,
              titleFontSize: Number,
              titleFontColor: String,
              titleFontStyle: String,
              titleFontWeight: String,
              titleTextAlign: String,
              titleTextTransform: String,
              titleTextDecoration: String,
              lineHeight: Number,
              fontSize: Number,
              fontColor: String,
              fontStyle: String,
              fontWeight: String,
              textAlign: String,
              textTransform: String,
              textDecoration: String,
              textOverflow: String,
              padding: Number,
              borderColor: String,
              borderRadius: Number,
              borderWidth: Number,
              backgroundColor: String,
              zIndex: Number,
              columnTitleFontSize: Number,
              columnTitleFontColor: String,
              columnTitleFontStyle: String,
              columnTitleFontWeight: String,
              columnTitleTextAlign: String,
              columnTitleTextTransform: String,
              columnTitleTextDecoration: String,
              columnTitleBackgroundColor: String,
              columnTitlePadding: Number,
            }, //End of Field Position
            ...
          ] //End of fields array
        }, //End of Page
        ...
      ], //End of pages array
      views: [
        Object{ //View
          type: String,
          _id: String,
          pages: PageObject
        },
        ...
      ]
    }, //End of File
    ...
  ], //End of files array
  fields: [
    Object{ //Field
      file: String,
      _id: String,
      identifier: String,
      type: String,
      title: String,
      value: Mixed,
      matadata: Object,
    	rowOrder: [String, String, ...],
      yTitle: String,
      yMin: Number,
      yMax: Number,
      xTitle: String,
      xMin: Number,
      xMax: Number,
      options: Array[
        Object{
          _id: String,
          value: String,
        },
        ...
      ], //end of options
      tableColumnOrder: [String, ...],
      tableColumns: Array[ 
        Object{
          title: String,
          type: String,
          identifier: String,
          value: String,
          options: Array[
            Object{
              _id: String,
              value: String,
            },
            ...
          ], //end of options array
          maxImageWidth: Number,
          maxImageHeight: Number,
        }, //end of column object
        ...
      ], //end of tableColumns array
    },//End of Field
    ...
  ] //End of fields array
}//End of Document
				   

Document Properties

NameTypeDescription
_idStringMust be a Joyfill internally generated ID. DO NOT manually set this value. Cannot be used with a custom value. Should be used for reference only. Example: 642529511e4ec1adeb444111
identifierStringThe identifier specifies an ID or some other value that helps you connect and uniquely identify the associated resource between Joyfill and your own system. Can be a custom value or if left blank the identifier will be auto generated by Joyfill. Example: doc_642529511e4ec1adeb444111
groupStringSpecifies the identifier of the Joyfill Group that this document is associated with.
typeString ('document', 'template')Specifies document category based on the functional usage. Learn more about the usage differences between the template and document type.
stageString ('draft', 'published')Specifies the current stage of completion/visibility.
nameStringName to visually display for the document
filesarray_objectsArray of JoyDoc File objects

File Properties

NameTypeDescription
_idStringMust be a Joyfill internally generated ID. DO NOT manually set this value. Cannot be used with a custom value. Should be used for reference only. Example: 642529511e4ec1adeb444111
identifierStringThe identifier specifies an ID or some other value that helps you connect and uniquely identify the associated resource between Joyfill and your own system. Can be a custom value or if left blank the identifier will be auto generated by Joyfill. Example: file_642529511e4ec1adeb444111
nameStringName to visually display for the file
stylesObjectObject of default styles to apply to all JoyDoc Fields within the JoyDoc File. See Field style properties to see what style options are available.
pagesarray_objectsArray of JoyDoc Page objects
viewsarray_objectsArray of JoyDoc View objects

View Properties

NameTypeDescription
_idStringMust be a Joyfill internally generated ID. DO NOT manually set this value. Cannot be used with a custom value. Should be used for reference only. Example: 642529511e4ec1adeb444111
typeString ('mobile')Specifies the intended device or experience the view is targeted at.
pagesarray_objectsArray of JoyDoc Page objects

Page Properties

NameTypeDescription
_idStringMust be a Joyfill internally generated ID. DO NOT manually set this value. Cannot be used with a custom value. Should be used for reference only. Example: 642529511e4ec1adeb444111
identifierStringThe identifier specifies an ID or some other value that helps you connect and uniquely identify the associated resource between Joyfill and your own system. Can be a custom value or if left blank the identifier will be auto generated by Joyfill. Example: page_642529511e4ec1adeb444111
nameStringName to visually display in page list.
widthNumberPage width in pixels.
heightNumberPage height in pixels.
layoutString ('grid', 'float')Layout mode for page fields
rowHeightNumberRow heights for the page grid.
colsNumberColumn count for the page grid
presentationString ('normal', 'transparent')Visual display style of fields
marginNumberPage margin in pixels
paddingNumberPage padding in pixels
borderWidthNumberPage border width in pixels
borderColorStringPage border color in HEX
borderStyleString ('solid', 'double', 'dashed')Page border style
fieldPositionarray_objectsArray of JoyDoc Page Field Position objects

Field Position Properties

NameTypeDescription
_idStringMust be a Joyfill internally generated ID. DO NOT manually set this value. Cannot be used with a custom value. Should be used for reference only. Example: 642529511e4ec1adeb444111
fieldStringSpecifies ID of linked Field. Must be a Joyfill internally generated ID. DO NOT manually set this value. Cannot be used with a custom value. Should be used for reference only. Example: 642529511e4ec1adeb444111
typeString ('text', 'textarea', 'number', 'date', 'multiSelect', 'dropdown', 'block', 'image', 'signature', 'table', 'inputGroup', 'chart')Primary type of a field. The primary type determines core functionality for the field.
displayTypeString ('text', 'circle', 'square', 'check', 'radio', 'original', 'horizontal')Display type of a field. Determines visual functionality for a field.
widthNumberNumber of Page columns to utilize for the field.
heightNumberNumber of Page rows to utilize for the field.
xNumberHorizontally position the top left corner of a field at Page column number.
yNumberVertically position the top left corner of a field at Page row number.
conditionString ('equals')Condition to determine visual selection status of a selector displayType Field.
targetValueStringJoyDoc Field Option ID
targetValueDisplayTypeString ('original', 'custom')Specifies whether or not to overwrite the default JoyDoc Field Option display text with a true/false custom text value.
customTrueTargetDisplayValueStringSpecifies the custom display text overwrite for a true selection state.
customFalseTargetDisplayValueStringSpecifies the custom display text overwrite for a false selection state.
invertBooleanConditionBooleanInvert the conditional selection state of a selector displayType Field.
rowIndexNumberSpecifies the linked rowIndex of an individually placed JoyDoc Field Table Cell.
columnStringSpecifies the linked JoyDoc Field Table Column ID of an individually placed JoyDoc Field Table Cell.
primaryDisplayOnlyBooleanVisually display only the primary part of the JoyDoc Field.
primaryMaxWidthNumberMax width in pixels of the primary part of the JoyDoc Field.
primaryMaxHeightNumberMax width in pixels of the primary part of the JoyDoc Field.
maxImageWidthNumberMax width in pixels of the internal image.
maxImageHeightNumberMax height in pixels of the internal image.
titleFontSizeNumberFont size in pixels of JoyDoc Field title.
titleFontColorStringFont color in Hex of JoyDoc Field title.
titleFontStyleString ('normal', 'italic')Font style of JoyDoc Field title.
titleFontWeightString ('normal', 'bold')Font weight of JoyDoc Field title.
titleTextAlignString ('left', 'center', 'right')Text align of JoyDoc Field title.
titleTextTransformString ('none', 'uppercase')Text transform of JoyDoc Field title.
titleTextDecorationString ('none', 'underline')Text decoration of JoyDoc Field title.
lineHeightStringPercentage to utilize for each line out of a total 100%
fontSizeNumberFont size in pixels of JoyDoc Field element.
fontColorNumberFont color in Hex of JoyDoc Field element.
fontStyleString ('normal', 'italic')Font style of JoyDoc Field element.
fontWeightString ('normal', 'bold')Font weight of JoyDoc Field element.
textAlignString ('left', 'center', 'right')Text align of JoyDoc Field element.
textTransformString ('none', 'uppercase')Text transform of JoyDoc Field element.
textDecorationString ('none', 'underline')Text decoration of JoyDoc Field element.
textOverflowString (null, 'ellipsis')Text overflow of JoyDoc Field element.
paddingNumberPadding in pixels of JoyDoc Field element.
borderColorStringBorder color in Hex of JoyDoc Field element.
borderRadiusNumberBorder radius in pixels of JoyDoc Field element.
borderWidthNumberBorder width in pixels of the JoyDoc Field element.
backgroundColorStringBackground color in HEX of the JoyDoc Field element.
zIndexNumberz index position relative to other JoyDoc Fields.
columnTitleFontSizeStringFont size of the table columns in the JoyDoc Field.
columnTitleFontColorStringFont color of the table columns in the JoyDoc Field.
columnTitleFontStyleString ('normal', 'italic')Font style of the table columns in the JoyDoc Field.
columnTitleFontWeightString ('normal', 'bold')Font weight of the table columns in the JoyDoc Field.
columnTitleTextAlignString ('left', 'center', 'right')Text align of the table columns in the JoyDoc Field.
columnTitleTextTransformString ('none', 'uppercase')Text transform of the table columns in the JoyDoc Field.
columnTitleTextDecorationString ('none', 'underline')Text decoration of the table columns in the JoyDoc Field.
columnTitleBackgroundColorStringBackground color in HEX of the table columns in the JoyDoc Field.
columnTitlePaddingNumberPadding in pixels of the table columns in the JoyDoc field.

Field Properties

NameTypeDescription
_idStringMust be a Joyfill internally generated ID. DO NOT manually set this value. Cannot be used with a custom value. Should be used for reference only. Example: 642529511e4ec1adeb444111
fileStringMust be a Joyfill internally generated ID. DO NOT manually set this value. Cannot be used with a custom value. Should be used for reference only. Example: 642529511e4ec1adeb444111
identifierStringThe identifier specifies an ID or some other value that helps you connect and uniquely identify the associated resource between Joyfill and your own system. Can be a custom value or if left blank the identifier will be auto generated by Joyfill. Primarily used for data mapping in the API. Example: field_642529511e4ec1adeb444111
typeString ('text', 'textarea', 'number', 'date', 'multiSelect', 'dropdown', 'block', 'image', 'signature', 'table', 'inputGroup', 'chart')Primary type of a field. The primary type determines core functionality for the field.
titleStringField title.
valueMixedField value
rowOrderarray_stringsArray of JoyDoc of Row IDs inside Table Field value property.
optionsarray_objectsArray of JoyDoc Field Option objects.
tableColumnsarray_objectsArray of JoyDoc Field Table Column objects.
tableColumnOrderarray_stringsArray of JoyDoc Field Table Column IDs.
metadataObjectObject
yTitleStringVertical title for JoyDoc Fields with type 'chart'.
yMaxNumberVertical max value for JoyDoc Fields with type 'chart'.
yMinNumberVertical min value for JoyDoc Fields with type 'chart'.
xTitleStringHorizontal title for JoyDoc Fields with type 'chart'.
xMaxNumberHorizontal max value for JoyDoc Fields with type 'chart'.
xMinNumberHorizontal min value for JoyDoc Fields with type 'chart'.

Summary

📘

Important Note: You're not limited to or required to follow this data structure internally. You can store your data any way you like in your internal system.