Schema Structure
This category uses the standard QR code category structure.Components Used
This category uses the following components:Schema
Copy
{
"$schema": "http://json-schema.org/draft-07/schema#",
"type": "array",
"title": "Document category schema",
"description": "Used to validate data of document category.",
"examples": [],
"items": {
"type": "object",
"required": [
"type",
"data"
],
"properties": {
"type": {
"type": "string"
},
"data": {
"type": "object"
}
},
"allOf": [
{
"if": {
"properties": {
"type": {
"const": "page_layout"
}
}
},
"then": {
"properties": {
"data": {
"type": "object",
"required": [
"templateId"
],
"properties": {
"templateId": {
"type": [
"string",
"number"
]
}
}
}
}
}
},
{
"if": {
"properties": {
"type": {
"const": "design_info"
}
}
},
"then": {
"properties": {
"data": {
"type": "object",
"required": [
"pageHeader",
"color",
"fontSize",
"fontFamily"
],
"properties": {
"pageHeader": {
"type": "object",
"required": [
"shapeName"
],
"properties": {
"shapeName": {
"type": "string"
},
"shapeColor": {
"type": "string",
"pattern": "^#([A-Fa-f0-9]{6})$"
}
}
},
"color": {
"type": "object",
"required": [
"button",
"text"
],
"properties": {
"button": {
"type": "string"
},
"text": {
"type": "string"
}
}
},
"fontSize": {
"type": "number"
},
"fontFamily": {
"type": "string"
}
}
}
}
}
},
{
"if": {
"properties": {
"type": {
"const": "intro_page"
}
}
},
"then": {
"properties": {
"data": {
"type": "object",
"required": [
"tagline",
"time"
],
"properties": {
"url": {
"type": "string",
"format": "uri"
},
"tagline": {
"type": "string"
},
"time": {
"type": "number"
}
}
}
}
}
},
{
"if": {
"properties": {
"type": {
"const": "main_page"
}
}
},
"then": {
"properties": {
"data": {
"type": "object",
"required": [
"pageLayout",
"files"
],
"properties": {
"pageLayout": {
"type": "string"
},
"pageTitle": {
"type": "string"
},
"subHeading": {
"type": "string"
},
"files": {
"type": "array",
"maxItems": 20,
"items": {
"type": "object",
"required": [
"url"
],
"properties": {
"url": {
"type": "string",
"format": "uri"
},
"name": {
"type": "string"
},
"size": {
"type": "number"
},
"type": {
"type": "string"
},
"fileName": {
"type": "string"
},
"tracking": {
"$ref": "components/event_tracking.json"
}
}
}
}
}
}
}
}
}
]
}
}